当前位置:首页 > 黑客业务 > 正文内容

Modbus TCP流量剖析

访客3年前 (2021-04-15)黑客业务686

Modbus协议
Modbus是全球第一个真实用于工业现场的总线协议,ModBus选用主/从(Master/Slave)方法通讯。最大可支撑247个隶属控制器,但实践所支撑的隶属控制器数还得由所用通讯设备决议,且每个隶属控制器都有一个专属的slave ID。一起Modbus也是一个不经过身份验证的明文协议。
尽管开端是为了进行串行通讯才规划出它,可是现在用的最多的仍是TCP,其他版别的Modbus(用于串行通讯)有Modbus RTU和Modbus ASCII。关于串行通讯来说Modbus ASCII与Modbus RTU是不兼容的(也便是说在同一个网络两者不可能一起存在)
每种Modbus协议都必须挑选一种帧格局:
Modbus TCP (在低网络层中没有校验和);
Modbus RTU (运用二进制编码和一个CRC过错检测);
Modbus ASCII (运用ASCII字符);
在TCP中客户端一般指的是主控制器,服务端指的是隶属控制器。
Modbus TCP
TCP帧格局由以下部分组成:
Transaction identifier : 设备直接进行同步通讯
Protocol identifier : 关于Modbus TCP来说其值一直为0
Length field : 确认数据包剩下的长度
Unit identifier : 隶属控制器的地址(由于咱们现已把TCP/IP地址设置为标识符,所以这儿大部分状况为255)
Function code : 要履行的函数
  -大多数函数运转从/到PLC进行读取/写入操作
     3: 读取多个坚持寄存器
     1: 读取线圈
     5: 写入单个线圈
       …
  -检测函数
  -其他一些函数
数据字节或许指令
信息存储
这儿有两个可用来存储信息的当地:线圈以及寄存器。每个数据存储类型都有两个不同的寄存器:一个是读/写寄存器,一个是只读寄存器,且每个数据存储类型都引证一个内存地址。
简略的说:
线圈用于存储简略的布尔值(1 bit).可读/写,从00001到09999;
离散输入:只读类型的布尔值,从10001到19999;
输入寄存器:只读类型的长值(16 bits),从30001到39999;
坚持寄存器:读/写类型的长值(16 bits),从40001到49999;
请注意:由于硬件不同,有些寄存器是从0开端,有些是从1开端。
单元标识符
在大多数状况下,在Modbus单元设备中由于之前现已经过它的IP地址处理了正确单元,所以你不需求一个单元id。但有些时分你可能会遇到多台设备连接到一个IP地址,假如是这样的话,你就必须将单元ID设置为255
单元ID为0你能够将其看作一个播送地址,信息发送到0,一切的隶属控制器都能够接纳。假如你是设置一个Modbus客户端,记住必定不要将单元ID设置为0
Modbus流量
你能够运用ModbusPal来模仿Modbus隶属控制器的行为,这个Java运用答应你同不同的隶属控制器(寄存器和线圈)愉快游玩。你也能够运用MBTGET(纯Perl写的modbus/TCP客户端)来查询Modbus实例。
这儿有几个备选计划,你能够运用它们来玩Modbus:
Modbus poll (主运用在Windows)
CAS Modbus Scanner (主运用在Windows)
ModScan (主运用在Windows)
modbus-tk (Linux上模仿隶属控制器)
Conpot (Linux上的一个Modbus -ICS蜜罐)
现在我在Kali VM上布置ModbusPal(Slave),在Linux VM上布置MBTGET(Master)
Modbus Slave : 192.168.171.182
Modbus Master : 192.168.171.139
剖析Modbus流量
在OSX上运用vmnet-sniffer获取俩不同虚拟机的流量
sudo "/Applications/VMware Fusion.app/Contents/Library/vmnet-sniffer" -w modbus.pcap vmnet8
过一瞬间你就能够运用Wireshark读取pcap文件,Modbus TCP流量运转在tcp/502端口
设置ModusPal
首要咱们需求设置ModusPal来模仿Modbus隶属控制器,下载ModbusPal之后运转:
java –jar ModbusPal.jar
增加一个隶属控制器,修改隶属控制器并增加一些线圈。

理论上来说你也能够更改一些线圈的值,记住他们都是布尔值,所以这些值不是0便是1。单击运转,发动隶属控制器。
MBTGET
切换到安装好MBTGET的Linux客户端,MBTGET上手非常简单:
usage : mbtget [-hvdsf] [-2c]
               [-u unit_id] [-a address] [-n number_value]
               [-r[12347]] [-w5 bit_value] [-w6 word_value]
               [-p port] [-t timeout] serveur
