scapy обнюхивает трафик ZigBee, не обнаруживает слои ZigBee
Я пытаюсь играть с протоколом ZigBee, используя scapy, но захваченный трафик не распознается должным образом. Я создал следующий скрипт:
import sys
from scapy.sendrecv import sniff
def pkt_hnd(pkt):
print(pkt.summary())
sniff(offline=sys.stdin.buffer, prn=pkt_hnd, store=0)
Я загружаю его данными с https://github.com/homewsn/whsniff . Но пакеты кажутся неправильно классифицированными в scapy как
SixLoWPAN / LoWPANFragmentationFirst / Raw
:
Dot15d4FCS / 802.15.4 Data ( None:0x0 -> 0x2c2b:0xffff ) / SixLoWPAN / LoWPANFragmentationFirst / Raw
Для сравнения, вот как он анализируется wireshark:
Могу ли я как-то сказать scapy, что он должен принимать трафик ZigBee в этих пакетах?
1 ответ
Я нашел ответ:https://github.com/secdev/scapy/blob/cfe00d5c952e9048a40150390e0025b5ceff7228/scapy/layers/zigbee.py#L1175
Текущее решение:
import sys
from scapy.sendrecv import sniff
from scapy.config import conf
conf.dot15d4_protocol = "zigbee"
def pkt_hnd(pkt):
print(pkt.summary())
sniff(offline=sys.stdin.buffer, prn=pkt_hnd, store=0)