python - AttributeError:模块“scapy.all”没有属性“RAW”
问题描述
因此,每当我运行代码时,都会出现以下错误,但是当我尝试安装每个模块时,它会说它们已经安装并且是最新的。
代码:
#!usr/bin/env python
import netfilterqueue
import scapy.all as scapy
import os
def process_packet(packet):
scapy_packet = scapy.IP(packet.get_payload())
if scapy_packet.haslayer(scapy.Raw):
# if scapy.Raw in scapy_packet and scapy.TCP in scapy_packet:
if scapy_packet[scapy.TCP].dport == 80:
print("HTTP Request")
if ".exe" in scapy_packet[scapy.RAW].load:
print("[+] exe Request")
print(scapy_packet.show())
elif scapy_packet[scapy.TCP].sport == 80:
print("HTTP Response")
print(scapy_packet.show())
packet.accept()
os.system("iptables --flush")
os.system("iptables -I INPUT -j NFQUEUE --queue-num 0")
os.system("iptables -I OUTPUT -j NFQUEUE --queue-num 0")
queue = netfilterqueue.NetfilterQueue()
queue.bind(0, process_packet)
queue.run()
错误:
HTTP Request
Exception ignored in: 'netfilterqueue.global_callback'
Traceback (most recent call last):
File "/root/Tools/replace_downloads/main.py", line 12, in process_packet
if ".exe" in scapy_packet[scapy.RAW].load:
AttributeError: module 'scapy.all' has no attribute 'RAW'
^CTraceback (most recent call last):
解决方案
推荐阅读
- mysql - 如何构建我的数据库表,使其顺序可以随时重新排列?
- python - 为什么某些解决方案适用于 VSCode 而不适用于 LeetCode?
- python - 预测撰写消息需要多长时间的模型(使用 Python)
- terraform - ECS 中的 Flyway:使用 flyway -example 为 db 迁移创建任务定义
- azure - 如何知道特定 Azure VM 类型是否支持高级磁盘?
- javascript - .map 元素中的 Href 或链接,其中包含道具和子元素
- mysql - sqlite中的十六进制文字太大
- angular - 打字稿编译中缺少 ng bootstrap 6.0.0 和 angular 9.0.0 int.d.ts
- laravel - Laravel连接两个表不匹配的同名列
- reactjs - 如何在反应路线/组件中获得不同的结果以及组织它们的最佳实践?