一、概述

近日,安天微电子与嵌入式安全研发部(安天微嵌)对网络安全公司RedTeam Pentesting GmbH[1]披露的编号为CVE-2019-1652和CVE-2019-1653的两个漏洞进行了详细分析和验证。该组漏洞主要对Cisco RV320和RV325[2]两款双千兆WAN VPN路由器造成影响,两个漏洞结合利用可以达到允许未经身份授权的远程攻击者执行任意命令的目的。对此,安天微嵌分析小组验证了该漏洞的原理及POC,对该漏洞的影响范围进行了确认,并给出了相应的防护建议。

二、漏洞影响

Cisco RV320、RV325两款路由器支持通过局域网和远程连接访问WEB管理页面,开启服务后可通过互联网访问WEB管理页面。由于路由器的WEB管理页面能够完成路由器各项功能的可视化管理和配置,对设备具有较高的控制权,所以其与路由器设备本身的安全紧密相关。

经分析验证,此次被披露的两个漏洞分别是由于Cisco RV320、RV325路由器的WEB管理页面访问控制验证规则不完善 (CVE-2019-1653)和用户访问WEB管理页面时提供的输入凭证不当(CVE-2019-1652)造成的。

根据网络安全公司Bad packet[3]公布的资料显示,其在全球范围内发现了9657台受CVE-2019-1652、CVE-2019-1653漏洞影响的Cisco路由器(6247台RV320和3410台RV325),其中大部分位于美国,中国大陆存在47台受到该漏洞影响的设备。同时他们的蜜罐系统捕获到了大量针对RV320和RV325路由器的扫描活动,这表明攻击者正在积极利用漏洞来劫持受影响的Cisco路由器。受漏洞影响的Cisco路由器全球分布情况如图2-1和表2-1所示。                                              

201905062.1.png

图 2‑1受影响设备全球分布图

表 2‑1受影响设备全球分布表

国家和地区 美国 加拿大 巴西 泰国 波兰 法国 瑞典
受影响设备数量 4389 797 627 304 233 224 211
国家和地区 中国香港 罗马尼亚 哥伦比亚 阿根廷 玻利维亚 英国 意大利
受影响设备数量 165 158 141 125 123 117 113
国家和地区 澳大利亚 墨西哥 荷兰 捷克 乌克兰 比利时 奥地利
受影响设备数量 109 104 103 103 102 93 92
国家和地区 德国 印度 西班牙 丹麦 保加利亚 菲律宾 韩国
受影响设备数量 87 85 82 74 67 60 57
国家和地区 挪威 斯洛伐克 瑞士 中国大陆 喀麦隆 巴拿马 匈牙利
受影响设备数量 52 52 50 47 34 33 33

三、漏洞原理

安天微嵌分析小组使用Cisco RV320 Gigabit Dual WAN VPN Router和DELL OPTIPLEX PC机作为验证环境。设备连接示意图如图3-1所示。将Cisco RV320路由器任意LAN口与DELL PC机网口直接相连,同时将Cisco RV320路由器和DELL PC机设置为同一个网段。​

201905063.1.jpg

图 3‑1设备连接示意图

该漏洞POC文件将测试未经身份授权检索敏感信息漏洞 (CVE-2019-1653)和命令注入执行漏洞(CVE-2019-1652)代码整合在一起完成未经授权的远程代码执行操作。通过漏洞CVE-2019-1653完成路由器用户名、口令的捕获,随后结合CVE-2019-1652完成在Cisco RV320、RV325小型商用路由器上执行任意命令的目的。

安天微嵌分析小组在分析POC文件代码过程中发现,POC的执行过程可以分为两个部分,其中未经授权检索敏感信息漏洞相关的函数代码片段如图3-2;命令注入执行漏洞相关的函数代码片段如图3-3所示。

201905063.2.png

图 3‑2未授权检索敏感信息漏洞片段

201905063.3.png

图 3‑3命令注入执行漏洞函数代码片段

通过对图3-2、图3-3代码片段的分析,可以确定未经授权的远程代码执行漏洞的利用方式。该POC原理是未经身份授权的远程攻击者可以利用漏洞(CVE-2019-1653)从受影响的设备处获取敏感信息,该漏洞(CVE-2019-1653)是由于URL访问控制验证规则不完善造成的。远程攻击者可以利用这个漏洞,通过HTTP或HTTPS连接到受影响的设备,并请求特定的URL,让远程攻击者下载路由器配置或详细的登录信息。获得登录信息之后基于WEB管理界面发送恶意HTTP协议POST的方法,利用命令注入POST方法执行漏洞(CVE-2019-1652) 获得root用户权限,在受影响的设备上执行任意命令,该漏洞(CVE-2019-1652)是由于用户在使用POST方法提交参数时,规则验证不完善所造成的恶意命令执行漏洞。

四、POC执行验证

安天微嵌分析小组使用Cisco RV320设备搭建了验证环境,结合上述的分析过程对公开的POC进行了验证。

4.1 获取目标设备信息

该POC综合利用未经身份授权检索敏感信息漏洞 (CVE-2019-1653)和远程代码命令注入执行漏洞(CVE-2019-1652),通过POC的运行获取目标设备的用户名、用户登录口令的HASH值、加权值等信息。

通过获取目标设备的用户名、用户登录口令的HASH值、加权值,利用命令注入执行漏洞(CVE-2019-1652)启动Telnet服务,与被攻击设备连接并实现远程控制。

4.2 获取目标设备命令集

命令注入执行成功并获取root权限的当前目标设备命令集。如图4-1所示。

201905064.1.png

图4-1当前目标设备命令集

图4-1中在被攻击设备中显示出当前设备可用命令。设备命令中包含安装和登录、文件处理、系统管理、网络操作、系统安全、其它功能等命令集合。

4.3 从FTP服务器中下载攻击文件

搭建FTP服务,使用该命令集内的FTPGET可以实现下载文件到目标路由器中,如图4-2所示。

201905064.2.png

图4-2 FTP服务器下载文件到目标设备

图4-2中攻击者可以使用FTPGET命令从FTP服务器中下载攻击文件,攻击Cisco RV320路由器,导致Cisco RV320路由器被植入后门或远程控制的严重后果。

4.4 补丁有效性验证

Cisco公司针对上述漏洞提供了补丁,我们同时也对补丁有效性进行了验证。

如图4-3所示:使用POC程序验证更新补丁后的设备是否存在远程检索敏感信息漏洞(CVE-2019-1653)和命令注入执行漏洞(CVE-2019-1652)。

201905064.3.png

图4-3 验证CiscoRV320路由器漏洞

图4-3中POC程序无法对更新补丁后的设备造成影响。

我们对原POC程序文件进行了修改,通过其它手段获得路由器用户名、用户口令HASH值,并将其作为前置参数替换原来的漏洞(CVE-2019-1653)结果,来验证RV320路由器更新补丁之后是否可以执行命令注入漏洞(CVE-2019-1652),如图4-4所示。

201905064.4.png

图4-4已知用户名、口令验证命令注入漏洞

图4-4中提示登录失败。抓取HTTP数据协议分析发现,更新过补丁的CiscoRV320路由器口令的HASH值每次登录都在改变,通过使用上次捕获工具抓取的用户口令HASH值已经不能登录,从而使得原来静态的口令HASH方式的漏洞(CVE-2019-1652)利用失效。

经验证,更新固件v1.4.2.22版本后,固件中的未经身份授权检索敏感信息漏洞(CVE-2019-1653)不能通过链接方式访问,表示该漏洞不能被利用。使用捕获工具抓取用户名、用户口令HASH值不能执行命令注入漏洞(CVE-2019-1652)。

五、防护建议

路由器作为网络中的重要节点,一旦受到控制最直接的后果就是影响设备的正常运行,进而对网络运行造成影响;同时攻击者也可以通过路由器作为跳板进一步入侵所在网络,进行病毒传播、情报窃取和网络破坏等危险行为。本次验证的漏洞允许未经授权的攻击者获取路由器的敏感信息,如登陆管理界面所需的明文用户名和口令HASH值,通过对HASH值破解也可以得到口令的明文,由此获得路由器WEB管理的用户名和口令即可以开启路由器的telnet远程控制,从而配合相应的服务能够实现文件的上传、下载和任意代码执行等动作,存在严重的安全隐患。目前Cisco已经发布针对此漏洞的新固件,固件版本1.4.2.22 ,经过分析小组验证该版本固件已经修补了上述漏洞,受影响设备需要及时更新到最新版固件。

综合上述情况,为了有效降低漏洞所带来的安全风险,提高产品安全性进而有效提升产品所在网络的安全防护能力,保障客户价值,安天建议客户从官网下载最新版本的固件,更新设备固件,有效避免漏洞被攻击者利用,以免对目标网络造成严重威胁;同时为了保证设备和设备所在网络的安全,需要网络管理员定期检查官方发布的路由器固件更新,及时更新设备固件,避免新的漏洞被攻击者利用。

5.1 Cisco RV320路由器固件更新方法

1.新版固件下载地址:https://software.cisco.com/download/home/284005929/type/282465789/release/1.4.2.22?catid=268437899

2.固件更新方法:

1)从官网获取最新版固件;

2)通过网线将主机与路由器LAN口连接,访问192.168.1.1,进入路由器WEB管理页面,在System Management菜单下选择Firmware Upgrade子项,如图5-1更新固件所示;

201905065.1.png

图 5‑1更新固件图

3)点击“Firmware Upgrade from PC”下对应的“浏览”按键,选择从官方下载的最新固件文件;

4)点击“Firmware Upgrade”按键。在固件更新过程中,DHCP服务将会被关闭,OLH和SSL VPN文件将被删除,请注意备份;

5)更新结果如图5-2更新结果所示。

201905065.2.png

图 5‑2更新结果所示

5.2 本次受影响路由器安全配置建议

除了上述安全建议外,我们还对RV320和RV325两款路由器的配置做了详细分析,为了有效提高设备的安全防护能力,安天建议客户进行如下安全配置:

1.开启路由器防火墙功能,检查所有入站流量并丢弃任何不需要的数据包,保护内部计算机网络免受外部恶意访问,还可以配置为限制内部用户对外部的访问;

2.开启全状态数据包检测型防火墙(SPI),路由器防火墙使用SPI维持连接信息通过防火墙,它会检查所有的基于特定连接的数据包,有限通过经高级协议处理的数据包;

3.开启拒绝服务(DoS)功能,保护内部网络不受拒绝服务攻击;

4.开启拒绝互联网请求,开启这个功能后路由器会丢掉来自广域网的所有不被接纳的TCP请求和ICMP数据包,使攻击者无法通过PING路由器IP地址查找到路由器;

5.关闭远程管理功能,如果没有通过远程管理路由器的需求,建议关闭远程管理功能,防止用户名和口令被破解后,路由器被攻击者远程控制;

6.开启HTTPS,HTTPS比HTTP具有更高的安全性,它提供来自客户端和服务器的双向加密;

7.在空闲时关闭UPnP功能,开启UPnP功能将允许自动发现可与路由器通信的设备,会增加路由器的受攻击风险,如无特殊需求建议关闭此功能;

8.关闭SSH功能和远程SSH功能,降低路由器被控制的风险;

9.禁止使用默认的用户名和易被暴力破解的弱口令。

附录一:参考资料

[1]RedTeam Pentesting首页:https://www.redteam-pentesting.de

[2]Cisco官网:https://www.cisco.com

[3]设备数量数据:https://docs.google.com/spreadsheets/d/1ZocV8n4DOmcKJ_ugjjQ_gjIAmDHxT1JBhVxIAdABVyY/edit#gid=1297196434

*本文作者:antiylab,转载请注明来自FreeBuf.COM

概述

2019年4月23日,安天CERT发现响尾蛇(SideWinder)APT组织针对巴基斯坦进行的鱼叉式钓鱼邮件攻击事件。该APT组织疑似来自南亚某国,最早活跃可追溯到2012年,主要针对巴基斯坦等国进行攻击,近两年内被安全厂商披露过多次攻击行动/事件,相关攻击事件见下图。

响尾蛇APT组织针对巴基斯坦的定向攻击事件分析

图 1‑1响尾蛇(SideWinder)APT组织近期活动事件时间轴

本次事件的攻击邮件仿冒巴基斯坦信德省(Sindh)警察局向旁遮普省(Punjab)政府相关人士发送一份标题为《警察紧急威胁等级常设作业程序》和《行动准备颜色代码》为主题的邮件,邮件正文与近期南亚热点问题之一反恐怖主义相关,并在附件中包含存在恶意代码的文档“STANDING OPERATING PROCEDURES FOR POLICE EMERGENCY THREAT LEVELS AND COLOR CODES FOR OPERATIONAL READINESS.docx”。攻击者利用两个文档漏洞最终投放木马程序,再通过木马接收远程服务器投放的恶意JS脚本文件执行指定的恶意行为。

响尾蛇APT组织针对巴基斯坦的定向攻击事件分析

图 1‑2针对巴基斯坦人士发送的钓鱼邮件

表1‑1邮件内容翻译

攻击流程

该事件中攻击者使用了两个文档漏洞,通过HTA文件进行初始恶意文件释放和配置,利用白加黑(对可信文件credwiz.exe加载的库文件Duser.dll进行替换)加载恶意载荷并连接远程服务器接收恶意JS脚本,具体攻击流程如图2-1所示:

响尾蛇APT组织针对巴基斯坦的定向攻击事件分析

图2-1 样本执行流程

样本分析

表 3‑1恶意文档标签(邮件附件)

病毒名称 Trojan[Exploit]/MSWord.CVE-2017-0199
原始文件名 STANDING OPERATING PROCEDURES FOR POLICE EMERGENCY THREAT LEVELS AND COLOR CODES FOR OPERATIONAL READINESS.docx
MD5 393497c43c760112714f3bb10f5170d2
文件大小 13.78 KB
文件格式 Document/Microsoft.DOCX[:Word 2007-2012]
利用漏洞 CVE-2017-0199
VT首次上传时间 2019-04-23 09:49:41
VT检测结果 13/60

恶意文档执行后会触发CVE-2017-0199漏洞,显示掩饰文档并从以下链接下载并运行文件main.rtf。http://www.punjabpolice.gov.pk.standingoperatingprocedureforemergencythreat.cdn-in[.]net/images/5491E413/-1/7384/89dfd89e/main.RTF

恶意文档运行后显示的掩饰文档如图3-1所示:

响尾蛇APT组织针对巴基斯坦的定向攻击事件分析

图 3‑1掩饰文档截图

表 3‑2 main.RTF

病毒名称 Trojan[Exploit]/RTF.CVE-2017-11882
原始文件名 main.RTF
MD5 1fe3d9722db28c2f3291ff176b989c46
文件大小 3.38 KB
文件格式 Document/Microsoft.RTF[:Rich Text Format]
利用漏洞 CVE-2017-11882
VT首次上传时间 2019-04-24 15:47:03
VT检测结果 25/56

main.RTF的样本标签如表3-2所示,该文档运行后会触发CVE-2017-11882漏洞,并从http://cdn-in[.]net/includes/b7199e61/-1/7384/35955a61/final下载一个hta文件(以下称作final.hta)并执行(见表3-3)。

表 3‑3 final.hta样本标签

病毒名称 Trojan[Dropper]/Script
原始文件名 final.hta
MD5 16e561159ee145008635c52a931b26c8
文件大小 83.62KB
文件格式 Script/Netscape.JS[:JavaScript]
利用漏洞
VT首次上传时间 2019-04-25 09:16:02
VT检测结果 2/58

final.hta是一个HTML应用程序,它的运行流程如下:

1.      首先寻找系统文件“C:\Windows\System32\credwiz.exe”

2.  如果找到credwiz.exe,则将它复制到“C:\ProgramData\drvr\srvc2.0\”目录下,并在该目录下写入Duser.dll文件(见图3-2)。

响尾蛇APT组织针对巴基斯坦的定向攻击事件分析

图 3‑2文件释放目录

3.  将“C:\ProgramData\drvr\srvc2.0\credwiz.exe”设为注册表自启动项。

4.  如果前三个步骤都执行成功,则向“http://cdn-in[.]net/plugins/-1/7384/true/true/”发送一条HTTP GET请求。如果前三个步骤有出错而导致操作终止,则将错误信息附在链接“http://cdn-in[.]net/plugins/-1/7384/true/true/”的最后,并发送该条请求。

final.hta释放的Duser.dll为病毒文件(样本标签见表3-4),而credwiz.exe是合法的系统文件,credwiz.exe的运行需要导入Duser.dll,攻击者利用这一机制试图绕过安全软件检测。

表 3‑4Duser.dll样本标签

病毒名称 Trojan[Spy]/Win32.Stealr
原始文件名 Duser.dll
MD5 21cc890116adcf092d5a112716b6a55f
文件大小 98.5KB
文件格式 BinExecute/Microsoft.DLL[:X86]
时间戳 2019-03-14 10:31:27
编译语言 Microsoft Visual C++
VT首次上传时间 2019-04-28 03:13:34
VT检测结果 21/65

credwiz.exe运行后,Duser.dll作为调用文件被导入。Duser.dll运行后,每10分钟向链接https://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/43e2a8fa/css发送一次GET请求(图3-3),然后解密返回的数据,得到一个JavaScript脚本并运行。(见图3-4)

响尾蛇APT组织针对巴基斯坦的定向攻击事件分析

图 3‑3发送HTTPS请求及解密数据

响尾蛇APT组织针对巴基斯坦的定向攻击事件分析

图 3‑4联网操作

在我们的分析过程中,服务器端返回的JS脚本是用于收集系统信息,然后将这些信息组合成JSON数据格式,通过HTTPPOST请求发送到以下链接(部分收集的信息见图3-5),这种首先进行信息采集的攻击方式在APT攻击中非常普遍,攻击者会根据收到的信息对受害目标进行分析判定后采取进一步行动,如窃取信息、投放其他恶意程序等。

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css

响尾蛇APT组织针对巴基斯坦的定向攻击事件分析

图 3‑5部分收集的信息截图

收集的信息包括:

系统账户信息、操作权限、系统基本信息、硬件信息、网络适配器

反病毒产品列表、已安装的程序、系统进程信息

处理器配置、操作系统信息、时间区域、补丁信息

文件目录列表

小结

响尾蛇(SideWinder)组织是近两年比较活跃的APT攻击组织,该组织的攻击目标主要在巴基斯坦等国,攻击手法采用涉及印度、中国和巴基斯坦军事边界为主题的英文网络钓鱼邮件。该组织十分擅长使用Nday漏洞、 PowerShell、代码混淆技术以及利用开源武器代码,相关报告还提及该组织有针对Android系统的恶意软件。据安全厂商公开资料和地缘关系分析来看,该组织很可能来自南亚某国,目前未发现相关活动与白象等相关威胁行为体的关联,但不排除是同一攻击背景来源方向或新的攻击组织或分支小组。

附录一:IOC

MD5:

549FB138B02C5420D6EA13F7A1A341B0 EML
393497C43C760112714F3BB10F5170D2 CVE-2017-0199
1FE3D9722DB28C2F3291FF176B989C46 CVE-2017-11882
A1CA53EFDA160B31EBF07D8553586264 CVE-2017-11882
16E561159EE145008635C52A931B26C8 hta
21CC890116ADCF092D5A112716B6A55F Duser.dll
62606C6CFF3867A582F9B31B018DFEA5  
52FA30AC4EDC4C973A0A84F2E93F2432  
CE53ED2A093BBD788D49491851BABFFD  
737F3AD2C727C7B42268BCACD00F8C66  
2D9655C659970145AB3F2D74BB411C5D  
E021A9E4EEA1BF7D494269D20510E82C  
032D584F6C01CC184BF07CDEC713E74D  
90E9F50E8E799DD340E09793A49A3521  
F44A45E6F6273A7FB3D5CEE145760362  
FB362FE18C3A0A150754A7A1AB068F1E  
423194B0243870E8C82B35E5298AD7D7  
81F9EB617A2176FF0E561E34EF9FF503  

Domain:

cdn-list[.]net C2
punjabpolice.gov.pk.standingoperatingprocedureforemergencythreat.cdn-in[.]net Download URL

