最近这几天“XCodeGhost”事件闹得人心惶惶,如果你对“XCodeGhost”事件本身的来龙去脉不够了解,推荐阅读腾讯安全应急响应中心的文章《你以为这就是全部了?我们来告诉你完整的XCodeGhost事件》。
而本文的重点是想澄清在“XCodeGhost”事件中,有关迅雷的种种“说法”。
说法1:“还是不能相信迅雷,我是把官网上的下载URL复制到迅雷里下载的,还是中招了”
这句话是乌云网原文《XCode编译器里有鬼 – XCodeGhost样本分析》当中,文章作者引用微博中“谁敢乱说话”的留言。这是整个事件中唯一声称“使用迅雷下载官网链接也会中招”的反馈。
我们在看到这条反馈时,第一时间安排迅雷安全中心工程师对XCode6.4的官方链接进行下载测试,并对迅雷索引服务器上的记录进行了交叉检查。发现迅雷从未将官方链接的XCode6.4下错为染毒的版本。而且染毒的XCode6.4文件比官方版本大了6.97MB,因此文件特征值不存在重复的可能。
在迅雷安全中心工程师完成测试及检查后,我们看到“谁敢乱说话”博主已经主动发布澄清《我澄清一下,复制官方的URL到迅雷里下载没有问题,我记错了》。虽然他先前的留言造成对迅雷的误解,但是我们依然感谢他能主动澄清这件事。
说法2:“成功感染了迅雷的离线服务器,也就是说,你常用下载软件是迅雷的话,输入官网的地址下载下来的 dmg 仍然有可能是被修改过的。”
这个说法是在“说法1”的基础上,经过转载及揣测被加工成了“迅雷离线服务器被感染”,但现在“说法1”已经被澄清,而且迅雷早在“XCodeGhost”事件被曝光时,立即全面检查了离线服务器中所有苹果官方链接的Xcode文件,SHA1值均与苹果官方版本保持一致。因此迅雷离线服务器没有被感染。
说法3:这次XcodeGhost木马病毒的泛滥有可能和迅雷有关,迅雷最初下载的Xcode就是被修改的程序,因此iOS开发者即使用官方地址然后在迅雷上下载,也会下载到带有木马病毒的Xcode。
该说法同样为“说法1”的变种。根据我们查询离线下载的任务记录,染毒的XCode6.4版本(SHA1:a836d8fa0fce198e061b7b38b826178b44c053a8)。最早被迅雷会员用户添加到离线下载中时,并非来自苹果官方,而是来自某网盘的URL。
同时我们列出了染毒的XCode6.4版本的所有下载来源,共有52条记录,无一来自苹果官方网站。也就是说,染毒的XCode泛滥并非由迅雷导致,某网盘是染毒XCode的主要下载源。
与此同时迅雷已将染毒的XCode文件屏蔽下载。
说法4:迅雷下载难道只判断文件名,不会检测哈希值之类的吗?
迅雷并不通过文件名或文件大小来判断文件是否一致。迅雷下载会在下载开始时检测文件的哈希值(特征值),下载过程中会与原始地址及镜像进行实时比对校验,发现错误数据就会在下载过程中立即纠错,所以才会出现所谓的“下载进度倒退”现象。文件下载完成后会再次进行完整的文件校验。
说法5:我遇到过某软件官网链接用迅雷下载到了这软件的上一个版本
这种情况确实在部分用户的环境中发生过,经过我们联系用户进行调查,结果发现是用户使用的网络运营商为了降低自身网络出口的流量成本。会自己架设CDN服务器来缓存比较热门的文件。当某软件发布新版本更新了安装文件,而下载地址未变时,该运营商的CDN服务器没有及时的更新文件。仍将用户的访问请求指向了缓存的老文件,此时用户使用迅雷进行下载,就会下载到上一个版本。这种情况并不常见,而且迅雷已经进行了优化。
说法6:如果我把染毒的文件放在自己架的一个服务器上,并修改本机DNS将官方下载链接的下载请求指向我自己架的服务器,再用迅雷下载这个带毒的文件,迅雷就会把这个染毒的文件分享给别人了。
这种假设是行不通的,虽然这么做能让迅雷把染毒的文件下载到你本机。但是我们前面介绍过,迅雷在下载完成后会进行完整的文件校验,如果你下载的文件是染毒的,文件校验得出的特征值就会截然不同。因此迅雷的索引服务器就不会将染毒的文件跟正常的文件关联在一起。自然别的迅雷用户就不会从你本机获取这个染毒的文件。