使用scapy停止和套接字关闭警告进行数据包嗅探

2024-10-01 19:24:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我用scapy写了一个嗅探器。它尝试获取探测请求数据包。我的程序正常运行约8-10分钟,然后在抛出套接字关闭警告后,它突然停止嗅探探针请求。我没有在谷歌上找到任何关于这个的信息。为什么我会犯这个错误

错误:

WARNING: Socket <scapy.arch.linux.L2ListenSocket object at 0x15c4140> failed with ''. It was closed.

步骤:

  1. 进入监控模式:
ifconfig wlan0 down
iwconfig wlan0 mode monitor
ifconfig wlan0 up
  1. 在后台运行airodump ng:
airodump-ng wlan0 &
  1. 运行我的脚本
./my_script.py

输出:

[  329.993891] device wlan0 entered promiscuous mode
02-Jun-2021, 23:12:04 , ff:ff:ff:ff:ff:ff <mac_address> dbm_signal= -91 , freq= 2427 , 802.11 Probe Request ---> 
Unknown OUI --- Unknown OUI
.
.
. (After about 8-10 minutes)
.
.
[  898.806823] device wlan0 left promiscuous mode
WARNING: Socket <scapy.arch.linux.L2ListenSocket object at 0x12d4200> failed with ''. It was closed.

我的脚本只有这个普通的scapy代码,用于访问客户端和ap的mac地址、ssid和通道等,如下所示。然后把这些打印出来

            dot11_layer = pkt.getlayer(Dot11)                                
            addr1= dot11_layer.addr1
            addr2= dot11_layer.addr2
            payload_name= dot11_layer.payload.name
            ssid= pkt[Dot11Elt].info.decode()

Tags: layerobjectmodelinux错误socketatscapy

热门问题