工控CTF之协议分析1——Modbus

这篇具有很好参考价值的文章主要介绍了工控CTF之协议分析1——Modbus。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

协议分析

流量分析

主要以工控流量和恶意流量为主,难度较低的题目主要考察Wireshark使用和找规律,难度较高的题目主要考察协议定义和特征
简单只能简单得干篇一律,难可以难得五花八门

常见的工控协议有:Modbus、MMS、IEC60870、MQTT、CoAP、COTP、IEC104、IEC61850、S7comm、OMRON等

由于工控技术起步较早但是统一的协议规范制定较晚,所以许多工业设备都有自己的协议,网上资料数量视其设备普及程度而定,还有部分协议为国家制定,但仅在自己国内使用,网上资料数量视其影响力而定

CTF之协议分析文章合集

工控CTF之协议分析1——Modbus
工控CTF之协议分析2——MMS
工控CTF之协议分析3——IEC60870
工控CTF之协议分析4——MQTT
工控CTF之协议分析5——COTP
工控CTF之协议分析6——s7comm
工控CTF之协议分析7——OMRON
工控CTF之协议分析8——特殊隧道
工控CTF之协议分析9——其他协议
文中题目链接如下
站内下载
网盘下载:https://pan.baidu.com/s/1vWowLRkd0IdvL8GoMxG-tA?pwd=jkkg
提取码:jkkg

Modbus

Modbus,市场占有率高、出题频率高,算是最常见的题目,因为这个协议也是工控领域最常见的协议之一,主要有三类

  • Modbus/RTU

    从机地址1B+功能码1B+数据字段xB+CRC值2B

    最大长度256B,所以数据字段最大长度252B

  • Modbus/ASCII

    由Modbus/RTU衍生,采用0123456789ABCDEF 表示原本的从机地址、功能码、数据字段,并添加开始结束标记,所以长度翻倍

    开始标记:(0x3A)1B+从机地址2B+功能码2B+数据字段xB+LRC值2B+结束标记\r\n2B

    最大长度513B,因为数据字段在RTU中是最大252B,所以在ASCII中最大504B

  • Modbus/TCP

    不再需要从机地址,改用UnitID;不再需要CRC/LRC,因为TCP自带校验

    传输标识符2B+协议标识符2B+长度2B+从机ID 1B+功能码1B+数据字段xB

题目中一般只考Modbus/TCP类型

功能码(常见)

1:读线圈
2:读离散输入
3:读保持
4:读输入
5:写单个线圈
6:写单个保持
15:写多个线圈
16:写多个保持

例题1 HNGK-Modbus流量分析

打开流量包发现基本都是Modbus/TCP协议,包含少量TCP协议,第一个筛选条件,找出所有Modbus协议

工控CTF之协议分析1——Modbus

第二个筛选条件:分析功能码,以功能码为1举例

工控CTF之协议分析1——Modbus

第三筛选条件,找回包(对比发现回包有一个代表长度的Byte Count),且发现看似是二进制的乱码

工控CTF之协议分析1——Modbus

查找每一个功能码,最终在功能码16找到flag

工控CTF之协议分析1——Modbus

例题2 HNGK-modbus(异常流量)

flag为异常流量的序号

筛选出所有Modbus协议流量,发现有多种功能码,一个一个查询是否有异常流量

首先是17,发现请求包中无其他参数,查看前面几个回包均发现060000数据,猜测此为正常流量,于是将060000作为不查询条件

工控CTF之协议分析1——Modbus

没有其余流量,判断功能码17无问题,将17作为不查询条件接着查看下一个功能码

功能码109:查询和返回都有数据,先将查询的数据54不选中,得到大量返回包,将其数据00不选中

工控CTF之协议分析1——Modbus

没有异常流量,查询下一功能码

功能码67:方式同上,这里将返回数据有多种情况

最终在功能码1中发现异常

(modbus.func_code == 1) && (modbus.bit_cnt != 8)

工控CTF之协议分析1——Modbus

有请求包就有返回包,四个包都是异常的,但是异常一定是有请求数据异常导致,所以实际上只需找到请求包即可

筛选条件有多种方式

(((((modbus.func_code == 1)) && !(modbus.reference_num == 0)) && !(modbus.reference_num == 1536)) && !(frame[63:1] == 00)) && !(frame[63:1] == fe)

工控CTF之协议分析1——Modbus

例题3 HNGK-modbus协议分析(偏脑洞)

以Modbus协议为条件筛选,发现功能码大部分为3,少数为2和6,老规矩,一个一个分析

以功能码3为例:请求包几乎都一样,无明显异常

工控CTF之协议分析1——Modbus

筛回复包,题中源ip为192.1688.161.2的是回复,所以ip.src == 192.168.161.2

可以看到有很多无效数据

工控CTF之协议分析1——Modbus

将无效数据筛除,条件有很多,这里筛选包含byte count的数据即为回复数据

从头到尾看一遍会发现响应值逐渐出现数据,看似很有规律且都是键盘上那一行字符

工控CTF之协议分析1——Modbus

复制16进制流并剔除不需要的杂数据

工控CTF之协议分析1——Modbus

将无用字符00删除,得到有用十六进制