URL:

http://www.punjabpolice.gov.pk.standingoperatingprocedureforemergencythreat.cdn-in[.]net/images/5491E413/-1/7384/89dfd89e/

http://www.punjabpolice.gov.pk.standingoperatingprocedureforemergencythreat.cdn-in[.]net/images/5491E413/-1/7384/89dfd89e/main.RTF

http://www.punjabpolice.gov.pk.standingoperatingprocedureforemergencythreat.cdn-in[.]net/images/5491E413/-1/7384/

http://www.punjabpolice.gov.pk.standingoperatingprocedureforemergencythreat.cdn-in[.]net/images/5491E413/-1/7384/89dfd89e/

http://www.punjabpolice.gov.pk.standingoperatingprocedureforemergencythreat.cdn-in[.]net/images/5491E413/-1/7384/89dfd89e/main.RTF

http://www.punjabpolice.gov.pk.standingoperatingprocedureforemergencythreat.cdn-in[.]net/images/5491E413/-1/7384/

http://cdn-in[.]net/includes/b7199e61/-1/7384/35955a61/final

http://cdn-in[.]net/plugins/-1/7384/true/true/

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/1

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/2

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/3

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/v4.0.30319

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/4

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/5

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/6

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/7

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/8

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/9

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/10

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css

http://cdn-in[.]net/includes/b7199e61/-1/7384/35955a61/final

http://cdn-in[.]net/plugins/-1/7384/true/true/

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/1

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/2

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/3

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/v4.0.30319

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/4

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/5

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/6

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/7

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/8

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/9

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css/10

http://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/134/7e711ada/res/css

https://cdn-list[.]net/1SdYMUrbdAfpgSt3Gv13U8Jca6qOvI4I2Fa1zSCT/-1/7384/43e2a8fa/css

*本文作者:antiylab,转载请注明来自FreeBuf.COM

一、概述

安天CERT(安天安全研究与应急处理中心)发现2019年2月13日至3月7日期间发生数起大规模有组织的针对部分东亚国家(主要为日本和韩国)的钓鱼邮件攻击行为,事件涉及的样本数量较多,邮件正文和攻击文档内容分为日语和韩语版本,攻击目的是投放远控木马养殖僵尸网络以获利。

攻击者利用掌控的大量被盗邮箱账号,向日本和韩国两国的商业公司和金融机构批量发送钓鱼邮件,投递附带恶意Excel 4.0宏代码的攻击文档,传播FlawedAmmyy远控木马。通过对数起邮件钓鱼攻击活动的深入分析,我们发现这些活动存在很大关联性,且攻击者的动机、作业风格、技术战术过程和使用的远控都十分符合活跃于全球的黑产组织TA505[1]。

二、事件分析

2019年2月13日和19日,安天CERT观察到了两次针对韩国用户的数量明显的钓鱼邮件攻击活动。紧接着,2月20日,手法高度相似的针对日本的钓鱼邮件开始出现。2月27日、3月6日和7日,同20日的恶意文档高度相似的针对韩国的攻击邮件再度出现。 

20190322t1.png

图 2-1 2月和3月份观测到的五批次针对日韩两国的钓鱼邮件攻击活动时间线

根据韩国安全从业人员的统计和分享[2],截至2月19日,已有逾9千韩国邮箱账户受到了前两批次的钓鱼邮件攻击,发信人姓名大多是“조효상”,少量为“정재민”,涉及邮箱主要归属于韩国金融相关的企业和机构,发送钓鱼邮件的邮箱地址达1124个。日本的钓鱼邮件量目前则仅见近百封,被攻击的也是商业公司。

三、样本分析

3.1 Excel 4.0宏利用技术

Excel 4.0 (XLM)宏是在VBA(Visual Basic for Applications)宏出现之前Microsoft Excel支持的宏编程技术,如今由于用其开发出的宏病毒具有一定免杀效果而被滥用,广泛出现在各种传播恶意代码的网络活动中。 

20190322t2.png

图 3-1 隐藏在Workbook流中执行远控木马的恶意宏代码片段

在钓鱼邮件中加入包含漏洞利用或恶意脚本(宏代码、Javascript等)的文档作为入侵渗透先锋,已经成为高级威胁中十分常见的手法。对比这两种不同的手法,我们不难发现,在渗透实战中使用恶意脚本是相当优选的攻击手段。

表 3- 1漏洞利用和脚本入侵的成本对比

20190322t3.png

面对目前安全厂商对常见Office Nday漏洞利用较成熟的检出能力,且基于成本考虑,众多攻击组织愈来愈青睐于使用宏代码进行攻击。此次一系列针对韩国和日本的钓鱼邮件即采取带有恶意宏的文档作为下载器,下载运行后续载荷。

3.2 攻击样本分析

在这系列攻击活动中,攻击者通过伪造发票等主题相关的邮件诱使被攻击者打开附件。

20190322t4.png

图 3-2 针对韩国的钓鱼邮件正文

20190322t5.png

图 3-3 针对日本的钓鱼邮件正文

附件主要分为xls表格和doc文档,且语言上都存在日语和韩语版本:

20190322t6.png

图 3-4 针对日韩两国的诱饵文档

针对两国的诱饵文档使用相似手法诱使受害者开启宏执行权限,下面以样本DA0DC5E26A4DD2F85C1C56F65999F79B为例分析其恶意行为。

表 3-2恶意宏文档样本

20190322t7.png

样本在表格中隐藏了含有Excel 4.0宏的工作表。

20190322t8.png

图 3-5 工作表取消隐藏设置前后对比

20190322t9.png

图 3-6 隐藏工作表中的宏代码

宏脚本设置为Auto_Open,即打开文件后自动运行,执行动作为下载http://***365office[.]com/agp并安装执行。另外在一些doc诱饵文档中发现另一种宏脚本恶意行为隐藏技术,此方法利用vba中窗体控件的属性Tag为字符串类型的特征,将恶意命令拆分后放入不同控件的tag属性中,执行vba脚本时再进行拼接。

20190322t10.png

20190322t11.png

图 3-7 隐藏在窗体中的恶意代码片段

样本DA0DC5E26A4DD2F85C1C56F65999F79B利用宏下载到的文件如下。

表 3-3 MSI格式的释放者程序“agp”

20190322t12.png

MSI安装程序的内部包含的有效执行体信息如下。

表 3-4 MSI程序包含恶意的PE执行体

20190322t13.png

此执行体含有数字签名,签名的时间戳为针对韩国的第一批次攻击活动(2月13日)的前一晚。

20190322t14.png

图 3-8 MSI程序包含的PE执行体带有有效数字签名

20190322t15.png

图 3-9 获取网络相关函数开始下载文件

执行体调用“InternetReadFile”API函数下载文件http://185.17.***.201/dat3.omg(MD5:5D1DA0526A5A65B3308512159E98F388),通过与求解到的密钥进行解密运算,在内存中得到最终的远控木马(MD5:25D48C3A71A5F8777AD4DB67C2A4F649)。

20190322t16.png

图 3-10求解解密密钥

20190322t17.png

图 3-11 在内存中解密最终的远控木马

成功获取远控木马后,接着根据自身环境确定持久化途径是注册系统服务还是写注册表自启动项。

20190322t18.png

图 3-12 注册系统服务或写注册表自启动项实现持久化

通过分析远控木马的指令功能和网络行为,判断其为FlawedAmmyy远控。FlawedAmmyy远控是基于商业远程桌面软件Ammyy Admin V3泄漏的源代码编写而成[6],功能上包含远程桌面控制、远程文件管理、音频监控、击键记录、窃取凭证等功能。样本同C2的通讯流量也展示出FlawedAmmyy远控木马典型的字段格式:

id=8位数ID

&os=操作系统

&priv=权限

&cred=用户名

&pcname=计算机名

&avname=杀软名称

&bulid_time=木马编译时间

&card=是否插入智能卡&

20190322t19.png

图 3-13 FlawedAmmyy远控通讯时典型的流量特征

4、组织关联与画像

本次捕获的样本同以往TA505活动的关联点:

(1)大量xls文档样本的诱饵页面表单和存放恶意宏的隐藏表单使用了俄语命名,同之前TA505组织构造Excel 4.0恶意宏时创建的隐藏表单名一致。

20190322t20.png

图 4-1 TA505之前样本俄语命名的表单名

20190322t21.png

图 4-2 其中的四批次行动所投放的样本的表单命名同TA505以往的样本完全一致

剩下的2月18日样本文档的正文内容虽是韩语,但默认编辑语言仍为俄语,同TA505组织于2018年12月西班牙语版的攻击文档也十分相似:

20190322t22.png

图 4-3 2月18日攻击文档默认编辑语言为俄语

20190322t23.png

图 4-4 TA505组织2018年12月18日使用的西班牙语版攻击文档

(2)2月13日恶意宏文档的正文内容同TA505之前的样本高度一致,仅语言文字上针对攻击目标修改成了韩语和日语。

20190322t24.png

图 4-5 TA505组织之前使用过的英文版和西班牙语版的攻击文档正文

20190322t25.png

图 4-6 2月13日针对韩国的攻击文档样例的正文

(3)2月27日和3月6日针对韩国的恶意文档也使用相同的手段改写了2月20日针对日本的恶意文档正文:

20190322t26.png

图 4-7 2月20日针对日本与2月27日、3月6日针对韩国的攻击文档正文

部分恶意宏下载MSI Downloader的URL:“http://***365office[.]com/agp”,与TA505以往使用过的作为同样用途的URL:“http://office365advance[.]com/update、http://office365homepod[.]com/genhost、 http://add3565office[.]com/rstr”[3]和“http://local365office[.]com/content”[4]和“http://office365idstore[.]com/std、http://office365homedep[.]com/localdata、 http://office365id[.]com/WpnUserService”[5]等在选词命名的习惯上有一定的相似性,且域名“***365office[.]com”的注册邮箱为regprivate.ru。

MSI下载者程序所使用的一些数字签名,目前仅发现出现在2月和3月份的攻击活动中,应该是攻击者为这一系列针对日韩的攻击行动而专门准备的。这些数字签名的注册邮箱部分为mail.ru,其他的为gmail,但gmail绑定的验证邮箱地址仍为mail.ru。

(4)在目前观测到的五批次攻击活动中,最终投放的木马主要是FlawedAmmyy远控木马。FlawedAmmyy远控是基于商业远程桌面软件Ammyy Admin V3泄露的源代码改编而成,且曾反复出现在TA505组织海量投送钓鱼邮件的攻击活动中[6]。

基于以上四点能看出,这一系列的攻击活动在细节上延续了TA505组织以往在构造诱饵文档、嵌入恶意代码、注册域名和远控木马上的一贯特点。除了这些,从攻击者的动机(养殖僵尸网络以获利)、作业风格(择期针对目标行业或地区海量发送个性化钓鱼邮件投递木马)、战术(防御规避、常驻、命令与控制)、技术(恶意Excel 4.0宏、数字签名)、过程(大规模钓鱼邮件的文档附件→写入俄语命名的隐藏表单的恶意Excel 4.0宏→宏代码下载带数字签名的MSI格式Downloader→内存中解密运行FlawedAmmyy远控木马)等来看也都十分符合TA505的特征。

但由于尚未发现其网络基础设施和数字签名等方面的关联证据,我们目前仅能怀疑在2019年2月13日至3月7日期间发生的五批次大规模有组织的针对日本和韩国的邮件钓鱼攻击活动,幕后者疑似为活跃于全球的著名黑产组织TA505。

表 4-1 TA505组织特征画像

20190322t27.png

五、小结

从目前来看,本次事件应是大规模有组织的针对日本和韩国金融业的一系列黑产行为,攻击者的动机为养殖僵尸网络以获利,从攻击者的攻击意图、作业风格、技术战术过程和使用的木马等因素和细节上看,都十分符合著名黑产组织TA505。TA505组织于2017年9月被Proofpoint首次曝光,自2014年以来频繁地向全球范围的特定目标行业或地区海量发送个性化钓鱼邮件投递木马,通过黑产途径获取非法的经济利益。

参考资料

[1] Threat Actor Profile: TA505, From Dridex to GlobeImposter.

https://www.proofpoint.com/us/threat-insight/post/ threat-actor-profile-ta505-dridex-globeimposter

[2] NOMORETA505 | Kyoung-ju [email protected]

https://twitter.com/kjkwak12/status/1097882694082428929

[3] TA505组织利用Excel 4.0宏针对银行机构的最新攻击活动分析。

https://ti.360.net/blog/articles/excel-4.0-macro-utilized-by-ta505-to-target-financial-institutions-recently/

[4] TA505 targets the US retail industry with personalized attachments. 

https://www.proofpoint.com/us/threat-insight/post/ta505-targets-us-retail-industry-personalized-attachments

[5] MORPHISEC UNCOVERS GLOBAL “PIED PIPER” CAMPAIGN. 

https://blog.morphisec.com/morphisec-uncovers-pied-piper-campaign

[6] Leaked Ammyy Admin Source Code Turned into Malware. 

https://www.proofpoint.com/us/threat-insight/post/leaked-ammyy-admin-source-code-turned-malware 

[7] ServHelper and FlawedGrace – New malware introduced by TA505. 

https://www.proofpoint.com/us/threat-insight/post/servhelper-and-flawedgrace-new-malware-introduced-ta505

*本文作者:antiylab,转载请注明来自FreeBuf.COM

一、概述

近日,安天微电子与嵌入式安全研发部(安天微嵌)针对SafeBreach[1]公司披露的Windows IoT[2]操作系统的安全漏洞进行了详细分析和验证。攻击者利用该漏洞可实现对目标设备的完全控制,如远程命令执行、文件上传/下载等。对此,安天微嵌成立了分析小组,分析验证了SafeBreach公司在GitHub中公布的该漏洞的原理及POC,对该漏洞的影响范围进行了确认,并针对不同应用场景给出了相应的防护建议。

1.1 Windows IoT系统简介

Windows作为IoT市场中仅次于Linux系统的第二大系统,其Windows IoT Core是面向物联网领域的核心操作系统版本,覆盖了智能家居、智能医疗、智慧城市、智能物流等众多领域。Windows IoT分为IoT Core和IoT Enterprise版本,而Windows IoT Core又分为Stock Image和Custom Image两个版本。其中,Stock Image版本也被称为Test Image版本,其包含了用于开发及硬件兼容性测试用途的相关接口。

Windows IoT Core系统目前支持的硬件平台包括:高通DragonBoard 410c、树莓派2、树莓派3B、MinnowBoard Turbot、Aaeon Up Squared。

1.2 HLK框架及Sirep协议简介

HLK(Hardware Lab Kit)是一个用于测试硬件设备及对应驱动程序和Windows系统之间兼容性的测试框架。PC端软件HLK Studio[3]中包含了该测试框架的Server部分,测试设备中包含了该测试框架的Client部分。用户可在HLK Studio中选择测试用例并发送到待测试的设备中进行测试。在底层实现中,HLK Studio软件通过Sirep协议[4]与待测试设备进行交互。HLK Server与HLK Client的关系如图1-1所示:

图1-1 HLK Server与HLK Client的关系

实现Sirep协议的DLL文件位于Windows IoT Core系统的C:\..\testsirepsvc.dll位置,该DLL实现了包括HLK Studio和Windows IoT Core系统间的通信功能,及执行HLK Studio下发至Windows IoT Core的测试任务等功能。而Sirep协议本身实现了如下功能:

获取Windows IoT Core系统信息;

执行Windows IoT Core系统命令;

下载Windows IoT Core系统中的文件;

上传文件到Windows IoT Core系统中;

获取Windows IoT Core系统中的文件属性信息。

二、影响范围

根据公开资料及分析小组实际验证,该漏洞目前主要影响Windows IoT Core的Stock/Test Image[4]版本。若开发人员或厂商在最终发布的产品中使用了Stock/Test Image版本的系统,且该产品存在有线连接场景,则会受到此次披露的漏洞影响。构建Custom版本需要从CA(Certificate Authority)购买签名证书,并使用该证书对Custom版本的系统进行签名,因为时间仓促,分析小组暂未对Custom版本的Windows IoT系统进行验证。

三、 漏洞分析

本次分析过程使用树莓派2B和Windows IoT Core(17763)版本作为验证环境。设备连接示意图如图3-1所示:

图3-1 设备连接示意图

首先,可使用Windows 10 IoT Core Dashboard[5]软件制作带有Windows IoT Core系统的TF卡,然后将TF卡插入到树莓派中,使用网线连接树莓派,通电后即可启动系统。系统启动后,Windows 10 IoT Core Dashboard软件可自动发现局域网范围内的Windows IoT 设备、执行启用远程PowerShell、向设备中部署应用软件等。但这些操作需要首先通过Windows IoT系统管理员账号和密码认证才能正常使用。

在实现Sirep协议时,testsirepsvc.dll的代码使用TCP Socket服务程序监听了29817、29819、29820端口,且在代码中并未对接收到的请求进行适当的权限检查,进而导致了在未经授权的情况下即可执行Sirep协议所实现的功能。

在testsirepsvc.dll中,实现对远程请求进行权限检查的函数名称为:

ControllerWSA::IsConnectionAllowed

在Windows IoT Core系统运行后,可通过U盘将该DLL文件拷贝到分析机中,使用IDA查看实现该函数的汇编代码,如图3-2、图3-3所示:

图3-2 ControllerWSA::IsConnectionAllowed函数代码片段1

图3-3 ControllerWSA::IsConnectionAllowed函数代码片段2

以上代码片段解释了testsirepsvc.dll如何对接收到的请求进行权限检查的逻辑,程序逻辑仅仅判断getsockname函数返回的SOCKADDR_IN数据结构是否为有线网卡的IP地址,也就是说testsirepsvc.dll认为所有来自有线网络的请求都是合法的请求,这个过程并不需要用户输入用户名和密码进行认证。

在testsirepsvc.dll中的服务程序接收到HLK Studio发送的命令数据后,会经过SirepPipeServiceRoutine函数进行分流,在该函数中通过命令类型字段将不同的命令分流到不同的函数中进行执行,不同的命令类型对应的执行函数名称分别为:

SirepGetSystemInformationFromDevice;

SirepPutFileOnDevice;

SirepGetFileFromDevice;

SirepGetFileInformationFromDevice;

SirepLaunchWithOutput

实现该命令分流过程的SirepPipeServiceRoutine函数汇编代码如图3-4所示:

图3-4 SirepPipeServiceRoutine函数命令分流代码

四、POC执行验证

分析小组通过树莓派2B和Windows IoT Core(17763)(Stock/Test Image)搭建了验证环境,结合上述的分析过程对公开的POC[6]进行了验证。

上传文件POC执行示例如图4-1、图4-2所示:

图4-1 上传文件POC执行示例

如图4-1所示,该POC在C:\Windows\System32\目录下创建了一个名为uploaded.txt的文件,文件内容为“Hello Windows IoT!”。

图4-2 查看上传文件结果

如图4-2所示,在执行图4-1所示的POC命令后,使用cat命令可查看C:\Windows\System32\目录下的文件名为uploaded.txt的文件内容。

远程执行系统命令POC执行示例如图4-3所示:

图4-3 远程执行系统命令POC执行示例

如图4-3所示,该POC实现了远程命令执行,在目标设备中执行了hostname命令,并返回了命令执行的结果,即“minwinpc”

经过验证,SafeBreach公司安全研究人员公开的POC能够实现对Stock/Test Image版本的Windows IoT Core系统的上传文件和执行系统命令,Stock/Test Image版本的Windows IoT Core系统存在严重的安全隐患。

五、防护建议

本次验证的漏洞能够不经授权就可以在受影响系统设备上执行上传文件和执行系统命令等高危动作,恶意软件通过本漏洞的利用很容易劫持设备成为僵尸网络的一员,成为黑客发起网络攻击的武器之一;设备也能够被黑客控制成为挖矿中的一部分;同时由于IoT设备应用于各行各业,一旦受到控制最直接的就是影响设备的正常运行,进而对生产生活造成影响;同时黑客也可以通过设备作为跳板进一步入侵IoT设备所在网络进行病毒传播、情报窃取和网络破坏等危险行为,对目标网络造成严重威胁。

