admin管理员组

文章数量:1530521

2023年12月19日发(作者:)

如何使用迅雷下载百度网盘资源

——通过数据包捕获分析下载路径

(拒绝安装各种形式的客户端)

By Haiwanxue

目录

背景和目的 ....................................................................................................................................... 3

分析原理说明 ................................................................................................................................... 3

基本操作和分析方法 ....................................................................................................................... 3

其他方法........................................................................................................................................... 8

利用浏览器地址记录功能 ....................................................................................................... 9

结尾的话........................................................................................................................................... 9

背景和目的

互联网给了我们庞大的资源分享空间,但近期网盘之战怎一个乱字了得,形形色色的网盘蜂拥而出,如果用户要使用它,其共性则都是要么安装上传下载控件,要么下载安装客户端,继而带来的就是广告和无形的垃圾流量。如果我同时使用5个厂商的网盘,至少需要安装它们对应的客户端,那我的电脑岂不是成了公共厕所?

好吧,我既要高效使用网盘(存储和下载良好体验),又想拒绝其插件和客户端的安装,本来仅安装一个迅雷,每次打开时弹出的东西就够烦的了。

下面以百度网盘为例,通过分析网络流量的方法,演示如何使用迅雷下载其网盘文件。

分析原理说明

用户在点击网盘和对内容进行操作时,都伴随着数据包的交互行为,数据包是网络访问数据传输的基本单元之一。因此,通过查看底层的数据包,可以深入了解更多用户应用界面没有显示的信息。

查看数据包,方法很简单,(Windows用户)随便找个数据包捕获软件即可,诸如老牌的Sniffer,以及较为著名的Wildpackets Omnipeek,国产软件科来分析系统等等。本文笔者使用全球著名的Wireshark,下载地址为/。

基本操作和分析方法

以笔者百度网盘中的文件下载为例,如下图。

基本操作

首先打开Wireshark并选择捕获数据,然后选择下载百度网盘中的文件。

在没有安装百度网盘客户端的情况下,浏览器会弹出如下信息,提示用户选择下载文件保存位置。

以上简单的点击和选择,从最终用户应用层面来看,简单便捷,无可厚非。但是,从点击下载到弹出保存文件提示信息短短的瞬间,应用访问实现很简单,但从网络数据包的角度来看,到底发生了什么,简单的通过捕获到的报文来看一下。

从点击下载操作开始捕获数据包,到选择保存,然后马上取消下载期间,网络中传输了超过2000个报文,当然,这只是简短的操作产生的信息。如果完整下载完这个150MB左右的文件,其带来的数据包不少于几百万个。如下图:

需要分析的信息已经完全在上面的2000多个数据包里面了,准确的说,应该是在开始的前几十个报文里面了,详细看一下。

第一次请求分析

首先,点击下载选项时,客户端和服务器端建立新的连接,客户端发生get内容(下载请求),服务器端给出响应(具体下载地址),然后该连接断开,如下图:

具体内容查看

客户端发送请求:

GET

/file/Cisco/?fid=2466547149-2588&time=1353509783&sign=FPDTAE-DCb740ccc5511e5e8fedcff06b081203-Wth%2BCCJk%2B77HAPwJknsK2F3PiMI%3D&expires=1h&digest=3bf3067974e5e3507cb485b2dd627c81&response-cache-control=private HTTP/1.1

Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif,

image/pjpeg, application/x-ms-xbap, application/x-shockwave-flash, application/QVOD,

