官网热线:400-100-0298
【安全研究】基于Modbus协议实现Openplc与Kingview的仿真通讯与模拟测试-为国家安全锻矛铸盾

首页

产品体系

解决方案

案例精选

新闻动态

关于我们

联系我们

安全服务

资源中心

返回上一层

网络靶场

工控盾

创新产品

上海臻相

返回上一层

特种

能源

政府及事业单位

教育

智能制造

其他

安全服务

新闻动态

新闻动态

所有内容 公司新闻 行业动态 招标模板 战略动态

【安全研究】基于Modbus协议实现Openplc与Kingview的仿真通讯与模拟测试

时间:2022-01-14   访问量:7552
一、前言
工业控制系统离不开上位机监控系统和下位机控制器即PLC,上位机软件相对比较容易获得,比如本文采用kingview6.53,但PLC的获得相对来说就没有那么轻松,考虑这种情况,本文借助一款模拟工业自动化环境的开源软件OpenPLC基于modbus协议实现与组态王的通讯仿真。同时基于环境进行模拟测试,对组态王的组态画面、OpenPLC Editor梯形图简单编程进行简单介绍,亲测效果不错。
二、环境准备
(1)Kali linux虚拟机(IP:192.168.180.146)安装OpenPLC
安装过程参考https://github.com/thiagoralves/OpenPLC_v3,安装后,Kali linux虚拟机内置浏览器输入如下地址,账户/密码:openplc/openplc。
 
(2)Kali linux虚拟机(IP:192.168.180.146)安装OpenPLC_Editor,安装过程参考https://github.com/thiagoralves/OpenPLC_Editor,安装后,在应用里面搜索OpenPLC_Editor,打开后,编写简单程序如下,下载链接:openplc_test.st。

 

 
(3)winxp sp3 虚拟机(IP:192.168.180.157)安装组态王6.53,新建test工程下载链接https://github.com/sxd0216/kingview--test,并按下图所示添加OpenPLC设备OpenPLC_test。

 

 
(4)设定变量并和OpenPLC_test连接

 

 
(5)组态简单画面,点击Start,电机运行,点击Stop,电机停止
 
三、仿真通讯
(1)Kali linux虚拟机(IP:192.168.180.146)中运行OpenPLC,导入OpenPLC_Editor编辑好的程序openplc_test.st。

 

 
待程序编译好后,Go to Dashboard,然后Start PLC

 

 
待PLC出现Running后,进入Monitoring

 

 
(2)winxp sp3 虚拟机(IP:192.168.180.157)中运行test工程

 

 
(3)通过信息窗口查看,已经通讯成功
 
(4)点击Start后,指示灯亮,电机启动,进入PLC,发现Start和MV1变量值已经变为TRUE,对比图如下:
    
 
(5)点击Stop后,指示灯灭,电机停止,进入PLC,发现Start和MV1变量值已经变为FALSE,Stop变量值变为TRUE,对比图如下:
  
 
四、模拟测试
(1)winxp sp3 虚拟机(IP:192.168.180.157)中利用wireshark抓取03.仿真通讯中Start(14帧、16帧)和Stop(19帧、21帧)的数据包,下载链接https://github.com/sxd0216/attack-packets。

 

 
查看数据包,搜索modbus协议”05″功能码Write Coil,捕获到Start(14帧、16帧)和Stop(19帧、21帧)的攻击数据包,modbus协议常用功能码如下:
01 :读取线圈状态
02:读取输入状态
03:保持型寄存器读取
05:写单一线圈
06:写单一寄存器
(2)基于wireshark捕获的Write Coil,编写Python攻击包,下载链接https://github.com/sxd0216/attack-packets。

(3)利用攻击包也可以达到(4)和(5)的效果
五、总结
本文主要利用OpenPLC模拟modbus协议实现了OpenPLC实现了与Kingview的通讯仿真与模拟测试,大家如果感兴趣也可以基于OpenPLC模拟其他协议,进而仿真其他环境;同时本文也对kingview如何建立工程、组态画面,OpenPLC Editor编辑简单梯形图程序进行了简单介绍,希望对热爱工控的人士有所帮助。
【转载声明】本文属于非攻研究院原创技术文章,已在FreeBuf发表(https://www.freebuf.com/articles/ics-articles/239282.html)转载请注明原始出处和作者。
备案号码:苏ICP备12069441号