针对工业控制系统的攻击,不论在规模宏大的网络战(Cyberwar),还是在一般的网络犯罪(Cybercrime)中,都可以发现 APT 的影子。
网络战中的 APT——Stuxnet
2010 年 6 月, 白俄 罗斯 VirusBlokAda 公司发 现了 一种 复杂 的恶意 程序 ——Stuxnet。2010 年 9 月 26 日,伊朗媒体报道,伊朗在建的布什尔核电站遭到Stuxnet 病毒的攻击。这种病毒以核燃料离心机为目标,而伊朗几乎每一个核燃料提纯设备中都使用了这种离心机。最后 Stuxnet 感染了全球超过 45000 个网络,其中伊朗遭到的攻击最为严重。
根据微软安全漏洞公告和西门子向外界公开的报告,Stuxnet 利用了微软 Windows 操作系统中的 5 个漏洞(其中包括 MS10-046、 MS10-061 两个零日漏洞和另两个尚未修复的提权漏洞),以及西门子工业控制系统的 2 个漏洞,并盗用了 Realtek 和 JMicron 公司的多个数字签名,可通过移动存储设备(例如 U 盘)和局域网传播。
(1) 首先感染可移动存储设备对物理隔离网络实现“摆渡”攻击;
(2) 然后利用快捷方式文件解析漏洞(MS10-046),传播到内部网络;
(3) 在内部网络中,通过快捷方式解析漏洞(MS10-046)、打印机后台程序服务漏洞(MS10-061)、RPC 远程执行漏洞(MS08-067),寻找安装了 WinCC 软件的主机,并探测计算机是否连接一种由西门子公司制造、广泛用于铀浓缩设施(离心机)的可编程序控制器;
(4) 最后,寻找一个特别型号的“变频转换器”,并对其数据进行修改,使该设备转速降低,从而无法生成浓缩铀,而这种突然的降速会造成硬件的永久损坏。
这次事件促使西门子(Siemens)加大了对其工业控制系统产品安全性的重视程度,这也是现在西门子提供的工业控制系统相关漏洞数目偏多的原因。
网络犯罪中的 APT——Nitro
2011 年 10 月底,赛门铁克公司发布的一份报告公开了主要针对全球化工企业进行信息窃取的 Nitro 攻击。从该攻击的操作过程也可以发现非常典型的 APT 特征:
(1) 首先受害企业的部分雇员收到带有欺骗性的鱼叉式钓鱼邮件,当其中一个受害人阅读邮件的时候,看到一个把文件名和图标伪装成类似文本文件形式的恶意可执
行程序附件(该附件也可能是一个有密码保护的压缩文件,密码在邮件中注明,解压后也会产生一个可执行程序);
(2) 该受害人执行了附件中的可执行程序后,被植入 Poison Ivy 后门程序,并通过 TCP80 端口与 C&C 服务器进行加密通讯,将受害人的电脑上的帐号相关的文件信息上传;
(3) 然后攻击者借助事先植入的木马在受害企业的网络寻找目标、伺机行动、不断收集企业的敏感信息;
(4) 所有的敏感信息会加密存储在内部网络中的一台临时服务器上,并最终上传到公司外部的某个服务器上,从而完成攻击。
Google极光攻击
2010年的Google Aurora(极光)攻击是一个十分著名的APT攻击。Google的一名雇员点击即时消息中的一条恶意链接,引发了一系列事件导致这个搜索引擎巨人的网络被渗入数月,并且造成各种系统的数据被窃取。这次攻击以Google和其它大约20家公司为目标,它是由一个有组织的网络犯罪团体精心策划的,目的是长时间地渗入这些企业的网络并窃取数据。该攻击过程大致如下:
1) 对Google的APT行动开始于刺探工作,特定的Google员工成为攻击者的目标。攻击者尽可能地收集信息,搜集该员工在Facebook、Twitter、LinkedIn和其它社交网站上发布的信息。
2) 接着攻击者利用一个动态DNS供应商来建立一个托管伪造照片网站的Web服务器。该Google员工收到来自信任的人发来的网络链接并且点击它,就进入了恶意网站。该恶意网站页面载入含有shellcode的JavaScript程序码造成IE浏览器溢出,进而执行FTP下载程序,并从远端进一步抓了更多新的程序来执行(由于其中部分程序的编译环境路径名称带有Aurora字样,该攻击故此得名)。
3) 接下来,攻击者通过SSL安全隧道与受害人机器建立了连接,持续监听并最终获得了该雇员访问Google服务器的帐号密码等信息。
4) 最后,攻击者就使用该雇员的凭证成功渗透进入Google的邮件服务器,进而不断的获取特定Gmail账户的邮件内容信息。
夜龙攻击
夜龙攻击是McAfee在2011年2月份发现并命名的针对全球主要能源公司的攻击行为。该攻击的攻击过程是:
1) 外网主机如Web服务器遭攻击成功,黑客采用的是SQL注入攻击;
2) 被黑的Web服务器被作为跳板,对内网的其他服务器或PC进行扫描;
3) 内网机器如AD服务器或开发人员电脑遭攻击成功,多半是被密码暴力破解;
4) 被黑机器被植入恶意代码,并被安装远端控制工具(RAT),并禁用掉被黑机器IE的代理设置,建立起
直连的通道,传回大量机敏文件(WORD、PPT、PDF等等),包括所有会议记录与组织人事架构图;
5) 更多内网机器遭入侵成功,多半为高阶主管点击了看似正常的邮件附件,却不知其中含有恶意代码。
RSA SecurID窃取攻击
2011年3月,EMC公司下属的RSA公司遭受入侵,部分SecurID技术及客户资料被窃取。其后果导致很多使用SecurID作为认证凭据建立VPN网络的公司——包括洛克希德马丁公司、诺斯罗普公司等美国国防外包商——受到攻击,重要资料被窃取。在RSA SecurID攻击事件中,攻击方没有使用大规模SQL注入,也没有使用网站挂马或钓鱼网站,而是以最原始的网络通讯方式,直接寄送电子邮件给公司职员,并附带防毒软件无法识别的恶意文件附件。其攻击过程大体如下:
1) 攻击者给RSA的母公司EMC的4名员工发送了两组恶意邮件。邮件标题为“2011 Recruitment Plan”,寄件人是webmaster@Beyond.com,正文很简单,写着“I forward this file to you for review. Please open and view it.”;里面有个EXCEL附件名为“2011 Recruitment plan.xls”;
2) 很不幸,其中一位员工对此邮件感到兴趣,并将其从垃圾邮件中取出来阅读,殊不知此电子表格其实含有当时最新的Adobe Flash的0day漏洞(CVE-2011-0609)。这个Excel打开后啥也没有,除了在一个表单的第一个格子里面有个“X”(叉)。而这个叉实际上就是内嵌的一个Flash。
3) 该主机被植入臭名昭著的Poison Ivy远端控制工具,并开始自BotNet的C&C服务器(位于good.mincesur.com)下载指令进行任务;
4) 首批受害的使用者并非“位高权重”人物,紧接着相关联的人士包括IT与非IT等服务器管理员相继被黑;
5) RSA发现开发用服务器(Staging server)遭入侵,攻击方随即进行撤离,加密并压缩所有资料(都是rar格式),并以FTP传送至远端主机,又迅速再次搬离该主机,清除任何踪迹;
6)在拿到了SecurID的信息后,攻击者就开始对使用SecurID的公司(例如上述防务公司等)进行攻击了。
另一个与此攻击类似的攻击事件是针对Comodo的颁发数字证书的系统攻击,结果导致很多由Comodo签发的伪造数字证书,成为了攻击者的强大武器。
超级工厂病毒攻击(震网攻击)
遭遇超级工厂病毒攻击的核电站计算机系统实际上是与外界物理隔离的,理论上不会遭遇外界攻击。坚固的堡垒只有从内部才能被攻破,超级工厂病毒也正充分的利用了这一点。超级工厂病毒的攻击者并没有广泛的去传播病毒,而是针对核电站相关工作人员的家用电脑、个人电脑等能够接触到互联网的计算机发起感染攻击,以此为第一道攻击跳板,进一步感染相关人员的U盘,病毒以U盘为桥梁进入“堡垒”内部,随即潜伏下来。病毒很有耐心的逐步扩散,利用多种漏洞,包括当时的一个0day漏洞,一点一点的进行破坏。这是一次十分成功的APT攻击,而其最为恐怖的地方就在于极为巧妙的控制了攻击范围,攻击十分精准。
Shady RAT攻击
2011年8月份,McAfee/Symantec发现并报告了该攻击。该攻击在长达数年的持续攻击过程中,渗透并攻击了全球多达70个公司和组织的网络,包括美国政府、联合国、红十字会、武器制造商、能源公司、金融公司,等等。其攻击过程如下:
1) 攻击者通过社会工程学的方法收集被攻击目标的信息。
2) 攻击者给目标公司的某个特定人发送一些极具诱惑性的、带有附件的邮件例如邀请他参加某个他所在行业的会议,以他同事或者HR部门的名义告知他更新通讯录,请他审阅某个真实存在的项目的预算,等等。
3) 当受害人打开这些邮件,查看附件(大部分形如:Participant_Contacts.xls、2011 project budget.xls、Contact List -Update.xls、The budget justification.xls),受害人的EXCEL程序的FEATHEADER远程代码执行漏洞(Bloodhound.Exploit.306)被利用,从而被植入木马。实际上,该漏洞不是0day漏洞,但是受害人没有及时打补丁,并且,该漏洞只针对某些版本的EXCEL有效,可见被害人所使用的EXCEL版本信息也已经为攻击者所悉知。
4) 木马开始跟远程的服务器进行连接,并下载恶意代码。而这些恶意代码被精心伪装(例如被伪装为图片,或者HTML文件),不为安全设备所识别。
5) 借助恶意代码,受害人机器与远程计算机建立了远程Shell连接,从而导致攻击者可以任意控制受害人的机器。
综合分析以上典型的APT攻击,可以发现,现在的新型攻击主要呈现以下技术特点:
1) 攻击者的诱骗手段往往采用恶意网站,用钓鱼的方式诱使目标上钩。而企业和组织目前的安全防御体系中对于恶意网站的识别能力还不够,缺乏权威、全面的恶意网址库,对于内部员工访问恶意网站的行为无法及时发现;
2) 攻击者也经常采用恶意邮件的方式攻击受害者,并且这些邮件都被包装成合法的发件人。而企业和组织现有的邮件过滤系统大部分就是基于垃圾邮件地址库的,显然,这些合法邮件不在其列。再者,邮件附件中隐含的恶意代码往往都是0day漏洞,邮件内容分析也难以奏效;
3) 还有一些攻击是直接通过对目标公网网站的SQL注入方式实现的。很多企业和组织的网站在防范SQL注入攻击方面缺乏防范;
4) 初始的网络渗透往往使用利用0day漏洞的恶意代码。而企业和组织目前的安全防御/检测设备无法识别这些0day漏洞攻击;
5) 在攻击者控制受害机器的过程中,往往使用SSL链接,导致现有的大部分内容检测系统无法分析传输的内容,同时也缺乏对于可疑连接的分析能力;
6) 攻击者在持续不断获取受害企业和组织网络中的重要数据的时候,一定会向外部传输数据,这些数据往往都是压缩、加密的,没有明显的指纹特征。这导致现有绝大部分基于特征库匹配的检测系统都失效了;
7) 还有的企业部署了内网审计系统,日志分析系统,甚至是SOC安管平台。但是这些更高级的系统主要是从内控与合规的角度来分析事件,而没有真正形成对外部入侵的综合分析。由于知识库的缺乏,客户无法从多个角度综合分析安全事件,无法从攻击行为的角度进行整合,发现攻击路径。
8)受害人的防范意识还需要进一步提高。攻击者往往不是直接攻击最终目标人,而是透过攻击外围人员层层渗透。例如先攻击HR的人,或者首轮受害人的网络好友,再以HR受害人的身份去欺骗(攻击)某个接近最终目标人的过渡目标,再透过过渡目标人去攻击最终目标人(例如掌握了某些机密材料的管理员、公司高管、财务负责人等)。
因此,在APT这样的新型攻击面前,大部分企业和组织的安全防御体系都失灵了。保障网络安全亟需全新的思路和技术。