小白书"/>
DNP3理解小白书
使用scapy构更改pcap造包需要更改一些数据:
1、长度字段 减去crc的长度(定义比较变态)
user_data 长度是 上面的总长度 - 5 (data_layer_header_ctrl,data_layer_header_da ,data_layer_header_sa
对应length字段之后的所有数据,且去除crc 都不算在里面)
2、TCP sequece ,number
3、DNP 链路层的data block的CRC(超过16,需要增加多个CRC字段)
4、DNP链路层头部的CRC
CRC(CEC是DNP专有算法crc-16/dnp,在python的crccheck里已经合入了)的一个例子:
如下红色的地方用于计算CRC,黑色的是CRC的值
056414c404000300c717c0c0013c02063c03063c04063c01068a51
056417c0040003008f08c0c0013c01063c02063c03063c04063c2f620506bfd6 (这个报文的第五个对象不合法)
056417c0040003008f08c0c0013c01063c02063c03063c040600df1a00064a3b
更多推荐
DNP3理解小白书
发布评论