Захват трафика мобильного телефона на Wireshark


Ответы:


350

Вот несколько предложений:

  1. Для телефонов на базе Android: любая сеть : рутируйте свой телефон, затем установите на него tcpdump. Это приложение представляет собой оболочку tcpdump, которая установит tcpdump и позволит вам запускать захваты с помощью графического интерфейса. Совет: Вам необходимо убедиться, что вы указали правильное имя интерфейса для захвата, и оно варьируется от одного устройства к другому, например -i eth0 или -i tiwlan0 - или используйте -i any для регистрации всех интерфейсов.

  2. Для телефонов Android 4.0+ : Android PCAP от Kismet использует интерфейс USB OTG для поддержки захвата пакетов без необходимости рута. Я не пробовал это приложение, и есть некоторые ограничения на тип поддерживаемых устройств (см. Их страницу)

  3. Для телефонов Android : tPacketCapture использует службу Android VPN для перехвата пакетов и захвата их. Я успешно использовал это приложение, но оно также влияет на производительность при больших объемах трафика (например, потоковое видео)

  4. Для устройств IOS 5+ в любой сети : в iOS 5 добавлено средство удаленного виртуального интерфейса (RVI) , которое позволяет использовать программы трассировки пакетов Mac OS X для захвата трассировок с устройства iOS. Смотрите здесь для более подробной информации

  5. Для всех телефонов только Wi-Fi: настройте ПК в качестве беспроводной точки доступа , затем запустите wireshark на ПК

  6. Для всех телефонов только Wi-Fi: получите устройство захвата, которое может прослушивать Wi-Fi. Это также дает преимущество, предоставляя вам заголовки 802.11x, но вы можете пропустить некоторые пакеты

  7. Захват с использованием VPN-сервера : довольно легко настроить собственный VPN-сервер с использованием OpenVPN. Затем вы можете направить свой трафик через сервер, настроив мобильное устройство в качестве VPN-клиента и перехватывая трафик на стороне сервера.


1
Если вы заинтересованы в настройке мошеннической точки доступа в Windows 7 и выше и перехвате пакетов с помощью Wireshark, ознакомьтесь с шагами, которые я собрал на mohit.io/blog/… Это будет работать для любого устройства, поддерживающего WiFi (Android) , iOS, Wii, XBox и т. д.)
mohit

2
Что касается варианта 2: это практически несуществующий вариант. С их страницы: «Вам понадобится [...] и беспроводной сетевой адаптер на основе RTL8187» !!!!
Маттео

1
Для меня вариант № 3 является самым простым для выполнения простых задач, таких как проверка того, что вызывает определенное приложение.
августа

1
Большинство из них не работают для пакетов, которые никогда не покидают устройство или если вы уже используете VPN. Так что они бесполезны для решения проблем MTU / фрагментации.
Evi1M4chine

1
Что если я хочу сделать наоборот? Использовать смартфон, подключенный через USB, для захвата пакетов моего ПК? В основном запускаю программное обеспечение, похожее на
проволочную

40

В дополнение к отличному ответу Рупелло, «грязный», но очень эффективный трюк:

Для всех телефонов в любой (локальной) сети : настройте свой ПК на Man-In-The-Middle вашего мобильного устройства.

Используйте Ettercap для подмены ARP между вашим мобильным устройством и маршрутизатором, и весь трафик вашего мобильного телефона будет отображаться в Wireshark. Смотрите этот учебник для деталей настройки


3
Вы также можете использовать прокси Charles в Mac OS, для захвата HTTP-трафика, у него очень приятный интерфейс и функциональные возможности. Вам необходимо настроить локальный IP-адрес вашего компьютера, на котором есть прокси-сервер. Он также может прослушивать TLS-трафик и делать это без предупреждения, если вы устанавливаете сертификат Чарльза на телефоне.
Minipif

28

Другой вариант, который здесь не был предложен, - запустить приложение, которое вы хотите отслеживать, в эмуляторе Android из Android SDK. Затем вы можете легко захватить трафик с помощью wireshark на той же машине.

Это был самый простой вариант для меня.


1
Это интересный вариант. Может ли он обрабатывать ssl-пакеты?
ransh

22

Wireshark + OSX + iOS:

Отличный обзор, но если вам нужны особенности для Wireshark + OSX + iOS:

  • установите Wireshark на свой компьютер
  • подключите устройство iOS к компьютеру через USB-кабель
  • подключите устройство iOS и компьютер к одной сети WiFi
  • выполните эту команду в окне терминала OSX: rvictl -s xгде xнаходится UDID вашего устройства iOS. Вы можете найти UDID вашего устройства iOS через iTunes (убедитесь, что вы используете UDID, а не серийный номер).
  • Перейти к Wireshark Capture->Options, появится диалоговое окно, нажмите на строку, rvi0затем нажмите Startкнопку.