application/QVOD, */*

Referer: /disk/home

Accept-Language: en-US,zh-CN;q=0.5

User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0;

SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC

6.0; .NET4.0C; .NET4.0E)

Accept-Encoding: gzip, deflate

Host:

Connection: Keep-Alive

简单解释一下红色标记的内容:

客户端请求的下载地址

/file/Cisco/?fid=2466547149-2588

点击下载时的所在网页地址

Referer: /disk/home

客户端请求发送给的目标服务器地址

Host:

再看看服务器端的回应:

HTTP/1.1 302 Found

x-pcs-request-id:

MTAuMjYuMjIwLjc3OjgwODA6ODkwMDQ3MDQ4OjIxL05vdi8yMDEyIDIzOjA4OjA4IA==

Set-Cookie: BAIDUID=9CE2B6DD845F74AB88F5B53D43A98B05:FG=1;

max-age=31536000; expires=Thu, 21-Nov-13 15:08:08 GMT; domain=.;

path=/; version=1

P3P: CP=" OTI DSP COR IVA OUR IND COM "

Location:

/file/3bf3067974e5e3507cb485b2dd627c81?xcode=953f44a3879a21bb4c454e387e8163a6&fid=2466547149-2588&time=1353510488&sign=FDTAE-DCb740ccc5511e5e8fedcff06b081203-YQFAS5d75Hh6OLxSwOIbAbcnVAw%3D&fromcdn=1&expires=1h&response-cache-control=private

Content-type: text/html

Vary: Accept-Encoding

Content-Encoding: gzip

Date: Wed, 21 Nov 2012 15:08:08 GMT

Server: BWS/1.0

x-bs-client-ip: MjIxLjIxNy4zNC4xODg=

Content-Length: 61

Connection: close

服务器告诉客户端,请求下载的地址找到(但这个地址需要重新请求才能下载)

HTTP/1.1 302 Found

下载文件的真实地址信息

Location:

/file/3bf3067974e5e3507cb485b2dd627c81?xcode=953f44a3879a21bb4c454e387e8163a6

第二次请求分析

进一步查看。

客户端与服务器端再次建立连接,请求上面服务器端给出的地址,文件下载开始,如下图:

具体内容查看

客户端发出的下载请求(get信息):

GET

/file/3bf3067974e5e3507cb485b2dd627c81?xcode=953f44a3879a21bb4c454e387e8163a6&fid=2466547149-2588&time=1353510488&sign=FDTAE-DCb740ccc5511e5e8fedcff06b081203-YQFAS5d75Hh6OLxSwOIbAbcnVAw%3D&fromcdn=1&expires=1h&response-cache-control=private HTTP/1.1

Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif,

image/pjpeg, application/x-ms-xbap, application/x-shockwave-flash, application/QVOD,

application/QVOD, */*

Referer: /disk/home

Accept-Language: en-US,zh-CN;q=0.5

User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0;

SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC

6.0; .NET4.0C; .NET4.0E)

Accept-Encoding: gzip, deflate

Connection: Keep-Alive

Host:

稍微有点复杂,我们只关注想要的,如以上红色标注出的内容。

/file/3bf3067974e5e3507cb485b2dd627c81?xcode=953f44a3879a21bb4c454e387e8163a6&fid=2466547149-2588

是我们点击下载时,发送的文件请求地址。

Host:

表示接收下载请求的服务器地址,即我们把下载请求发送到上,而并不是我们从浏览器地址栏看到的:

/disk/ 或

至此,真相大白,分析得到了真实的下载地址,即

/file/3bf3067974e5e3507cb485b2dd627c81?xcode=953f44a3879a21bb4c454e387e8163a6

OK,将这个地址复制到迅雷中,即可下载,如下图:

以上是笔者尽量以通俗的方式分析和表达了如何通过查看数据包信息的方法,找到真实的文件地址,然后使用迅雷来下载。

其他方法

上面是通过分析数据报文,使用诸如迅雷等常用软件下载形如百度网盘资源

的方法之一,然而方法总是多样的,还有其他下载方法更简单,如下。

利用浏览器地址记录功能

使用这种方法的前提是,下载操作者不想安装或者没有安装相应的网盘客户端,点击下载后,弹出文件保存提示框,然后取消。

通过以上分析看到,真正提供下载的地址是,而点击下载后浏览器弹出保存提示,说明这个地址浏览器已经知道,所有使用浏览器记录的这个地址信息即可。如下图,在浏览器中输入....,当然,你还没有输入完,记录功能已自动显示出刚才的记录信息,复制这个地址到你喜欢的下载软件中即可下载。

结尾的话

笔者对当前各个厂商不顾用户体验而动辄安装XXX继而肆意弹出广告或窗口甚至安装系统服务或后台进程的行为忿忿不平,例如我的电脑里绝对不按照类似360的工具,因为我早知道它在做什么勾当(例如访问某个网站前,360先会向某些地址发送某些XXX信息)。

面对互联网的众多诱惑,我们的代价就是要依照资源方的意愿去操作才会有更好的效果和体验,天下没有免费的午餐嘛!笔者的目的就是尽量减少被动的外部资源,减轻系统资源压力和降低可能的风险,拒绝浪费和可能存在的“欺骗”。

也许读者不认同这种看法,没关系,这个世界上想把自己的思想强加给别人是愚蠢的,也是需要代价的。所以,纯属个人观点,仅供参考。

以上内容仅从技术角度分享个人经验和技巧,不代表或不存在任何利益关系,仅供参考。如果有什么不当之处,请大家多多指教(hk2fcous_@)。

本文标签: 下载地址数据包客户端请求