你能够运用-r1读取线圈,运用-r3能够读取坚持寄存器。
Modbus中查询线圈
第一次流量抓取是在隶属控制器中查询线圈,vmnet-sniffer能够完结网络流量抓取的使命,之后将取得的文件导入Wireshark,运用如下Modbus指令:
mbtget -r1 -u 1 -n 8 192.168.171.182
从192.168.171.182(slave)的unit id 1开端读取8寄存器,输出为:
values:
  1 (ad 00000):     0
  2 (ad 00001):     0
  3 (ad 00002):     1
  4 (ad 00003):     0
  5 (ad 00004):     1
  6 (ad 00005):     0
  7 (ad 00006):     0
  8 (ad 00007):     0
在Wireshark中进行挑选过滤:
tcp.port == 502
在TCP3次握手完结之后,紧接着便是Modbus数据包:

[1] [2]  黑客接单网

扫描二维码推送至手机访问。

版权声明:本文由黑客接单发布,如需转载请注明出处。

本文链接:http://therlest.com/106397.html

分享给朋友:

“Modbus TCP流量剖析” 的相关文章

字节承认商业化团队撤城裁员了

据晋江新闻网2021年10月19日21:00:43的最新发布,微博网友@ 爆料。   平安夜来临之际,事件,在网上炒得沸沸扬扬,引发全网热议!   据悉,黑客追款后来被报道了几次。猜测第六百八十八章逃港者第六百八十九章调侃第六百。相对这个账号是他的。   1.专业网赌追回...

猪肉怎么选?颜色有区别吗?今天做饭的时候发现上次买的猪肉颜色跟这

猪肉怎么选?颜色有区别吗?今天做饭的时候发现上次买的猪肉颜色跟这 买猪肉时,根据肉的颜色、外观、气味等可以判断出肉的质量是好还是坏。优质的猪肉,脂肪白而硬,且带有香味。肉的外面往往有一层稍带干燥的膜,肉质紧密,富有弹性,手指压后凹陷处立即复原。 次鲜肉肉色较鲜肉暗,缺乏光泽,脂肪呈灰白色;表面带...

宜家自助餐多少钱一位 「天津宜家自助餐多少钱」

食材的流转等息息相关的,白堤路店,就不用付钱了。吃完了,不像别的自助沙拉酱都兑了N多的水!其他」的也是10多块20块一份。鞍山西道,你绝对吃不腻。 举荐菜:当然是面啦!海鲜、你去尝尝吧。 举荐蔡:特色鸡串,金汉斯南美多少烤肉,腌好的肉和没腌的肉都有,200元一位,宜家家居,宜家2楼那个不是自助餐厅,...

蚯蚓的市场价格 - 2020年蚯蚓收购价格

今年2020年这个价格还算是比较合理,市场价格较为平稳,当地蚯蚓批发价250元/万条,今日浙江海宁地区鲜蚯蚓批发价为17,最高可卖3元/两,每次都-是老家亳州的来回辗转的跑辛苦.货源充足,现在贩子登门收购18-222020元/斤不等。 目前价格多少钱一斤目前价格在8元一斤,是一种营养价值很高的无脊椎...

今天猪肉价格多少钱一斤 「未来10天毛猪价格」

但是价格便宜点。比昨天下降 0点8;鸡蛋8点,我今天出售5头价格14点00,价格稳定;江苏活猪价15元/公斤左右,规模场品种猪价格在6点50-6,猪价或将有所回暖,点70元/斤之间,年的低迷期。 去年9月份以来,89元/公斤,山东省普通猪价格大约在6,从春节时的最高15元/公斤左右价格,现在江苏生猪...

存储过程oracle(oracle财务系统)

推荐教程:甲骨文教程 本文主要介绍甲骨文中的数据转换。 1.日期转换成字符串(以2016年10月20日为例) 选择to_char(sysdate,& # 39;yyyy-mm-DD hh24:mi:ss & # 39;)strDateTime从dual-获取年-月-日:分:秒-...

评论列表

辙弃债姬
2年前 (2022-07-05)

Modbus协议Modbus是全球第一个真实用于工业现场的总线协议,ModBus选用主/从(Master/Slave)方法通讯。最大可支撑247个隶属控制器,但实践所支撑的隶属控制器数还得由所用通讯设备决议,且每个隶属控制器都有一个专属的slave ID。一起Modbu

泪灼俛就
2年前 (2022-07-05)

是Modbus数据包:[1] [2]  黑客接单网

孤央性许
2年前 (2022-07-05)

ad 00005):     0  7 (ad 00006):     0  8 (ad 00007):     0在Wireshark中进行挑选过滤:tcp.po

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。