ICS中的6种知名攻击

An evaluation framework for industrial control system cyber incidents


一、摘要

本文首先介绍了6个著名的攻击,然后设计了一个评估框架,以其复杂度和事件后果来它在ICS中的威胁水平,并且定义了相应的评估指标进行打分。

二、著名的网络攻击案例

网络攻击过程一般可以分为五个阶段,分别是传播,激活,载体,隐藏,攻击发射阶段。如下图所示。传播阶段,首先确定攻击的目标,并且将恶意文件上传到受害者机器上。所有尝试识别,凭证访问都可以归类到这个阶段。当恶意文件传播到目标主机后,进入激活阶段。在此阶段,恶意软件试图通过卸载/禁用安全软件来试图逃避安全软件的检测。激活阶段是包括提权和执行操作的。一旦成功交付了恶意软件,目标主机上的恶意软件将会执行有效载荷,恶意软件的执行可以通过用户执行完成,如打开恶意文档文件或链接。隐藏阶段中,敌手会尽量维持上一阶段获得的连接点,维护连接点的访问,配置。如更换或劫持合法代码或者添加启动代码。这个阶段是最长的,可能会持续几天或者一周甚至更长。隐藏阶段的恶意软件是无害的,敌手会在受害者主机的网络中横向移动寻找合适的攻击位置。攻击发射阶段中,攻击者会发起实际的销毁和网络破坏。在此阶段中,攻击者会试图操纵或中断工业系统,以破坏数据数据完整性。
在这里插入图片描述

(一)Stuxnet

stuxnet震网病毒,在2010年攻击了伊朗的核设施。这是一个的蠕虫病毒,不需要互联网访问即可传播。这个病毒的目标是工业控制系统,目的是修改PLC中运行的代码,使其偏离预期行为。修改PLC中的代码使得离心机旋转太快,而且这一过程持续了很长时间,这造成了设备损坏,同时还向HMI发送虚假信号,使得系统还认为一切正常。
stuxnet利用了windows中的几个远程代码执行漏洞,其中至少三个是零日漏洞即MS08-067 RPC,MS10-046 LNK 和MS10-061 Spool Server。当恶意软件首次加载时,他会评估受害者的兼容性(如windows版本),确定反病毒的版本。为了逃避检测,stuxnet为了防止被检测出来,stuxnet改变了受害者系统上的安全检测机制。修改了PLC发送的数据,使得HMI向操作员显示修改后的信息,使得所有信息看起来都很正常,安装了stuxnet之后,它会将s7otbxdx.dll重命名为s7otbxsx.dll。然后用自己版本的文件替换s7otbxdx.dll。这样操作后,就实现了stuxnet拦截了控制器和PLC之间的通信。
在这里插入图片描述

(二)BlackEnergy

BlackEnergy是一个恶意软件集。BlackEnergy-1是用于DDoS攻击的基于HTTP的僵尸网络,BlackEnergy-2是高度模块化的,由不同的组件构成。这一版本主要用于数据盗窃。BlackEnergy-3允许使用各种插件,这些插件会影响系统资源的正常使用。比如在2015年,乌克兰出现了停电,是因为攻击者使用恶意软件访问电力公司的公司网络,然后转移到SCADA网络中。恶意软件中有一个感染模块,这个模块可以搜索任何与网络连接的文件或者可移动媒体。这些介质可以帮助恶意软件在网络中横向移动。它有一个远程过程调用模块,在恶意程序被调用后没有立刻发送攻击,而是潜伏下来,进行侦察,在需要的时间再发起攻击。攻击过程中,攻击者使用了多个插件,如scan.dll(网络扫描),kl.dll(密钥记录), vs.dll(网络发现和远程执行),ss.dll(屏幕截图),ps.dll(密码窃取器),rd.dll(远程桌面)
在这里插入图片描述

(三)Crashoverride

