首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python Scapy HEX解码

Python Scapy HEX解码
EN

Stack Overflow用户
提问于 2015-07-21 16:31:39
回答 1查看 1.3K关注 0票数 0

我试图从一个替罪羊嗅探功能中解码无线管理帧中的信号值(SSI)。我寻找并尝试了几个答案,但没有成功。到目前为止我的情况是这样的。试图破译六角线。

代码:

代码语言:javascript
复制
from scapy.all import *

def packet_handler(pkt):
    if pkt.haslayer(Dot11) and pkt.type == 0:
        sig = pkt[RadioTap].notdecoded.decode("hex")
        print sig


sniff(iface="wlan0mon", prn=packet_handler)

数据包示例:

代码语言:javascript
复制
###[ RadioTap dummy ]###
  version   = 0
  pad       = 0
  len       = 36
  present   = TSFT+Flags+Rate+Channel+dBm_AntSignal+b14+b29+Ext
  notdecoded= ' \x08\x00\x00\x00\x00\x00\x00\xf4\x82\xc2\xc6\x01\x00\x00\x00\x10\x02\x99\t\xa0\x00\xb1\x00\x00\x00\xb1\x00'

我正在捕捉“未解码”字段的值,并试图通过直蟒对其进行解码。

错误:

代码语言:javascript
复制
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/scapy/sendrecv.py", line 600, in sniff
    r = prn(p)
  File "<stdin>", line 4, in packet_handler
  File "/usr/lib/python2.7/encodings/hex_codec.py", line 42, in hex_decode
    output = binascii.a2b_hex(input)
TypeError: Non-hexadecimal digit found
EN

回答 1

Stack Overflow用户

发布于 2018-06-12 12:28:09

更新到最新版本的替罪羊;这些在更新中被正确解码(我使用的是2.4.0 dev263)。

更新替罪羊:

代码语言:javascript
复制
git clone https://github.com/secdev/scapy
cd scapy
./run_scapy

代码语言:javascript
复制
git clone https://github.com/secdev/scapy
cd scapy
python setup.py install
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31544712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档