美国情报机构网络攻击的历史回顾 ——基于全球网络安全界披露信息分析 中国网络安全产业联盟2023年4月 版权声明 本报告由中国网络安全产业联盟(CCIA)基于大量文献组织编写,所引用各方图文资料及附录参考文献,其版权归原发布方所有。 CCIA欢迎完整、准确转载本报告,并请注明中国网络安全产业联盟编辑出品。 目录 第一篇网络战的开启——对“震网”事件的分析1 (一)事件回顾1 (二)研究分析曝光经过1 (三)小结7 参考资料8 第二篇“震网”之后的连锁反应——对“毒曲”“火焰”“高斯”的跟进分析10 (一)事件回顾10 (二)研究分析曝光经过11 (三)小结20 参考资料21 第三篇超级机器的全貌——斯诺登事件跟进分析24 (一)事件回顾24 (二)研究分析曝光经过25 (三)小结30 参考资料30 第四篇后门的传言——对美国污染加密通讯标准的揭露32 (一)事件回顾32 (二)来自学术界的质疑33 (三)证实34 (四)余震延绵38 (五)小结40 参考资料42 第五篇固件木马的实证——“方程式组织”正式浮出水面43 (一)事件回顾43 (二)研究分析曝光经过44 (三)小结48 参考资料48 第六篇覆盖全平台的网络攻击——“方程式组织”Solaris和Linux样本的曝光50 (一)事件回顾50 (二)研究分析曝光经过51 (三)小结53 参考资料53 第七篇泄露的军火——美国网络武器管理失控成为网络犯罪的工具55 (一)事件回顾55 (二)各方反应56 (三)小结59 参考资料60 第八篇军备的扩散——美国渗透测试平台成为黑客普遍利用的工具61 (一)问题概述61 (二)各方反应62 (三)小结65 参考资料65 第九篇“拱形”计划的曝光——应对美国对网络安全厂商的监控67 (一)事件回顾67 (二)各方反应68 (三)小结71 参考资料72 第十篇破窗效应——对“影子经纪人”和维基解密泄露数据进行迭代分析74 (一)事件回顾74 (二)研究分析曝光经过75 (三)小结82 参考资料82 第十一篇首次完整的溯源——复盘“方程式组织”攻击中东技术设施的完整过程84 (一)事件回顾84 (二)研究分析曝光经过85 (三)小结87 参考资料88 第十二篇国际论坛上的斗争——揭露美国对网络空间安全的操控89 (一)突然撤稿89 (二)全球安全厂商在国际会议和论坛上的努力90 (三)小结97 参考资料97 第十三篇限制和打压——美国泛化安全概念制裁他国网络安全厂商99 (一)禁用卡巴斯基的软件产品99 (二)运用实体清单制约中企发展100 (三)施压曝光美国攻击的他国网络安全企业101 (四)对中国网络安全企业另册排名并据此打压102 (五)小结104 参考资料105 结束语107 附录:相关大事记110 第一篇网络战的开启——对“震网”事件的分析 20世纪末期,信息技术迅猛发展,网络空间逐步成为人类社会的“第五空间”,与此同时,各国对网络空间军事化的担心也持续增加。2010年“震网”病毒(Stuxnet)攻击伊朗核设施事件代表美国打开了“潘多拉魔盒”,人们对网络战的担心变成了现实。 (一)事件回顾 2010年11月,伊朗政府公开承认该国纳坦兹核设施网络较早前遭受了病毒攻击。根据外界分析,攻击伊朗核设施的是“震网”病毒,毁坏了伊朗近1/5(一说2/3)的离心机,感染了20多万台计算机,导致近千台机器运行出现异常,使 伊朗核计划倒退2年。“震网”病毒攻击事件后来被视为开启了网络战时代,拉开了网络病毒作为“超级破坏性武器”改变战争模式的序幕。 (二)研究分析曝光经过 2010年6月,白俄罗斯网络安全公司VirusBlokAda为伊朗客户调查电脑死机和重启问题,其技术人员在客户电脑中发现了一种新的蠕虫病毒。根据病毒代码中出现的特征字“stux”,新病毒被命名为“Stuxnet”。2010年8月,美国网络安全厂商赛门铁克指出全球受该病毒感染计算机的约 60%均在伊朗境内。2010年9月,赛门铁克再次披露了“震网”病毒的基本情况[1]、传播方法[2]、攻击目标,分析了其感染西门子Step7工程文件的方法、感染可编程控制器(PLC)的过程,并在随后的报告中披露“震网”病毒0.5版本与其他版本之间的演化过程(见图1-1)[3]: 图1-1“震网”病毒不同版本之间的演化过程 赛门铁克于2010年11月梳理了部分网络安全厂商发现、认识“震网”病毒的过程(见表1-1)[4][5]: 表1-1赛门铁克对“震网”病毒的发现及认知 时间 事件 2008年11月20日 Trojan.Zlob变种被发现利用LNK漏洞,随后确认“震网”病毒正是利用了这一漏洞 2009年4月 安全杂志Hakin9公布了打印机后台处理程序服务中远程代码执行漏洞的细节,这一漏洞随后被确认为MS10-061 2009年6月 最早的“震网”样本被发现,没有利用MS10-046,也没有签名驱动文件 2010年1月25日 发现“震网”驱动文件的有效签名证书属于Realtek半导体公司 2010年3月 第一个利用MS10-046的“震网”变种被发现 2010年6月17日 Virusblokada报道了W32.Stuxnet病毒(命名为Rootkit.Tmphider),称它利用快捷方式(.lnk)文件处理漏洞进行传播(随后被确认为MS10-046) 2010年7月13日 赛门铁克检测到W32.Temphid(之前认为是木马) 2010年7月16日 微软公布了安全公告“WindowsShell漏洞会导致远程代码执行(2286198)”,包括快捷方式(.lnk)文件处理漏洞Verisign撤销Realtek半导体公司的证书 2010年7月17日 ESET确认了一个新的“震网”驱动文件,这次的签名证书则是来自JMicron科技公司 2010年7月19日 西门子发表调查报告“恶意代码感染西门子WinCC系统”赛门铁克将之前检测到的W32.Temphid重命名为W32.Stuxnet 2010年7月20日 赛门铁克监控“震网”命令和控制流量 2010年7月22日 Verisign撤销了JMicron科技公司的证书 2010年8月2日 微软公布MS10-046,该补丁可以修复WindowsShell快捷方式漏洞 2010年8月6日 赛门铁克发表报告“Stuxnet如何通过注入PLC并隐藏代码来感染工业控制系统”[6] 2010年9月14日 微软发布了MS10-061,该补丁可以修复赛门铁克8月份发现的打印机后台处理程序漏洞 微软公布了赛门铁克8月份确认的两个提权漏洞 2010年9月30日 赛门铁克在VirusBulletin上公布了“震网”综合分析报告 俄罗斯网络安全厂商卡巴斯基是业内分析“震网”及其 相关病毒报告最多、最完整的安全厂商,先后发表数十篇报告,从功能行为、攻击目标、漏洞利用、规避对抗、命令和控制服务器等多方面进行全面分析,尤其是讨论了“震网”病毒所利用的LNK漏洞和具有签名的驱动程序,并披露了“震网”病毒最早的五个受害者(见图1-2)[7]。卡巴斯基分析后指出,如此复杂的攻击只能在“国家支持下”才可进行。 图1-2“震网”病毒最早攻击的五个受害者 中国网络安全厂商安天是中国最早分析“震网”及其相关病毒的厂商之一,在捕获样本后,搭建了模拟分析沙盘(见图1-3)[8]。 图1-3“震网”病毒模拟分析沙盘 2010年9月27日,安天发布“对Stuxnet蠕虫攻击工业控制系统事件的综合报告”[9],对“震网”病毒的攻击过程、传播方式、攻击意图、文件衍生关系和利用的多个零日漏洞进行分析,总结其攻击特点并给出解决方案(见图1-4)[9]。 图1-4“震网”病毒突破物理隔离环境的传播方式 2010年10月,针对“震网”USB摆渡行为难以复现的问题,安天发布“对Stuxnet蠕虫的后续分析报告”,补充分 析“震网”病毒的C2地址、更新方式及USB摆渡传播条件的技术机理(见图1-5)[10]。 图1-5“震网”文件释放结构和USB传播逻辑图 2012年1月,安天发布报告“WinCC之后发生了什么” [11],分析“震网”病毒攻击工业控制系统对现场设备的影响 过程,并根据真实工业控制系统推测一个可能的攻击场景,搭建环境模拟了“震网”病毒对工控系统的攻击过程(见图1-6)[11]。 图1-6对转速干扰机理的分析推测 2013年11月,德国IT安全专家拉尔夫·朗纳(Ralph Langner)先后发表两篇文章[12][13],公布其三年来对“震网”这一“史上首次曝光的网络-物理(Cyber-Physical)战争武器”的跟踪和分析研究结果。他将“震网”事件称为“网络战的 教科书范例”,基于对“震网”病毒两个版本及攻击事件的 跟踪研究,概括性地勾画了“网络战产生物理性战果”的具体实现方法和作战流程。 (三)小结 在网络安全厂商和安全专家的全面分析接力中,“震网”攻击事件的全貌和大量细节被呈现出来:这是一起经过长期规划准备和入侵潜伏的活动,借助高度复杂的恶意代码和多个零日漏洞作为攻击武器,以铀离心机为攻击目标,通过造成超压使离心机转数异常加速,导致1000多台离心机被摧毁,浓缩铀分离能力大幅降低。在信息技术发展历史上,出现过大量网络病毒和攻击事件,但“震网”被认为是第一个得到充分技术实证,对现实世界中的关键工业基础设施造成与传统物理毁伤等效的网络攻击行动,而且达到了预设的攻击目的。美国针对他国工业基础设施开展网络攻击,释放出“网络战”这个瓶子中的魔鬼。全球网络安全界的接力分析,对这次攻击行动进行了十分充分的画像[14]。遗憾的是,当时全球各国和网络安全界更多看到了攻击暴露的技术风险,却没有充分意识到事件背后美国所推动的网络空间军事化威 胁,在这些分析工作中,没有有效整合国家主权、安全视角,也缺少国际法等层面的联动思考。 参考资料 [1]Symantec.StuxnetIntroducestheFirstKnownRootkitforIndustrialControlSystems.2010.https://community.broadcom.com/symantecenterprise/communities/community-home/librarydocuments/viewdocument?DocumentKey=94b1015b-da22-499a-abff-7f263ee5e490&CommunityKey=1ecf5f55-9545-44d6-b0f4-4e4a7f5f5e68&tab=librarydocuments [2]Symantec.StuxnetP2Pcomponent.2010.https://community.broadcom.com/symantecenterprise/communities/community-home/librarydocuments/viewdocument?DocumentKey=12adb5c4-1b6b-41dc-95a5-e6320371a847&CommunityKey=1ecf5f55-9545-44d6-b0f4-4e4a7f5f5e68&tab=librarydocuments [3]Symantec.Stuxnet0.5:�eMissingLink.2013.https://docs.broadcom.com/doc/stuxnet-missing-link-13-en [4]Symantec.W32.StuxnetDossier.2010.https://docs.broadcom.com/doc/security-response-w32-stuxnet-dossier-11-en [5]Symantec.Stuxnet:ABreakthrough.2010.https://community.broadcom.com/symantecenterprise/viewd