当我在捕获几个数据包后尝试在 Wireshark 中以监视模式捕获时,出现以下错误:
Unknown message from dumpcap, try to show it as a string: Can't restore interface wlp18s0 wireless mode (SIOCSIWMODE failed: Operation not permitted).
Please adjust manually.
> ls /usr/sbin/dumpcap -l
-rwxr-x---. 1 root wireshark 83632 Nov 7 18:34 /usr/sbin/dumpcap
> getcap /usr/sbin/dumpcap
/usr/sbin/dumpcap = cap_net_admin,cap_net_raw+eip
即使当我使用root用户运行wireshark时,我也会收到该错误。有什么建议吗?
答案1
我有同样的问题。运行airmon-ng二进制文件:
sudo airmon-ng start wlan0.
将在启用监控模式的情况下创建 wlan0 之上的虚拟接口。
我使用 ifconfig 得到的输出如下所示
mon0 Link encap:UNSPEC HWaddr 88-9F-FA-79-66-C1-3A-30-00-00-00-00-00-00-00-00
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2695503 errors:0 dropped:1416652 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:596242234 (596.2 MB) TX bytes:0 (0.0 B)
然后打开wireshark,选择该接口以monitor模式抓包。
答案2
这是一个 libpcap 问题。如果您尝试使用该-I
标志和-i
指定该接口的标志在该接口上使用 tcpdump 在监视器模式下捕获,您可能也会看到它。请举报GitHub 上的 libpcap 问题跟踪器。
答案3
在使用wireshark之前,需要授予dumpcap实用程序以root身份运行的权限。如果没有这个,当您以普通用户(在 Ubuntu 等发行版中总是如此)登录时,Wireshark 将无法捕获网络流量。要将“setuid”位添加到 dumpcap,请使用以下命令:
sudo chmod 4711 "$(which dumpcap)"