我使用以下脚本(python scapy)来创建包含碎片UDP数据包的pcap文件的碎片整理版本 .
# Read pcap file
in=rdpcap("in.pcap")
# Defragment ...
out = defragment(in)
# Write defragmented pcap file
wrpcap ("out.pcap", out)
我的问题是碎片整理数据包的pcap时间戳设置为碎片整理的日期,而不是捕获日期 . 非碎片数据包仍然具有其原始捕获时间戳 .
我看了一下inet.py,defragment()和defrag(),但是我不是很精通scapy,我想帮助理解它并破解它以保持最后的日期片段,并将其放入碎片整理的数据包中......
任何人都可以帮我解决这个问题吗?
比如,我在哪里可以找到输入数据包中的捕获日期,以及我应该将它放在碎片整理数据包中...
当然,欢迎达到同一目标的任何其他解决方案(我承认......我很着急:( ...)
1 回答
这是inet.py的补丁,它将第一个片段的捕获日期添加到碎片整理的数据包中 .
可能有更清晰的解决方案,例如修改Packet.copy()方法和其他一些方法,但是嘿,它符合要求......