实验环境:西门子S7-300、CUP 315-2DP、step7 5.6、wireshark
目的:利用抓取的数据包还原PLC代码
利用wireshark抓取PC与PLC传输的数据,其中包含了PLC代码为function[Download block]的数据包,如图1。
图1
打开这个包,经过多次实验分析发现data字段的格式大致为:7070...0000+xx+0000 0000+???? ????+30e3...1400+code+6500...0100+????+0000 0000 0000 0000,其中xx部分代表了data的长度。
图2
图3所示的PLC代码在数据包中的内容为图2中圈红部分:0a 89 01 8a 01 8b 01 d8 80。多次实验发现:其中0a转换成十进制为10,用其除以2再减去1就得到指令个数4。而后面的部分则两个字节为一个指令。其格式为:_ _ _ _,其中后三位代表了存储地址&#