天外来客

 找回密码
 注册
查看: 5075|回复: 0
打印 上一主题 下一主题

csdn的免费下载原理及其思考

[复制链接]

402

主题

0

好友

1547

积分

中级会员

Rank: 4

在线时间
1 小时
威望
112
贡献
0
最后登录
2012-3-31
注册时间
2011-9-1
积分
1547
阅读权限
30
帖子
417
跳转到指定楼层
1#
发表于 2011-12-23 19:12:47 |只看该作者 |倒序浏览
说的是csdn免费下载文件的,我去csdn看了一下,需要登录才可以解析出地址,所以回帖说 “这个太假”,今天我重新拉出来看了看,只能说:“我错了,csdn可以免费!” ,这个结论让我实在是无语~~~~  因为csdn的弱智!
   老习惯,上代码最清楚!vc 简洁,以此为例,我加了许多注释


   VC源代码如下:  

CString webID;               //  声明类型
CString backData;
CString filteredAdd;
CString targetAdd;
void CCSDNDlg::OnBnClickedBtnDload()   //定义 按钮单击事件
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(true);
webID=webAdd.Right(webAdd.GetLength()-(webAdd.Find(_T("source/"),0)+7));  取得文章的id号码,即索引
  //webID=webAdd.Right(7);
//AfxMessageBox(LPCTSTR(webID),0,0);
//
//********************************************************************
//
//********************************************************************
CInternetSession mySession(NULL,0);//建立会话
CHttpFile* myHttpFile=NULL;
CString SiteName=_T("xxp://download.csdn.net/index.php/rest/source/getsourceinfo/")+webID;  就是这个让我无语了,大家可以复制到浏览器里看看是什么东东。
文章id我们取100,结果如下:{"id":"100","title":"\u5b9e\u73b0\u542f\u52a8\u753b\u9762","tag":["\u754c\u9762\u76f8\u5173\u7c7b"],"categoryid":"16006","source_money":"0","username":"chenxh","groupname":null,"sourcesize":"11150","pubdate":"1029340800","updatetime":"2011-08-03 17:39:15","description":"\u6f14\u793a\u5982\u4f55\u5b9e\u73b0\u542f\u52a8\u753b\u9762","isrecommended":"0","status":"1","filetype":"zip","originfile":"200281592917.zip","fileaddr":"\/200281592917.zip","otherlink":"","clicknum":"46","diggnum":"0","fileaddr_prefix":"\/down1","md5":"","isrepeat":"0","alreadyIndex":"1","clickpnum":"75","Operator":"","operate_time":"0","url":"http:\/\/dlwt.csdn.net\/fd.php?i=13301001970&s=1d459b1b095138c98b8670c9435618f0"}
看到了吧 ,红字部分就是下载地址,无语~~~~~
下面的代码就是处理而已,不解释~~~~~~~~~~~~~~~~
myHttpFile=(CHttpFile*)mySession.OpenURL(SiteName);
myHttpFile->ReadString(backData);
//AfxMessageBox(LPCTSTR(backData),0,0);
myHttpFile->Close();
mySession.Close();
/////////////////////////////////////////////////////////////////////////////////////////////
filteredAdd=backData.Right(backData.GetLength()-backData.Find(_T("fd.php?i"),0));
filteredAdd=filteredAdd.Left(filteredAdd.GetLength()-2);
//AfxMessageBox(LPCTSTR(filteredAdd),0,0);
targetAdd=_T("http://dlwt.csdn.net/")+filteredAdd;
//AfxMessageBox(LPCTSTR(targetAdd),0,0);
//void CWebBrowser2::Navigate(LPCTSTR URL, VARIANT* Flags, VARIANT* TargetFrameName, VARIANT* PostData, VARIANT* Headers)
CWebBrowse.Navigate(LPCTSTR(targetAdd),NULL,NULL,NULL,NULL);
}
这个“泄密”的文件时怎么来的呢?找到一篇网上的举报贴子,:

引用
VIP会员下载,经常出现以下提示
Warning: file_get_contents(xxp://download.csdn.net/index.php/rest/source/getsourceinfo/219312) [function.file-get-contents]: failed to open stream: HTTP request failed! in /home/www/fd.php on line 124
下载次数被扣减了,却下载不了

看到file_get_contents函数了吗?可以看出,csdn文件下载地址的获取也是这样的!! 就是说,我们取得文件的方式是“官方认证”的!
     实在不敢想象事实是如此!只能说没有漏洞的网站是不存在的! 在网站进行架构的时候要合理,在网站进行验证的时候的时候,要仔细,这样才能最大程度上做出好的网站来~~~~
紧急通知:距去年(重启时隔5年捐助一年的服务器费用)不知不觉又过了一年,费用也消耗完了。现在新用户捐助注册的已经很少,如果一直得不到新用户补充,服务器费用将压力山大,因此决定再次恳求捐助一年费用。在此感谢之前捐助过的朋友!如果不嫌弃恳求再次支持!同时也恳求还没捐助过的朋友出手相助(老用户捐助时备注栏备注你的用户名哦)。在下万分感激!天外来客 2024.7.30
您需要登录后才可以回帖 登录 | 注册

本站所有资源内容均是网友于互联网搜索而来 本站对其所发布的内容不承担任何责任
如果您认为侵犯了您的利益,请电邮告知 229666956@qq.com (附上贴子正确地址)在收到邮件后我们会马上及时删除其内容。

Archiver|手机版|天外来客

GMT+8, 2024-11-1 09:13 , Processed in 0.119603 second(s), 19 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部