Scapy只能在交互模式下使用吗?
我只是想做这个 -
from scapy import *
target = "42.42.42.42"
packet = IP()/UDP()
packet.dst = target
del pak[IP].chksum
del pak[TCP].chksum
pak.show2()
但是“IP()”和“UDP()”没有被定义。
如果我使用scapy.all,它会给我这个;
Traceback (most recent call last):
File "C:\Python27\scapy_stuff.py", line 1, in <module>
import scapy.all
File "C:\Python25\Lib\site-packages\scapy\all.py", line 13, in <module>
from arch import *
File "C:\Python25\lib\site-packages\scapy\arch\__init__.py", line 75, in <module>
from windows import *
File "C:\Python25\Lib\site-packages\scapy\arch\windows\__init__.py", line 19, in <module>
from scapy.arch import pcapdnet
File "C:\Python25\lib\site-packages\scapy\arch\pcapdnet.py", line 157, in <module>
import dnet
ImportError: No module named dnet
我到处查找,发现大家都在用交互模式,我开始觉得这可能是唯一的方法。
1 个回答
1
你需要使用 from scapy.all import *
这行代码。
具体的内容可以在SecDev的文档中找到,链接是 使用Scapy构建你自己的工具。
你可以选择导入整个scapy.all的内容,或者只导入你需要的部分。
关于dnet的问题,试试这个配置,确保它适合你的Scapy安装。
Change "scapy.config.conf.use_dnet = 1" to equal = 0
根据你的系统,这个文件可能在scapy/arch/unix.py或者scapy/arch/pcapdnet.py中。