PLC信息安全防护技术研究(上篇)

大量的遗留设备、专用的软硬件、有限的处理能力以及地域上分布的广泛性,极大的阻碍了传统计算机体系中低廉且高效的安全防护方案的推广应用。《GB/T 33008.1-2016 工业自动化和控制系统网络安全可编程序控制器(PLC)第1部分:系统要求》[1]给出了系统能力等级(CL)如下:

(1)CL1:提供机制保护控制系统防范偶然的、轻度的攻击;

(2)CL2:提供机制保护控制系统防范有意的、利用较少资源的和一般技术的简单手段可以达到较小破坏后果的攻击;

(3)CL3:提供机制保护控制系统防范恶意的、利用中等资源、PLC特殊技术的复杂手段可能达到较大破坏后果的攻击;

(4)CL4:提供机制保护控制系统防范恶意的、使用扩展资源、PLC特殊技术的复杂手段与工具可能达到重大破坏后果的攻击。

基于《GB/T 33008.1-2016》的安全要求,我们从硬件设备、通信及协议、执行行为、网络隔离、控制组态等方面对PLC的安全防御技术进行了归类整理。在上篇部分,我们将着重介绍基于硬件设备、通信及协议和执行行为的PLC安全防护技术。

基于硬件设备的PLC安全防护

对于PLC设备的安全防护主要包括:

1)验证固件的完整性,对固件的修改进行及时感知。Adelstein等[2]引入基于固件签名的检测方法,包含一个固件“验证编译器”,允许固件在运行时接受检验,通过检测确定的执行流特性、内存及队长完整性。Zhang等[3]提出IOCheck框架,在运行时验证固件完整性和IO配置,在假设可信的BIOS启动之后,IOCheck利用X86 CPU架构下的系统管理模式来运行完整性校验。Duflot等[4]提出NAVIS框架,来检测网卡固件的完整性。

2)采用可信计算等技术,提高底层数据传输的可信性。Stephen McLaughlin等[5]提出应该在PLC中配备可信计算基(TCB,Trusted Computing Base)。可信计算基由一组可信软硬件组成,用来保证PLC对安全策略的执行。如图1。

 

图1是一个基于TCB的安全策略的执行过程

基于通信及协议的PLC安全防护

由于原来的PLC控制协议没有加密、认证等机制,导致攻击者只要能和PLC通信,简单的构造畸形数据包就可以达到实施破坏的目的,因此可以从协议及通信的角度对PLC进行安全防护。Spenneberg等[6]指出,他们设计出的专门针对PLC的蠕虫防护非常有效,但是在遭受感染期的过程中,PLC大概有10秒钟是不工作的,在此期间原始用户的程序也不会运行,而且会产生大量的不正常流量。而且在扫描和感染阶段,会发送很多可疑的数据包。这些都是可以被基于流量的检测机制发现。Malchow等[7]引入一款PLC Guard安全防护设备,分析PLC和工程师站之间的通信流量。当工程师站向PLC传输代码时,PLC Guard分析代码的传递,并和以前版本进行比较(如图2所示),包括不同层次上的图形抽象和概括。操作员可以选择接受或拒绝代码传输,所以此设备很难被攻破。Nelson等[8]提出使用MAC地址绑定来保证物理上连接的端口安全,对PLC和工程师站之间的通信进行加密,从而增加逆向分析控制协议的难度。Bestak等[9]提出对PLC等设备使用一种加密算法来对测量的数据进行加密,保证通信过程中不被攻击者恶意篡改,从而达到数据完整性的目标。Heo等[10]提出,可以对自动化控制中的PLC通信网络进行加密,从而保证数据真实性。Bestak等[11]指出可以尝试在PLC网络中使用加密算法,从而保证通信安全性。Andrew Clark等[12]提出了一种新型的防御框架,利用一组随机化的加密密钥对系统操作员发送给PLC的控制命令进行认证。框架利用加密分析、控制理论、博弈论的方法来对恶意控制指令造成的影响进行量化分析,如图3所示,在过程控制网络(PCN,Porocess Control Network)与控制系统网络(CSN,Control System Network)交互过程中加入了主动加密机制,用来对发送的控制命令进行认证。

 

图2 PLC Gurad防护过程示意图

 

图3 PLC主动加密机制

Haroon Wardak等[13]指出目前报道的大多数针对PLC的攻击都是基于PLC以一种未授权的方式建立通信,并对PLC访问控制问题进行了研究,分析了通常采用的是基于密码的访问控制机制的脆弱性,指出可以在PLC和其他设备之间配置工业自动化环境下的数据安全模块(Scalance S)的问题得到解决。Stanislav Ponomarev等[14]提出了一种通过测量和验证通过网络传输的数据来检测入侵网络的ICS的方法。

基于执行行为的PLC安全防护

包括对PLC的内存行为、发包的时间、动作执行等进行建模,从而能够对PLC的执行行为进行监控。Spenneberg等[6]指出蠕虫在感染PLC的过程中会自动重启,这是属于异常执行动作。而Langner等[15]指出在攻击过程中OB1需要首先调用恶意代码,执行终止条件等,这些都是可以被检测到的异常行为,从而可以采取相应的安全措施。Chih-TaLin 等[16]对Modbus协议的深入分析,提出了一种基于自动学习的恶意入侵检测方法,并在开发的测试平台上进行了各种测试,入侵检测框架如图4所示。

 