工控CTF之协议分析1——Modbus

将其转为十进制

工控CTF之协议分析1——Modbus

这一题的脑洞也就是这里,将十进制当做十六进制处理,发现居然没有乱码,得到的结果很合理

工控CTF之协议分析1——Modbus

再解十六进制得到明显base64,解得flag文章来源地址https://www.toymoban.com/news/detail-433928.html

到了这里,关于工控CTF之协议分析1——Modbus的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 工控CTF之协议分析6——s7comm

    流量分析 主要以工控流量和恶意流量为主,难度较低的题目主要考察Wireshark使用和找规律,难度较高的题目主要考察协议定义和特征 简单只能简单得干篇一律,难可以难得五花八门 常见的工控协议有:Modbus、MMS、IEC60870、MQTT、CoAP、COTP、IEC104、IEC61850、S7comm、OMRON等 由于工控

    2024年02月02日
    浏览(31)
  • 工控安全-Modbus协议

    Modbus协议是工业控制器网络协议的一种,此协议定义了一个控制器能够认识的消息结构,描述了一个控制器请求访问其他设备、回应来自其他设备以及侦测错误并记录的过程。 Modbus是一种应用层的报文传输协议,它既可以在物理层面上选择串口进行简单的串行通信,也可以使

    2023年04月24日
    浏览(38)
  • 流量分析—ctf

    题目介绍 该题为流量分析,当黑客入侵我们的网络是,我们可以需要通过一系列分析操作来进行抓捕与追踪,本题目难度中等偏下,不是很有难度,但题目类型较为全面,适合入手当做练习。 一、题目背景 某公司内网网络被黑客渗透,简单了解,黑客首先攻击了一台web服务

    2024年02月10日
    浏览(28)
  • CTF流量分析

    在CTF里,一些pcapng或pcap文件后缀的数据 不同的数据包有不同的协议,常见的有HTTP,TCP协议 简介 是一个网络封包分析软件。网络封包分析软件的功能是获取网络封包,并尽可能显示出最为详细的网络封包资料 使用WinPCAP作为接口,直接与网卡进行数据报文交换 HTTP三次握手

    2023年04月15日
    浏览(65)
  • 简单流量分析CTF(wireshark)

    没做过流量分析的题目,也不怎么了解怎么流量分析,准备系统的理一下思路。。 这有第一个小题目。通过几个题目来了解wireshark的使用以及流量分析吧。。 bugku的杂项题目。 链接:https://pan.baidu.com/s/1OnO7OXIQB8ztl8J2q48jBA 提取码:1111 这是一个 pacp文件  是一种常用的数据报存

    2024年02月07日
    浏览(38)
  • 树莓派4B与智能涡轮流量计通过RS485(modbus RTU协议)收发数据(二)(Hyperledger Fabric环境中上传数据)

    上一篇博客配置好了树莓派端的串口通信,这次在加入涡轮流量计之前也先用PC端模拟树莓派测试一下该仪表是否能正常工作。 流量计说明书如下:  并且在设备上电时以(9600,8n1格式)自动发送四个字节: 返码格式:站地址(1字节)+波特率(2字节)+格式(1字节) 8n1格式

    2023年04月21日
    浏览(49)
  • CTFHUB-流量分析-协议流量分析-ICMP

    我们打开然后放入wireshark中 搜索icmp 然后搜索ctfhub 发现没有 然后就看{ 我们从最底下开始往上翻 1.   A  C   MMMMM  2. A  C   MMMMM 3. A   T  MMMMMMM    4. A   T  MMMMMM  5.A F  MMMMMM 从这里我们就发现了规律了   已经出现了ctf了 所以我们就只要将这个位置上组合起来就是flag

    2024年02月06日
    浏览(41)
  • MODBUS TCP协议实例数据帧详细分析

    Modbus由MODICON公司于1979年开发,是一种工业现场总线协议标准。1996年施耐德公司推出基于以太网TCP/IP的Modbus协议:ModbusTCP。Modbus协议是一项应用层报文传输协议,包括ASCII、RTU、TCP三种报文类型。标准的Modbus协议物理层接口有RS232、RS422、RS485和以太网接口,采用master/slave方式

    2024年02月05日
    浏览(70)
  • Linux C/C++下抓包分析mysql流量(协议解析)

    MySQL通信协议是一个有状态的协议,主要用于MySQL客户端与服务器之间的通信。这个协议在MySQL客户端连接器(如Connector/C、Connector/J等)、MySQL Proxy以及主从复制中都有实现。 该协议的特性包括:支持SSL、压缩和认证等功能。 MySQL客户端和服务端的交互过程主要分为两个阶段:

    2024年02月05日
    浏览(47)
  • 国科大网络协议安全大作业——分析流量并使用Snort规则进行检测

    SHA256(Secure Hash Algorithm 256-bit)是一种密码学哈希函数,用于计算数据的哈希值。每个文件使用一个哈希算法只会有一个确定的哈希值。 被感染主机设置为ubuntu22.04,虚拟机IP地址为192.168.88.142 原因:避免wireshark奇怪报错  2.2.1在终端执行 file命令查看文件类型 2.2.2计算该文件

    2024年02月04日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包