虽然本次验证的漏洞仅适用于Stock/Test Image版本的Windows IoT Core系统,但由于构建Custom版本需要从Certificate Authority (CA)购买签名证书,并使用该证书对Custom版本的系统进行签名,厂商可能出于成本或其它方面考虑直接使用Stock/Test Image版本的Windows IoT Core系统进行产品发布,也就是说以Stock/Test Image版本的Windows IoT Core系统IoT设备可能已经广泛进入供应链。并且IoT设备在现实应用场景中进行固件升级较为困难,容易被忽视。

综合上述情况,为了有效降低漏洞所带来的威胁,在提高产品安全性的同时,有效提升产品所在网络的安全防护能力,保障客户价值,我们结合漏洞的分析和验证情况给出三点安全建议,具体如下:

建议一: 产品实际的上线过程应该严格按照官方要求的研发、测试和发布流程规范操作,使用Custom Image而非Stock/Test Image版本的Windows IoT系统作为实际产品的发布系统,能够有效避免本次或其它未被发现的Stock/Test Image版本系统漏洞所产生的影响。

建议二:本漏洞所涉及到的服务使用29817、29819、29820三个端口,且涉及到的服务仅用于研发阶段的兼容性测试,并不是实际产品所使用的功能。在暂时无法升级固件的情况下,并确保实际产品中没有依赖相应端口的功能,以防止在关闭相应端口后影响设备的正常使用,则可以临时在Windows IoT Core系统防火墙中将兼容性测试服务所使用的29817、29819、29820三个端口进行阻断,也可暂时避免本次披露漏洞所产生的影响。但仍需要尽快升级固件修补漏洞,才能有效避免本次或其它未被发现的Stock/Test Image版本系统漏洞所产生的影响。

在Windows IoT Core系统临时阻断端口的命令如下:

建议三: 根据IoT设备所实现功能的技术特征并结合实际运行环境,详细梳理可以访问设备的IP列表、端口列表、访问协议类型,以及设备可以向外主动连接的协议类型、IP列表和端口列表,结合梳理结果使用边界防火墙产品或设备专用防火墙产品配置相应的双向IP地址、端口和协议的白名单访问规则列表,可最大限度的保障IoT设备的访问安全。该方法虽然能够有效保障IoT设备的访问安全,降低漏洞被利用的可能,但并未根除漏洞风险,所以尽快升级固件修补漏洞,才能有效避免本次或其它未被发现的Stock/Test Image版本系统漏洞所产生的影响。

参考链接

[1] SafeBreach: https://safebreach.com/News-Post/SafeBreach-Labs-Discloses-New-Microsoft-Windows-IoT-Core-Weakness-and-Exploit

[2] Windows IoT: https://docs.microsoft.com/en-us/windows/iot-core/windows-iot-core

[3] HLK Studio: https://docs.microsoft.com/en-us/windows-hardware/test/hlk/user/hlk-studio

[4] Sirep协议和Stock Image: https://github.com/SafeBreach-Labs/SirepRAT/blob/master/docs/SirepRAT_RCE_as_SYSTEM_on_Windows_IoT_Core_White_Paper.pdf

[5] Windows 10 IoT Core Dashboard: https://docs.microsoft.com/en-us/windows/iot-core/connect-your-device/ iotdashboard

[6]POC: https://github.com/SafeBreach-Labs/SirepRAT

*本文作者:antiylab,转载请注明来自FreeBuf.COM

概述

安天CERT(安全研究与应急处理中心)在2018年12月至今,捕获多例针对中国用户的恶意宏文档攻击样本。这些恶意文档通过在模糊的文字背景上伪装出杀毒软件的安全检测结果,诱导受害者启用恶意宏代码,向Word进程自身注入Shellcode,最终在内存中解密和运行后门程序。根据对该后门的深入分析,我们发现该样本来自海莲花[1]组织。

安天于2015年5月27日发布关于该组织的分析报告[1]引发业内对该组织的持续关注。鉴于安天在当时所捕获的攻击中,发现了攻击方使用了商用攻击平台Cobalt Strike,安天将其命名为APT-TOCS(即借助CS平台的APT攻击组织),但由于使用CS只是该攻击组织的一个特点,且缺乏组织命名的地缘特点,因此,我们后续采用了友商360的命名——“海莲花”。

本次发现样本与2018年12月ESET[2]曝光过的海莲花专用后门极为相似,而通过对后门样本的C2进行关联,我们发现了更多通过恶意自解压程序传播该后门的样本。其中部分样本针对中国,更多的样本则针对柬埔寨等多国。部分自解压样本传播的后门,其C2直接连接到了已知的海莲花组织的网络基础设施。

根据专用后门和网络基础设施这两方面的强关联性,我们有理由相信这些样本关联的攻击行动是海莲花APT组织所为。

样本分析

2.1 样本标签

相关攻击载荷均为Word文档,但并未使用漏洞。而是在其中嵌入恶意宏代码,通过宏代码触发后续恶意行为,最终向目标主机植入后门,这是一个阶段以来较为流行的方式。攻击者为使受害目标启用宏代码,在文档正文中通过一段欺骗性内容诱导用户点击“启用内容”从而触发恶意宏代码执行,我们从这批样本中列举其中两个的情报标签:

表2‑1 恶意文档1

病毒名称 Trojan/Win32.VB.dropper
原始文件名 2018年公司总结报告补充建议.doc
文件大小 2.03 MB (2,127,360 bytes)          
文件格式 Document/Microsoft.Word
创建时间 2018-12-26 03:53:00
最后修改时间 2018-12-26 03:53:00
文档创建主机名 Admin
代码页 Latin I
VT首次上传时间 2019-03-07 04:44:06
VT检测结果 10/55

表2‑2 恶意文档2

病毒名称 Trojan/Win32.VB.dropper
文件大小 2.94 MB (3,083,776 bytes)
文件格式 Document/Microsoft.Word
创建时间 2019-01-24 02:39:00
最后修改时间 2019-01-24 02:39:00
文档创建主机名 Admin
代码页 Latin I
VT首次上传时间 2019-03-08 06:47:27
VT检测结果 10/59

2.2 技术分析

相关文档样本采用了社会工程技巧,伪装出360杀软的安全检测结果,诱导受害者启用附带的恶意宏,其正文内容见图2-1、图2-2所示。

image.png

图2-1 恶意文档1截图

image.png

图2-2 恶意文档2截图

恶意样本中包含被混淆的vb脚本,解混淆后发现此脚本作用为:

1.复制当前文件到%temp%文件夹下。

2.获取并解密第二段脚本,试图写入注册表(”HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Word\Security\AccessVBOM”)。此注册表值为1时,允许对文档的vb模块进行访问和修改,如下图所示:

image.png

图2-3 读取并修改注册表

3.打开%temp%下已复制的文档,移除文档中已存在的vb模块,写入新模块(图2-4):

image.png

图2-4 修改已复制文件

4.打开已复制文档调用vb模块中的“x_N0th1ngH3r3”函数如下图所示,之后,恶意文档显示一个虚假消息,如图2-5、图2-6所示:

image.png

图2-5 调用vb函数

image.png

图2-6 虚假消息显示

第二段脚本与第一段脚本有颇多相似之处,解密第三段脚本,然后其通过设置注册表,获得对自身vb资源修改的能力,并在文档自身中加入第三段脚本:

image.png

图2-7 第二段脚本主要功能(脚本已反混淆)

第三段脚本解密出shellcode,并将其注入到winword.exe进程中。脚本入口函数仍然命名为“x_N0th1ngH3r3”,此函数会区分64位或32位进程,采用适当方式进行进程注入:

image.png

图2-8 64位进程注入的前期准备

image.png

图2-9 32位进程注入的前期准备

注入进程的代码有908 KB (929,792 字节),经过深入分析发现,这段注入的代码会引导运行最终的后门程序,该后门已于2018年12月被ESET曝光,为海莲花组织所开发使用[2]。

后门程序的原始名称为“{A96B020F-0000-466F-A96D-A91BBF8EAC96}.dll”,见下图:

image.png

图2-10 后门程序在内存中的信息

后门首先进行初始化,将资源节RCData加载至内存中,解密出配置数据和库文件:

image.png

图2-11 后门资源节包含的RC4加密数据

其解密出的数据内容:

image.png

图2-12 内存中解密的配置数据和库文件

图2-12中从上至下的内容依次代表:

1.注册表位置:

HKEY_CURRENT_USER\Software\App\AppX70162486c7554f7f80f481985d67586d\Application
HKEY_CURRENT_USER\Software\App\AppX70162486c7554f7f80f481985d67586d\DefaultIcon

这两处注册表的键值存放后门C2返回给受害主机的唯一UUID,作为session ID,以实际调试为例:32034d33-aecc-47d4-9dcd-f0e56063087f。

2.httpprov库文件,用于支持HTTP/HTTPS/SOCKS的方式同C2通信,与libcurl静态链接。

初始化完成后,后门开始通过HTTP协议POST方式,依次与C2列表中可用的C2通讯。HTTP通讯的User Agent为:’Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)’。

image.png

图2-13 后门同C2通讯的硬编码User Agent

3.后门会针对受害主机生成一个指纹,其支持的功能包括:进程操作、注册表操作、获取硬盘信息、本地文件操作、释放和执行程序、内存注入等,同之前ESET曝光的版本没有大的变化[2]。如下图所示,case 0×1 移动文件、case 0×3 获取硬盘信息、在case 0、2、4、5还包含:0xe 文件遍历、0xf 删除文件、0×12 创建文件夹、0×13删除文件夹。

image.png

图2-14 后门指令分支

本次捕获的海莲花样本较以往在技术手段上有了一定程度的提高,使用宏代码进行Shellcode注入,其投放载荷的全程无文件落地,可以看出海莲花组织仍然在积极更新自身攻击手法,试图使自己更加隐蔽,进而图谋更长久的潜伏于受害者机器。

三、关联分析

在分析后门C2唯一解析IP:45.122.***.***的时候,我们注意到了该IP曾被一个伪装成Adobe Reader主程序的恶意自解压程序“AcroRd32.exe”作为C2连接使用:

image.png

图3-1 后门C2关联到的自解压程序

该RAR自解压程序上传时的文件名为“李建香 (个人简历).exe”,最后修改时间同恶意文档1较为接近,图标伪装成AdobeReader。运行后通过“regsvr32”命令注册运行恶意控件,然后打开提示加密的中文PDF文档,由于当前未获取密码,未能知悉正文内容,但目前看来该PDF文档是无恶意行为的。

image.png

图3-2 C2关联到的2018年12月攻击中国的自解压样本

通过样本关联我们找到了更早的时间内,使用相同手法攻击柬埔寨等国的自解压样本:

image.png

图3-3 2018年7月相同手法攻击越南的样本

image.png

图3-4 2018年8月VirusTotal平台上与柬埔寨通过网页上传的相同手法的恶意样本

image.png

图3-5 2019年1月攻击目标未知的相同手法样本

目前发现的所有相关自解压样本,其图标都伪装成Adobe Reader、Office和图片等,部分样本的文件名还会伪装成诸如:“AcroRd32.exe”、“Excel.exe”、“WinWord.exe”等:

image.png

图3-6 自解压程序样本的图标伪装

它们包含的图片和Word文档也都是正常文件,作用是成功运行恶意载荷后分散受害者的注意力。

所有自解压样本中包含的恶意OCX控件的作用,是在内存中解密和调用最终的后门,我们将提取出的所有后门样本同第2节中恶意文档释放的后门进行代码比对,发现彼此都高度一致,基本能确认具有相同的来源。其中部分后门的C2连接到了已知的海莲花组织的网络基础设施:154.16.***.***该IP曾被多家安全厂商多次曝光[3],为海莲花组织长期维护和使用。

小结

通过以上分析,海莲花组织近期依然保持活跃。其针对中国乃至东南亚多国用户发动攻击,通过投放带有恶意宏的文档和自解压程序最终传播海莲花组织的专用后门达成对目标的长期控制和信息窃取。从使用的后门武器和网络基础设施(其中部分后门则直接连接上了已知的海莲花组织的网络基础设施)的特性分析,相关证据都能表明这些样本来自海莲花攻击组织。

如我们此前在“2018年网络威胁年报(预发布)”指出的一样,当前“通过分析曝光的方式迫使APT攻击组织行为收敛”的效果已经大打折扣,相关攻击方在C2基础设施地址已经暴露后,依然继续使用则是一个明证。这一方面可以使我们放弃简单的敲山震虎,就可以让敌人退避三舍的幻想;另一方面,也增加了一般化能力的高级威胁行为体,攻击行为的暴露面,为排查分析和进一步猎杀提供了一定的机会和条件。

安天的产品体系通过长期自主研发的AVL SDK“下一代反病毒引擎”实现全格式识别与深度解析、复合文档拆解、宏的抽取;智甲终端防御系统在主机侧多个防御点上实现检测和拦截;探海威胁检测系统在流量侧进行实现攻击行为检测、载荷捕获检测解析;各环节发现的未知文件均可联动追影沙箱进行分析,输出威胁情报规则,在部署于具有较好的可管理性网络体系中时,能较好的应对类似等级的攻击风险。安天现有产品客户可通过订阅“高级威胁追溯包”,进行进一步的风险追溯排查。但如应对更高水平的攻击,则进一步需要实战化运行的战术型态势感知平台实现全局指控,掌控敌情,协同响应。

附录一:参考资料

[1]安天:一例针对中方机构的准APT攻击中所使用的样本分析

https://www.antiy.com/response/APT-TOCS.html

[2]ESET:OceanLotus Old techniques, new backdoor

https://www.welivesecurity.com/wp-content/uploads/2018/03/ESET_OceanLotus.pdf

[3]疑似“海莲花”组织早期针对国内高校的攻击活动分析

https://ti.360.net/blog/articles/oceanlotus-targets-chinese-university/

*本文作者:antiylab,转载请注明来自FreeBuf.COM

本文由安天研究院与广东省电力系统网络安全企业重点实验室联合分析发布。

说明

2019年3月7日,委内瑞拉发生大规模停电事件。安天科技集团组织研究院、安天CERT等内部力量进行跟踪研判,并于3月9日、3月10日,向国家相关主管、职能部门报送了两期研判简报;广东省电力系统网络安全企业重点实验室积极跟进分析研判,于第一时间向主管部门报送了《委内瑞拉停电事件分析》,并于3月12日通过“南方电网技术情报中心”公众号发布《“3·7”委内瑞拉大停电事件快报》。为进一步加强分析研判力量,双方决定成立联合分析研判组,继续推动该事件的持续跟进分析。基于双方已调研了解的情况和初步判断整合形成此份初步分析。

一、概述

(一)事件发生及进展

2019年3月7日傍晚(当地时间)开始,委内瑞拉国内包括首都加拉加斯在内的大部分地区停电超过24小时[1],在委内瑞拉23个州中,一度有20个州全面停电,停电导致加拉加斯地铁无法运行,造成大规模交通拥堵,学校、医院、工厂、机场等都受到严重影响,手机和网络也无法正常使用。8日凌晨,加拉加斯部分地区开始恢复供电,随后其他地区电力供应也逐步恢复,但是9日中午、10日的再次停电,给人们带来巨大恐慌。长时间大范围的电力故障给委内瑞拉造成严重损失,包括连续多日停工停学,部分网站无法访问,甚至部分地区出现严重的哄抢商场超市情况[2]。此次停电是委内瑞拉自2012年以来时间最长、影响地区最广的停电。

据媒体报道,初次停电是因为南部玻利瓦尔州的一座主要水电站发生故障,这个水电站属于古里(Embalse de Guri)水电站[3]。古里水电站位于奥里诺科河卡罗尼河口上游约100公里的Necuima峡谷处,一期建设于1963年,二期建设于1976年。水电站大坝高约162米,长度为7426米,总蓄水容量达1350亿立方米。水电站共计装设21台水轮机组共计10235MW,分别为:10×730MW,4×180MW,3×400MW,3×225MW,年发电量约为47,000GWh,约占委内瑞拉用电量的近四成。古里水电站外观及地理位置如图1所示。

20190316t1.png

                                                                                                           图 1古里水电站外观及地理位置

(二)委内瑞拉政府反应

事件发生后,委内瑞拉政府立刻组织人力调拨资源全力恢复,与此同时,总统马杜罗指出,大规模停电 “是美国方面的攻击行为造成的”。3月11日晚,马杜罗表示,对该国电力系统发起的攻击分为三个阶段,包括网络攻击、电磁攻击、燃烧爆炸。3月12日,马杜罗在一次电视直播的活动中再次透露[4],攻击是在五角大楼的命令下由美军南方司令部直接执行的。同时,马杜罗请求俄罗斯、中国、伊朗和古巴协助调查。   

较早前,委内瑞拉新闻通讯部长罗德里格斯曾表示,马杜罗政府计划将证据提交给联合国人权事务高级专员。委国防部长称,军方已在该国的电力线上引入了空中监视系统。委军方还计划进行旨在保护电力系统的军事演习[5]。

二、委内瑞拉电力系统相关情况

(一)委内瑞拉电力系统现状

委内瑞拉全国发电量约为117,000GWh,其中水电占64%,天然气发电占19%,石油发电占17%[6]。水力发电集中在瓜亚纳地区的卡罗尼河上,位于该国东部,共有4座水电站,其余分别是古里(Embalse de Guri)水电站、卡鲁阿奇(Caruachi)水电站、马卡瓜(Macagua)水电站、卡罗尼(Caroní)水电站。其中,最大的古里水电站位列世界第四大水电站[7]。因水力发电厂所发出的电力电压较低,要输送给距离较远的用户,就必须将电压经过变压器增高,再由空架输电线路输送到用户集中区的变电所,最后降低为适合家庭用户、工厂用电设备的电压,并由配电线输送到各个工厂及家庭。EDELCA公司是委内瑞拉国内最大的一家电力公司,公司目前拥有两个已投产水电厂,即古里电厂和马卡瓜电厂,EDELCA公司两厂各机组电力外送示意图如图3所示。

20190316t2.png

                                                                                                         图 2古里水电站安装容量排名

20190316t3.png

图 3 EDELCA公司两厂和各机组外送示意图[8]

委内瑞拉自主工业体系相对薄弱,在发电机组、高压输变电等设备上基本依赖进口,在较长一段历史时期,其供应商和承包商均为欧美电器巨头。如委内瑞拉中央电厂共有6个机组,1、2号机组建成于上世纪70年代,均为40万千瓦,是引进意大利与德国的设备;3、4、5号机组建于上世纪80年代初,是德国与日本的设备,彼时单体40万千瓦的装机容量均属世界领先技术。但随着设备的老化,目前这5个发电机组均已退役。近几年,中国公司开始参与到委内瑞拉重要电力基础设施的建设工作中,包括发电厂的升级改造、新建大型水利和火力发电厂,承担输变电工程建设等。委内瑞拉中央电厂6号机组发电项目,由中国机械设备工程股份有限公司(CMEC)于2016年完成,装机容量60万千瓦,能为委内瑞拉全国电网提供约3%的发电量[9]。

由于主力发电能力分布在东部地区,委内瑞拉主网电力流呈现“东电西送”格局。从图4委内瑞拉主网架结构可以看出,委内瑞拉输电网由765kV、400kV、230kV三个电压等级构成,其中古里水电站输送给负荷中心的电力是通过765kV和400kV输送的。

20190316t4.png

图 4委内瑞拉电力系统主网架结构

(二)委内瑞拉的电力安全运维能力

关于委内瑞拉在电力系统安全运维能力上缺少足够的资料分析。从目前了解的有限信息来看,其运维能力和人员水平和我国相比,相对偏弱。但从少量公开资料来看,委内瑞拉电力相关产品选型和工程实施的标准起点,基本向欧美标准靠拢,其起点并不低,部分要求甚至高于我国。表1是委内瑞拉变电站系统相关建设要求与我国的对比。不过需要指出的是,绝大多数国家电力安全运维的措施,都是从应对事故的角度所建立,而这些措施对于应对物理攻击和破坏是远远不够的。

