一种基于逐次概率判别算法的工业控制网络蜜罐识别方法技术

技术编号:31231679 阅读:14 留言:0更新日期:2021-12-08 10:07
一种基于逐次概率判别算法的工业控制网络蜜罐识别方法,包含如下步骤:收集蜜罐与真实设备数据、提取工业控制网络蜜罐特征、训练逐次概率识别模型以及应用该逐次概率识别模型进行工业控制网络蜜罐的识别。本发明专利技术可以有效减少与目标设备的交互次数,减小目标设备的交互压力,提高识别准确率与识别效率。本发明专利技术通过大量实验,验证了该方法在交互次数,识别效率与识别准确率上有较好的效果。效率与识别准确率上有较好的效果。效率与识别准确率上有较好的效果。

【技术实现步骤摘要】
一种基于逐次概率判别算法的工业控制网络蜜罐识别方法


[0001]本专利技术属于网络安全
,涉及一种基于逐次概率判别算法的工业控制蜜罐识别方法。

技术介绍

[0002]随着中国工业制造2025和国外工业4.0的提出,PLC等工业设备联网势在必行,世界范围内的工业网络的安全问题日益明显。作为应对工业网络安全的常见手段之一的工业控制网络蜜罐越来越多地出现在各种工业控制网络和工业互联网上用来诱骗攻击者,以此捕获攻击者,分析攻击者行为。
[0003]工控蜜罐常被部署在工业控制网络中,诱骗攻击者进行非法访问,进而全面捕获、监测和追踪攻击者的行为,使防御方从单纯的被动防御转变为更有效的主动防御。现有的工控蜜罐常常使用开源的工控蜜罐进行部署,例如:Conpot,Gaspot以及SCADA honeynet等。上述开源蜜罐实现了常用的工控协议,如:Modbus,ATG以及S7等工控协议,可以模拟某一类型的控制设备的网络通信行为,对攻击者的请求做出有效恢复。工控蜜罐的部署可以独立于工业生产,过程流程等场景,在不影响正常生产的情况下保护工控网络。
[0004]对工控蜜罐的有效识别,对于攻击者和安全人员有着巨大的作用。攻击者可以通过蜜罐识别避免陷入网络蜜罐陷阱,对目标网络进行有效的测绘和渗透;对于安全人员可以根据工控蜜罐的识别改进工控蜜罐的交互性,提高对攻击者的欺骗能力。

技术实现思路

[0005]本专利技术提出一种基于逐次概率判别算法的工业控制网络蜜罐识别方法,可以识别不同场景和网络环境中的常见开源以及自研工控蜜罐。
[0006]本专利技术的技术方案如下:
[0007]一种基于逐次概率判别算法的工业控制网络蜜罐识别方法,包含如下步骤:收集蜜罐与真实设备数据、提取工业控制网络蜜罐特征、训练逐次概率识别模型以及应用该逐次概率识别模型进行工业控制网络蜜罐的识别。
[0008]一、收集蜜罐与真实设备数据、提取工业控制网络蜜罐特征
[0009](一)独有特征
[0010]Conpot与S7协议分析
[0011]Conpot对S7协议的实现源码,提取特征如下:
[0012]1.S7协议实现默认配置信息列表,列表主要含有系统名称(SystemName)、S7设备型号(s7_id)、S7设备模块名称(s7_module_type)、S7设备名称(FacilityName)、模块名称(module_name)和版权(Copyright)五项特征。其中基本默认配置:FacilityName初始值设置为“Mouser Factory”、SystemName初始值设置为“Technodrome”、s7_id初始值设置为“88111222”、Copyright初始值设置为“Original Siemens Equipment”、S7_module_type初始值设置为“IM151

8PN/DP CPU”、将Module Name的初始值为“Siemens,SIMATIC,S7

200”;
[0013]2.S7协议连接时长,Conpot的设计者为了避免攻击者长时间保持与Conpot蜜罐连接,占用带宽,在源代码中设置了与Conpot的S7蜜罐设备连接最长时间为5秒。
[0014]3.S7协议回复时长,经过大量实验,发现真实设备的请求回复时长是Conpot蜜罐回复时长的7倍左右,可以理解为真实设备的计算能力普遍弱于部署蜜罐的计算机设备。但该特征受网络环境(路由器跳数)的影响较大。
[0015]Gaspot与ATG协议
[0016]分析Gaspot对ATG协议的实现源码,提取特征如下:
[0017]1.ATG协议实现默认配置信息列表,列表主要含有产品名称1(product1)、产品名称2(product2)、产品名称3(product3)、产品名称4(product4)以及地理位置(station)。其中product1初始值设置为SUPER,product2初始值设置为UNLEAD,product3的初始值设置为DIESEL,product4的初始值设置为PREMIUM。地理位置信息为众多真实油气设备地理位置列表。
[0018]2.ATG协议请求回复默认配置,ATG协议主要应用于油气设备控制。通过大量试验发现,真实设备的容量(VolumeTC)字段在一段时间内(一般为12小时)的变化量的绝对值基本等于缺量(ULLAGE)字段的变化量的绝对值。而Gaspot对上述两个字段的数值采用随机化的方式进行生成。
[0019]Conpot与Modbus协议
[0020]1.Modbus协议读写寄存器功能实现,Conpot未实现对寄存器的读写功能。通过大量实现发现,Conpot在针对功能码0x10和0x03的回复都有错误:Illegal data address(非法数据地址);
[0021]2.Modbus协议回复错误功能码功能实现,当连续对Conpot蜜罐设备发送错误功能码时,Conpot蜜罐只接受数据而不会回复。而真实设备会正确回复错诶功能码。
[0022](二)共有特征
[0023]由于蜜罐设备都是对真实工控设备的虚拟,必然会存在共同的虚拟缺陷,发现该类缺陷对识别蜜罐将会起到极大作用。
[0024]1.端口特征,通过大量实验,发现真实设备通常只会开放个位数的端口,而蜜罐设备会开放数十个端口。
[0025]2.系统特征,通过大量实验发现蜜罐往往存在于云端主机或虚拟机上,其操作系统通常是Linux操作系统。
[0026]3.部署特征,通过大量实验发现如果目标设备的Whois信息是云服务商或是网络供应商,则有很大可能该设备是蜜罐设备。
[0027]二、应用该逐次概率识别模型进行工业控制网络蜜罐的识别
[0028](一)生成训练模型数据集
[0029]考虑到协议特征方面的不同,本专利技术将数据集依据协议划分为3个子数据集,分别是全球IPv4的Modbus协议数据集,S7协议数据以及ATG数据集。其中蜜罐标签根据如下3条依据确定:1.该设备网络供应商为云服务供应商;2.该设备由企业网络供应商托管且具有Windows操作系统;3.该设备的网络供应商为大学。
[0030]其中Modbus协议数据集的特征选择:Modbus读写寄存器功能状态,Modbus错误功能码回复时间,端口数量,路由器跳数。具体描述如表1所示。各个特征按照编号的先后顺序
标记为{x1,x2,x3,x4},对这些特征进行处理,对于x1读写寄存器功能,只有两种结果能或者是不能,所以x1∈{0,1}。由于Modbus错误功能码回复时间跨度较大,对x2进行归一化处理。对x3取原本的数值进行编码,由于数据集中路由器跳数最小值为19,最大值为30,所以对x4进行等宽化处理,从15开始,以5为间隔,按照原本数值对应分别编码为0到2。
[0031]其中S7协议数据集特征选择:设备名称字段,设备标本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于逐次概率判别算法的工业控制网络蜜罐识别方法,其特征在于包含如下步骤:一、收集蜜罐与真实设备数据、提取工业控制网络蜜罐特征(一)独有特征Conpot与S7协议分析Conpot对S7协议的实现源码,提取特征如下:1.S7协议实现默认配置信息列表,列表主要含有系统名称(SystemName)、S7设备型号(s7_id)、S7设备模块名称(s7_module_type)、S7设备名称(FacilityName)、模块名称(module_name)和版权(Copyright)五项特征;其中基本默认配置:FacilityName初始值设置为“Mouser Factory”、SystemName初始值设置为“Technodrome”、s7_id初始值设置为“88111222”、Copyright初始值设置为“Original Siemens Equipment”、S7_module_type初始值设置为“IM151

8 PN/DP CPU”、将Module Name的初始值为“Siemens,SIMATIC,S7

200”;2.S7协议连接时长,Conpot的设计者为了避免攻击者长时间保持与Conpot蜜罐连接,占用带宽,在源代码中设置了与Conpot的S7蜜罐设备连接最长时间为5秒;3.S7协议回复时长,经过大量实验,发现真实设备的请求回复时长是Conpot蜜罐回复时长的7倍左右;Gaspot与ATG协议分析Gaspot对ATG协议的实现源码,提取特征如下:1.ATG协议实现默认配置信息列表,列表主要含有产品名称1(product1)、产品名称2(product2)、产品名称3(product3)、产品名称4(product4)以及地理位置(station);其中product1初始值设置为SUPER,product2初始值设置为UNLEAD,product3的初始值设置为DIESEL,product4的初始值设置为PREMIUM;地理位置信息为众多真实油气设备地理位置列表;2.ATG协议请求回复默认配置,ATG协议主要应用于油气设备控制;通过大量试验发现,真实设备的容量(VolumeTC)字段在一段时间内的变化量的绝对值基本等于缺量(ULLAGE)字段的变化量的绝对值;而Gaspot对上述两个字段的数值采用随机化的方式进行生成;Conpot与Modbus协议1.Modbus协议读写寄存器功能实现,Conpot未实现对寄存器的读写功能;通过大量实现发现,Conpot在针对功能码0x10和0x03的回复都有错误:Illegal data address(非法数据地址);2.Modbus协议回复错误功能码功能实现,当连续对Conpot蜜罐设备发送错误功能码时,Conpot蜜罐只接受数据而不会回复;而真实设备会正确回复错诶功能码;(二)共有特征1.端口特征,通过实验发现真实设备通常只会开放个位数的端口,而蜜罐设备会开放数十个端口;2.系统特征,通过实验发现蜜罐往往存在于云端主机或虚拟机上,其操作系统通常是Linux操作系统;3.部署特征,通过实验发现如果目标设备的Whois信息是云服务商或是网络供应商,则
有很大可能该设备是蜜罐设备;二、应用该逐次概率识别模型进行工业控制网络蜜罐的识别(一)生成训练模型数据集考虑到协议特征方面的不同,本发明将数据集依据协议划分为3个子数据集,分别是全球IPv4的Modbus协议数据集,S7协议数据以及ATG数据集;其中蜜罐标签根据如下3条依据确定:该设备网络供应商为云服务供应商;该设备由企业网络供应商托管且具有Windows操作系统;该设备的网络供应商为大学;其中Modbus协议数据集的特征选择:Modbus读写寄存器功能状态,Modbus错误功能码回复时间,端口数量,路由器跳数;各个特征按照编号的先后顺序标记为{x1,x2,x3,x4},对这些特征进行处理,对于x1读写寄存器功能,只有两种结果能或者是不能,所以x1∈{0,1};由于Modbus错误功能码回复时间跨度较大,对x2进行归一化处理;对x3取原本的数值进行编码,由于数据集中路由器跳数最小值为19,最大值为30,所以对x4进行等宽化处理,从15开始,以5为间隔,按照原本数值对应分别编码为0到2;其中S7协议数据集特征选择:设备名称字段,设备标识符字段,设备模块序列号字段,5s后断开连接状态,报文回复时间,端口数量以及路由器跳数;具体描述如表2所示;各个特征按照编号的先后顺序标记为{x1,x2,x3,x4,x5,x6,x7},对这些特征进行处理,对x1,x2,x3按照字典编码,取每个特征数量最多的值放入字典中,将其他较少的数值统一标号,即x
i
∈{0,1,2,...,n},i∈{1,2,3};特征取值最多的4个数值为空值、Technodrome、SAAP7

SERVER和SIMATIC 300(1),分别在数据集中以0到3对相应的数值编码,其他少量存在的数值以4编码;特征取值最多的3个数值为空值、Mouser Factory和DoE Water Service,分别在数据集中以0到2对相应的数值编码,其他少量存在的数值以3编码;特征取值最多的3个数值为空值、88111222和S C

C2UR28922012,分别在数据集中以...

【专利技术属性】
技术研发人员:姚羽单垚杨巍吴昊赵桐
申请(专利权)人:辽宁谛听信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1