我正在尝试运行此代码来嗅探网络流量,并打印出请求的"Host“部分。
#!/usr/bin/env python
import scapy.all as scapy
from scapy.layers import http
def sniff(interface):
scapy.sniff(iface=interface, store=False, prn=process_sniffed_packet)
def process_sniffed_packet(packet):
if packet.haslayer(http.HTTPRequest):
url = packet[http.HTTPREQUEST].Host
sniff("eth0")这是错误:
Traceback (most recent call last):
File "sniffer_05.py", line 21, in <module>
sniff("eth0")
File "sniffer_05.py", line 6, in sniff
scapy.sniff(iface=interface, store=False, prn=process_sniffed_packet)
File "/usr/lib/python3/dist-packages/scapy/sendrecv.py", line 972, in sniff
sniffer._run(*args, **kwargs)
File "/usr/lib/python3/dist-packages/scapy/sendrecv.py", line 925, in _run
session.on_packet_received(p)
File "/usr/lib/python3/dist-packages/scapy/sessions.py", line 47, in on_packet_received
result = self.prn(pkt)
File "sniffer_05.py", line 10, in process_sniffed_packet
url = packet[http.HTTPREQUEST].Host
AttributeError: module 'scapy.layers.http' has no attribute 'HTTPREQUEST'不确定我错过了什么。
发布于 2020-12-13 21:44:44
该类是http.HTTPRequest而不是http.HTTPREQUEST
https://stackoverflow.com/questions/65276263
复制相似问题