表 1委内瑞拉变电站系统相关建设要求及与中国的对比

    中国 委内瑞拉
控制 系统 测控装置 每台断路器配备一套测控装置 每台断路器配备一用一备两套测控装置,可靠性增加,但成本翻倍
断路器重合闸配置 配置在保护装置中 配置在I/O测控单元中
保护 装置 母线差动保护 集中式配置 分布式配置(主单元+子单元),成本较高
变压器保护 双套保护(为2套完整独立的主后备一体化保护装置,测量电流回路一般从断路器CT引接,无独立的方向过流保护装置做后备) 双套保护(需要按3个保护装置配置,置一套采用套管 CT做小差动,一套采用串内断路器的CT做大差动,并另配置一个方向过流保护装置做后备保护),成本较高
230kV、138kV线路保护 专用芯或通道复用接口装置 光纤电流差动保护和一套光纤纵联距离保护。光纤差动保护通信接口为专用芯,而光纤纵联距离保护通信节点为干节点,与对侧变电站的通信必须通过专用的通信转换装置完成
24kV开关柜弧光保护 默认不配置弧光保护(因该保护机制易误动) 必须配置弧光保护
安稳装置 并非标配,默认配置单相电压互感器即可 三相母线均配置电压互感器
故障录波系统 用变电站内的统一对时 求每台故障录波器配置独立的GPS天线和对时系统
系统 通信 变电站通信 在变电站主控室配置一套光传输设备,各就地继电器室是不配置光传输设备的,保护室的信息均由控制、保护设备汇总后在主控制室内与光传输设备进行接口,从而上传调度 主控室配置一套光传输设备之外,在每个就地继电器室里也均配置了一套光传输设备,并要求要求在变电站内形成一个简单的通信网络

注:表格内容系分析人员从公开文献《委内瑞拉变电站控制和保护设计研究》[10]一文中提炼整理。

三、各方对停电事件的原因表态和相关信息

(一)委内瑞拉政府方面宣布遭遇三个阶段攻击

3月11日晚,马杜罗表示电力系统遭遇了三阶段攻击。第一阶段是发动网络攻击,主要针对西蒙·玻利瓦尔水电站,即国家电力公司(CORPOELEC)位于玻利瓦尔州(南部)古里水电站的计算机系统中枢,以及连接到加拉加斯(首都)控制中枢发动网络攻击。第二阶段是发动电磁攻击,“通过移动设备中断和逆转恢复过程”。第三阶段是“通过燃烧和爆炸”对Alto Prado变电站(米兰达州)进行破坏,进一步瘫痪了加拉加斯的所有电力。随后,马杜罗3月12日在一次电视直播的活动中再次透露,攻击来自休斯顿和芝加哥,是在五角大楼的命令下由美军南方司令部直接执行。马杜罗没有公布上述指控的证据,称已下令设立了一个总统特别调查委员会对网络攻击事件展开调查,并请求俄罗斯、中国、伊朗和古巴协助调查。较早前委内瑞拉新闻通讯部长罗德里格斯曾表示,马杜罗政府计划将“美国参与停电”的证据提交给12日到访的联合国人权事务高级专员米歇尔·巴切莱特。

同时在3月11日,委内瑞拉方面宣布,已经逮捕两名纵火破坏电力系统嫌疑人。

20190316t5.png

图 5委内瑞拉南方电视台报道马杜罗就电力系统遭受三阶段攻击发表讲话所配示意图

(二)反对派声称火灾导致停电

委内瑞拉反对派领导人胡安·瓜伊多表示,根据委内瑞拉Corpoelec输电公司内部人员透露,当地时间7日16:42分左右,古里水电站送出线路路径发生火灾,导致联络Guri~Malena~SanGerónimoB变电站三回765kV线路跳闸。值得注意的是,委内瑞拉765kV的线路是国家输电主干线,负责该国85%的电力传输。由于三回765kV跳闸,SanGerónimoB国家中心失去电源,该站全站失电导致送入国家负荷中心的主干线也全部失电。该中心站系统接线图如图6所示[11]。

20190316t6.png

图 6 SanGerónimoB系统接线示意图

(三)技术人员分析恢复系统困难重重

本次大停电事故发展演化过程暂不明确。但是,据后续媒体报道,由于送出线路跳闸,送端古里水电站15、17、19三台机组被切除,水电站12号机组因系统频率超过62Hz被切除。随后,周边卡鲁阿奇水电站1号、4号机组,以及马卡瓜水电站全部机组也受到影响,陆续被切机。

委内瑞拉工程师MiguelLara解释长时间停电原因时称,恢复古里电力系统的操作很复杂,为了投入使用Guri~ Malena~SanGerónimo三回765kV线路,要求三座变电站具备合格的操作人员,但是该国电力系统发展滞后十年,并未有过预案处理经验,缺乏合格的操作人员,使得很难在48小时内解决复电问题。据报道,该国试图通过400kV网架重新构建电力系统,但是也失败了,导致3月9日第二次全国范围内大停电。该国输电专家米格尔拉拉说:大停电最大的问题是电力传输,即使他们在古里水电站发出电力,如果没有765kV系统,他们也无法把它送出,该国负荷中心85%的电力依靠这条输电线路。

四、综合研判

联合研判组在事件跟进分析中,整合和事件相关的所有信息,并尝试与多方取得联系,但均未获得进一步更直接的信息。

委内瑞拉停电事件很容易被与“震网事件”[12]和“乌克兰电网遭遇攻击停电事件”[13]对比看待,而后两者都是已经被多方详细分析,并充分论证为网空攻击行动。安天此前对这两起事件都发布了详细的分析报告,但这些分析工作都是在能够部分获取到攻击载荷的情况下,基于深入的样本分析支撑攻击过程复盘的结果。“震网”攻击成功后,可能出于掩盖攻击意图或其他考虑,攻击方一度激活USB传播开关,使病毒样本出现一条从中东到东南亚的传播感染带,但也使攻击载荷相对容易被获取到;乌克兰停电事件则是基于长期建立的僵尸网络进行活动,加之使用了易于留下痕迹的邮件投放等手段,其在最终目标机的自毁也并不彻底,使之较为容易找到可供分析的对象与资源。

在是否存在高级网空攻击活动的分析中,依赖于采集面、环境勘察与提取、人员访谈、及第三方威胁情报导入作为输入,以驱动分析团队依托分析工具、威胁大数据平台进行基础分析,形成研判。对高度定向化的攻击,尤其依赖于被攻击目标防御体系的纵深性和能力留下有价值的痕迹,以及深入的环境提取。

而本事件基于目前事件特殊地缘特点限制,难以进行深入场景的提取分析,也无间接的样本、日志、系统环境镜像和其他数据资源情报,因此该事件尚不具备是否存在网空攻击层面的基础技术研判条件,目前仍只能从能力、动机等方面,基于相关消息进行研判。

联合研判组分析认为:

(一)基于委内瑞拉不稳定的社会局面,人为攻击破坏的可能性极大[M1] 

鉴于委内瑞拉当前之局面,及相关国际形势,委内瑞拉基础设施崩溃及连带影响有比较明显的获益方,客观存在实施攻击获利的动机,因此有较大的人为破坏的可能性。但从目前线索来看,除纵火行为有更多相关信息外。关于网络攻击和电磁攻击尚无更多信息支撑。

在针对关键基础设施的攻击中,电力系统极易被当作首选目标,除了电力对现代社会运行起到关键支撑作用,被攻击可能引起连锁反映外。电力系统高度复杂,暴露面多也是一个原因。电站、输变电设备、线路层面均可能遭到物理、电磁和网空层面的攻击。而电力系统的空间特点则决定了,只有电厂和关键变电站能获得相对封闭的物理空间保障。大量无人变电站和线路均处在自然开放空间之中。而从电力系统的机理来看,局部的攻击很容易造成大面积影响。从委内瑞拉相关事件中,可以判断出发生了多次电网解列,电网解列的可能原因是关键节点注入功率不足,导致电网潮流异常或者过载,引发保护,局部停电到电网解列,最终就会引发大面积停电事件。

(二)美方有主导或参与的动机与可能性,但尚无技术层面的实证

威胁是能力和意图的乘积。从能力上看,美方具有全球最强的体系化网络攻击能力。在复杂的组织机构、庞大的人员规模和充沛的预算保障下,美方建设了一系列大型的信号情报获取和作业的工程系统、研发了制式化装备体系,建立支撑网空情报活动和攻击活动的框架,将情报获取、进攻作业、积极防御等网空能力整合成整体国家能力。可参见安天此前系列的相关分析【14-18】[G2] 。

20190316t7.png

图7 美方NSA/CSS网空威胁框架与其部分工程和装备体系的映射

从意图上看,美国一直背后支持委反对派反对马杜罗政府,此前还曾威胁直接军事干预。美国此前有利用“震网”攻击主权国家关键基础设施的先例。美方在攻击电力系统方面有长期的准备,早在2007年,美国爱达荷国家实验室就是实施了一项非机密的政府内部实验——即“极光漏洞”试验,针对一台225万瓦功率的柴油发电机,通过计算机程序以异常的方式反复高速关闭和重启此发电机,在短短的三分钟时间内,发电机被彻底摧毁,部分组件因为压力的反复变动导致炸裂,部分碎片被崩裂到80英尺之外。上述资料于2014年7月3日,被美国国土安全部根据信息公开法公布。根据《Division Cyber Operations》[19]等文献,美方已经将政治、军事、经济、社会、基础设施等宽频目标,纳入到目标打击规划工具的目标列表中,其中基础设施目标中就包括电力系统。美军目标打击规划工具(PMESII Crosswalk)考虑事项和可攻击侧面如图8所示。

1.png

图 8 美方PMESII的可攻击面清单

从行为模式的角度来看,瓜伊多所声称如他上台执政就能马上恢复电力,而美方恰恰将“重建”作为网络武器参与的作战阶段之一,美国陆军参谋长前高级顾问Maren Leed曾在《Offensive Cyber Capabilities at the Operation Level》[20]一文中指出,“网络武器具有无与伦比的多功能性,它们可用于从参与到高端作战的所有军事行动。因为它们的影响是可逆的,所以非常适合于作战的所有阶段,包括环境塑造、高烈度对抗 以及目标重建”。

(三)委内瑞拉部分电力设施陈旧,在社会动荡背景下故障频发,亦不能排除自身发生故障所致

乔治华盛顿大学网络与国土安全中心高级研究员Kalev Leetaru认为[21],“由于电网经年累月管理不善,停电在委内瑞拉已是司空见惯,不需要美国国家安全局的帮助”,“该国电网自己就可以引起下一次停电事件。大多数国家,包括美国,都对其老化和日益超载的公共基础设施感到担忧。因设备故障或输电线路过载而停工的发电厂更可能被归咎于投资不足,而非外国网络攻击。引起大规模山火的电力线故障很可能是预防维护工作不力导致,而非蓄意的外国破坏。”

2013年1月至6月期间,委内瑞拉国家电力系统发生了10,647次失败事故;2013年9月3日,19个州和加拉加斯经历了由于输电线路故障导致的4小时停电,该国70%的面积停电;2018年8月31日,苏利亚州首府马拉开波的一个变电站发生爆炸,导致城市大片区域停电;2018年10月16日,卡拉沃沃州La Arenosa发电站发生爆炸事故,导致本国西南部电力供应中断,12个州出现电力短缺,至少1000万名用户可能受到停电的影响。当然也不能排除这些事件的背后同样可能存在人为因素的影响。

20190316t9.png

图 9 委内瑞拉电力系统历史事故图

(四)网络空间安全、关键基础设施安全需要相应的基础支撑条件

如果将“震网事件”和“乌克兰电网遭遇攻击停电事件”与委内瑞拉停电事件对比,前两起事件都是在被攻击设施拥有国社会基本稳定、主权与安全有基本自我保障的能力下所发生的,在基础设施的物理安全有一定的保障基础上,攻击方往往会优先选择采用网空攻击这种相对更隐蔽、具有穿透性手段进行攻击。以在达成攻击效果的同时,限定影响后果,同时其成本也比物理域军事打击更低廉。[M3] 而物理手段和网络手段叠加往往能达成更大的攻击效果。在委内瑞拉社会动荡的背景下,内部破坏、里应外合等各种可能性都急剧增加,物理、电磁、网空多个领域风险相互叠加,而被削弱的社会应急能力、和基础设施运维水平,又增加了恢复难度和成本。 国家的主权与安全是关键基础设施安全的基本屏障,社会治理能力是关键基础设施安全的前提基础。当前委内瑞拉政府虽然能维持政府的基本运行,但在巨大的外部颠覆、干预压力以及内部反对派的干扰下,主权与安全遭到严峻挑战,治理能力就已经高度削弱。在这种情况下,如果遭遇入侵攻击,很大可能是带有网络空间和实体空间的复合性因素,而非单纯的网络攻击问题。而多起事件间,既有可能是强关联组合打击,也可能是弱关联的多源并发。

此次委内瑞拉政府多次发声中,包括 “电力系统已成为美国最新一轮网络攻击”、“国内渗透者从内部攻击了电力公司”、“抓获纵火破坏电力系统嫌疑人”等,同时网络上也出现了西部变电站发生爆炸的相关信息,如果这些都属实,这就是一个里应外合、多域交织的结果,是国家政权受到挑战的情况下集中爆发出的基础设施安全问题。而也正是由于政权管控能力下降,导致攻击事件发生后,政府没有足够资源和能力有效应对,进而接连受到的攻击令损失进一步扩大化。

 五、几点启示

启示一

必须从总体国家安全观来统领关键基础设施安全防护工作。关键基础设施是各种威胁行为体所觊觎的目标,而其攻击往往是跨域组合的。因此不能简单的将基础设施防御视为技术对抗,而要视为综合对抗。

在常规防护中,要将物理安全、人员安全因素与技术安全因素都充分考虑在内,对可能发生的紧急情况,制定更为全面的预案。目前国内在网络空间安全领域,存在缺少总体国家安全视角,不以结果/后果角度分析威胁,而以攻击的“技术含量”高低看待威胁的倾向,认为“非技术层面的攻击,就不是事儿,不是‘高技术含量’的攻击,都不是大事儿”。但网络空间安全和关键基础设施安全都具有非对称性的特点,决定了攻击中是组合拳打击薄弱点的特点。并非只采用技术手段或高技术手段。威胁行为体在攻击中并不关心“技术含量”,而更多考虑目标价值、攻击成功率、攻击成本、攻击隐蔽性等“作战指标”。一些针对关键目标的简单技术或人为操作在与其相适应的时间点爆发,一样可以造成重大损害。

启示二

能力导向建设模式,提升关键信息基础设施安全防护能力。

当前,我国面临着复杂严峻的内外部形势,在众多的风险挑战中,“网络安全防控能力薄弱,难以有效应对国家级、有组织的高强度网络攻击”是一项突出的风险。防控能力建设及以国家大型工程为主干,也以各政企机构建设管理的每一个重要信息系统和信息基础设施的安全为基石。基石不稳,则大厦难安。重要信息系统和关键信息基础设施处于“低水平防护”,甚至“无效防护”的状态中,是国家安全与稳定的严重隐患,影响到国家的战略主动性。

目前政企网络安全防护中规划能力不够、预算保障不足、问责机制没有落地等问题十分明显,在安全规划建设工作中往往是在满足一般性合规要求的基础上,再简单堆砌部分产品应对各类单点威胁,未形成动态综合的网络安全防御体系,缺少实战化安全运行机制保障。面对既有安全环节单点失效、面临新的威胁类型,疲于应付,顾此失彼。对隐蔽性更强的高级网空威胁行为体的持续性威胁,缺少足够的发现和防御能力。在预算保障上,受经济下行压力影响,安全投入纷纷削减或延迟。

但越是在面临复杂严峻挑战下,越应优先建设安全支撑能力,建议主管部门通过系统规划指引、保障预算投入、加强问责落实,全面提升政府、央企网络安全防护水平。

政企机构、关键信息基础设施建设运维方,面对复杂的敌情,需要将“敌已在内,敌将在内”作为驱动防御的前提设定,并根据自身网络与信息系统的国家安全、社会安全和业务安全属性,客观判断必须能够有效对抗哪些层级的网络空间威胁行为体,并据此深入分析安全需求,建立安全规划,保障预算投入。

采用叠加演进能力导向的网络安全建设模式指引规划设计,科学合理地分阶段扎实开展网络安全建设实施工作,实现从基础结构安全、纵深防御、态势感知与积极防御到威胁情报的网络安[F4] 全能力【22】[G5] ,构建动态综合的网络安全防御体系

针对电力等基础设施和工业系统,在落实能力导向建设模式构建动态综合防御体系的工作中,必须以保障业务运行的连续性和可靠性要求为基本前提,这就对基础结构安全能力、纵深防御层面安全能力的规划、建设和安全运行提出了更高的要求,对于现网系统,针对各种等可能对业务连续性产生潜在影响的安全动作,需要极为慎重,综合采用合理规划、分区分域、收窄暴露面等方式,有效布防,并通过完备的应急响应预案制定、演训式威胁评估等相关措施,最大限度避免或减少对业务系统可能产生的影响,确保系统业务的弹性恢复能力。

参考资料

[1]     Telesur English:Venezuela Denounces US Participation in Electric Sabotage:https://www.telesurenglish.net/news/Venezuela-Denounces-US-Participation-in-Electric-Sabotage-20190308-0021.html 

[2]     Lapatilla.com:Fedecámaras Zulia ofrece balance desaqueos en la región por crisis eléctrica:https://www.lapatilla.com/2019/03/12/fedecamaras-zulia-ofrece-balance-de-saqueos-en-la-region-por-crisis-electrica/?tdsourcetag=s_pcqq_aiomsg 

[3] Telesur English:Venezuelan Gov’t Denounces Latest Attack on Electric System:https://www.telesurenglish.net/news/Venezuelan-Government-Denounce-New-Attack-On-Electric-System-20190307-0033.html 

[4] https://www.voacna-help-investigate-alleged-us-cyber-attack-20190313/4826828.htmlhinese.com/a/venezuela-asks-chi

[5] Twitter:https://twitter.com/teleSURtv/status/1105964204023050241

[6] IEA:https://www.iea.org/countries/Venezuela/

[7] 维基百科:https://en.wikipedia.org/wiki/List_of_largest_power_stations_in_the_world

[8] 委内瑞拉EDELCA 电力公司梯级与三峡-葛洲坝梯级AGC比较,李晖,《华中电力》,2003年第1期

[9] 国机集团:http://www.cmec.com/xwzx/mtbd/201809/t20180903_192153.html

[10] 委内瑞拉变电站控制和保护设计研究,赵焱、张庆伟,《国际工程与劳务》 2015年01期

[11]  北极星电力网:“3·7”委内瑞拉大停电事件快报:http://m.bjx.com.cn/mnews/20190312/968255.shtml

[12]  安天:对Stuxnet蠕虫攻击工业控制系统事件的综合分析报告:https://www.antiy.com/response/stuxnet/Report_on_the_Worm_Stuxnet_Attack.html

[13]  安天:乌克兰电力系统遭受攻击事件综合分析报告:https://www.antiy.com/response/A_Comprehensive_Analysis_Report_on_Ukraine_Power_Grid_Outage/A_Comprehensive_Analysis_Report_on_Ukraine_Power_Grid_Outage.html

[14] 安天:修改硬盘固件的木马 探索方程式(EQUATION)组织的攻击组件:https://www.antiy.com/response/EQUATION_ANTIY_REPORT.html

[15] 安天:方程式(EQUATION)部分组件中的加密技巧分析:https://www.antiy.com/response/Equation_part_of_the_component_analysis_of_cryptographic_techniques.html

[16]  安天:从“方程式”到“方程组”EQUATION攻击组织高级恶意代码的全平台能力解析:https://www.antiy.com/response/EQUATIONS/EQUATIONS.html

[17] 安天:方程式组织EQUATION DRUG平台解析—方程式组织系列分析报告之四:https://www.antiy.com/response/EQUATION_DRUG/EQUATION_DRUG.html

[18] 美国网络空间攻击与主动防御能力解析(连载),网信军民融合杂志,安天研究院