图4 基于机器学习的入侵检测机制

Ken Yau 等[17]提出使用半监督机器学习,即单类支持向量机(OCSVM,One-class Support Vector Machine),根据捕获的PLC存储器地址值来检测PLC异常行为,主要步骤如图5所示。Saman Zonouz等[18]提出了一种利用PLC代码符号执行的方法来检测工业控制恶意软件。具体过程如图6所示,首先对安全要求取反,生成对应的不安全要求(UR),然后寻找满足条件的路径P。其中P为TEG和UR的笛卡尔积。如果不存在满足条件的路径,则说明代码符合安全要求,可以安全执行;否则,生成连接路径条件并计算样本输入向量,该向量可用来进行调试。Henry Senyondo 等[19]提出了PLCloud,一种基于云的安全防护架构,通过最小的基于云计算的可信安全验证模块来最小化基础设施可信计算基。PLCloud包含两个部分:PLCloud Agent和虚拟的PLC模拟器。PLCloud Agent负责搜集PLC的控制指令和传感器输入,同时接收模拟器的通知并执行响应的操作。PLC模拟器功能比较强大,实时与物理PLC设备状态保持同步,周期性的保存快照以备恢复时使用,并可以执行模型检验、控制流图符号执行、安全要求校验、线性时序模型检测等功能,从而提供最小化基础设施可信计算基。

图5 利用OCSVM的异常检测步骤

 

 

图6 PLC代码符号执行安全检测机制

参考文献

[1]GB/T 33008.1-2016 工业自动化和控制系统网络安全 可编程序控制器(plc) 第1部分:系统要求.[S].2016.

[2]Adelstein F, Stillerman M, Kozen D. Malicious code detection for open firmware [C]//Computer Security Applications Conference, 2002. Proceedings. 18th An-nual. IEEE, 2002:403-412.

[3]Zhang F, Wang H, Leach K, et al. A framework to secure peripherals at runtime [C]//European Symposium on Research in Computer Security. Springer, Cham, 2014: 219-238.

[4]Duflot L, Perez Y A, Morin B. What if you can’t trust your network card?[C]//International Workshop on Recent Advances in Intrusion Detection. Springer, Ber-lin, Heidelberg, 2011: 378-397.

[5]McLaughlin S E, Zonouz S A, Pohly D J, et al. A Trusted Safety Verifier for Process Controller Code[C]//NDSS. 2014, 14.

[6]Spenneberg R, Brüggemann M, Schwartke H. Plc-blaster: A worm living solely in the plc[J]. Black Hat Asia, Marina Bay Sands, Singapore, 2016.

[7]Malchow J O, Marzin D, Klick J, et al. Plc guard: A practical defense against attacks on cyber-physical sys-tems[C]//Communications and Network Security (CNS), 2015 IEEE Conference on. IEEE, 2015: 326-334.

[8]Nelson T. Common control system vulnerability[R]. Idaho National Laboratory (INL), 2005.

[9]Bestak I, Orgon M. Performance measurement of en-cryption algorithms used in PLC devices[J]. Inter-na-tional Journal of Research and Reviews in Computer Science (IJRRCS), 2011, 2(5).

[10]Heo J, Hong C S, Ju S H, et al. A security mecha-nism for automation control in PLC-based net-works[C]//Power Line Communications and Its Appli-cations, 2007. ISPLC’07. IEEE International Symposium on. IEEE, 2007: 466-470.

[11]Bestak I, Orgon M. The use of encryption algo-rithms in PLC networks[J]. Simulation, 2012, 3(64): 168.

[12]Clark A, Zhu Q, Poovendran R, et al. An impact-aware defense against Stuxnet[C]// American Control Con-ference. IEEE, 2013:4140-4147.

[13]Wardak H, Zhioua S, Almulhem A. PLC access control: a security analysis[C]// Industrial Control Systems Se-curity. IEEE, 2017:1-6.

[14]Ponomarev S. Intrusion Detection System of industrial control networks using network telemetry[J]. Disserta-tions & Theses – Gradworks, 2015.

[15]Langner R. A time bomb with fourteen bytes[J]. Available: hUp: llwww. langner. comlen, 2011.

[16]Lin C T, Wu S L, Lee M L. Cyber attack and defense on industry control systems[C]//Dependable and Secure Computing, 2017 IEEE Conference on. IEEE, 2017: 524-526.

[17]Yau K, Chow K P, Yiu S M, et al. Detecting anomalous behavior of PLC using semi-supervised machine learn-ing[C]// IEEE Conference on Communications and Network Security.IEEE, 2017:580-585.

[18]Zonouz S, Rrushi J, Mclaughlin S. Detecting Industrial Control Malware Using Automated PLC Code Analyt-ics[J]. IEEE Security & Privacy, 2014, 12(6):40-47.

[19]Senyondo H, Sun P, Berthier R, et al. PLCloud: Com-prehensive power grid PLC security monitoring with zero safety disruption[C]// IEEE International Confer-ence on Smart Grid Communications. IEEE, 2015:809-816.

【本文为专栏作者“中国保密协会科学技术分会”原创稿件,转载请联系原作者】

戳这里,看该作者更多好文

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/128786.html<

(0)
运维的头像运维
上一篇2025-02-25 07:38
下一篇 2025-02-25 07:40

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注