34

工业控制系统蜜罐的初步介绍

 4 years ago
source link: https://www.freebuf.com/articles/ics-articles/237518.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

随着科技的发展,工业控制系统逐渐的接入互联网,而当前互联网上存在着大量的攻击,直接影响着工业控制系统的安全,工控系统面临的安全形势也越来越严重。2010年的伊朗震网病毒事件、2011年的duqu木马事件、2014年的Havex、2015年的乌克兰电力事件都在用事实证明了工控系统的安全形势严峻。

为了增强工业控制网络安全,很多研究人员都采用蜜罐技术对系统进行防护。蜜罐作为一种主动防御技术可以吸引攻击,分析攻击,推测攻击意图,并将结果补充到防火墙、IDS以及IPS等威胁阻断技术。

蜜罐技术介绍

蜜罐的发展主要分为三个阶段

1.初级阶段,蜜罐思想首次被提出,这是蜜罐的形成阶段;
2.中期阶段,蜜罐工具的大规模开发,比如DTK、honeyd、honeybrid等工具的提出;
3.后期阶段,采用虚拟仿真、真实设备、真实系统、IDS、数据解析工具以及数据分析技术等综合构建的网络体系进行入侵诱捕。

近年来,随着工控安全形势的严峻,蜜罐技术被越来越多的应用在工控领域,从协议的仿真做起到工控环境的模拟,交互能力越来越高,结构也日趋复杂。开源工控蜜罐中,主要针对modbus、s7、IEC-104、DNP3等工控协议进行模拟。其中,conpot和snap7是相对成熟的蜜罐代表,conpot实现了对s7comm、modbus、bacnet、HTTP等协议的模拟,属于低交互蜜罐,conpot部署简单,协议内容扩展方便,并且设备信息是以xml形式进行配置,便于修改和维护。Snap7是专门针对西门子PLC的蜜罐,基本实现了s7comm协议栈。它可以模拟实际设备的信息与状态,而且实现常用PLC操作的交互。但这些这些主流的虚拟蜜罐只能模拟单一工控协议,因此只能捕获单一工控协议的攻击数据。

新型蜜罐技术(主要介绍混合蜜罐)

为提高蜜罐的部署能力,降低蜜罐部署成本,陆续有研究者提出采用低交互蜜罐与高交互蜜罐混合部署的架构,在合适的时候调度合适的蜜罐,在学术领域陈之为混合蜜罐。以下是一些示例

Snort+honeybrid方案

在本方案中,Snort主要进行低高交互流量的鉴别,并通知Honeybrid网关,便于后续步骤的进行。Honeybrid网关包括决策引擎和重定向引擎,负责协调前端和后端之间的过滤和重定向。决策引擎用于选择感兴趣的流量,重定向引擎用于透明地重定向流量。

VRzemuV.jpg!web 其中honeybrid是一种典型的混合蜜罐框架,主要有如下四部分模块,示意图如下:

决策引擎 :决定哪些业务是要哪个蜜罐;

重定向引擎:以决定是否有些业务需要被重定向进行更详细的分析;

控制引擎:限制由潜在的被损害蜜罐发送的传出网络流量;

日志引擎:继续处理的数据流,进行详细记录。

IFZNfyM.jpg!web

这四个组件围绕目标概念进行阐述,目标概念包含基于蜜罐的实验的规范。因此,每当我们想要运行基于蜜罐的新实验时,我们必须考虑我们想要收集的流量类型以及我们想要收集它的方式,即具有多少粒度和控制程度。目标由四个声明组成:一个 过滤规则,它使用tcpdump语法定义此目标应处理的确切流量类型,

一个前端规则,定义哪个蜜罐应该首先与传入的攻击流量进行交互,以及接受此传入流量的标准是什么;

一个可选的后端规则,用于定义流量被重定向到哪个蜜罐以进行更详细的分析,以及决定重定向流量的标准是什么;

一个可选的控制 规则,定义如何限制蜜罐启动的传出流量。

Snort+SDN方案

SDN是软件定义网络,它以下发flowtable的形式完成对流量的控制。右图显示了作者所提出的混合蜜罐架构图。它主要由一个基于 OpenFlow的交换机来管理控制平面,它负责重定向攻击者和不同蜜罐之间的连接。在控制平面中,开源IDSSnort用于分析流量以生成警报,并通过UNIX 套接字将警报消息发送到控制器应用程序。根据警报消息,决策引擎(DE)将决定转发或重定向连接并发信号通知重定向引擎(RE ) 以执行相应的动作。

qmMJzez.jpg!web 在上述方案中都是用了Snort工具,Snort是一种入侵检测工具,可以针对数据包进行单包解析,在监听到数据包后首先会对来源数据包进行解析,然后提取特征,匹配规则,从而发出告警信息,示意图如下:

7BjMBnm.jpg!web 利用在蜜罐框架中,是利用了它的数据解析功能与告警功能;它在匹配到对应的信息后,可以发出信号,从而使得下一步的处理程序可以进行处理。

总结

本文主要对蜜罐技术进行了介绍,从蜜罐的起源到发展,以及工控蜜罐的出现到发展。并描写了典型的蜜罐架构,通过采用这些架构可以较为高效的进行蜜罐部署,同时也让大家对蜜罐技术有一个较为大概对理解。当前蜜罐的能力永远是看向蜜罐交互性这一指标,为了提高蜜罐交互性研究人员采用了很多方法,本文主要介绍了选择合理部署的方式提高整体蜜罐的交互性。

但当前大多数的蜜罐框架仅从技术层面进行了阐述,并为指出无懈可击的理论依据,尚存在诸多问题需要解决,比如合理的调度依据。而缺乏这些依据的原因也是我们缺乏对攻击的了解,无法获取精确且普适性较高的攻击分析方法。

*本文作者:等待未来66大顺,转载请注明来自FreeBuf.COM


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK