Как преобразовать трафик приложений Android в прокси и расшифровать трафик TLS? - PullRequest
0 голосов
/ 18 мая 2019

Предварительная декларация

Есть несколько вопросов по поводу трафика приложений для Android

Как захватить трафик приложений на Android

Но их цели capture не capture and decrypt


Я хочу расшифровать Android-приложение (называется сиденье) TLS-трафик

У меня Windows 10 Pro, Android 8.0 (с полным набором поддерживаемых iptables)

seat использует соединения TLS с 202.194.76.30:8443, я не знаю, какой протокол прикладного уровня он использовал.

Может быть, он использует HTTP (я использовал httpie cli для тестирования API, http --verify no https://seat.ujn.edu.cn:8443/auth/signIn, ответ http)

Но я уверен, что он использует TLS

Мое решение:

  1. force seat использует http proxy, для этого я использую ProxyDroid, он конвертирует все tcp соединения в http proxy (http CONNECT)
  2. ProxtDroid перенаправляет трафик приложений на мой компьютер (192.168.137.1), где mitmproxy прослушивает 9090
  3. mitmproxy выводит все TLS master key в mitsslog.log, используя MITMPROXY_SSLKEYLOGFILE env variable
  4. Я использую wireshark для расшифровки TLS, читаю главный ключ TLS с mitsslog.log

Но проблема в том, что сиденье не использует прокси

Я использую tcpdump на Android для захвата всего трафика на 202.194.76.30, как вы можете видеть, приложение для сидений не использует мой прокси! enter image description here

Я могу захватывать трафик приложений для Android, но не могу его расшифровать.

enter image description here

Вот таблицы android nat

enter image description here

Моя конфигурация ProxyDroid

enter image description here

Я искал три дня, я прочитал все документы по mitmproxy.

Ни один из них не работает. Единственный оставленный путь - попросить помощи stackoverflow-ers.

mitmproxy говорит мне, что вы можете использовать прозрачный, но Windows 10 не поддерживает функцию маршрутизации netsh. поэтому я не могу использовать NAT

Я пытался использовать virtualbox, но я использую hyper-v из-за Docker для Windows. Я не могу использовать другую виртуальную технологию

Я пришел сюда, чтобы попросить вас о помощи. Я постараюсь дать вам более подробную информацию, если вы могли бы помочь мне

:)

1 Ответ

0 голосов
/ 18 мая 2019

Ответ сам

Добавьте следующее правило, решите мой вопрос.

iptables -t nat -A OUTPUT -p tcp --dport 8443 -j REDIRECT --to 8124

Нам нужно перенаправить соединение на порт прослушивания ProxyDroid

дайте ему преобразовать TCP-коннект в http-прокси.

потратил на это весь мой день !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...