使用 SCAPY 时出现问题(权限被拒绝)
PROBLEM WHILE USING SCAPY (Permission denied)
我正在尝试在 python3 中制作一个简单的网络扫描仪,它可以扫描 LAN 上的整个设备。那是我听说 Scapy 的时候。然而,每当我尝试 运行 我的程序时,它 returns 一个错误
"PermissionError: [Errno 13] Permission denied"
这是我的代码:
import scapy.all as scapy
def scan(ip):
scapy.arping(ip)
scan("192.168.43.1")
如果你们能解决这个问题,那将对我有很大帮助。谢谢阅读。
完整输出:
Traceback (most recent call last):
File "network_scanner.py", line 7, in <module>
scan("192.168.43.1")
File "network_scanner.py", line 5, in scan
scapy.arping(ip)
File "/usr/local/lib/python3.8/dist-
packages/scapy/layers/l2.py", line 628, in arping
ans, unans = srp(Ether(dst="ff:ff:ff:ff:ff:ff") /
ARP(pdst=net), verbose=verbose, # noqa: E501
File "/usr/local/lib/python3.8/dist-
packages/scapy/sendrecv.py", line 503, in srp
s = conf.L2socket(promisc=promisc, iface=iface,
File "/usr/local/lib/python3.8/dist-
packages/scapy/arch/linux.py", line 467, in __init__
self.ins = socket.socket(socket.AF_PACKET,
socket.SOCK_RAW, socket.htons(type)) # noqa: E501
File "/usr/lib/python3.8/socket.py", line 231, in __init__
_socket.socket.__init__(self, family, type, proto, fileno)
PermissionError: [Errno 13] Permission denied
我相信 scapy.arping()
方法会打开原始套接字。使用 sudo
以 root 用户身份托盘 运行。
我有同样的问题但是 "[Errno 1]" ,为我解决的是通过 [=11= 使用 root 权限] (和 "-E"
保护环境) 喜欢:
sudo -E python myScriptName.py
也如前所述。 | ⚠️ “它有自己的安全风险。所以要小心”。
像这样使用 sudo sudo -E python3 Arpt.py
我正在尝试在 python3 中制作一个简单的网络扫描仪,它可以扫描 LAN 上的整个设备。那是我听说 Scapy 的时候。然而,每当我尝试 运行 我的程序时,它 returns 一个错误 "PermissionError: [Errno 13] Permission denied"
这是我的代码:
import scapy.all as scapy
def scan(ip):
scapy.arping(ip)
scan("192.168.43.1")
如果你们能解决这个问题,那将对我有很大帮助。谢谢阅读。
完整输出:
Traceback (most recent call last):
File "network_scanner.py", line 7, in <module>
scan("192.168.43.1")
File "network_scanner.py", line 5, in scan
scapy.arping(ip)
File "/usr/local/lib/python3.8/dist-
packages/scapy/layers/l2.py", line 628, in arping
ans, unans = srp(Ether(dst="ff:ff:ff:ff:ff:ff") /
ARP(pdst=net), verbose=verbose, # noqa: E501
File "/usr/local/lib/python3.8/dist-
packages/scapy/sendrecv.py", line 503, in srp
s = conf.L2socket(promisc=promisc, iface=iface,
File "/usr/local/lib/python3.8/dist-
packages/scapy/arch/linux.py", line 467, in __init__
self.ins = socket.socket(socket.AF_PACKET,
socket.SOCK_RAW, socket.htons(type)) # noqa: E501
File "/usr/lib/python3.8/socket.py", line 231, in __init__
_socket.socket.__init__(self, family, type, proto, fileno)
PermissionError: [Errno 13] Permission denied
我相信 scapy.arping()
方法会打开原始套接字。使用 sudo
以 root 用户身份托盘 运行。
我有同样的问题但是 "[Errno 1]" ,为我解决的是通过 [=11= 使用 root 权限] (和 "-E"
保护环境) 喜欢:
sudo -E python myScriptName.py
也如前所述
像这样使用 sudo sudo -E python3 Arpt.py