这个料很猛啊,知名安全公司卡巴斯基(Kaspersky)通过博客和新闻稿承认,在今年早些时候的安全检查中,一款新的原型反APT系统发现公司内部系统被非常高明的攻击入侵。在详细的技术报告(PDF)与FAQ(PDF)里,卡巴斯基称这一攻击的理念与思路比之前的APT(包括2月份发现的Equation)要领先一代。开发成本估计达到5000万美元。
必须说,人家处理此类事故的公开透明态度还是值得称道和学习的。
卡巴斯基经过大调查,发现这是又一次精心组织、精密实施的APT攻击,只有国家支持的团队才有能力做到,他们明确指认幕后黑手就是2011年名噪一时的Duqu背后组织。因此卡巴斯基将此次攻击命名为Duqu 2.0。
技术分析显示,攻击的目标是卡巴斯基的知识产权(技术、研究和内部流程),而不是其用户数据,也没有盈利企图。Ars Technica的报道(长文,细节很多,推荐阅读)称,卡巴斯基方面无法排除是否有源代码被窃。
随后,赛门铁克发表报告称,Duqu 2.0除卡巴斯基之外,也影响了欧洲和北非各一家电信运营商,一家东南亚电子设备厂商,还有美国、英国、瑞典、印度和中国香港的企业。攻击者的行为在伊朗核问题多方谈判和奥斯维辛解放纪念活动期间都比较活跃。
为了安抚公司的客户和合作伙伴,并找回一点面子,Eugene Kaspersky本人在Forbes网站上专门写了一篇文章“Why Hacking Kaspersky Lab Was A Silly Thing To Do”(为啥黑卡巴是愚蠢行为),主要大意是:
这次攻击很明显是一次国家支持的工业间谍行动,因为对手用了“极为创新和先进(原文是extremely innovative and advanced)”的恶意软件,而其中的手法也很绝,代价高昂,需要很多时间和人力来琢磨和开发。
这种攻击并不明智:你偷我的源代码有很大意义吗?软件总是在不断进步的嘛,偷来的代码很快就会过时。想了解我们公司内部怎么运作和技术机密?当然有些机密的,但是并没有什么葵花宝典,都是我们的人艰苦努力的成果而已,如果有兴趣可以多做技术交流嘛,而且我们也一直在对外授权很多技术。想了解我们正在进行的调查和研究方法,从而减少自己暴露的风险,还是说只是为了干掉高手、扬名立万?
很多国家的情报机构将互联网当作战场,这种思维方式是有问题的,会使数亿人面临新的风险。
我们来看看技术上的细节。下图是卡巴斯基技术报告(PDF)里的框架性概念图。
Duqu 2.0的最大特点是恶意代码只驻留在被感染机器的内存里,硬盘里不留痕迹,某台机器重启是恶意代码会被短暂清洗,但只要它还会连上内部网络,恶意代码就会从另一台感染机器传过来。这一手法是前所未见的。
恶意代码利用了一个Windows内核的0day漏洞。在四五月份卡巴斯基就向微软报告了这一漏洞,两周前以色列军方相关机构也通告了这一漏洞,现在已被修补,编号为CVE-2015-2360。
整个攻击都依赖于这个漏洞,一旦漏洞被修补,全盘都不灵了。但是,这恰恰说明攻击者手里可能有很多这样的0day漏洞,一个被发现修补之后,还可以换用其他的,接着干。
Duqu 2.0执行恶意代码的方式也很妙,使用Windows Installer的MSI安装包加载恶意代码所需的资源并解密,再将执行权限交给内存中的代码,这样反病毒产品也很容易被骗过。
唯一在硬盘中存在的是与互联网相连的网络服务器上的一些Windows设备驱动程序,当网络里Duqu 2.0都被清洗时,攻击者还可以通过向这些服务器发送魔术字符串,让设备驱动程序重新下载Duqu主引擎,再次感染网络。因此想要完全清除Duqu 2.0,必须所有机器同时断电同时重启,而且在重启前还要找到哪些机器上有恶意驱动程序,把它们干掉。
此外,Duqu 2.0还有很多妙招。比如和Duqu一代那样,在图片文件里加密数据。
Duqu被很多安全专家认为与攻击伊朗核设施(也影响了印尼、印度和美国等国)的Stuxnet关系密切。此前CSDN对Duqu有过多篇文章报道。