我的无线接口处于监控模式,我能够成功嗅探网络数据包并使用Wireshark进行分析.我一直在努力实现与
pcapy和
impacket类似的东西.看起来好像pcapy没有捕获与Wireshark相同的数据包.我目前在Mac OS X 10.9 w / 2012 Macbook Pro上运行,但注意到Ubuntu上使用TP-LINK TL-WN722N无线USB适配器的行为相同.
这是我写的一个脚本的例子,显然不起作用.即使我在Wireshark中看到它们,我也没有接受使用pcapy的Probe Requests.
import pcapy
import impacket
DECODER = impacket.ImpactDecoder.RadioTapDecoder()
def packet_handler(header, data):
radio_packet = DECODER.decode(data)
dot11 = radio_packet.child()
if dot11.get_subtype() == impacket.dot11.Dot11Types.DOT11_SUBTYPE_MANAGEMENT_PROBE_REQUEST:
management_base = dot11.child()
if management_base.__class__ == impacket.dot11.Dot11ManagementFrame:
print management_base.get_source_address(), management_base.get_destination_address()
p = pcapy.open_live("your_interface_here", 2000, 0, 1000)
p.loop(-1, packet_handler)
在此示例中,en1处于监视模式.这可以正常使用从Wireshark生成的pcap文件,只需将open_live更改为open_offline:
p = open_offline('path_to_file')
我没有正确设置pcapy吗?