六方云知识库

工控SIS恶意软件TRITON深度分析报告——六方云工业防火墙以及下一代防火墙NGFW已支持针对该攻击的检测

2018年07月04日 16:45


一、事件简述

  2017年8月,安全研究人员发现了一款专门针对工控安全系统的恶意软件Triton(又名为Trisis或Hatman),该软件利用施耐德Triconex安全仪表系统零日漏洞, 对中东一家石油天然气工厂发起网络攻击,导致工厂停运。

  2017年12月14日,FireEye的Mandiant部门再次公开讨论TRITON攻击事件,并对外发布分析报告.

2018年5月24日,据工业网络安全公司Dragos披露,“最强”工控恶意软件 TRITON背后的黑客组织 Xenotime 仍在活跃并初露行动轨迹,目前已扩大攻击目标范围, 为此一直专注工控互联网安全研究的六方云超弦攻防实验室进行了深入跟踪和深度分析,以便为随时可能再次发生的工业网络攻击做技术储备.

二、影响面和危害分析

  安全仪表系统(Safety Instrumented System简称SIS),又称为安全联锁系统(Safety interlocking System),主要为工厂控制系统中报警和联锁部分,对控制系统中检测的结果实施报警动作或调节或停机控制,是工业企业自动控制中的重要组成部分。

  目前TRITON恶意软件所利用的漏洞主要影响施耐德电气Triconex Tricon MP3008 10.0/10.1/10.2/10.3/10.4固件版本,其他型号或者该型号的其他固件版本均不受其影响,鉴于传统工控网络系统升级困难或固件升级缓慢等因素,此恶意软件的影响还是不容小觑。

  该恶意软件可以在攻陷SIS系统后,对SIS系统逻辑进行重编程,使SIS系统产生意外动作,对正常生产活动造成影响;或是造成SIS系统失效,在发生安全隐患或安全风险时无法及时实行和启动安全保护机制;亦或在攻陷SIS系统后,对DCS系统实施攻击,并通过SIS系统与DCS系统的联合作用,对工业设备、生产活动以及操作人员的人身安全造成巨大威胁.

三、解决方案

针对TRITON的攻击方式以及攻击场景,可在工业终端安全以及工业网络安全维度进行安全防范,为此六方云超弦攻防实验室给所有企业客户的防护建议如下:

1. 可通过部署主机白名单软件以及实施主机安全加固进行安全防护,增强线上主机以及终端系统健壮性,在任何能访问SIS系统的服务器或工作站上采用严格的访问控制和应用白名单措施;

2. 结合现场工业业务以及工业网络建立通信数据模型,通过协议,数据包,流量,业务以及行为的综合分析实现病毒发现与预警(可通过专业的工控安全审计监测平台实现),并通过工业防火墙深度包检测(DPI)功能,及时阻断病毒传播路径;

3. 升级固件到最新、安装对应的漏洞补丁;

4. 在技术可行的情况下,将安全系统网络与过程控制信息系统网络隔离开(确保SIS处理隔离的网络中);

5. 利用提供物理控制能力的硬件功能对安全控制器进行编程,一般通过物理密钥控制的交换机实现。在Triconex控制器上,除了预定的编程事件期间,密钥不应留在PROGRAM模式中;

6. 监控ICS网络流量,检测意外通信流量和其它异常活动;

7. 对工业网络统一部署工控卫士或工业防火墙等工控安全产品。

 

  针对TRITON恶意软件攻击过程中的网络流量进行分析,我们提取了如下几条Snort规则,可针对性检测该恶意软件:

alert udp any any -> any 1502 (msg:” ICS-ATTACK.TRISIS/TRITON  READ REQUEST Detected!”; content:”|05 00 10 00 00 00 1d|”; offset:0; depth:7; content:”|00 00|”; offset:8; depth:2; content:”|10 00 f9|”; offset:12; depth:3; dsize:22; sid:1111111; rev:1;)

 

alert udp any any -> any 1502 (msg:” ICS-ATTACK.TRISIS/TRITON  WRITE REQUEST Detected!”; content:”|05 00 14 00 00 00 1d|”; offset:0; depth:7; content:”|00 00|”; offset:8; depth:2; content:”|14 00 17|”; offset:12; depth:3; dsize:26; sid:1111112; rev:1;)

 

alert udp any any -> any 1502 (msg:”ICS-ATTACK.TRISIS/TRITON  EXECUTE REQUEST Detected!”; byte_extract:2,2,payload_length; content:”|05 00|”; offset:0; depth:2; content:”|00 00 1d|”; offset:4; depth:3; content:”|00 00|”; offset:8; depth:2; byte_test:2,=,payload_length,12; content:”|41|”; offset:14; depth:1; sid:1111113; rev:1;)

 

