1
比方說,我已經創造了Scapy的像Scapy的:嗅探自制層
class MyProtocol(Packet):
name = "MyProtocol"
fields_desc = [ IntField("layerLength", 8), # always the same
ShortField("numberA", 4),
ShortField("numberB", 2),
IntField("numberC", 2) ]
一個單獨的圖層如果我有兩個設備,含有這種自制層之上,另一種嗅探網絡流量的一個發送數據包 - 第二個設備如何檢測一個被嗅探的數據包是否包含這個特殊層? Scapy已經認識了很多圖層,但是如何讓它識別我自己的自制圖層?
我知道我可以簡單地取每個數據包的Raw部分,在字節級解剖它,例如,檢查「layerLength」字段是否確實包含圖層的總長度,或添加一些特殊的唯一字段,但這看起來太複雜了,因爲Scapy已經知道了一些圖層。那麼有沒有辦法讓Scapy識別某個圖層?
正是我需要的,謝謝! – vicco
很高興這有所幫助。如果您使用的是python3,請查看我的scapy fork與pcapng支持和其他改進http://github.com/phaethon/scapy –
謝謝。雖然我目前不使用python3,但我會看看它。 – vicco