我刚开始在我的虚拟世界里玩替罪羊,但我不能在里面跑“替罪羊”。我得到了:
sudo: scapy: command not found如果我只是运行替罪羊,当我试图发送一个简单的包
send(IP(dst="www.google.com"/ICMP())我正在获得permissionError操作许可。我怎么才能让它起作用?
发布于 2019-01-15 18:53:35
正如在这个答案https://stackoverflow.com/a/44314951中所指出的,为了能够使用某些功能,您需要使用sudo特权来运行替罪羊。在这种情况下,发送一个数据包。
考虑到您希望在虚拟环境中使用替罪羊版本,您需要为虚拟环境中的替罪羊二进制文件提供完整的路径,这样它才能工作。当虚拟环境处于活动状态时,您可以通过执行以下操作获得此路径:
$ which scapy
/home/someuser/.pythonenvs/test_scapy/bin/scapy然后使用完整的路径再次运行替罪羊:
$ sudo /home/someuser/.pythonenvs/test_scapy/bin/scapy发布于 2017-12-04 11:40:39
我不熟悉VirtualEnv,但我在Ubuntu16.04上也遇到了同样的问题。结果是,通过安装
sudo apt-获得安装替罪羊
是什么帮我修好的。在此之前,我通过pip安装安装了它。
发布于 2021-09-05 12:52:18
它工作了!
假设您已经安装了virtualenv。
virtualenv --python=3.8 packet_sniffer_env38
source packet_sniffer_env38/bin/activate
pip install scapy 现在您可以使用scapy运行一个程序了。
sudo ./packet_sniffer_env38/bin/python <your_program_using_scapy>.py可选!
与虚拟环境无关,取决于您的操作系统,您可能需要在您的ubuntu上安装tcpdump到sudo apt-get install tcpdump,然后您需要确保您正在使用的接口启用了杂乱模式。
https://stackoverflow.com/questions/44345689
复制相似问题