六方云下一代防火墙NGFW和工业防火墙已经能够检测此类恶意软件:

图片.png

 

四、技术分析

TRITON攻击框架完全由python v2.7编写,其主要由三部分模块组成:

1. 主程序Trilog.exe

2. 注入组件:inject.bin和iman.bin

3. 通信库library.zip: TsHi、TsBase、TsLow、TS_cnames

为便于读者理解,我们绘制如下所示的TRITON恶意软件框架图和攻击流程图:

图片.png

 

图片.png

 

其中inject.bin主要利用施耐德电气Triconex Tricon MP3008 10.0到10.4固件版本中存在的安全漏洞(漏洞编号:CVE-2018-7522CVE-2018-8872)来获取系统访问权限,禁用固件RAM/ROM一致性检查,注入payload(imain.bin)到固件内存区域,imain.bin主要负责与TRITON框架进行通信,接受远程攻击操作指令,其通信数据包格式如下(通过关联分析与逆向得出):

图片.png

 

五、关联分析及溯源

  在前面的分析过程中,我们能够看得出攻击者对于TriStation协议似乎很熟,能够自己实现一套通信库供整个框架使用,然而TriStation协议并未公开,也没有任何公开资料,属于未文档化的协议,所以这里攻击者前期肯定是花了很大功夫在逆向TS协议上面,为此我们开始对官方TriStation软件进行相关分析,试图寻找一丝关联线索,终于我们找到了一个关键库文件TricCom.dll,在该dll里我们发现了一些TRITON攻击框架通信库里TS_cnames.py所引用的字符串常量名,这部分完全重叠(一致),这样我们可以确认攻击者是基于逆向官方合法通信接口软件来开发自己的通信库与攻击框架:

图片.png


  我们也观察到某些常量字符串命名为UnK,这也表明攻击者对于TriStation的逆向并不完全成熟,还存在一些未知,这就容易导致攻击者在攻击相关组织机构的关键基础设施中遇到问题,加之 Triton 恶意软件的发现就是因为攻击者在攻击过程中,不慎导致 SIS 控制器触发安全关闭之后被曝光,据此我们推测攻击者之前一直在进行测试,试图判断哪些条件才能造成物理损害, 另外样本主程序名字叫script_test.py,也表明攻击者正在测试的意图,所以此前导致中东能源工厂停运的TRITON恶意软件也只能算是攻击者手中的实验品而已。

  其实一开始分析此事件的时候我们便对攻击者的攻击意图有所好奇,攻击者为什么会花如此多的精力在开发安全控制系统的攻击能力上面? 因为此类安全控制系统在一个工厂网络中比DCS(Distributed Control System)更为孤立,为什么此次恶意软件的攻击目标是SIS? 经过分析我们认为可能有2个原因:

1. 通过降低阈值来触发安全关闭;

2. 阻止(拒绝)SIS在危险条件下安全关闭一个过程.

如下是工厂网络抽象的ICS架构示意图:

图片.png

 

图片.png

 

 如上面2个工控系统架构图所示, 在过去的10年里,考虑到成本低、使用方便、DCS和SIS交换信息方便等因素,在设计中将DCS和SIS集成到一起是一种趋势,事实上,DCS能够为攻击者提供更多的攻击路径来完成具体过程的关闭,而且阻止或拒绝工厂生产过程的安全关闭能够让黑客以更随机的方式隐藏自己或者伺机等待攻击者发动更进一步的攻击,所以我们认为TRITON恶意软件并不是最终的攻击阶段, 其可能处于放大攻击阶段,用来发动(支持)更大的攻击动作,比如DCS层面的攻击或其他系统的攻击,潜在危害巨大。

 综上,此次针对施耐德SIS的工控网络攻击是一次主要针对中东地区能源机构的有预谋的多阶段的复杂定向攻击,目前仍处在攻击测试阶段,攻击者试图通过在实际目标工控网络系统上的运行(侦查)获得更多反馈来完善攻击框架,后面可能开始进入攻击反射与放大阶段,攻击目标将不在局限于SIS,包括DCS等控制系统也将受到其影响,严重危害工控资产与人身安全,希望广大工厂企业及早做好防御措施,六方云超弦实验室将持续跟踪此事件,还原最真实的工控攻击路径,为工控互联网保驾护航。

六、附录IOCs

文件名   MD5哈希值

trilog.exe  6c39c3f4a08d3d78f2eb973a94bd7718

imain.bin  437f135ba179959a580412e564d3107f

inject.bin  0544d425c7555dc4e9d76b571f31f500

library.zip 0face841f7b2953e7c29c064d6886523


原文资料下载:

工控SIS恶意软件TRITON深度分析报告by 六方云超弦攻防实验室-完整版.pdf


more

手机扫码打开

logo