[19]《DivisionCyber Operations》:https://cyberdefensereview.army.mil/CDR-Content/Articles/Article-View/Article/1136080/division-cyber-operations/

[20]《Offensive Cyber Capabilities at theOperation Level》:https://csis-prod.s3.amazonaws.com/s3fs-public/legacy_files/files/publication/130916_Leed_OffensiveCyberCapabilities_Web.pdf

[21]Forbes:Could Venezuela’s Power Outage Really Be A Cyber Attack? https://www.forbes.com/sites/kalevleetaru/2019/03/09/could-venezuelas-power-outage-really-be-a-cyber-attack/

[22] 网络安全滑动标尺模型—从架构安全到超越威胁情报的叠加演进(安天译本)

委内瑞拉电力-能源危机与其国内局势历史时间记录表[M6]

(截至2019年3月12日)

注释:黑色字体为能源危机,蓝色字体为局势动向

l 2010年2月8日,委内瑞拉发生电力系统紧急事故。

l 2012年10月,查韦斯再次赢得连任。

l 2013年1月至6月期间,SEN(国家电力系统)发生了10,647次失败事故。

201335日,查韦斯逝世。

l 2013年4月,政府宣布能源紧急情况。

2013414日,马杜罗成为委内瑞拉总统。

l 2013年9月3日,根据官方报告,19个州和加拉加斯经历了由于输电线路故障导致的4小时停电。该国70%的面积停电。

l 2016年4月初,委内瑞拉政府“60天计划”,“60天计划”包括4月和5月的每个周五,委内瑞拉公共服务部门放假,学校停课,并且工作日也相应减少上班时间,目的是为了节约用电。

l 2016年5月1日,委内瑞拉政府实施公务员每周工作2天,休息5天的临时措施,还将时钟回拨半小时以充分利用日间时光,全国每天轮流断电4小时,委内瑞拉所使用的时间称为“委内瑞拉标准时”。委内瑞拉标准时为UTC-4:30,是唯一一个使用该时间的国家。

2017731日,美国财政部宣布对委内瑞拉总统马杜罗实施制裁。根据制裁措施,马杜罗在美国境内的资产将被冻结,同时美国人将被禁止与其进行交易往来。

2018520日,委内瑞拉国家选举委员会宣布,现任总统马杜罗赢得本次总统选举。

l 2018年8月31日,苏利亚州首府马拉开波的一个变电站发生爆炸,导致城市大片区域停电。

l 2018年10月16日,卡拉沃沃州LaArenosa发电站发生爆炸事故,导致本国西南部电力供应中断。”12个州出现电力短缺。据消息,至少1000万名用户可能受到停电的影响。

2019123日,委内瑞拉议会主席、反对党人士瓜伊多在一场反对党支持者集会活动中自封为“临时总统”,要求重新举行总统大选,完成政府权力过渡。

2019123日,委内瑞拉加拉加斯,委内瑞拉总统马杜罗对千名支持者说:“我已决定,将切断与美帝国主义政府的外交与政治关系。”

2019128日,美国宣布对委内瑞拉国家石油公司——PDVSA实施制裁,该公司无法出售石油至美国。

2019130日,委内瑞拉最高法院29日宣布,决定对委议会主席、反对党人士瓜伊多采取限制措施。

l 2019年3月7日下午5时左右,包括首都加拉加斯在内的委内瑞拉全国发生大规模停电。多数地区的供水和通信网络受到影响。

2019312日,美国务卿蓬佩奥在社交网站“推特”上宣布,将从美国驻委内瑞拉使馆中撤出所有剩余美国外交人员。

*本文作者:antiylab,转载请注明来自FreeBuf.COM

前言

近日,安天CERT(安全研究与应急处理中心)在梳理相关安全事件时发现多例对马拉维国民银行(National Bank of Malawi)的钓鱼邮件攻击样本。马拉维共和国(Republic of Malawi)是位于非洲东南部的内陆国家,国土面积11.8万平方公里。截至2017年9月,其全国共计人口2840万人,是非洲撒哈拉沙漠以南人口密度最高的国家之一。其国家经济长期依赖农业出口,政府常年靠举债度日,曾被联合国评为世界上最贫困的国家之一(摘自维基百科),国民银行是其国内最大的商业银行。

安天通过对攻击样本和关联线索的综合分析,发现这是一系列以金融机构电子邮件为突破口,通过邮件进行交叉渗透的定向攻击事件。攻击者使用对陈旧漏洞的免杀技巧构造攻击载荷执行入口,而攻击载荷采取对多个开源代码进行改写和重新编译,将二进制远控木马加密嵌入其中,实现内存执行,达到免杀和绕过安全机制的效果。

一、概述

在这一系列攻击事件中,有四家马拉维国民银行的地方分行,成为攻击者的重要目标,其中大南部区(southend)官方客服邮箱已经被攻击者盗用。攻击者利用事先从国民银行部分地区分行盗取的官方邮箱口令,向其他分行工作人员发送带有恶意文档附件的邮件,作为附件的恶意文档利用CVE-2014-6352漏洞[1]发起攻击。此漏洞可以绕过“沙虫”漏洞(SandWorm)补丁MS14-060的安全保护。漏洞利用成功后,样本会执行名为“Target.scr”的可执行程序,该程序由攻击者基于开源代码[2]修改编译生成,攻击者在重写了main函数代码,程序运行时并不会调用开源代码原有的功能函数,而是内存展开执行内嵌的DarkComet远控木马,进而向目标系统发起攻击。

图 1-1攻击流程示意图

1.1 钓鱼邮件详情

钓鱼邮件<1>于马拉维时间2018年10月4日(周四)上午10:43被发送到马拉维国民银行大南部区(southend)客服中心某员工所管理的官方邮箱中(可能由于地理位置紧邻和管理成本问题,大南部区(southend)客服中心并入了利隆圭(Lilongwe)地区分行)。发件人为“Yousef Syda”,是马拉维国民银行萨利马(Salima)分行的员工,初步判断该邮箱已被盗。

图 1-2 钓鱼邮件<1>内容

钓鱼邮件<2>于马拉维时间2018年10月4日(周四)上午10:52被发送到马拉维国民银行松巴(Zomba)分行经理Thomas Chimkowola所管理的官方邮箱<[email protected]>中,显示发件人仍为“Yousef Syda”,时间上晚于钓鱼邮件<1>约9分钟。

图 1-3 钓鱼邮件<2>内容

被盗邮箱Yousef Syda <[email protected]>两次发信的IP地址均为185.82.***.***。

图1-4 被盗邮箱的IP地址

两份邮件带有同一标题“MONEY GRAM ACTION PLAN FOR OCTOBER- DECEMBER 2018(2018年10月到12月MoneyGram汇款计划)”,无正文,邮件标题字元集属性为UTF-8,并附有同一恶意文档“MONEY GRAM ACTION PLAN FOR OCTOBER- DECEMBER 2018.ppsx”,该文档使用漏洞CVE-2014-6352[1]进行攻击,该漏洞可绕过“沙虫”漏洞(SandWorm)补丁MS14-060的安全保护。在接收人双击打开ppsx文档后,其会自动开始Slide Show播放模式,触发Verb动作,执行临时目录下释放的恶意代码“Target.scr”。

1.2 被攻击者信息

受害者的邮箱域名natbankmw.com归马拉维国民银行所有[3]。马拉维国民银行成立于1971年,由起源于南非的标准银行(Standard Bank)和英国巴克莱银行DCO(Dominion Colonial Overseas)合并成立,现共拥有850名员工,总部坐落于马拉维的金融和商业中心布兰太尔市(Blantyre)。截至2016年12月,该银行的总资产价值为3140亿MWK(马拉维克瓦查,约合4.4亿美元),是马拉维最大的商业银行[4]。

图 1-5 马拉维国民银行总部建筑(纬度:-15.8 经度:35.0)

截至2018年4月,马拉维国民银行在马拉维全国维持了30多家分行,简称“客服中心”(Service Centers)。但由于银行缺乏资金和运营问题,多地“客服中心”管理混乱。2016年曾经发生巴拉卡(Balaka)地区分行的在职员工监守自盗取走上百万MWK银行存款的事件[5]。此次网络攻击事件也正是首先针对地区分行的薄弱点,盗取分行邮箱向其他分行员工发送钓鱼邮件的典型案例。

图 1-6 此次攻击事件受害者之一,马拉维国民银行利隆圭(Lilongwe)分行

图 1-7 此次攻击事件受害者之一,马拉维国民银行松巴(Zomba)分行

图 1-8 被盗邮箱所属分行,马拉维国民银行萨利马(Salima)分行

事件相关的三个邮箱皆由国民银行三个地区分行“Salima Malawi”、“Zomba Malawi”及“Lilongwe Malawi”的员工所管理,邮箱地址均可从银行官方网站客服主页上获取,被盗取的是第一位员工Yousef Syda的邮箱,可能是攻击者完成的第一个突破口。

图 1-9公开在国民银行官网上的地区客服信息

二、样本分析

2.1 PPSX样本分析

样本“MONEY GRAM ACTION PLAN FOR OCTOBER- DECEMBER 2018.ppsx”由钓鱼邮件投递,利用了著名的“沙虫”(SandWorm)漏洞补丁的绕过漏洞CVE-2014-6352[1] 。沙虫漏洞是OLE包管理INF任意代码执行漏洞,存在于Microsoft Windows服务器上的OLE包管理器,该漏洞影响Win Vista、Win7等以上操作系统,攻击者使用PowerPoint作为攻击载体。通过利用该漏洞可以在OLE打包文件(packer.dll)中下载并执行类似的INF外部文件,从而达到攻击者执行任意命令的目的。微软为沙虫漏洞发布了MS14-060补丁,但通过构造特殊的CLSID和Verb动作,该补丁可以被漏洞CVE-2014-6352绕过。之后微软再次发布MS14-064补丁针对CVE-2014-6352进行了修补。

表2-1 事件中使用的ppsx样本标签

图 2-1 打开后的PPSX漏洞攻击文档内容为空

PPSX相关文件内容为空,没有进行相关的内容构造和伪装。解压PPSX文档可以找到“\ppt\slides\ slide1.xml”指定了嵌入OLE对象的ID为rId3。

文档“\ppt\slides\_rels\ slide1.xml.rels”指定了rId3对应目录“\ppt\embeddings\”下的oleObject1.bin

文件“\ppt\embeddings\oleObject1.bin”为嵌入了PE可执行程序的OLE Package对象。

图 2-2 样本嵌入了包含PE的OLE对象

OLE Package对象的“Olen0Native”流包含了一个完整的PE文件,流开头字符串能看出PE文件在攻击者机器上的原始保存路径“C:\Users\Analiz\Desktop\Target.scr”以及释放的路径“%TEMP%\Target.scr”。

图 2-3 OLE对象包含了完整的PE数据“Target.scr”和原始保存路径信息

模块packager.dll调用CPackage::Load读入该OLE Package对象时,首先调用ReadClassStg获取OLE复合文档的CLSID判断文件类型,该样本OLE对象的CLSID:{0003000c-0000-0000-00c0-000000000046}。

CLSID对应OldPackage类型,因此之后依次调用CPackage::PackageReadFromStream →CPackage::EmbedReadFromStream→ CopyStreamToFile将流数据拷贝至临时目录具体文件。

图 2-4 OLE对象被判断为OldPackage类型,流数据被读入

图 2-5 OLE对象流数据被写入临时文件“%TEMP%\Target.scr”

微软为了修补“沙虫”漏洞CVE-2014-4114,发布了补丁MS14-060[6],在CopyStreamToFile之后增添了MarkFileUnsafe函数将该临时文件进行MOTW处理,将其Security Zone标记为不可信来源,尝试安装运行时会弹出UAC安全警告窗口[7]。

图 2-6 方法CPackage::EmbedReadFromStream增添了MarkFileUnsafe标记

图 2-7 “%TEMP%\Target.scr”被标记为不可信

此时“%TEMP%\Target.scr”已经被释放在临时目录,如果我们以双击的方式打开该PPSX样本,自动播放模式将会开启,模块packager.dll的CPackage::DoVerb方法将检查样本指定Verb动作“cmd”的值,将其赋给变量nVerb和nTrueVerb,来决定如何处理嵌入文件“Target.scr”。

这里常见的利用手法是构造“cmd”值为3,这样就能模拟popup菜单操作执行右键菜单的第二项“以管理员权限运行” [8],最终调用SHELL32!CDefFolderMenu::InvokeCommand方法执行“Target.scr”。

然而这里样本“\ppt\slides\ slide1.xml”指定Verb动作“cmd=0”,独辟蹊径采用了另一条流程。

调试器中我们也看到此时nTureVerb已被赋值为0,开始执行函数CPackage::_ExecuteAttachment。

进入CPackage::_ExecuteAttachment我们看到它调用了危险的CPackage::_ActivateEmbeddedFile方法,内部继续调用shdocvw!CAttachmentServices::Execute方法。

图 2-8 “cmd=0”时调用了危险的CPackage::_ActivateEmbeddedFile方法

shdocvw!CAttachmentServices::Execute调用_OpZoneCheck检查“%TEMP%\Target.scr”的Security Zone标记,最后调用_OpUserTrust弹出UAC安全警告窗口提醒用户选择是否执行“%TEMP%\Target.scr”:

图 2-9 启动Security Zone标记检查,PPT页面弹出UAC安全警告窗口

由于沙虫系列漏洞是一个链接执行漏洞,而非常见的格式文档溢出漏洞,DEP等内存安全防御机制对其无效,调高UAC的级别对类似漏洞有一定的防御效果。如果此时被攻击者选择了继续运行“Target.scr”,恶意代码将被执行。而如果被攻击者的系统关闭了UAC控制或在获取了管理员权限的情况下,该安全警告窗口将不会弹出,“Target.scr”会被静默无警告地执行。

注:关于“沙虫”漏洞和其绕过漏洞CVE-2014-6352的更多细节可以参考安天[8]和360天眼实验室[9]及McAfee[10]的分析文章。

2.2 Target.scr样本分析

Target.scr样本伪装成屏幕保护程序,由Visual Basic 6.0编写且未加壳,基本信息见表2-2:

表2-2 Target.scr样本标签

通过反编译分析发现该样本的原始文件描述为”Gate Pass Management System (Klash (Pvt) Ltd.)”:

图 2-10 样本反编译后显示描述“Gate Pass Management System”

样本反编译代码的更多部分是并不能被调用的各种数据库操作功能函数,以及大量的数据库操作语句。这些数据库功能代码和语句能够连接数据库并对管理账户和库存记录进行增删改查。

例如函数AddNewIGPass()和DeleteIGPass()能通过SQL语句操作“tblIGMaster”和“tblIGDetails”表,新增和删除库存记录:

图 2-11 通过“INSERT”和“DELETE”语句增删库存记录

表2-3 部分数据库被操作表名和操作语句一览

通过安天同源分析系统的比对,我们找出了对应的开源代码[2] ,根据项目描述,这份代码适用于公司的库存管理系统:

图 2-12 该Visual Basic项目的描述(这份代码适用于公司的库存管理系统)

该项目开发者是“Muhammad Assir Nadeem”,是巴基斯坦境内服装业公司Klash Private Limited的IT经理,根据我们的综合分析,没有理由怀疑该公司和项目开发者与攻击事件有关:

图 2-13 “IGOG Gate Pass System”开发者的个人介绍

攻击者并未利用开源代码中的任何功能调用,而是将加密后的DarkComet远控木马作为一个数据块嵌入到相关代码中,通过修改Main函数Main_441770()的代码将木马运行起来,而开源代码的相关功能都不会被执行。关于使用正常数据库管理客户端源码进行修改的目的,根据2.3小节更多关联样本的分析,可以认为这是一种具有迷惑性的免杀方式。

函数Main_441770()的修改主要是为了进行两个动作:

其一是实现将%TEMP%目录下的文件“Target.scr”复制一份至启动目录下,在主机侧建立持久化:

文件路径:“%AppData%\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\patakia.exe”

图 2-14 复制自身至启动目录下“patakia.exe”

“patakia.exe”的文件相关Version信息等,同公开的源码完全符合:

图 2-15 文件“patakia.exe”的描述

其二是实现解密资源节中存放的恶意代码并运行。样本在原有库管理客户端源码的基础上修改了执行逻辑,实际运行过程中解密运行资源节嵌入了加密的Darkcomet远控木马。“DarkComet RAT”又称“暗黑彗星”木马,具有远程操控、击键记录、摄像头监控、文件窃取和DDoS攻击等诸多丰富功能,是黑产活动中非常常见的木马类别。由于原有开源代码中的功能代码不会被调用执行,加之其文件拷贝的位置并不在对应的程序目录下,这基本排除掉了攻击者是为了替换原有主机环境的IT工具来建立持久化入口的猜测 样本“patakia.exe”的资源节(ID=109处)包含了32,219字节的垃圾数据和276,995字节的加密数据(以[++...--...+]为标志头):

图 2-16资源节ID=109处包含的加密数据

加密数据会在内存中被加载、解密,并展开成一个完整的Darkcomet木马PE文件:

图 2-17从资源节ID=109加载由标志头开始的数据

图 2-18从内存中dump出的PE包含典型Darkcomet木马特征

木马尝试反向连接攻击者C&C服务器(desk1pc.ddns.net:700),其当前解析IP185.82.***.***即为两封钓鱼邮件的发信IP,可以认为攻击者掌控的资源相对有限。

图2-19 TCP请求中包含的“KEEPALIVE+数字”用以维持同C&C的网络连接

2.3 扩线分析

根据本报告1.1节中的相关信息扩线可以找到其他一些手法如出一辙、攻击目标皆为银行的恶意邮件。但其并非从马拉维银行工作人员的信箱发出,而是盗用了其他金融机构的员工信箱,且邮件的发信方来自同一台攻击者主机。

其中一封信的收信人是马拉维国民银行的纳卡洛(nchalo)分行。时间最早的一封邮件通过被盗邮箱Justin Akwuasaba发送,该被盗邮箱系加拿大皇家银行(Royal Bank of Canada)的员工工作信箱。发信时间为“2018年6月22日(周五)22:03”,发信IP为“185.82.***.***”,同1.1节中的发信IP 185.82.***.***属同一C段。该恶意邮件还发送给了马拉维国民银行的另一待攻击目标nchalo,其为马拉维国民银行纳卡洛(nchalo)分行的官方联系邮箱。

图 2-20 马拉维国民银行nchalo分行收到的攻击邮件

在攻击邮件中也有其他国家的银行目标,如其中一封邮件发送自邮箱“Audit Dept [email protected]”,系美国大型金融服务(银行间汇款转账)公司“Prabhu” [11]的员工工作邮箱。发信时间为“2018年8月25日(周六) 10:19”,发信IP为“185.82.***.***”,与上述第一封邮件的发信IP一致。收信邮箱[email protected]系阿塞拜疆国际银行(The International Bank of Azerbaijan)员工工作邮箱。

图 2-21 阿塞拜疆国际银行收到的同类攻击邮件

这两封邮件的两个PPSX文件附件与1.1节中描述的样本一样,都利用了CVE-2014-6352漏洞,OLE对象的“Ole10Native”流都包含了完整PE数据(“Document.scr”、“Document.exe”),原始保存路径则出现了新的路径“C:\Users\kboy\”。Verb动作也都设置为“cmd=0”以执行临时目录下释放的绑定了恶意代码的正常程序。

图 2-22 释放的PE复制至启动目录后的文件名

样本“Document.scr”和“Document.exe”同2.2节中的“Target.scr”构造手法完全一致,它们分别在开源程序“Tech2ks NComputing Caffe[12]”和国际象棋游戏“ChessQuest”的源代码中插入DarkComet木马,甚至连木马的回连C2都共用着同一个域名和端口:“desk1pc.ddns.net:700”。以样本“Document.exe”为例,同2.2节中的样本“Target.scr”进行特征比对能展示出更多相似之处:

表2-4拓线样本特征对比

