CN110399724A - 一种基于电力工控系统典型漏洞特征的动态模糊测试技术 - Google Patents
一种基于电力工控系统典型漏洞特征的动态模糊测试技术 Download PDFInfo
- Publication number
- CN110399724A CN110399724A CN201910462664.2A CN201910462664A CN110399724A CN 110399724 A CN110399724 A CN 110399724A CN 201910462664 A CN201910462664 A CN 201910462664A CN 110399724 A CN110399724 A CN 110399724A
- Authority
- CN
- China
- Prior art keywords
- test
- control system
- industrial control
- electric power
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Supply And Distribution Of Alternating Current (AREA)
Abstract
本发明公开了一种基于电力工控系统典型漏洞特征的动态模糊测试技术,包括动态漏洞挖掘流程和工作流相,所述动态漏洞挖掘流程包括测试用例生成模块、基于遗传算法的数据变异模块、内存模糊器模块和异常监控模块,所述工作流相包括确定测试对象、分析输入矩阵、构造测试用例、启动模糊测试、监控异常和错误和分析可利用漏洞。本发明通过用电力控制工控软件通过编程控制硬件设备的核心逻辑,编程数据能够触及电力工控系统硬件设备的操作系统,更能有效挖掘漏洞。
Description
技术领域
本发明涉及电气技术领域,尤其涉及一种基于电力工控系统典型漏洞特征的动态模糊测试技术。
背景技术
近年来,随着信息技术的不断发展,Windows平台的普遍应用、基于IEEE802.3的工业以太网的遍及、大批TCP(UDP)/IP协议被选用、工业控制领域工业化与信息化的不断渗透发展,工业控制系统开始使用基于标准的嵌入式平台、各种常见的网络设备、商业软件和硬件,加之信息化的深度发展,工业控制系统呈现一个开放性状态,工业控制系统已不再是一座“孤岛”,形成了以信息化促进工业化,以工业化带动信息化的复合性工业化趋势,具有科技含量高、经济效益好、资源消耗低的特点。另一方面,由于工业控制系统的开放性、复杂性以及系统本身的漏洞,使得工业控制系统的安全面临更大的威胁和挑战。以电力工控系统为代表的工业控制系统具有相同的特点。
2008年,黑客劫持了南美洲一个国家的电网控制系统,勒索政府,被拒绝后,攻击该国电网控制系统致使电力中断几分钟。2008年,美国国土安全局对电力系统进行了几次渗透测试,测试过程中一台发电机在其控制系统遭到攻击后产生了物理损坏。2010年,伊朗爆发大规模“震网”病毒,西门子WINCC系统漏洞及几个0day漏洞被利用,使得工业控制系统受到攻击,使伊朗的核计划推迟两年。2013年,USB病毒攻击了美国两座电厂,使得电厂机组发电拖后至6个多小时。
各种安全事件表明,电力工控系统受到敌对势力、恐怖组织、犯罪分子等的威胁,其安全性升到了国家层面。电力工业控制系统信息安全的核心问题就是电力工业控制系统的漏洞。与传统的IT系统的漏洞不同,工业控制系统的漏洞一旦被利用将直接造成经济损失、爆炸甚至人员伤亡。此外,发电企业的重要控制系统在受到破坏时会威胁国家安全,严重损害社会秩序和公共利益。所以,为提高工控系统的防护能力,电力工控的安全研究具有重要的意义。
发明内容
本发明的目的是为了解决现有技术中存在的安全隐患缺点,而提出的一种基于电力工控系统典型漏洞特征的动态模糊测试技术。
为了实现上述目的,本发明采用了如下技术方案:一种基于电力工控系统典型漏洞特征的动态模糊测试技术,包括动态漏洞挖掘流程和工作流相,所述动态漏洞挖掘流程包括测试用例生成模块、基于遗传算法的数据变异模块、内存模糊器模块和异常监控模块,所述工作流相包括确定测试对象、分析输入矩阵、构造测试用例、启动模糊测试、监控异常和错误和分析可利用漏洞。
作为本发明再进一步的方案:所述测试用例生成模块分为三类:电力控制软件与硬件编程数据、电力监控软件与硬件监控数据、电力管理软件与信息管理系统的数据。
作为本发明再进一步的方案:所述基于遗传算法的数据变异模块的数据变异是模糊测试的核心,其功能就是生成大量非预期的数据,根据电力软硬件编程数据的特点,采用了遗传算法进行数据变异方法的设计。
作为本发明再进一步的方案:所述内存模糊器模块是用来执行测试用例的。在前两个模块处理完后,得到非预期的数据,这些数据通过内存模糊器模块发送到目标设备上。
作为本发明再进一步的方案:所述异常监控模块是每一个模糊测试的关键部分,漏洞触发的一个重要表现就是出现异常,异常监控就是用来捕获异常,进而分析是不是安全漏洞。动态模糊测试是通过向测试目标程序发送大量的半有效数据并观测输出结果来实现的,它利用半自动或是自动的方式发送数据。
作为本发明再进一步的方案:所述确定测试对象测试目标可以使测试更加明确。对于不同的测试对象,存在对应的工具或者是测试框架。
作为本发明再进一步的方案:所述分析输入矩阵包含能够引起程序崩溃的各类输入向量,例如文件名、注册表键值、命令行参数、配置文件、环境变量等信息。
作为本发明再进一步的方案:所述构造测试用例和启动模糊测试,经过深入分析输入矩阵应该包含的内容,模糊测试通过半自动或者自动的方式发送输入数据,这个过程一般是一个自动化过程,在构造测试用例的同时,模糊测试器会连接测试对象,执行被测试应用,并向目标测试对象发送数据。
作为本发明再进一步的方案:所述监控异常和错误在发送的大量测试用例中,需要对导致异常产生的测试用例进行记录。
本发明一种基于电力工控系统典型漏洞特征的动态模糊测试技术的有益效果是:
1、通过用电力控制工控软件通过编程控制硬件设备的核心逻辑,编程数据能够触及电力工控系统硬件设备的操作系统,更能有效挖掘漏洞。
2、为避免盲目发包造成大量的资源浪费,提高效率,需要分析目标系统,针对目标系统做出调整,建立测试流程提高模糊测试的有效性。
3、在其中选择,能够节省开发成本,节约测试时间。所以,测试对象的确定决定了选用测试工具和方法的类型。
附图说明
图1为本发明提出的一种基于电力工控系统典型漏洞特征的动态模糊测试技术的电力工控系统硬件漏洞挖掘示意图;
图2为本发明提出的一种基于电力工控系统典型漏洞特征的动态模糊测试技术的模糊测试工作流向示意图;
图3为本发明提出的一种基于电力工控系统典型漏洞特征的动态模糊测试技术的模糊测试漏洞挖掘步骤示意图;
图4为本发明提出的一种基于电力工控系统典型漏洞特征的动态模糊测试技术的远控行为时远控漏洞挖掘结果示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
参照图1-4,一种基于电力工控系统典型漏洞特征的动态模糊测试技术,包括动态漏洞挖掘流程和工作流相,动态漏洞挖掘流程包括测试用例生成模块、基于遗传算法的数据变异模块、内存模糊器模块和异常监控模块,工作流相包括确定测试对象、分析输入矩阵、构造测试用例、启动模糊测试、监控异常和错误和分析可利用漏洞。测试用例生成模块分为三类:电力控制软件与硬件编程数据、电力监控软件与硬件监控数据、电力管理软件与信息管理系统的数据,基于遗传算法的数据变异模块的数据变异是模糊测试的核心,其功能就是生成大量非预期的数据,根据电力软硬件编程数据的特点,采用了遗传算法进行数据变异方法的设计,内存模糊器模块是用来执行测试用例的。在前两个模块处理完后,得到非预期的数据,这些数据通过内存模糊器模块发送到目标设备上,异常监控模块是每一个模糊测试的关键部分,漏洞触发的一个重要表现就是出现异常,异常监控就是用来捕获异常,进而分析是不是安全漏洞。动态模糊测试是通过向测试目标程序发送大量的半有效数据并观测输出结果来实现的,它利用半自动或是自动的方式发送数据,确定测试对象测试目标可以使测试更加明确。对于不同的测试对象,存在对应的工具或者是测试框架,分析输入矩阵包含能够引起程序崩溃的各类输入向量,例如文件名、注册表键值、命令行参数、配置文件、环境变量等信息,构造测试用例和启动模糊测试,经过深入分析输入矩阵应该包含的内容,模糊测试通过半自动或者自动的方式发送输入数据,这个过程一般是一个自动化过程,在构造测试用例的同时,模糊测试器会连接测试对象,执行被测试应用,并向目标测试对象发送数据,监控异常和错误在发送的大量测试用例中,需要对导致异常产生的测试用例进行记录。
本实施例中,当人为设置站控层出现远控漏洞时,如图4所示站控层中,t0时刻出现新的通信链路,此时典型远控协议特征库对比结果显示新建立的通信链路匹配度为13%,其中SSH匹配度为11%,RDP匹配度为2%;随着远控行为的建立,t1时刻时,新建立的通信链路匹配度为74%,其中SSH为68%,RDP为5%,VNC为1%;t2时刻时,当远控行为建立一段时间后,该通信链路匹配度上升为94%,其中SSH为85%,RDP为7%,VNC为2%。
本实施例中,针对缓冲区溢出漏洞,最常见的就是选取各种长度的超长字符串来生成测试数据。为便于之后的异常分析,在注入时往往都是重复填充相同的字符串,例如100 个“A”字符、200 个“A”字符、1000 个“A”字符等等。然而由于一些电力工控系统设有软件供应商已经意识到使用长字符串(例如“AAAAAAAAAAAAAAAAA”)的强大功能,因此一些软件会特别搜索并阻止含有“A”的长字符串,因此也可以生成其他字符的长字串,例如“B”。
同样测试用例集中还需要包含非字母字符,例如空格、制表符等。这些字符通常被用做字段分隔符或终止符,将它们随机包含到所生成的长字符串中,可以提高将被测协议数据进行部分复制的机会,进而增加被测试到的代码数量。例如下面列出的一些非字母字符:
当生成模糊字符串时,很重要的就是要生成包含上面所列出的不同字段分隔符的长字符串。此外,增加分隔符的长度同样也很重要。
结合前文中对电力工控系统调度中心与认证装置之间写命令的通信协议格式,构造基于电力工控系统认证绕过漏洞特征的测试用例如下所示。
Frame 4 (139 bytes on wire, 139 bytes captured)
Ethernet II, Src: b8:2a:72:99:b7:e7 (b8:2a:72:99:b7:e7), Dst: 74:27:ea:e4:96:88 (74:27:ea:e4:96:88)
Internet Protocol, Src: 192.168.46.22 (192.168.46.22), Dst:192.168.46.129 (192.168.46.129)
Transmission Control Protocol, Src Port: 18898 (18898), Dst Port: iso-tsap (102), Seq: 78, Ack: 31, Len: 85
TPKT, Version: 3, Length: 85
ISO 8073 COTP Connection-Oriented Transport Protocol
ISO 8327-1 OSI Session Protocol
ISO 8327-1 OSI Session Protocol
ISO 8823 OSI Presentation Protocol
ISO/IEC 9506 MMS
Conf Request (0)
Write (5)
InvokeID: InvokeID: 3742
Write
List of Variable
Object Name
Domain Specific
DomainName:
DomainName: TEMPLATERCD
ItemName:
ItemName: RADR12$CF$ChnlHi$units$SIUnit
Data
INTEGER: overflow(MAX32)
MAX32表示32位整数(0x FFFFFFFF)的最大值,MAX16表示16位整数(0x FFFF)的最大值,MAX8表示8 位整数(0x FF)的最大值,随机选择的范围16作为一个合理的数量。依赖于不同的时间和结果,可以增加该范围值。如果在目标协议中有数百个整型字段,那么额外的启发式整数将上百倍的增加测试用例的总个数。
利用遗传算法对测试用例中的协议通信参数进行扫描,并对写入的overflow(MAX32)函数进行变异,便可得到含有认证绕过漏洞特征的测试用例库。利用测试用例库对认证装置进行动态漏洞挖掘,当认证装置出现栈溢出时,可以认为该认证装置可被利用栈溢出进行植入认证跳过代码攻击,完成认证绕过攻击。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (9)
1.一种基于电力工控系统典型漏洞特征的动态模糊测试技术,包括动态漏洞挖掘流程和工作流相,其特征在于,所述动态漏洞挖掘流程包括测试用例生成模块、基于遗传算法的数据变异模块、内存模糊器模块和异常监控模块,所述工作流相包括确定测试对象、分析输入矩阵、构造测试用例、启动模糊测试、监控异常和错误和分析可利用漏洞。
2.根据权利要求1所述的一种基于电力工控系统典型漏洞特征的动态模糊测试技术,其特征在于,所述测试用例生成模块分为三类:电力控制软件与硬件编程数据、电力监控软件与硬件监控数据、电力管理软件与信息管理系统的数据。
3.根据权利要求1所述的一种基于电力工控系统典型漏洞特征的动态模糊测试技术,其特征在于,所述基于遗传算法的数据变异模块的数据变异是模糊测试的核心,其功能就是生成大量非预期的数据,根据电力软硬件编程数据的特点,采用了遗传算法进行数据变异方法的设计。
4.根据权利要求1所述的一种基于电力工控系统典型漏洞特征的动态模糊测试技术,其特征在于,所述内存模糊器模块是用来执行测试用例的,
在前两个模块处理完后,得到非预期的数据,这些数据通过内存模糊器模块发送到目标设备上。
5.根据权利要求1所述的一种基于电力工控系统典型漏洞特征的动态模糊测试技术,其特征在于,所述异常监控模块是每一个模糊测试的关键部分,漏洞触发的一个重要表现就是出现异常,异常监控就是用来捕获异常,进而分析是不是安全漏洞,
动态模糊测试是通过向测试目标程序发送大量的半有效数据并观测输出结果来实现的,它利用半自动或是自动的方式发送数据。
6.根据权利要求1所述的一种基于电力工控系统典型漏洞特征的动态模糊测试技术,其特征在于,所述确定测试对象测试目标可以使测试更加明确,
对于不同的测试对象,存在对应的工具或者是测试框架。
7.根据权利要求1所述的一种基于电力工控系统典型漏洞特征的动态模糊测试技术,其特征在于,所述分析输入矩阵包含能够引起程序崩溃的各类输入向量,例如文件名、注册表键值、命令行参数、配置文件、环境变量等信息。
8.根据权利要求1所述的一种基于电力工控系统典型漏洞特征的动态模糊测试技术,其特征在于,所述构造测试用例和启动模糊测试,经过深入分析输入矩阵应该包含的内容,模糊测试通过半自动或者自动的方式发送输入数据,这个过程一般是一个自动化过程,在构造测试用例的同时,模糊测试器会连接测试对象,执行被测试应用,并向目标测试对象发送数据。
9.根据权利要求1所述的一种基于电力工控系统典型漏洞特征的动态模糊测试技术,其特征在于,所述监控异常和错误在发送的大量测试用例中,需要对导致异常产生的测试用例进行记录。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2019100284576 | 2019-01-11 | ||
CN201910028457 | 2019-01-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110399724A true CN110399724A (zh) | 2019-11-01 |
Family
ID=68323170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910462664.2A Pending CN110399724A (zh) | 2019-01-11 | 2019-05-30 | 一种基于电力工控系统典型漏洞特征的动态模糊测试技术 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110399724A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113392402A (zh) * | 2021-05-24 | 2021-09-14 | 国网湖北省电力有限公司电力科学研究院 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
CN114676438A (zh) * | 2022-04-15 | 2022-06-28 | 电子科技大学 | 面向硬件系统多维脆弱性的快速探测方法 |
-
2019
- 2019-05-30 CN CN201910462664.2A patent/CN110399724A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113392402A (zh) * | 2021-05-24 | 2021-09-14 | 国网湖北省电力有限公司电力科学研究院 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
CN114676438A (zh) * | 2022-04-15 | 2022-06-28 | 电子科技大学 | 面向硬件系统多维脆弱性的快速探测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
López-Morales et al. | Honeyplc: A next-generation honeypot for industrial control systems | |
McLaughlin et al. | Multi-vendor penetration testing in the advanced metering infrastructure | |
Wurm et al. | Security analysis on consumer and industrial IoT devices | |
Jardine et al. | Senami: Selective non-invasive active monitoring for ics intrusion detection | |
CN109167781B (zh) | 一种基于动态关联分析的网络攻击链识别方法和装置 | |
CN110399724A (zh) | 一种基于电力工控系统典型漏洞特征的动态模糊测试技术 | |
CN110505116A (zh) | 用电信息采集系统及渗透测试方法、装置、可读存储介质 | |
CN112398829A (zh) | 一种电力系统的网络攻击模拟方法及系统 | |
Sen et al. | An approach of replicating multi-staged cyber-attacks and countermeasures in a smart grid co-simulation environment | |
Rowe et al. | Creating effective industrial-control-system honeypots | |
Zhang et al. | Reliability analysis of power grids with cyber vulnerability in SCADA system | |
Morais et al. | Security protocol testing using attack trees | |
Ten et al. | Cybersecurity for electric power control and automation systems | |
Banik et al. | Implementing man-in-the-middle attack to investigate network vulnerabilities in smart grid test-bed | |
Gorodetski et al. | Agent-based model of computer network security system: A case study | |
Havlena et al. | Accurate Automata-Based Detection of Cyber Threats in Smart Grid Communication | |
Nicholson et al. | An initial investigation into attribution in SCADA systems | |
Alsabbagh et al. | A fully-blind false data injection on PROFINET I/O systems | |
Rencelj Ling et al. | Securing Communication and Identifying Threats in RTUs: A Vulnerability Analysis | |
Deore et al. | Cyber security automation for controlling distributed data | |
Morais et al. | Generating attack scenarios for the system security validation | |
Wang et al. | Feature selection for precise anomaly detection in substation automation systems | |
Ponomarev | Intrusion Detection System of industrial control networks using network telemetry | |
Aarya et al. | Web scanning: existing techniques and future | |
Rodofile | Generating attacks and labelling attack datasets for industrial control intrusion detection systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20191101 |
|
WD01 | Invention patent application deemed withdrawn after publication |