前言
工业控制系统(ICS)为核能、电力、水务和交通运输网络等关键任务设施提供管理和控制能力,这些公用设施与人们的日常生活密不可分,任何破坏都可能造成重大损失。作为网络世界和物理世界之间的桥梁,可编程逻辑控制器 (PLC) 在 ICS 中发挥着关键作用。
随着现代 ICS 日益互联互通,PLC 成为网络攻击的重要目标。由于目前针对 ICS 的蜜罐存在低交互性、低可扩展性等局限,本文因此提出了 HoneyPLC:一种高交互性、可扩展且可收集恶意软件的蜜罐。它能够模拟 PLC 中常见的网络协议、异构 PLC 以及其所具有的内部存储块,从而自动捕获和存储恶意梯形逻辑程序。
一、背景介绍
可编程逻辑控制器(PLC)是一种小型工业计算机,它根据电器硬件(如泵、继电器、机械定时器等)提供的输入来执行逻辑功能,具备控制复杂工业过程的能力。其内部存在用于存储指令的可编程存储块,可根据实际需求实现不同的功能。
蜜罐是一种故意暴露漏洞和服务的计算机系统,旨在诱使攻击者对其进行探测、分析和利用,从而实时监控和记录所有可能的交互行为,收集攻击数据用于后续分析。蜜罐可分为低交互蜜罐和高交互蜜罐,低交互蜜罐不是真实的系统,攻击者可能无法完成攻击步骤,甚至将其识破,而高交互蜜罐提供与真实系统相同级别的交互。
文献中现有的 ICS 蜜罐具有以下局限性:
可扩展性有限。 文献中的几种蜜罐可扩展能力有限,只支持一种或两种 PLC 型号,而本文提出的 HoneyPLC 目前提供对三个品牌的五个 PLC 的开箱即用支持。
交互性有限。 当前蜜罐在 TCP/IP 协议栈仿真以及原生 ICS 网络协议方面提供的功能大多有限,阻碍当前蜜罐从对抗性交互和恶意软件中提取价值。
隐蔽性有限。 攻击者一旦发现蜜罐的真实性质,就会停止暴露其攻击方法,因此蜜罐应该能够欺骗广泛使用的网络侦察工具。文献中的几种蜜罐