通过检查185.82.***.***~***这一段IP,我们发现IP 185.82.***.***和185.82.***.***于今年10月初曾被用于上文的三个Visual Basic样本和其它远控木马作回传C&C服务器(皆绑定过临时二级域名kango.ddns.net、kinging.ddns.net、segun.ddns.net和desk1pc.ddns.net)。而IP 185.82.***.***则于今年10月初被用于挂载知名勒索软件GandCrab。

通过扩线分析可以看出,攻击者使用了多种公开源码程序作为掩护传播恶意代码,由于源程序代码并不能正常运行,而且所使用的开源程序并非常见金融场景下的应用或工具软件,所以我们认为攻击者并不是替换用户原有程序来实现持久化,而是以此作为免杀和干扰分析的技巧。

三、小结

从已有信息来看,本次马拉维国民银行及其他多国金融机构遭受的网络攻击均使用同一手法,这一系列网络攻击初步判断是以金融机构为目标,以金融资产侵害为目的的犯罪行为。目前除能判断马拉维银行相关信箱已被入侵并作为攻击跳板外,目前尚无法判断和知晓事件相关的几家分行客服员工是否已经触发攻击流程而造成了实际的损失。综合攻击者使用的漏洞、载荷、地址资源、社工技巧来看,系由一定技术能力的个人攻击者或犯罪团伙的可能性较大。

金融机构的运行高度依赖于信息系统,传统金融机构更多依靠物理空间安全手段保证信息系统安全。但在互联网时代,由于为大量互联网用户提供服务以及银行间跨国汇兑转账等业务,金融机构的信息系统已经是一个事实上存在着互联网侧多暴露面的系统。金融系统的服务网站、网银接口、人员使用的工作电子邮件信箱、跨行转账服务等,在已有攻击事件中,成为攻击的入口。尤其金融机构的电子邮件由于是直接暴露的信息资产,极易成为攻击者的攻击入口,同时因为其中的员工邮箱遭受攻击后,容易在内部实现基于邮件信任链的攻击,导致连锁反应的发生。

和安天既往复盘分析的针对金融机构的其他攻击——如针对在孟加拉国央行、越南先锋银行等多国SWIFT系统的网络攻击事件相比,本事件属于低水平攻击事件。攻击者并未使用0day漏洞,其攻击载荷也并无数字签名盗用等方式伪装,属于在基础结构安全和纵深防御层面可以有效对抗遏制的攻击。如果相关金融机构实施严格的安全策略,做好补丁升级和配置加固等基本工作,配套部署具有主动防御能力的终端防御软件并保持更新升级,就可以大大降低相关载荷的执行概率。本事件客观上代表了部分经济不发达国家的金融机构处于较低的防护水平之中,网络安全投入能力相对较差,本身抵御风险的能力也不足。网络攻击带来的风险,有可能转化为国家级的金融灾难。

我国当前整个金融信息化发展水平较快,在网络安全防护方面也积累了大量模式和经验,但同时也面临着更高的安全风险,需要应对超高能力国家/地区威胁行为体所发动的网络攻击。这些行为体具有坚定的攻击意志、能够承担巨大的攻击成本。在大规模工程体系的支撑下,进行体系化的攻击作业。TAO组织攻击中东的最大SWIFT服务机构就是其中的代表事件。防御这一层面的网络攻击,需要以能力导向建设,按照“综合发展、深度结合、全面覆盖、动态综合”的安全理念,形成高水平的防御能力。在这个过程中,中国的能力型安全厂商,不仅要做好当下,也要逐步放眼全球,与中国金融机构共同积累沉淀安全防护理念、经验和解决方案,在未来对经济不发达国家的金融机构实现网络安全能力的支持和援助。

四、参考资料

[1]CVE: CVE-2014-6352

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-6352

[2]Freesourcecode:Gate Pass Management System in Visual Basic

http://freesourcecode.net/vbprojects/21006/Gate-Pass-Management-System–in-Visual-Basic#.W8PphtlR2Ht

[3] Natbankmw:马拉维银行官网

https://www.natbankmw.com

[4]维基百科:National_Bank_of_Malawi

https://en.wikipedia.org/wiki/National_Bank_of_Malawi

[5]Malawi24:workers-steal-millions-from-national-bank

https://malawi24.com/2016/02/09/workers-steal-millions-from-national-bank/

[6]微软:Microsoft Security Bulletin MS14-060 – Important

https://docs.microsoft.com/en-us/security-updates/securitybulletins/2014/ms14-060

[7]微软:Microsoft TechNet

https://technet.microsoft.com/en-us/ms537628(v=VS.71)

[8]安天:沙虫(CVE-2014-4114)相关威胁综合分析报告

http://www.antiy.com/response/cve-2014-4114.html

[9]Freebuf:CVE-2014-6352漏洞及定向攻击样本分析

http://www.freebuf.com/vuls/106853.html

[10]McAfee:Bypassing Microsoft’s Patch for the Sandworm Zero Day: Even ‘Editing’ Can Cause Harm

https://securingtomorrow.mcafee.com/mcafee-labs/bypassing-microsofts-patch-for-the-sandworm-zero-day-even-editing-can-cause-harm/

[11]Prabhu:about us

https://www.prabhuonline.com/information/why-us

[12]Freesourcecode:Tech2ks NComputing Caffe in Visual Basic较新版本

http://freesourcecode.net/vbprojects/17691/Tech2ks-NComputing-Caffe-in-Visual-Basic#.W_vKmLEzZaQ

*本文作者:antiylab,转载请注明来自FreeBuf.COM

前言

近期,安天CERT(安全研究与应急处理中心)接收到来自客户反映的收到自己邮件地址发送给自己的恐吓邮件,勒索比特币的事件,经分析发现这是自10月份以来新的诈骗手法。

一、概述

由于邮件信头的发信人地址可以任意伪造,诈骗者通过将发信人邮箱伪造成受害者的收信邮箱,让受害者收到一封“来自自己的邮件”,以此让受害者相信自己的邮箱“已经被控制”;之后,诈骗者则进一步欺骗受害者,称其设备也被安装了木马,且一直处于监控中,恐吓受害者向指定比特币钱包汇入指定金额消灾。

网络上已经有大量用户反映收到了使用该类手法的诈骗邮件,查看诈骗者预留的比特币钱包发现已有不少受害者上当,且目前仍然有受害者在向诈骗者汇入虚拟货币,其总计价值已有上万美金。

目前流行的这类邮件是单纯的恐吓性诈骗邮件,可以直接忽略并删除,受害者的邮箱和机器并未受到入侵和控制。

二、诈骗邮件事件分析

根据用户反馈的相关诈骗邮件,这类邮件的标题为:“受害者邮箱地址”+“was hacked”。邮件正文内容基本包含以下几方面:

1)声称自己是来自“暗网”的黑客(如waite23/kurtis09/hugibert19/murry02等虚假ID),警告受害者邮箱账号已被盗取,不相信的话请查看收信人是否来自于受害者自己。

2)表示受害者的机器已感染了自己注入的木马且遭受了长期监控,用户上网记录和本地数据能够被随意访问,受害者修改密码也不再管用等。

3)只要在48小时内向指定比特币地址里汇入指定金额(例如500美金),就会删除木马并停止攻击行为。

4)有的还会继续发送邮件并提高金额。

图1. 该类手法诈骗邮件的典型案例,用户收到“来自自己的邮件”

图1. 该类手法诈骗邮件的典型案例,用户收到“来自自己的邮件”

这属于典型的Sextortion骗局,这是一类常见的网络诈骗手段。诈骗者在并未侵入受害者的信箱和设备的情况下,通过一系列的“证据”,譬如“展示受害者曾经泄露过的账号密码”等手法对受害者进行恐吓,称其邮箱已被盗用、设备遭到了真实的黑客入侵,然后声称一直在记录受害者访问成人网站等不当内容时的屏幕和摄像头,如果受害者不向诈骗者指定的比特币钱包付款,就会将这些事情公之于众。

图2. 诈骗者承诺48小时内付款将停止侵犯受害者隐私

图2. 诈骗者承诺48小时内付款将停止侵犯受害者隐私

而通过让受害者收到“来自自己的邮件”来证明受害者邮箱已被黑客盗取的诈骗手段是最近一段时间才出现的。普通网民如果不清楚邮件的信头可以任意伪造这一事实的话,很容易被诈骗者欺骗。

在我们获取到的数十份邮件样本中,诈骗者选取的收款地址全部是比特币钱包“1MN7A7QqQaAVoxV4zdjdrnEHXmjhzcQ4Bq”。经查询得知,自2018年10月13日起该收款地址共收到受害者汇入的1.61651067枚比特币,按照当前兑换价格计算,金额超过一万美元,截至目前仍有受害者在向其汇款。

图3. 诈骗者预留比特币地址收到大量的受骗者汇款

图3. 诈骗者预留比特币地址收到大量的受骗者汇款

由于邮件发送使用的SMTP协议的信头可以任意构造,部分邮件服务商转发邮件不进行相互认证,因此其“from:”字段可以任意修改,在邮件中显示为任意发信人。但对多数主流邮件服务商(ESP),这种邮件都会被反垃圾邮件功能主动拦截过滤,市面上常见的邮箱提供商都支持对此类垃圾邮件的过滤功能,包括直接拒绝接收该邮件。

客户需检查所使用的邮件系统是否配置了垃圾邮件过滤器或者需要更换更安全的邮件系统。

另外,根据BITCOINWHOSWHO提供的数据:自2018年9月份以来,有来自42个国家的大量受害者声称收到了使用各种不同手法的类似Sextortion的诈骗邮件。报告中称搜集到了621个比特币钱包地址,诈骗者通过这种敲诈手法共收到高达540.27603866个比特币的赃款,给受害人带来了很大的经济损失。

三、总结

这一系列敲诈邮件,事实上是敲诈者通过伪造邮件信头数据,让受害者收到一封“来自自己的邮件”,以此让被敲诈者相信其信箱被入侵了。但实际上,用户的邮箱账号和机器并未受到诈骗者的入侵和控制,切不可私下给诈骗者汇款以防上当受骗。

尽管这类敲诈收发并非由于邮件遭到入侵导致,但邮件仍是最易被攻击的入口,我们对电子邮件的使用者和邮件系统搭建维护者提出如下建议:

用户电子邮件安全防护可参考以下防范建议:

1. 提高个人安全意识,收发邮件时确认收发来源是否可靠,不要随意点击或者复制邮件中的网址,不要轻易下载来源不明的附件,建议对陌生人邮件一律不打开。

2. 尽量不在非可控环境下登录电子邮件,如网吧的电脑、其他人的电脑等。

3. 确保邮件收发和登陆终端系统的环境安全(PC、手机、PAD等),及时升级更新和进行漏洞补丁修复,安装终端安全防护软件并及时升级打开监控,确保邮件收发的环境安全。

4. 邮箱密码必须使用强密码(例如:密码长度大于12位字符,且必须为数字、英文大小写字母、特殊字符组合),并定期更换密码;密码不得与其他服务混用。

5. 如使用邮件客户端,确保客户端安装程序的安全性,按照邮件服务器支持的加密链接方式(如SSL)配置邮件收发,而不要使用明文协议收发邮件;对邮件客户端数据文件所在卷,建议采用卷加密(如Bitlocker)。

6. 如使用浏览器收发邮件,需要使用HTTPS协议登陆信箱,而不要使用HTTP登陆。

7. 按照组织规定规范邮件签名。

8. 邮箱地址不要随意传播,减少攻击者找到攻击入口的可能;必须公开邮件地址的,可以把@符号用其他符号替换,避免被爬虫爬取识别后,成为垃圾邮件和攻击邮件群发的目标。

企业邮件系统要确保安全有很多系统的工作,在这里我们给出一些可以参考的文献:

1. 配置安全管理和使用电子邮件策略:包括电子邮件权限、收发用户身份设置、电子邮件内容限制、电子邮件附件要求、邮件传输协议安全、异常邮件监控、用户备份和归档保存等,具体可参考《信息安全策略编制指南-L9电子邮件安全策略》。

2. 保障邮件系统所在的网络安全:包括网络结构安全、入侵防范和安全审计等,可参考《可管理的网络计划V4.0(NSA/IAD)》[4]。

3. 保障邮件系统软硬件安全:包括服务器、操作系统、数据库的安全防范策略,可参考《DISA安全技术实施指南STIG》[5]。

4. 确保邮件系统的物理和管理安全:包括访问控制、管理制度等,具体可参考《YD/T 3161-2016邮件系统安全防护要求》。

参考链接

1.https://www.cisco.com/c/en/us/products/collateral/security/email-security-appliance/whitepaper_C11-737596.html

2.https://www.bleepingcomputer.com/news/security/new-sextortion-scam-pretends-to-come-from-your-hacked-email-account/

3.https://bitcoinwhoswho.com/blog/2018/09/30/42-countries-report-sextortion-email-scam/

4.https://cryptome.org/2016/01/nsa-16-0114.pdf

5.https://iase.disa.mil/stigs/Pages/index.aspx#

*本文作者:antiylab,转载请注明来自FreeBuf.COM

1.概述

在过去的数年时间里,安天始终警惕地监测、分析、跟踪着各种针对中国的APT攻击活动,并谨慎地披露了“海莲花”(APT-TOCS)、“白象”(White Elephant)、“方程式”(Equation)等攻击组织的活动或攻击装备分析,同时也对更多的攻击组织和行动形成了持续监测分析成果。本报告主要分析了某地缘性攻击组织在2015年前的攻击活动,安天以与该地区有一定关联的海洋生物作为了该攻击组织的名字——“绿斑”(GreenSpot)。为提升中国用户的安全意识,推动网络安全与信息化建设,安天公布这份报告。
综合来看,“绿斑”组织的攻击以互联网暴露目标和资产为攻击入口,采用社工邮件结合漏洞进行攻击,其活跃周期可能长达十年以上。

1.1 疑似的早期(2007年)攻击活动

在2007年,安天对来自该地区的网络入侵活动进行了应急响应,表1-1是在相关被攻击的服务器系统上所提取到的相关攻击载荷的主要行为和功能列表。

20180919b1-1.png

表 1-1 早期“绿斑”组织攻击活动相关载荷及功能列表

这些工具多数为开源或免费工具,从而形成了攻击方鲜明的DIY式的作业风格。由于这些工具多数不是专门为恶意意图所编写的恶意代码,有的还是常见的网管工具,因此反而起到了一定的“免杀”效果。但同时,这种DIY作业,并无Rootkit技术的掩护,给系统环境带来的变化较为明显,作业粒度也较为粗糙。同时只能用于控制可以被攻击跳板直接链接的节点,而无法反向链接。和其他一些APT攻击中出现的自研木马、商用木马相比,是一种相对低成本、更多依靠作业者技巧的攻击方式。

20180919t1-1.png

图 1-1 早期“绿斑”组织攻击活动相关载荷调用关系图

这些工具可以在被入侵环境中形成一个作业闭环。攻击者使用网络渗透手段进入目标主机后,向目标主机上传表1-1中的多种攻击载荷,利用持久化工具达成开机启动效果,实现长期驻留;通过NC开启远程Shell实现对目标主机远程命令控制;调用Mt1.exe获取系统基本信息和进一步的管理;同时攻击者可以通过Spooler.exe形成磁盘文件列表并记录、通过keylog.exe收集键盘输入并记录、通过Rar.exe收集指定的文件并打包、通过HTTP.exe开启HTTP服务,即可远程获取全盘文件列表,获取用户击键记录,回传要收集的文件和日志。
我们倾向认为,2007年前后,相关攻击组织总体上自研能力有限,对开源和免费工具比较依赖,喜好行命令作业。同时,作业风格受到类似Coolfire式的早期网络渗透攻击教程的影响较大。目前我们无法确认这一攻击事件与我们后面命名的“绿斑”组织是同一个组织,但可以确定其来自同一个来源方向。

1.2 2011-2015年攻击活动

从时间上来看,自2010年以后,该地区组织攻击能力已经有所提升,善于改良1day和陈旧漏洞进行利用,能够对公开的网络攻击程序进行定制修改,也出现了自研的网络攻击装备。2010年以后相关活动明显增多、攻击能力提升较快。
“绿斑”组织主要针对中国政府部门和航空、军事相关的科研机构进行攻击。该组织通过鱼叉式钓鱼邮件附加漏洞文档或捆绑可执行文件进行传播,主要投放RAT(Remote Administration Tool,远程管理工具)程序对目标主机进行控制和信息窃取,其典型攻击手法和流程是以邮件为载体进行传播,邮件附件中包含恶意文档,文档以MHT格式居多(MHT是MIME HTML的缩写,是一种用来保存HTML文件的格式),该文档打开后会释放并执行可执行载荷。作为迷惑用户的一种方法,嵌入在MHT中的一份起到欺骗作用的正常的文档文件也会被打开显示,攻击过程图1-2所示:

20180919t1-2.png

图 1-2 “绿斑”组织活动攻击流程

通过人工分析结合安天追影威胁分析系统及安天分析平台进行关联分析,我们对其攻击目标、攻击者采用的IP和常见的手法进行了梳理。该组织利用漏洞的文件是不常见的附件文件格式,相关攻击技术和手法也是经过长期准备和试验的。安天基于原始线索对该组织进行了全面跟踪、关联、分析,最终获得了近百条IoC(信标)数据。通过对事件和样本的整体分析,我们梳理了该组织在2011-2014年的部分活动时间轴。

20180919t1-3.png

图 1-3 “绿斑”组织2011-2014攻击活动时间轴

1.3 近期的部分攻击活动(2017年)

“绿斑”组织在2015年后继续活跃,我们在2017年监测到该组织建立了一个新的传播源,该次活动的载荷都存储在同一个WEB服务器上,每一个攻击流程内的载荷都按照目录存放,其攻击流程是首先传播含有漏洞的Office文档,通过漏洞文档下载执行恶意载荷(EXE),随后通过C2对目标主机进行远程控制,具体攻击流程参见图1-4。

20180919t1-4.png

图 1-4 最新活动攻击流程

该WEB服务器上存放了多个不同配置的恶意脚本和可执行文件,一个目录下是一组攻击样本,最终运行的Poison Ivy ShellCode(Poison Ivy是一个远程管理工具)都会连接一个单独C2地址,图1-5中红色的域名(pps.*.com)是与2011-2015年活动相关联的C2域名。

20180919t1-5.png

图 1-5 传播源服务器样本部署及C&C关系图

2.攻击手法分析:通过定向社工邮件传送攻击载荷

2.1 典型案例

针对“绿斑”组织2011-2015年间的攻击活动中,安天通过监测发现和关联分析,梳理出了数十起事件和载荷的关联关系。通过对典型案例的基本信息和诱饵文件等进行分析,我们可以看出“绿斑”组织多采用通过定向社工邮件传送攻击载荷,攻击载荷有两种:一种是捆绑型PE恶意代码,在被攻击者打开执行后,其会打开嵌入在PE中的欺骗收件人的“正常”文档文件;另一种是格式攻击文档,利用漏洞CVE-2012-0158来释放并执行可执行文件,同时打开欺骗收件人的“正常”文档文件。但在两种攻击方式中,所释放的可执行文件路径和名称相同,除部分案例采用%TEMP%路径外,其他均为C:\Documents and Settings\All Users\「开始」菜单\程序\启动\update.exe,来达成开机执行的持久化效果,从释放路径、文件名称可以看出这些样本是具有关联性的(具体分析参见4.4节)。从时间上来看,使用捆绑型PE恶意代码的攻击晚于漏洞文档,这有可能是在利用漏洞文档攻击无效后,才使用了这种虽然简单粗暴但可能最有效的方式。

2.1.1 案例1

20180919211.png

2.1.2 案例2

20180919212.png

2.1.3 案例3

20180919213.png

