いくつかのパケットをキャプチャした後に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を開き、インターフェイスを選択してモニタモードでパケットをキャプチャします。
答え2
これはlibpcapの問題です。対応する-I
フラグとそのインターフェースを指定するフラグを-i
使用して、そのインターフェースでtcpdumpを使用してモニターモードでキャプチャしようとすると、これも表示できます。報告してくださいGitHubのlibpcap問題トラッカー。
答え3
Wiresharkを使用する前に、dumpcapユーティリティにrootとして実行する権限を付与する必要があります。これがなければ、Wiresharkは通常のユーザーとしてログインしたときにネットワークトラフィックをキャプチャできません(Ubuntuなどのディストリビューションでは常にそうです)。 dumpcapに "setuid"ビットを追加するには、次のコマンドを使用します。
sudo chmod 4711 "$(which dumpcap)"