S7comm
s7comm就是西门子为了它生产的PLC之间、SCADA与PLC之间的通信而设计的专属协议。S7协议的TCP/IP实现依赖于面向块的ISO传输服务。S7协议被封装在TPKT和ISO-COTP协议中,这使得PDU(协议数据单元)能够通过TCP传送。
S7Comm以太网协议基于OSI模型
第1-4层会由计算机自己完成(底层驱动程序),关于这些神马的定义,大家可以上网查一下
第5层TPKT,应用程数据传输协议,介于TCP和COTP协议之间。这是一个传输服务协议,主要用来在COTP和TCP之间建立桥梁;
具体的报文中,TPKT的作用是包含用户协议(5~7层)的数据长度(字节数);COTP的作用是定义了数据传输的基本单位(在S7Comm中 PDU TYPE:DT data)。
第6层COTP,按照维基百科的解释,COTP 是 OSI 7层协议定义的位于TCP之上的协议,COTP 以“Packet”为基本单位来传输数据,这样接收方会得到与发送方具有相同边界的数据
第7层,S7 communication,这一层和用户数据相关,对PLC数据的读取报文在这里完成
西门子S7comm协议解析:https://www.cnblogs.com/Db2k/p/12376610.html
题目地址
https://game.fengtaisec.com/#/startQuestions/12
题目描述
某10段工控网络中,工业协议中存在异常数据。请通过流量中的数据找寻 flag,flag形式为 flag{}。
解题思路
下载压缩包,有20多m ,解压就一个流量包有133m多
使用Wireshark打开进行分析
直接先搜索一下flag、png、webshell、php等关键字,没有找到有啥用的东西
题目里是分析S7COMM协议,直接过滤出s7comm协议进行降序排包的长度,在第一个包的数据里有一段hex编码
hex在线编码解码网址:http://stool.chinaz.com/hex
得到flag:flag{is_not_real}