继BlackEnergy-3事件后,多灾多难的乌克兰又被名为Crashoverride的恶意软件攻击。该软件通过通信协议直接与基础硬件进行了交互,并且可以控制电力变电站开关,这对电路造成了大规模的破坏。他没有利用零日漏洞,而是利用了现有的Microsoft Windows内置工具,如powershell。该工具下载了恶意软件的其他部分来入侵ICS网络。Crashoverride针对HMI的库和配置文件,来进一步理解受害者网络中的环境。Crashoverride是一个模块化的框架,有很多零件。包括初始后门,启动器,几个有效负载模块。后门允许访问受感染的系统,包括更换注册表密钥,连接到C&C服务器,或者执行进程和shell命令
在这里插入图片描述

(四)Triton

Triton在2017年被检测出是针对沙特石油和天然气厂控制系统的恶意软件。它专门针对安全仪器系统(SIS)。SIS时刻对系统检测,如果超过定义危险状态的值,则SIS试图将过程重新恢复到安全状态或安全关闭该过程。Triton由四个组件组成,即trilog.exe,libraries.zip,inject.bin和imain.bin。triton用来查看Windows OS上运行的工作站日志。libries…zip包含许多编译的python文件。inject.bin包含利用一个零日漏洞的代码。imain.bin用于在安全控制器上读取和写内存,并在固件中的任意地址执行代码。trilog.exe是核心模块,加载到工作站之后,它会为inject.bin和imain.bin构建加载程序,并将trition传输到包含加载器模块的目标中。
在这里插入图片描述

(五)Irongate

Irongate是一种多阶段的恶意程序,用python编写。该程序旨在操纵西门子控制系统环境中运行的特定工业流程。Irongate的核心特征是针对IO的中间人攻击。和stuxnet类似,它替换了dll,在PLC和监控模块(如HMI)之间充当中间人。这个恶意的dll记录了从PLC到用户界面5秒钟内的正常流量,并在将不同的数据发送回PLC的时候重播,这就允许攻击者改动过程操作不知情的受控过程。
在这里插入图片描述

(六)Havex

Havex是一种预测访问木马程序。能够手机敏感信息,并将盗取的数据上传到C&C服务器上。为了感染目标,Havex使用了常规的方式,即通过邮件或者恶意连接的方式注入木马安装程序。Havex将dll模块添加到受害者网站,这些模块可以收集有关受害者和本地网络中其他机器的信息,密码等。
在这里插入图片描述

三、评估得分

将危害性的权重定义为0.1-0.3。0.1表示策略有效,但不是很复杂。0.2和0.3分别表示中和高的影响力和危害。下表中显示了5个攻击阶段机器权重策略。第一列表示五个攻击状态,第二列表示每个攻击状态下可以执行的操作,第三列表示每一项操作的权重,第四项中表示涉及到的技术,第五列为指标TI计算得分结果。
在这里插入图片描述
对于威胁性不同的网络事件的划分量化,根据TS(威胁得分)来划分。将TS小于0.1划分到低风险。0.1<TS<0.2的划分到中风险,0.2<TS<0.5划分到高风险。0.5<TS<1划分到极度危险模型。管理员可以根据TS得分做出不同程度的响应。

结合权重可以计算这六种攻击的得分如下表所示:
在这里插入图片描述
TCH列表示对于每个ICS网络攻击应对的技术策略数量。比较i这6个网络攻击,stuxnet最复杂,包括11种策略和37种技术。Crashoverride,Blackenergy和Triton分别使用了30、29和29种技术。Havex和IRongate分别用来23和19种技术;

结合攻击的五个阶段,比较这六种网络攻击:
在传播阶段(Propagation),Irongate把重心放在识别受害者网络,而非注入。Irongate使用了6种技术取识别受害者网络,没有设计相应的技术去注入。
在激活阶段(Activation),Stuxnet较为复杂,它使用了五种技术躲避防护系统的扫描,使用了6种技术执行一些漏洞。Stuxnet和Triton都在这一阶段使用了零日漏洞,Crashoverride和Triton则是没有使用能够提权的漏洞。
在Carrier阶段,Irongate在这一阶段比较沉寂,不会取主动手机用户数据。Triton和Havex则会在这一阶段窃取用户数据。
在隐藏阶段(Concealmen),相比其他4种网络攻击,Stuxnet和BLackEnergy有更好的表现。
在最后的攻击阶段(attack launching),Crashoverride可以使用9种不同的技术来影响受害者网络,它可以发起包括但不限于数据擦除,DOS,修改配置文件的操作。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值