另外值得注意的地方是图2-3中相关文字内容为从“全国人民代表大会网站”(文档内容出处:“http://www.npc.gov.cn/npc/xinwen/node_12435.htm”2013年的网页内容,目前网页内容已更新。)页面直接复制粘贴的内容。

2.1.4 案例4

20180919214.png

2.1.5 案例5

20180919215.png

2.1.6 案例6

20180919216.png

2.1.7 案例7

20180919217.png

2.1.8 案例8

20180919218.png

2.1.9 案例9

20180919219.png

2.2 社工技巧分析

“绿斑”攻击组织主要针对被攻击者的职业、岗位、身份等定制文档内容,伪装成中国政府的公告、学会组织的年会文件、相关单位的通知、以及被攻击者可能感兴趣的政治、经济、军事、科研、地缘安全等内容,其所使用的欺骗性文档多数下载自中国相关部委机构、学会的网站。

3.攻击载荷分析:漏洞、后门及可执行文件

3.1 CVE-2012-0158漏洞利用

CVE-2012-0158是一个文档格式溢出漏洞,格式溢出漏洞的利用方式是在正常的文档中插入精心构造的恶意代码,从表面上看其是一个正常的文档,很难引起用户的怀疑,因此经常被用于APT攻击。CVE-2012-0158漏洞是各种APT攻击中迄今为止使用频度最高的。利用该漏洞的载体通常是RTF格式的文件,其内部数据以十六进制字符串形式保存。

3.1.1 由RTF到MHT的高级对抗

传统的CVE-2012-0158漏洞利用格式主要以RTF为主,而该组织则使用了MHT格式,这种格式同样可以触发漏洞,而且在当时一段时间内可以躲避多种杀毒软件的查杀。

20180919t3-1.png

图 3-1 RTF与MHT文件格式对比

如果使用RTF文件格式构造可触发漏洞的文件,在解码后会在文件中出现CLSID(CLSID是指Windows系统对于不同的应用程序、文件类型、OLE对象、特殊文件夹以及各种系统组件分配一个唯一表示它的ID代码),而新的利用方式使用MHT文件格式,CLSID会出现在MHT文件中,由于之前的RTF溢出格式嵌套DOC文档(如图3-2,红框中是DOC文档文件头),CLSID存放于嵌套的DOC文档里(如图3-3,红框中是CLSID,部分采用了网络字节序,部分采用了主机字节序)。

20180919t3-2.png

图 3-2 以RTF为载体的溢出文件

20180919t3-3.png

图 3-3 以RTF为载体的溢出文件

MHT文件格式的CLSID不会存放在嵌套的DOC里,而是直接在MHT文件中(如图3-4,红框中所示),这样可以逃避大部分安全软件的检测,而且在MHT中编码格式也发生了变化,因此如果使用以前根据RTF文件编写的CVE-2012-0158检测程序则会失效。

20180919t3-4.png

图 3-4 案例6涉及的MHT文件

MHT文件的主要功能是将一个离线网页的所有文件保存在一个文件中,方便浏览。将文件后缀修改为.doc后,Microsoft Word是可以正常打开的。
该文件可以分为三个部分:第一部分是一个网页;第二部分是一个base64编码的数据文件,名为“ocxstg001.mso”,该文件解码后为一个复合式文档即DOC文档;第三部分的数据是二进制文件。
在第一部分我们发现了一段这样的代码,该代码描述了第一部分和第二部分的关系也是导致漏洞触发的关键:

20180919t3-4j.png

这段代码大致表示当网页加载的时候同时加载一个COM控件去解释第二部分的数据。该控件的CLSID是{**********-11D1-B16A-00C0F0283628},经过查询该控件便是MSCOMCTL.OCX.。当时已知的与该控件有关的最新漏洞是CVE-2012-0158,因此可以确定这三个案例是通过精心构造MHT文件,利用漏洞CVE-2012-0158来执行,从而实现可执行文件的释放和执行。

3.1.2 值得关注漏洞载荷免杀技巧的利用

“绿斑”组织高频使用MHT漏洞格式文档的传播利用时间主要在2013年5月之前,这是一个高度值得关注的信息。我们基于对某个著名的第三方威胁情报源利用CVE-2012-0158漏洞并采用MHT文件格式的恶意代码数据进行了相关统计。

20180919t3-5.png

图 3-5 安天捕获部分“绿斑”免杀样本(红色)与MHT漏洞格式文档(黄色)大量出现时间的对比

从图3-5中我们可以看到,2013年3月前,MHT文件格式的CVE-2012-0158漏洞相关文件并未出现在该威胁情报源当中,但已经被“绿斑”组织使用。我们尚不能认为“绿斑”组织是这种免杀方式的发明者,但至少其是这种方式的早期使用者。而对于一个2012年1月的陈旧漏洞,“绿斑”组织则较早使用了可以延续其攻击窗口的方法。并不是所有APT攻击都会使用0day漏洞,这取决于攻击者的资源储备和突破被攻击方的防御的必要性等因素,部分APT攻击组织并没有能力去挖掘0day漏洞,但其同样试图采购获得商业的0day漏洞,针对1day漏洞快速跟进,并尝试使用免杀方式来使陈旧漏洞形成新的攻击能力。这些问题和0day漏洞检测防御一样值得关注。

3.2 CVE-2014-4114漏洞利用

我们有一定的分析证据表明,“绿斑”组织在2014年10月前曾使用CVE-2014-4114漏洞。这可能表示该组织与地下漏洞交易有相应的渠道联系。

3.3 CVE-2017-8759漏洞利用

安天2017年针对“绿斑”组织的一个新的前导攻击文档进行了分析,该文档利用最新的CVE-2017-8759漏洞下载恶意代码到目标主机执行。样本采用RTF格式而非之前的宏代码方式,在无须用户交互的情况下就可以直接下载并执行远程文件,攻击效果更好。
CVE-2017-8759漏洞是由一个换行符引发的漏洞,该漏洞影响所有主流的.NET Framework版本。在. NET库中的SOAP WSDL解析模块IsValidUrl函数没有正确处理包含回车换行符的情况,导致调用者函数PrintClientProxy存在代码注入执行漏洞,目前该漏洞主要被用于Office文档高级威胁攻击。

20180919t3-6.png

图 3-6 通过objautlink和objupdate控制字段自动更新链接

20180919t3-7.png

图 3-7 嵌入的链接实际上是一个WSDL文件(见下一节TXT文件)

3.3.1 漏洞触发文件:TXT文件

该类文件是WSDL文件,是导致漏洞触发的文件。触发漏洞会导致执行其中的代码即利用msHTA.exe执行指定的HTA文件,使用HTA文件得到解析和运行。以样本jin2.txt为例分析,关键代码如下:

20180919t3-8.png

图 3-8 WSDL文件调用msHTA执行HTA文件

每个txt文件的不同之处在于包含的HTA文件链接不同,具体请看表3-1:

20180919b3-1.png 表 3-1 txt调用hta列表

3.3.2 下载指定EXE文件:HTA文件

HTA文件是html页面文件,嵌入了VBScript脚本,该脚本的主要功能是利用PowerShell下载指定的EXE文件,保存为officeupdate.exe并执行该程序。图3-9为样本jin2.HTA的内容:

20180919t3-9.png

图 3-9 HTA文件调用powershell下载执行文件

每个HTA文件的不同之处是下载地址不相同,攻击者利用漏洞触发HTA下载并执行最终的可执行文件载荷,具体对应关系请看表3-2:

20180919b3-2.png 表 3-2 HTA对应EXE下载地址

3.4 相关载荷分析

3.4.1 Poison Ivy RAT后门

我们经过分析,发现案例1、案例2、案例3、案例9中所释放的update.exe,均为Poison Ivy RAT后门程序,Poison Ivy是一款已经公开的、著名的RAT程序,功能强大,生成的载荷小巧易于加密和对抗检测。正因Poison Ivy有这些优点,因此也被其他攻击组织使用在其他攻击事件中。以下为部分Poison Ivy后门的功能:

可以获取系统基本信息;

可以进行全盘文件管理,包括查看所有文件,下载文件,上传文件等;

获取系统进程信息,结束进程,挂起进程等;

获取系统服务程序信息;

查看系统安装的软件,可进行卸载;

获取系统打开的端口号;

可执行远程shell,执行任意命令;

可获取密码Hash值;

可进行键盘记录;

可获取屏幕截图;

可打开摄像头进行监控;

图3-10、3-11为这四个案例涉及的样本(update.exe)文件中互斥量和域名相关的信息:

20180919t3-10.png

图 3-10 多案例样本互斥量对比

20180919t3-11.png

图 3-11 多案例样本连接域名对比

同时,我们将四个案例涉及样本的版本信息、时间戳、连接域名等相关信息整理如表3-3:

20180919b3-3.png 表 3-3 Poison Ivy RAT后门版本信息对比

通过上面的信息,我们可以看出,在这四个案例中,虽然均为Poison Ivy RAT的后门,但是还可以分为三类:
第一类是案例1和案例2,它们之间除域名外,其它信息均相同,通过对案例1和案例2中update.exe二进制的对比,发现它们之间90%的二进制是相同的,不同之处是加密的二进制代码,它们的不同是由于加密密钥的不同。

20180919t3-12.png

图 3-12 案例1、2涉及样本的解密算法

第二类是案例3,第三类是案例9,这两类样本的加密算法与第一类不同,但解密后的代码,除了相关配置不同,其功能部分几乎完全相同。

20180919t3-13.png

图 3-13 案例3涉及样本的解密算法

20180919t3-14.png

图 3-14 案例9涉及样本的解密算法

根据案例3中update.exe的时间戳,我们可以判断该样本出现于2013年2月6日,虽然时间戳是可以被修改的,但是结合案例3释放的欺骗文档的内容(请参见第2章,doc中内容的时间),我们相信它具有一定的参考价值。

3.4.2 Gh0st后门

通过我们对于案例4中update.exe的分析,得到该样本所使用的互斥量为“chinaheikee__inderjns”,该互斥量与我们分析过的gh0st样本的互斥量一致,是默认配置,而且上线数据包与gh0st 3.75版本非常一致,因此我们可以判定该update.exe为gh0st后门。

20180919t3-15.png

图 3-15 Gh0st RAT后门界面

3.4.3 HttpBots后门

通过我们对于案例5中svchost.exe的分析,可以确定该样本实际是一个BOT后门程序。svchost.exe通过Web端来控制安装有该后门程序的机器,图3-16为具体指令信息截图。

20180919t3-16.png

图 3-16 httpbots后门控制指令

20180919b3-4.png 表 3-4 指令说明

3.4.4 ZXSHELL后门(针对性)

经过安天分析,案例6、7、8中释放的PE文件确定为ZXShell后门家族(分别为3个不同版本),是使用ZXShell源码修改后编译的,具有ZXShell后门常规功能:系统信息获取、文件管理、进程查看等。
很特别的一点是作者将版本修改为V3.6(ZXShell最后更新版本为3.0),并新增了窃密功能:样本收集*.doc*、*.xls*、*.ppt*等文档文件(案例6只收集网络磁盘、U盘、CDROM中的文件,案例7-8则收集全盘文件),且为保证收集的文档具有价值,只收集半年内修改过的文档文件并使用RAR打包,以日期加磁盘卷序列号命名(案例6以磁盘卷序列号命名),后缀名和压缩包密码各不相同。

20180919t3-17.png

图 3-17 案例6只收集U盘、CD、网络磁盘中的文件

20180919t3-18.png

图 3-18 打包收集到的文档

根据已有样本分析配置后,我们统计出样本搜集文档的类型:*.doc*、*.xls*、*.ppt*、*.wps*、*.pdf。
经分析,我们发现了样本新增的功能:
1. 获取IE自动保存的邮箱账户密码和对应网址,对IE6和IE6以上的版本采取不同的方法。
2. 收集网络信息、主机信息、进程信息,记录在如下目录中:
%Application Data%\Microsoft\Windows\Profiles.log
3. 样本根据各自的配置,收集全盘包含指定关键字的文件路径、C盘Program Files目录下的EXE文件路径,将收集到的文件路径信息同样记录在
%Application Data\Microsoft\Windows\Profiles.log

20180919t3-19.png

图 3-19 收集指定关键文件列表

根据目前已捕获样本,我们发现每个样本都硬编码了三个关键字,根据关键字对攻击目标进行敏感资料收集,去重后的具体关键字为十二个,包括“战”、“军”、“航”等,通过这些关键字我们可以清晰的了解“绿斑”组织的作业意图:
4. 样本存在一个额外域名,自动回传Profiles.log文件和RAR打包文件。
5. 后门发包:***_IP-计算机名^^//@@&&***(“***”部分各个样本不同)
6. 监听回应:kwo(口令)
7. 后门发包:IP-计算机名-2014010106.tmpp19769(年月日小时.tmpp文件大小)
8. 监听回应:任意(支持以指定偏移读取文件)
9. 后门发包:Profiles.log文件内容(参见图3-20)

20180919t3-20.png

图 3-20 Profiles.log文件内容

10. 案例6样本中,指令的帮助提示为正常中文,而案例8样本是乱码,经过分析,发现新样本其实对这部分中文是其他编码,而在编译程序时候却将这部分转换为GB2312编码,导致显示乱码。

20180919t3-21.png图 3-21 案例6样本指令提示 

20180919t3-22.png

图 3-22 案例8样本指令提示

11. 案例7样本对中国安全厂商产品的相关进程的判断,根据安装不同的杀软,采取退出、正常运行、添加特殊启动项等不同的行为,可以看出这是针对中国用户专门设计的恶意程序。
表3-5是该组织使用的样本与ZXShell原版功能的对比,可以发现这批样本只保留了必要的远控功能,并添加了ZXShell原本没有的窃密相关功能,具体功能对比如表3-5所示: 

20180919b3-5.png 表 3-5 案例6、7、8样本与 ZXShell RAT原版后门对比

3.4.5 攻击期间部分样本的检出情况

事件中的后门样本均是互联网公开的RAT程序,一般而言安全厂商对这些程序都会重点关注,基本主流安全厂商都可以检测和查杀,但是该组织对这些公开的RAT程序进行修改和加密使用,使这些样本在其行动的一段时间内的整体检出率不到8%,一些个别样本甚至只有1-2家安全厂商检出,可见这批样本是针对杀软做了针对性的免杀处理的,可以在目标主机持续化驻留。

20180919t3-23.png

图 3-23 部分样本检出率

3.4.6 近期捕获样本分析

3.4.6.1 EXE文件

EXE文件是3.3.2章节中提到的由HTA文件下载并执行的最终载荷,该类文件主要功能是从指定网址下载ShellCode,解密之后,创建线程执行此ShellCode。以jin2.exe为例分析,样本关键代码如下:

20180919t3-24.png

图 3-24 连接指定网址下载ShellCode

20180919t3-25.png

图 3-25 解密shellcode函数

从指定网址下载完ShellCode后,样本对ShellCode进行解密,然后分配内存将解密后的ShellCode复制过去。随后创建一个线程,将ShellCode的首地址作为参数传给线程函数从而运行ShellCode。

20180919t3-26.png

图 3-26 分配内存,创建线程执行ShellCode

每个EXE文件功能代码基本相同,只有下载ShellCode的地址不同的,各个地址如下表所示:

20180919b3-6.png 表 3-6 EXE文件下载shellcode对应列表

3.4.6.2 ShellCode(Poison Ivy)

我们对解密后的ShellCode进行分析,发现其ShellCode为Poison Ivy程序生成,与3.4.1章节的样本来自同一远控程序。在传播源放置的不同ShellCode中所连接的IP地址如表3-7所示:

20180919b3-7.png 表 3-7 shellcode连接c2对应列表

我们通过本地劫持的方式,将C2地址重定向到本地计算机,通过配置好的Poison Ivy客户端可以与样本建立连接,确定攻击者使用的Poison Ivy版本为2.3.1,具体信息如图3-27所示:

20180919t3-27.png

图 3-27 重定向C2成功连接分析的样本

4.样本关联性分析

4.1 多案例横向关联

安天CERT对典型案例中的前6个案例的相关信息进行了关联分析,主要涉及文件名、互斥量、文件版本信息等,通过横向关联(参见图4-1)以及之前提到的doc文件内容、漏洞利用方式、可执行文件的相关信息,我们初步判定这些事件之间是存在关联的。

20180919t4-1.png

图 4-1 多案例横向关联

4.1.1 ShellCode部分(CVE-2012-0158)对比

20180919b4-1.png 表 4-1 ShellCode部分(CVE-2012-0158)对比

4.1.2 释放的PE文件对比

20180919b4-2.png 表 4-2 释放的PE文件对比

4.2 域名关联

通过提取和整理十几个有关联样本中的域名信息(参见图4-2),我们可以很清晰地看出,所有域名均为动态域名,且服务提供商均处于境外,同时大部分域名都是通过changeip.com和no-ip.com注册的,我们认为这些域名并非单一散乱注册的,而是属于同一来源的、有组织的进行注册。

20180919t4-2.png

图 4-2 行动涉及域名信息

4.3 IP地址关联

通过提取和整理十几个有关联样本中域名的曾跳转IP和现跳转IP,我们可以很清晰地看出,在所有的IP地址中,绝大多数的IP地址都属于同一地区,并且这些IP多数来自两个互联网地址分派机构AS3462、和AS18182,每个互联网地址分派机构管理现实中的一个区域,这也同时说明了这是一组有相同来源的攻击事件。

4.4 恶意代码之间关联性

为了方便呈现和理解,我们对典型案例中所有的样本、C2的关联性进行了关系梳理(参见图4-3)。

20180919t4-3.png

图 4-3 恶意代码之间关联图(2011-2015年活动)

通过研究发现,虽然“绿斑”组织使用了多种不同的后门程序,但是它们之间共用了C2服务器,这很有可能是为了方便管理与控制,这一点从表4-3的后门ID与上线密码也可以发现不同后门类型之间的对应关系。

20180919t4-4.png

图 4-4 不同事件/恶意载荷(PE)共用基础设施C2

通过对Poison Ivy RAT相关样本分析,我们得出其上线ID和密码。我们可以看到其中有不同的样本均采用了同样的ID和密码。

20180919b4-3.png 表 4-3 Poison Ivy RAT上线ID和密码

通过对已捕获的ZXShell RAT相关样本进行分析,我们统计出样本的上线密码和压缩包加密密码。可以看出ZXShell样本中也有很多采用了相同的密码,同时这些密码与表4-3(Poison Ivy RAT上线ID和密码)中的密码也有一些相同或者相似,再通过域名、IP等其他信息可以认为这些样本为同一攻击组织所为。

20180919b4-4.png 表 4-4 ZXShell RAT上线密码和压缩配置

5.组织关联性分析

除以上样本分析中所呈现的较为直接的多起事件的关联性外,安天CERT还进行了对比分析,从代码相似性、域名使用偏好、C2的IP地址关联性及地理位置特性等方面得出了这些载荷均来自“绿斑”攻击组织的结论。

5.1 代码相似性

在2011-2015的行动中,攻击组织使用了4类远程控制程序,其中主要使用ZXShell和Poison Ivy。在对于Poison Ivy的使用中,攻击组织首先生成Poison Ivy 的ShellCode,然后对ShellCode异或加密硬编码到Loader中,在Loader投放到目标主机后解密执行ShellCode。这种手法与2017年所发现行动中的样本完全相同,且都是采用三次异或加密,样本解密算法代码对比参见图5-1。

20180919t5-1.png

图 5-1 左图为2011-2015年行动中样本解密算法,右图为2017年行动样本解密算法

5.2 域名使用偏好

在2017年发现的行动中全部使用了动态域名商(共计14个),而在2011-2015年的行动中则使用了35个动态域名商。可以发现两起行动的攻击者都偏好使用动态域名,同时本次行动中有7个动态域名商与历史行动涉及的域名商相同。
另外,在此次事件中的一个域名“geiwoaaa.xxx.com”与2013年事件中的域名“givemea.xxx.com”释义相似度较高,我们猜测很可能是同一组织注册。

5.3 C2的IP地址关联性

通过对两次行动中C2的IP地址进行关联分析,我们发现在2017年行动中的样本的C2(uswebmail163.xxx.com和l63service.xxx.com)解析到同一个IP:45.77.xxx.xxx,而在2011-2015年行动中涉及的pps.xxx.com这个域名也曾指向这个IP。

20180919t5-2.png

图 5-2 关联到2013年行动中的C2域名

5.4 地理位置特性

在2017年行动中的一个域名“geiwoaaa.xxx.com”与2011-2015年行动可能存在某种关联,因为该域名解析的IP(114.42.XXX.XXX)地理位置与早期活动涉及的地理位置相同(其他IP地址多为美国),这可能是攻击者早期测试遗留的,而这个IP与2013年行动都属于亚洲某地区电信的114.42段,在我们的监控中发现2013年行动中C2地址多为这个IP段内,这表示两起行动的攻击组织可能存在密切联系。同时该地区电信相关网站资料显示:“114.32.XXX.XXX – 114.47.XXX.XXX非固定浮动IP”,这说明该段内IP地址为动态分配IP,一定区域内在此电信运营商办理网络业务的用户都可能被分配到该IP地址,这表示可能两次行动的攻击者所在位置相近或者采用的跳板位置相近。

20180919t5-3.png

图 5-3 指向2011-2015年行动的C2域名

6.小结

“绿斑”攻击组织主要针对中国政府部门和航空、军事、科研等相关的机构和人员进行网络攻击,试图窃取机密文件或数据。这是一组时间跨度非常漫长的攻击行动,目前可以确定该攻击组织的活跃时间超过7年,甚至可能达到11年以上。该攻击组织主要采用的手法是鱼叉式网络钓鱼攻击,即以邮件作为攻击前导,邮件附件使用有社工技巧的格式溢出文档或伪装过EXE可执行文件,进行定向投放,该组织对开源后门程序进行了大量改造,使其符合作业需要,并绕过主机防护软件。在该组织的攻击中,罕有使用0day攻击的情况,而反复使用陈旧漏洞,但其对漏洞免杀技巧的应用是熟练的,甚至是抢先的。在侵入主机后,通过加密和动态加载等技术手段,试图达成进入目标并在目标机器内长期潜伏而不被发现的效果。这些攻击手段看起来并无华丽复杂的攻击装备组合,但其反复地重复使用,恰恰说明这种攻击是可能达成目的的。我们在此前反复强调,APT攻击组织使用相关漏洞的攻击窗口期,如果与可能被攻击目标的未进行对应漏洞修复的攻击窗口期重叠,就不是简单的漏洞修复问题,而是深入的排查和量损、止损问题。
网络入侵相对与传统空间的各种信息窃取破坏行为,无疑是一种成本更低,隐蔽性更强、更难以追踪溯源的方式。尽管“绿斑”组织不代表APT攻击的最高水准,但其威胁依然值得高度警惕。APT的核心从来不是A(高级),而是P(持续),因为P体现的是攻击方的意图和意志。面对拥有坚定的攻击意志、对高昂攻击成本的承受力、团队体系化作业的攻击组织来说,不会有“一招鲜、吃遍天”的防御秘诀,而必须建立扎实的系统安全能力。以“绿斑”攻击组织常用的攻击入口邮件为例,不仅要做好身份认证、通讯加密等工作,附件动态检测分析,邮件收发者所使用终端的安全加固和主动防御等工作也需要深入到位。对于重要的政府、军队、科研人员,更需要在公私邮件使用上、收发公私邮件的不同场景环境安全方面都有明确的规定与要求。邮件只是众多的动机入口之一,所有信息交换的入口,所有开放服务的暴露面,都有可能成为APT攻击者在漫长窥视和守候过程中,首发命中的机会。
面对具有中高能力水平且组织严密的网空威胁行为体,重要信息系统、关键信息基础设施运营者应根据网络与信息系统的国家安全、社会安全和业务安全属性,客观判断必须能够有效对抗哪些层级的网络空间威胁,并据此驱动网络空间安全防御需求。 
当前,网络安全对抗已经是大国博弈和地缘安全中的常态化对抗,网络安全工作者必须“树立正确网络安全观”,直面真实的敌情想定,建立动态综合的网络安全防御体系。并以“关口前移”对网络安全防护方法的重要要求为指引,落实安全能力的重要控制点,有效解决安全能力“结合面”和“覆盖面”的问题,将网络安全防御能力深度结合信息系统“物理和环境、网络和通信、设备和计算、应用和数据”等逻辑层次,并全面覆盖信息系统的各个组成实体和全生命周期,包括桌面终端、服务器系统、通信链路、网络设备、安全设备以及供应链、物流链、信息出入乃至人员等,避免由于存在局部的安全盲区或者安全短板而导致整个网络安全防御体系的失效。重要的是,在网络安全体系建设实施的过程中,必须在投资预算和资源配备等方面予以充分保障,以确保将“关口前移”要求落到实处,在此基础上进一步建设实现有效的态势感知体系。
在未来工作中,安天将继续根据总书记的工作要求,努力实现“全天候全方位感知”、“有效防护”和“关口前移”,在实践中,不断提升网络安全能力与信息技术的“结合面”和“覆盖面”问题。更多深入参与用户的信息系统规划建设,将安全管理与防护措施落实前移至规划与建设等系统生命周期的早期阶段,将态势感知驱动的实时防护机制融入系统运行维护过程,协助客户实现常态化的威胁发现与响应处置工作,逐步实现“防患于未然”。安天将直面敌情,不断完善能力体系,协助用户应对高级网空威胁行为体的挑战。

*本文作者:antiylab,转载请注明来自FreeBuf.COM

前言

2017年8月,安天安全研究与应急处理中心(安天CERT)基于综合情报研判,将针对工业控制系统的恶意代码TRISIS(又名TRITON、HATMAN)列为需要重点分析关注的威胁,并将其命名为“海渊”。该恶意代码在中东某石油天然气厂的工业控制系统中被国外安全研究人员发现,根据各方信息判断,由于攻击者准备不充分,尚未对人员及财产造成重大损失。“海渊”(TRISIS)的目标为施耐德电气公司的安全仪表系统,通过植入固件更改最终控制元件的逻辑以达到攻击目的。其通过Tricon安全仪表系统所使用的TriStation通信协议进行攻击,因此运行此协议的所有安全控制器都可能受到影响。

一、概述

“海渊”(TRISIS)所攻击的目标是工业控制系统(ICS)中的安全仪表系统(SIS)控制器,其主要瞄准施耐德电气的Tricon安全仪表系统,从而达到在最终控制元件中替换逻辑的目的。安全仪表系统(Safety Instrumented System),简称SIS,又称为安全联锁系统(Safety Interlocking System),主要为工厂控制系统中报警和联锁部分,对控制系统中检测的结果实施报警动作或调节或停机控制,是工厂企业自动控制中的重要组成部分。其包括传感器、逻辑运算器和最终执行元件,即检测单元、控制单元和执行单元。SIS系统可以监测生产过程中出现的或者潜伏的危险,发出告警信息或直接执行预定程序,立即进入操作,以防止事故的发生,同时降低事故带来的危害及影响。

安天CERT针对该恶意代码的攻击原理及样本展开了技术分析,发现该恶意代码的攻击流程为利用社工技巧伪装成安全仪表系统的日志软件进入目标网络,之后通过特殊ping包发现安全仪表系统,在确定安全仪表系统可被入侵后,会上传组合后的二进制代码,以改变安全仪表系统的梯形图(即安全仪表系统逻辑),一旦攻击成功,将有可能对工业生产设备、工厂人身安全造成巨大危害,对关键信息基础设施安全、社会安全造成巨大影响。

二、“海渊”(TRISIS)攻击原理

2.1 攻击原理简述

“海渊”(TRISIS)和“震网”(Stuxnet)、“Industroyer/CrashOverride”等恶意代码一样具备从工业控制系统中发现特定目标装置的能力。但同时,其更进一步具有直接交互、远程控制和危害安全系统的能力。

“海渊”(TRISIS)采用Python脚本进行编写,并使用Py2EXE伪编译为PE可执行程序,以便于在未安装Python的系统环境下执行。攻击者充分了解安全仪表系统处理过程及环境的具体细节,才能构造有效载荷利用“海渊”(TRISIS)进行攻击,其主要通过修改和部署新的PLC(可编程逻辑控制器)梯形图,以对目标产生预期的影响。

“海渊”(TRISIS)可以改变目标安全仪表的基本逻辑,通过可执行文件将其目标作为在执行时传递给它的命令行参数,其核心功能是通过将四个二进制文件组合到目标上进行工作,其中植入Python脚本中的两个二进制载荷,主要用于准备和加载包含替换逻辑的外部模块(参见图2-1、图2-2);附加的两个外部的二进制文件,由脚本中的名称专门引用,但位于单独的文件中,其中imain.bin为主要功能载荷(参见图2-3)。

植入脚本中的二进制载荷

图2-1 植入脚本中的二进制载荷

脚本中用于覆盖核心载荷的傀儡程序

图2-2 脚本中用于覆盖核心载荷的傀儡程序

获取外部独立二进制文件

图2-3 获取外部独立二进制文件

2.2 攻击流程分析

trilog.exe是“海渊”(TRISIS)的主程序,其原本是Tricon安全仪表系统中的一个模块程序,攻击者利用其进行实施攻击的主要流程参见图2-4:

TRISIS攻击流程

图2-4 TRISIS攻击流程

攻击流程说明:

trilog.exe通过TSAA协议链接TCM(Tricon通信模块),识别并获得一个能够与安全仪表系统通信的系统,并判断是否满足入侵的条件;

确认可入侵后,识别目标安全仪表系统类型,并用替换逻辑和加载器开发“海渊”(TRISIS)功能代码,构建漏洞利用程序PresentStatus;

上载PresentStatus到Tricon安全仪表系统中,并执行确保“海渊”(TRISIS)在预期环境下工作;

构建加载器和核心载荷inject.bin、imain.bin,将“海渊”(TRISIS)传输到包含装载器模块的目标上;

“海渊”(TRISIS)可执行文件运行时,伪装成用于分析日志的软件,利用嵌入的二进制文件来识别控制器上存储器中的适当位置以进行逻辑替换,并上传“初始化代码”(4字节序列);

上传初始化代码

图2-5 上传初始化代码

验证前一步是否成功,然后上传新的PLC梯形图到安全仪表系统;

上传傀儡程序覆盖核心载荷。

上传傀儡程序

图2-6 上传傀儡程序

三、”海渊”(TRISIS)样本分析

3.1 “海渊”(TRISIS)与Triconex的通信过程分析

“海渊”(TRISIS)与Triconex的通信主要依赖于TsHi、TsBase、TsLow、TS_cnames等模块,这些模块提供了极为强大的远程连接控制Triconex的代码。

请求连接

“海渊”(TRISIS)通过在Script_test.py中调用TsLow中的connect函数进行连接,我们以此作为入口点,对其协议进行简单分析。

connect函数

图3-1 connect函数

在connect函数中detect_ip和tcm_connect为关键函数。

detect_ip函数

图3-2 detect_ip函数

tcm_connect函数

图3-3 tcm_connect函数

在detect_ip函数中使用1502端口,用变量TS_PORT定义;另外,对ping数据包和close数据包定义,分别采用0×06和0×04为两者标识码,如下图3-4。

数据包类型标识码定义

图3-4 数据包类型标识码定义

在tcm_connect函数中connect_result同样为数据包类型标识码,具体定义见上图3-4,其中关键函数为tcm_exec(type参数的值为1)。

tcm_exec函数

图3-5 tcm_exec函数

Struct.pack函数作用为按照给定的格式(fmt),把数据转换成字符串(字节流),并将该字符串返回,即packet是把type和data长度按照16进制解释,再加上data和crc16校验的数据包。Struct.pack数据包结构如下:

上传PresetStatus

“海渊”(TRISIS)通过使用SafeAppendProgramMod函数上传PresetStatus。

PresetStatusField函数

图3-6 PresetStatusField函数

script_code为需要上传的执行代码。该函数为对AppendProgramMin函数的封装,AppendProgramMin函数调用WriteProgram函数(对WriteFunctionOrProgram的封装)。

AppendProgramMin函数(部分)

图3-7 AppendProgramMin函数(部分)

WriteFunctionOrProgram函数

图3-8 WriteFunctionOrProgram函数

AppendProgramMin函数在代码尾部加上CRC校验:

MyCodeSign函数

图3-9 MyCodeSign函数

在WriteFunctionOrProgram函数中调用AllocateProgram函数向仪表写入程序:

图3-10 AllocateProgram函数

此时对数据包进行一次封装,现在数据包为:

Ts_exec函数

图3-11 Ts_exec函数

Ts_exec函数负责一层数据包封装,此时数据包为:

Ts_exec函数负责一层数据包封装

在Ts_exec函数中调用tcm_exec函数(参见图3-5),此时数据包为:

在Ts_exec函数中调用tcm_exec函数

Tcm_exec调用udp_exec函数,最终调用sock.send函数通信。

上传有效载荷

上传有效载荷与上传PresetStatus流程相同,在此不再赘述,有效载荷的数据包结构为:

上传有效载荷

3.2 模块分析

“海渊”(TRISIS)构建了精简的TriStation通信框架,框架包含模块TsHi.py、TsBase.py、TsLow.py、TS_cnames.py。除框架外,“海渊”(TRISIS)还包含一个Script_test.py脚本,此脚本使用TriStation通信框架连接到Tricon,并注入载荷。

Script_test.py分析

Script_test.py是使“海渊”(TRISIS)真正实现功能的模块,Script_test.py文件小巧,其通信功能的实现主要依赖TriStation协议支持库。由于TriStation协议目前为止仍是闭源协议,这些支持库极有可能为“海渊”(TRISIS)背后攻击者花费精力逆向得来,如果要对TriStation协议进行深入了解,对涉及的库文件进行分析是很好的选择。

Script_test.py与通信有关代码主要实现了代码上传、寻找仪表系统和利用库函数进行通信的功能(参见图3-12、3-13、3-14)。

代码上传

图3-12 代码上传

寻找仪表系统

图3-13 寻找仪表系统

图3-14 利用库函数进行通信

攻击步骤说明:

Script_test.py脚本首先尝试连接Tricon仪表系统,当不带参数启动时,直接广播搜索可识别TriStation协议的设备——Tricon仪表系统:

广播搜索Tricon仪表系统

图3-15 广播搜索Tricon仪表系统

一旦寻找到目标,将上传PresetStatus程序确定此目标是否可被利用;确定可被利用后,上传inject.bin和imain.bin两个主要载荷,篡改图表,以达到破坏或监控目的;最后,上传无用代码覆盖载荷消除痕迹。

TsHi.py分析

TsHi.py是框架的高级接口,允许读写函数和程序,以及检索项目信息和与植入有效负载的交互(如下所述),其包括SafeAppendProgramMod函数,该函数可获取程序表,读取程序和函数,并将提供的shellcode附加到现有的控制程序,它还在必要时处理CRC32校验和。

TsHi.py分析

从函数名我们可以轻易猜出每个函数的作用,“海渊”(TRISIS)只使用了其中的SafeAppendProgramMod函数来上传其载荷。

SafeAppendProgramMod函数检查目标状态

图3-16 SafeAppendProgramMod函数检查目标状态

之后,此函数获取目标系统中已上传的程序列表及函数数量。最后用AppendProgramMin函数上传载荷,并执行。

TsBase.py分析

TsBase.py主要充当高级接口和低级TriStation功能代码之间的转换层,以及用于上载和下载程序或获取控制程序状态和模块版本等功能的数据格式:

TsBase.py分析

TsLow.py分析

TsLow.py可实现将上层制作的TriStation数据包通过UDP发送到Tricon通信模块(TCM)的功能的最底层,还包括通过向1502端口发送UDP“ping”广播消息来自动发现Tricon控制器。

TsLow.py分析

TS_cnames.py分析

TS_cnames.py包含TriStation协议功能和响应代码以及关键开关和控制程序状态的命名查找常量。

TS_cnames.py分析

图3-17 状态码截图(部分)

四、结语

“海渊”(TRISIS)恶意代码呈现出了一些值得关注的特点,其开发者深入了解相关工控产品的控制协议,除了上载到PLC中的二进制模块外,其他框架和功能代码全部采用脚本编写,非常容易被改造和加工。而其打击点则在作为工业控制系统的生产安全监测单元的SIS上。

作为针对工业系统攻击的恶意代码,“海渊”(TRISIS)很自然的会被与“震网”(Stuxnet)和“乌克兰停电”等攻击关键基础工业设施的事件相比较。

与“震网”庞大的恶意代码工程相比,“海渊”(TRISIS)看起来相对简单。震网攻击对于离心机整体控制机制的介入是极为深入的,这本身也源自铀离心工艺处理的复杂性,基于攻击者所要达成的复杂的攻击目的(铀无法达到武器级要求、大量损毁离心机)、攻击的隐蔽性攻击和攻击需要达成的阶段持续性。震网是一个支撑完整战役过程的恶意代码。相比之下,尽管“海渊”(TRISIS)小巧的令人可怕,但其更像一个灵巧的“战斗部”,其在攻击行动中,可能是与其他的攻击植入手段和恶意代码配合使用的。对“海渊”(TRISIS)的编写者来说,其核心资源和成本消耗,主要是对SIS系统达成深入分析了解。

“海渊”(TRISIS)的攻击方式与乌克兰电网遭遇攻击停电事件的明显差异是“海渊”(TRISIS)攻击的位置更加纵深。乌克兰停电的攻击效果是通过直接在SCADA控制界面上拉闸达成的,粗暴而有效,其并不依赖于深度解析和篡改控制指令。尽管乌克兰停电事件中,攻击者也篡改了远程变电站串口以太网关中的固件,但这一操作目的是为了导致已经被“拉闸”的远程变电站不能被远程合闸恢复。而“海渊”(TRISIS)的打击点,则是为PLC重置新的逻辑,而且其攻击的是安全仪表系统。

从防御工作来看,由于“海渊”(TRISIS)以通过伪装为SIS的日志软件获得被执行的机会,因此重要的防御点即在对软件供应链的管控上。应在采购阶段,严格落实供应链的安全管控,从源头遏制危害。在工业系统的运维中,针对工控系统环境的新设备安装上线、软件的发布升级、运维手段的接入等,都应进行全面的前置检查和移动介质接入管控。

与“震网”、“乌克兰停电”事件类似的是,“海渊”(TRISIS)攻击依然是以获得关键PC节点为攻击入口的,这一特点是具有普遍性的。而一旦关键PC节点沦陷,攻击已经针对生产系统实施了纵深影响,则极难防御。对于工业基础设施来说,做好生产网络和办公网络中的PC端点防御是一个必须做好的基础性工作,对于重要PC节点必须形成严格的依托白名单的主动防御机制。

从现状来看,大部分工业控制系统对效率性能的考虑远多于安全考虑,而安全考量中,更多依然是以传统的应对事故视角,而非应对攻击视角。做好工业系统的安全防御工作,必须按照三同步的原则进行,在系统规划、建设、运维的全周期考虑网络安全问题。这是一个复杂和系统的工作,在可管理网络的基础上,建设可防御的网络,推动从基础结构安全、纵深防御、态势感知与积极防御到威胁情报的整体叠加演进。这个过程需要大量基础扎实的工作和预算投入。对已有系统的安全改造,因为涉及到生产业务的连续性、稳定性,可能牵扯到更多的问题。

关于对工业系统的安全问题和防御,安天在“震网”、“乌克兰停电”等事件的分析中,已经有过很多的探讨,我们会为用户提供更系统的建议和解决方案。

五、参考资料

[1] Dragos :TRISIS Malware——Analysis of Safety System Targeted Malware:https://dragos.com/blog/trisis/TRISIS-01.pdf

[2] Ics-cert :MAR-17-352-01 HatMan—Safety System Targeted Malware (Update A):https://ics-cert.us-cert.gov/sites/default/files/documents/MAR-17-352-01HatMan – Safety System Targeted Malware (Update A)_S508C.PDF

[3]《乌克兰电力系统遭受攻击事件综合分析报告》:http://www.antiy.com/response/A_Comprehensive_Analysis_Report_on_Ukraine_Power_Grid_Outage/A_Comprehensive_Analysis_Report_on_Ukraine_Power_Grid_Outage.html

[4]《对Stuxnet蠕虫攻击工业控制系统事件的综合分析报告》:http://www.antiy.com/response/stuxnet/Report_on_the_Worm_Stuxnet_Attack.html

六、HASH

*本文作者:安天实验室,转载请注明来自FreeBuf.COM