Диалоговое окно «Параметры захвата Wireshark»

Теперь вы увидите весь сетевой трафик на устройстве iOS. Это может быть довольно подавляющим. Пара указателей:

  • не используйте iOS с VPN, вы не сможете разобраться в зашифрованном трафике
  • использовать простые фильтры, чтобы сосредоточиться на интересном трафике
  • ip.addr==204.144.14.134 просматривает трафик с адресом источника или назначения 204.144.14.134
  • http только просмотр http трафика

Вот пример окна, отображающего трафик TCP для загрузки в формате pdf с 204.144.14.134:

Wireshark TCP трафик для pdf скачать с 204.144.14.134


9

Для телефона Android я использовал tPacketCapture: https://play.google.com/store/apps/details?id=jp.co.taosoftware.android.packetcapture&hl=en.

Это приложение спасало меня. Я отлаживал проблему с ошибкой SSL / TLS-рукопожатия в моем приложении для Android. Попытался настроить специальную сеть, чтобы я мог использовать wireshark на моем ноутбуке. Это не сработало для меня. Это приложение быстро позволило мне захватывать сетевой трафик, делиться им на моем Google Диске, чтобы я мог загрузить на свой ноутбук, где я мог бы проверить его с помощью Wireshark! Круто и без рута требуется!


Не будет работать, если ваши проблемы возникают только при использовании VPN (и никогда не заканчиваются на концентраторе / маршрутизаторе).
Evi1M4chine

8

Приложение Packet Capture для Android реализует VPN, которая регистрирует весь сетевой трафик на устройстве Android. Вам не нужно настраивать VPN / прокси-сервер на вашем компьютере. Не нуждается в руте. Поддерживает дешифрование SSL, которого нет у tPacketCapture. Он также включает в себя хороший просмотрщик журнала.


Этот VPN не работает ... ни одна страница не открывается или данные не извлекаются ... имея этот VPN, все равно что не иметь подключения к Интернету ...
Himanshu Bansal


4

Подобно тому, как сделать ваш компьютер беспроводной точкой доступа, но это может быть намного проще, используется обратная привязка. Если у вас есть телефон HTC, в настройках общего доступа к сети / мобильной сети есть хорошая опция обратного модема, называемая «сквозной доступ в Интернет». Он направляет весь ваш трафик через ваш компьютер, и вы можете просто запустить Wireshark там.


2

Сделайте ваш ноутбук точкой доступа Wi-Fi для вашего телефона (любого) и подключите его к Интернету. Sniff Traffic на вашем интерфейсе Wi-Fi, используя Wireshark.

Вы узнаете много анти-частной жизни!


6
Можете ли вы более конкретно рассказать, как это сделать хотя бы на одной платформе (Windows, Linux или Mac OS X)?
Александр Маркондес

2

Предварительные условия: на вашем компьютере установлены adb и wireshark, и у вас есть рутированное устройство Android.

  1. Загрузите tcpdump в ~ / Загрузки
  2. adb push ~/Downloads/tcpdump /sdcard/
  3. adb shell
  4. su root
  5. mv /sdcard/tcpdump /data/local/
  6. cd /data/local/
  7. chmod +x tcpdump
  8. ./tcpdump -vv -i any -s 0 -w /sdcard/dump.pcap
  9. CTRL+C после того, как вы захватили достаточно пакетов.
  10. exit
  11. exit
  12. adb pull /sdcard/dump.pcap ~/Downloads/

Теперь вы можете открыть файл pcap с помощью Wireshark.


1

Для Android я ранее использовал tPacketCapture, но он не работал для приложения, транслирующего видео. Я сейчас использую Акулу . Вы должны быть пользователем root, чтобы использовать его, хотя.

Он использует TCPDump (проверьте аргументы, которые вы можете передать ) и создает файл pcap, который может быть прочитан Wireshark. Аргументы по умолчанию обычно достаточно хороши для меня.


1
Акула больше не доступна в Google Play.
not2qubit

Действительно, похоже, что оно было удалено. Сайт swapper.n3o.lv также, похоже, больше не держит apks.
user276648

0

У меня была похожая проблема, которая вдохновила меня на разработку приложения, которое могло бы помочь захватывать трафик с устройства Android. Приложение имеет SSH-сервер, который позволяет вам получать трафик в Wireshark на лету ( компонент sshdump wireshark ). Поскольку приложение использует функцию ОС под названием VPNService для захвата трафика, оно не требует корневого доступа.

Приложение находится в ранней бета-версии. Если у вас есть какие-либо вопросы / предложения, не стесняйтесь, дайте мне знать.

Скачать из игры

Учебник, в котором вы можете прочитать дополнительные детали

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.