Wireshark перехватывает только пакеты, поступающие на это устройство или с него

Wireshark перехватывает только пакеты, поступающие на это устройство или с него

Я использую wireshark на ubuntu 14.04 и пытаюсь прослушивать трафик wifi других устройств в моей сети. Я запускаю wireshark или tshark на wlan0, начинаю захватывать пакеты и посылать несколько пингов или открывать несколько страниц на моем телефоне, но мой ноутбук с ubuntu не захватывает это - он видит только пакеты со своего собственного ip на другие ip-адреса, с других ip-адресов на свой собственный ip и широковещательные пакеты.

Включение режима неразборчивости вручную для wlan0 sudo ip link set wlan0 promisc onне помогает.

Похоже, что мой адаптер Wi-Fi может использовать как режим promiscuous, так и режим monitor, потому что я могу это сделать sudo airmon-ng start wlan0, и появится новый mon0интерфейс, и я смогу перехватить его пакеты с помощью wireshark, однако это не то, что мне нужно. Все эти пакеты на mon0 относятся к протоколу 802.11, а не к tcp, icmp и т. д., как на wlan0.

Обновлять

Я решил исключить возможность того, что NetworkManager Ubuntu или что-то еще мешает работе Wireshark, поэтому попробовал Kali Linux.

Вот точные шаги, которые я использую:

  1. Загрузить кали линукс
  2. Подключитесь к моей домашней сети с помощью виджета беспроводных сетей Gnome.
  3. Запустите Wireshark, нажмите Capture Options, проверьте wlan0, проверьте, что Prom. Mode включен, а Mon. Mode отключен, все остальное оставьте по умолчанию.
  4. нажмите старт
  5. Проверьте IP-адрес моего ноутбука Kali Linux с моего телефона.
  6. Обратите внимание, что я вижу пакеты ICMP с IP-адреса моего телефона на IP-адрес моего ноутбука Kali и наоборот.
  7. Пинг 8.8.8.8 с моего телефона
  8. Обратите внимание, что я не вижу никаких пакетов с IP-адреса моего телефона куда-либо, но я вижу пакеты протокола LLC от «Netgear_d9:19:e8» (полагаю, это мой маршрутизатор) до «SamsungE_2d:ad:da» (полагаю, это мой телефон).

решение1

Я считаю, что вы можете решить свою проблему с помощью airmon-ng (он должен быть установлен по умолчанию в Kali).

Ответ предоставленКурт Кнохнерна ask.wireshark.org Источник


ifconfig -a

Видите ли вы интерфейс wlan0 или wlan1?

Если нет, ваша беспроводная карта не распознается вашим ядром, и Wireshark ничего не может с этим поделать. Остановитесь здесь и спросите людей на форуме пользователей вашего дистрибутива Linux (Ubuntu, Fedora и т. д.), как добавить рабочий драйвер для вашей беспроводной карты.

Если вы видите wlan0/1, продолжайте

sudo airmon-ng start wlan0 

или

sudo airmon-ng start wlan1

в зависимости от того, какой беспроводной интерфейс вы хотите захватить. Эта команда должна выдать следующее сообщение:

monitor mode enabled on mon0

Теперь выполните захват на mon0 с помощью tcpdump и/или dumpcap.

sudo tcpdump -ni mon0 -w /var/tmp/wlan.pcap

или

sudo dumpcap -ni mon0 -w /var/tmp/wlan.pcap

Затем откройте этот файл с помощью Wireshark.

wireshark -nr /var/tmp/wlan.pcap

решение2

Режим Promiscuous Mode редко, если вообще когда-либо, делает то, что вам нужно на устройствах Wi-Fi; вам придется выполнять захват в режиме мониторинга. (Нет, здесь нет обходного пути.)

Все пакеты на mon0 соответствуют протоколу 802.11.

Это потому, что вы находитесь в защищенной сети, использующей шифрование WEP или WPA/WPA2. Вам придется предоставить Wireshark пароль для сети, а для сетей, использующих WPA/WPA2 (что делают большинство защищенных сетей), вам придется для каждого из устройств, трафик которых вы хотите расшифровать, принудительно отключиться от сети и снова подключиться к сети после начала захвата, чтобы захватить начальное рукопожатие EAPOL. Для телефона или планшета будет достаточно выключить и включить их снова; для ноутбука будет достаточно закрыть крышку и снова открыть ее. (Вы хотите перевести их в спящий режим и заставить снова проснуться.)

Видетьстраница Wireshark wiki «Как расшифровать 802.11»для получения подробной информации.

Связанный контент