暗魂CTF平台-工控-协议分析-writeup

WriteUp 3个月前 admin
37 0 0
点击蓝字
暗魂CTF平台-工控-协议分析-writeup
关注我们

暗魂CTF平台-工控-协议分析-writeup



暗魂CTF平台-工控-协议分析-writeup

暗魂CTF平台-工控-协议分析-writeup
微信搜一搜
暗魂CTF平台-工控-协议分析-writeup
暗魂攻防实验室

协议分析

modbus

描述:

黑客通过modbus协议向他的同伙发送了一条秘密信息,通过流量设备我们抓取到了相关的流量包,你能根据流量包找到这条信息么?

exp:

过滤一下 modbus ,追踪第一条数据的 http 流,就能发现 flag

暗魂CTF平台-工控-协议分析-writeup

flag为flag{We1c0meToZXB2023}



异常的流量

描述:

请对提供的流量进行分析,发现可能存在的异常,找出flag,提交格式:flag{xxx}。

exp:

在过滤器中过滤一下 tcp ,追踪一下第一个 tcp 流,选择一下会话往下翻就能发现一串 16 进制,一共有 3 处拼接起来就行,然后我看了一下,我基本每个 tcp 流都会泄露这个串 16 进制,然后进行解码,用 flag{} 包裹就行

暗魂CTF平台-工控-协议分析-writeup

暗魂CTF平台-工控-协议分析-writeup

flag: flag{EnergyRevolution}


S7Error

描述:

某工厂的工程师发现有一台西门子设备存在资源异常,请分析并找出异常流量的数据包编号。

exp:

过滤器过滤 s7comm,大概了解一下 s7comm 协议,分析 Header 部分,可以看到 Ack_Data 的 Header 中大部分 Error code 是 0x00,说明这种流应该是没有异常的,那我过滤一下不等于 0x00 就行了

Ack_Data:带有返回数据,例如指令是查询内容,返回的就有要查询的东西

s7comm.header.errcod !== 0x00

暗魂CTF平台-工控-协议分析-writeup

接下来就是继续观察 Header 部分中的 Error class 错误类型了,可以发现序号为 213056 中的错误类型是 No resources available (0x83) 没用可用资源,就是题目中的资源异常,所以这个流包就是我们要找的序号

暗魂CTF平台-工控-协议分析-writeup

flag: flag{213056}



OmronAttack

描述:

某工厂的工程师发现有一台设备存在异常,抓取流量后发现了黑客的端倪,你能协助他分析黑客留下的痕迹吗?

学习:

[工控CTF之协议分析7——OMRON_omron协议-CSDN博客](https://blog.csdn.net/song123sh/article/details/128388409)

思路:

可以猜测黑客的端倪基本要命在读数据,要命在写数据的时候,大概率是在写数据的时候,所以我们过滤一下写数据,并分析可以发现数据包的长度基本都是 **80**,但是下面出现了几个长度为 **86** 的数据包,估计就是黑客写入的数据

omron.command == 0x0102

暗魂CTF平台-工控-协议分析-writeup

暗魂CTF平台-工控-协议分析-writeup

我们把这几个异常的数据包中的 Command Data 中的数据提取出来,根据我们学习以及猜测,可以发现数据是两两字节存入,需要做前后翻转

9fS4Fcr/0vUj2Sf+0sM4+HCxkhBzyMd47I7RuBEc1MkCczJy1UuAX3Hnahevf nu):

写个脚本每两个字节交换一次位置

def swap_bytes(hex_str):    result = []for i inrange(0, len(hex_str), 4):        byte1 = hex_str[i:i+2]        byte2 = hex_str[i+2:i+4]        result.append(byte2 + byte1)return''.join(result)
input_hex ="396653344663722f3076556a3253662b30734d342b4843786b68427a794d64343749375275424563314d6b43637a4a79315575415833486e"output_hex = swap_bytes(input_hex)print(output_hex)
f94ScF/rv0jUS2+fs04MH+xChkzBMy4dI7R7BucEM1CkzcyJU1Au3XnHhave fun:)

很明显了,思路是对的,下面是 2 个单词,很明显上面应该一段被加密的字符,然后我们对数据包长度排序一下发现在 FINS/TCP 中也存在可疑的数据

都提取出来

暗魂CTF平台-工控-协议分析-writeup

5ae1746f6473a56b35616531373436663634373361353662
跟上面一样每两个字节交换一次位置
a51e47f646375ab6

a51e47f646375ab6 进行 md5 解密,结果为 rabbit ,然后将上面那串字符进行 rabbit 解密就行,密钥就是 a51e47f646375ab6

暗魂CTF平台-工控-协议分析-writeup


暗魂CTF平台-工控-协议分析-writeup

这里有点问题,好像必须要使用 CyberChef 这个工具,目前我没找到其他的解密工具和脚本

flag: flag{40d3b450-8ea3-46bb-b2b8-e69a3d7a50b3}




暗魂CTF平台-工控-协议分析-writeup
联系微信客服
扫码联系
暗魂攻防实验室


暗魂CTF平台-工控-协议分析-writeup


暗魂CTF平台-工控-协议分析-writeup

暗魂CTF平台-工控-协议分析-writeup

暗魂攻防实验室CTF平台工控题writeup

【安全小工具】sxf防火墙安全日志自动刷新js脚本

暗魂攻防实验室CTF平台基础赛题-writeup

暗魂攻防实验室CTF靶场平台试运营中!

暗魂CTF平台-工控-协议分析-writeup
暗魂CTF平台-工控-协议分析-writeup
微信搜一搜
暗魂CTF平台-工控-协议分析-writeup
暗魂攻防实验室


原文始发于微信公众号(暗魂攻防实验室):暗魂CTF平台-工控-协议分析-writeup

版权声明:admin 发表于 2024年8月3日 上午9:29。
转载请注明:暗魂CTF平台-工控-协议分析-writeup | CTF导航

相关文章