迅雷应该是此次 XCodeGhost 事件躺枪最严重的了吧

2015-09-19 17:24:07 +08:00
 aa45942

非 5 毛水军,就事论事

很多人都说用迅雷拖官网下载链接下载的 XCode 也会带毒,事实上真的有人试过么?

这类支持离线下载的软件为了保证文件被正确下载,会依照 MD5 值、 hash 等方式判断用户需要下载的文件与服务器保存的文件是否为同一文件吧

由上面一条,被投毒的 XCode 与官方 XCode 从 MD5 到 hash 、大小都不一样,在服务器上就是两个完全不同的文件,怎么可能会发生用户下载的是 A 文件而服务器给 B 文件这种乌龙

不过,确有下载的文件和原始链接不匹配的时候,这种情况即下载的文件与原始文件的特性相同造成服务器误判。

真实例子:先后上传两张 MD5 、大小均相同但内容不同的图片文件到 EverNote ,发现后一张上传的图片下载下来实际上是第一张图

然后证明了一个道理:网上很多人都是看到什么消息就人云亦云当,就像亲身经历一样。

所以现在,坐等有人用迅雷拖 XCode 官方下载链接,然后给出与官方 XCode 不同的 MD5 校验值打脸

6661 次点击
所在节点    信息安全
84 条回复
deepjia
2015-09-19 17:51:32 +08:00
遇到过很多次迅雷下载的文件跟源文件 Hash 值不同。迅雷没有对整个文件作 Hash 对比,至少几年前我用的时候没有。
aa45942
2015-09-19 18:18:28 +08:00
@deepjia 我记得以前的网盘都是靠大小和 MD5 来区分文件的,现在因为要离线磁链资源,估计已经把 hash 加上了
Kisesy
2015-09-19 18:24:51 +08:00
同 1 楼,确实有这种情况
这时候只能开启迅雷的选项 "只从原始地址下载"
jasontse
2015-09-19 18:29:08 +08:00
我想起了感染 Delphi 的 Win32.Indcu.a
canesten
2015-09-19 18:35:06 +08:00
没用迅雷下过 XCode
但是我最近这一年用迅雷下过 VS
HASH 对不上
l12ab
2015-09-19 18:40:48 +08:00
我自己是测试过离线下载,步骤
1 、上传文件 abc.zip 到自己的服务器,下载链接丢到离线
2 、修改文件 abc.zip 里的内容,但保持文件名 abc.zip 不变,上传到服务器,丢到离线。
3 、从离线下载文件,结果是第 1 步里的那个文件。
CDuXZMAPgHp1q9ew
2015-09-19 18:46:14 +08:00
网易的黑苹果
Slienc7
2015-09-19 18:47:03 +08:00
很久不用迅雷,不過以前確實遇到過離綫加速下載完文件與源文件 MD5 不符之情況
aa45942
2015-09-19 18:50:36 +08:00
@l12ab 说明迅雷判断依据是:保存第一次的下载链接+文件特征,然后以后此链接的下载请求,则直接返回服务器缓存的文件,故第二次下载的文件是第一次的(判断原理:这样会使某些原地址失效的下载链接能下载)
的确会出问题,不过如果原始链接就是官方的,第一次保存的文件应该也是正常的

@canesten hash 对不上说明文件特征不包含 hash

可以用 MD5 碰撞过的文件试试。如果离线两个大小相同 MD5 相同的文件,迅雷会不会把他们弄混
aa45942
2015-09-19 19:01:06 +08:00
@canesten http 的么,原因会不会和 6L 的一样
aa45942
2015-09-19 19:02:42 +08:00
@wujichao 233 ,黄易都快成苹果黑了
canesten
2015-09-19 19:31:12 +08:00
不是离线,本来是从 MSDN 下载的连接直接创建一个迅雷下载任务
然后下载完成发现版本不对。
mongodb
2015-09-19 19:33:01 +08:00
都会做开发了,还用迅雷下工具,这是人的问题,不是迅雷的事。

迅雷就是用来下电影的。
aa45942
2015-09-19 19:41:44 +08:00
@mongodb
做开发就不能用迅雷下工具是什么逻辑。
迅雷就是用来下电影又是什么逻辑

@canesten
原因会不会和 6L 的一样,迅雷保存了这个下载链接第一次缓存的文件,然后你下载到的是老版本
chengzhoukun
2015-09-19 20:43:16 +08:00
在 Oracle 官网下 jdk 被劫持成百度杀毒,浏览器下载没问题。
这事我在 jdk 捆绑百度杀毒之前就遇到过
qw7692336
2015-09-19 20:48:49 +08:00
就只能翻看以前的迅雷下载记录,看看谁还有
Cu635
2015-09-19 20:48:51 +08:00
迅雷不检查 md5 或者 sha1 ……
它看文件名,也许还看文件大小,所以说迅雷下载的文件有一定概率是坏的……
lightening
2015-09-19 20:53:58 +08:00
以前听说过,迅雷下载时只检查前一段 n kb 的 hash ,如果前一段一样很可能会下载到不一样的文件……
lightening
2015-09-19 20:55:09 +08:00
对了楼主, MD5 是众多 hash 算法的一种……
aa45942
2015-09-19 21:24:11 +08:00
@lightening 感谢提醒,上面的 hash 应为 SHA-1
一般文件校验是通过 SHA-1 与 MD5 两个值共同完成

应该不会只检查前一段 hash ,毕竟有相同文件头的玩意太多了

有可能是每一分块都查一部分,也可能是比较每个文件的大小、头尾字节、原始链接

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/222018

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX