一种工业控制网络漏洞扫描方法技术

技术编号:39399787 阅读:25 留言:0更新日期:2023-11-19 15:53
一种工业控制网络漏洞扫描方法,涉及工业网络安全技术领域,具备自动化搜集和确认漏洞信息的能力,与传统的暴力漏洞扫描方式有所不同

【技术实现步骤摘要】
一种工业控制网络漏洞扫描方法


[0001]本专利技术涉及工业网络安全
,具体涉及一种工业控制网络漏洞扫描方法


技术介绍

[0002]当前工业控制网络正面临着严重的漏洞风险

随着工业自动化系统的数字化和互联化,工业网络设备变得更加容易受到网络攻击

由于这些设备通常长时间运行且缺乏安全更新,存在的漏洞可能被恶意分子利用,从而造成生产中断

设备损坏甚至安全事故

工业控制系统的脆弱性已成为一个日益突出的问题,对生产线的稳定性和安全性提出了严峻挑战

[0003]针对当前的漏洞扫描技术,虽然它们在其他领域取得了显著成果,但在工业控制网络中应用时存在一些显著缺点

传统的主动扫描方法可能导致网络中断,影响生产线的运行

而工业网络的特殊性质要求系统的高可用性和连续性,不能容忍扫描引发的停机和生产损失

此外,许多工业设备在投入使用后长时间运行,可能已存在未修补的漏洞,但传统扫描方法无法在不影响设备运行的情况下检测这些漏洞

与此同时,针对工业控制网络中的漏洞,人工查询和监测存在着一系列挑战

人工查询漏洞需要耗费大量的时间和人力资源,由于工业控制网络的复杂性和多样性,人工难以实时准确地获取最新的漏洞信息

此外,工业设备通常分布在广泛的地理区域,涵盖各种不同的设备类型和制造商,导致了巨大的信息碎片化和查询难度

[0004]因此,传统的漏洞扫描技术在工业控制网络中应用时受到了诸多限制

这些技术难以平衡漏洞扫描的安全性与系统连续性,可能导致不可接受的生产中断

为了有效保护工业控制网络的安全,需要一种创新的方法,能够自动获取设备信息

识别漏洞,并且在不影响系统运行的前提下提供全面的漏洞自动化扫描能力


技术实现思路

[0005]本专利技术为了克服以上技术的不足,提供了一种有效提升工业控制系统的安全性和稳定性的工业控制网络设备漏洞扫描方法

[0006]本专利技术克服其技术问题所采用的技术方案是:一种工业控制网络漏洞扫描方法,包括如下步骤:
a)
构造并发送
Profinet DCP
广播报文;
b)
接收并解析
Profinet DCP
广播报文;
c)
测试机通过
S7
协议连接设备;
d)
获取连接设备的版本信息;
e)
测试机进行查询漏洞信息操作;
f)
解析查询的漏洞信息

[0007]进一步的,步骤
a)
包括如下步骤:
a

1)
在测试机
Python
环境中导入
pnio

dcp
库;
a

2)
调用
pnio

dcp
库的接口
Ether(dst)
,设置接口
Ether(dst)
参数的目标地址为
01:0e:cf:00:00:00

a

3)
调用
pnio

dcp
库的接口
ProfinetIO(FrameID)
,设置接口
ProfinetIO(FrameID)
的帧
ID

DCP_IDENTIFY_REQUEST_FRAME_ID

a

4)
调用
pnio

dcp
库的接口
ProfinetDCP(service_id,service_type), 设置接口
ProfinetDCP(service_id,service_type)
参数的服务
ID

DCP_SERVICE_ID_IDENTIFY、
服务类型为
DCP_REQUEST
,通过接口
ProfinetDCP(service_id,service_type)
直接发送
Profinet DCP
广播报文

[0008]进一步的,步骤
b)
包括如下步骤:
b

1)
调用
pnio

dcp
库的接口
Ether(dst)
,设置接口
Ether(dst)
参数的目标地址为测试机的
mac
地址;
b

2)
调用
pnio

dcp
库的接口
ProfinetIO(FrameID)
,设置接口
ProfinetIO(FrameID)
的帧
ID

DCP_IDENTIFY_RESPONSE_FRAME_ID

b

3)
调用
pnio

dcp
库的接口
ProfinetDCP(service_id,service_type), 设置接口
ProfinetDCP(service_id,service_type)
参数的服务
ID

DCP_SERVICE_ID_IDENTIFY、
服务类型为
DCP_RESPONSE
,通过接口
ProfinetDCP(service_id,service_type)
直接开始接收
Profinet DCP
广播报文;
b

4)
接口
ProfinetDCP(service_id,service_type)
在接收
Profinet DCP
广播报文完成后通过调用
guess_dcp_block_class()
接口,获取
Profinet DCP
广播报文中的设备供应商

设备型号

设备
IP。
[0009]进一步的,步骤
c)
包括如下步骤:
c

1)
在测试机
Python
环境中导入
snap7
库,调用
snap7
库的接口
snap7.client.Clitent()
创建
S7<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种工业控制网络漏洞扫描方法,其特征在于,包括如下步骤:
a)
构造并发送
Profinet DCP
广播报文;
b)
接收并解析
Profinet DCP
广播报文;
c)
测试机通过
S7
协议连接设备;
d)
获取连接设备的版本信息;
e)
测试机进行查询漏洞信息操作;
f)
解析查询的漏洞信息
。2.
根据权利要求1所述的工业控制网络漏洞扫描方法,其特征在于,步骤
a)
包括如下步骤:
a

1)
在测试机
Python
环境中导入
pnio

dcp
库;
a

2)
调用
pnio

dcp
库的接口
Ether(dst)
,设置接口
Ether(dst)
参数的目标地址为
01:0e:cf:00:00:00

a

3)
调用
pnio

dcp
库的接口
ProfinetIO(FrameID)
,设置接口
ProfinetIO(FrameID)
的帧
ID

DCP_IDENTIFY_REQUEST_FRAME_ID

a

4)
调用
pnio

dcp
库的接口
ProfinetDCP(service_id,service_type), 设置接口
ProfinetDCP(service_id,service_type)
参数的服务
ID

DCP_SERVICE_ID_IDENTIFY、
服务类型为
DCP_REQUEST
,通过接口
ProfinetDCP(service_id,service_type)
直接发送
Profinet DCP
广播报文
。3.
根据权利要求2所述的工业控制网络漏洞扫描方法,其特征在于,步骤
b)
包括如下步骤:
b

1)
调用
pnio

dcp
库的接口
Ether(dst)
,设置接口
Ether(dst)
参数的目标地址为测试机的
mac
地址;
b

2)
调用
pnio

dcp
库的接口
ProfinetIO(FrameID)
,设置接口
ProfinetIO(FrameID)
的帧
ID

DCP_IDENTIFY_RESPONSE_FRAME_ID

b

3)
调用
pnio

dcp
库的接口
ProfinetDCP(service_id,service_type), 设置接口
ProfinetDCP(service_id,service_type)
参数的服务

【专利技术属性】
技术研发人员:程桯李龙飞韩涛
申请(专利权)人:山东九州信泰信息科技股份有限公司
类型:发明
国别省市:

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

1