Я пытаюсь выполнить обратное проектирование приложения, и мне нужно изучить трафик между телефоном и сервером. Я хорошо знаю, как использовать MITM и инструменты анализа сети, однако не знаю, как это сделать, если трафик зашифрован. У меня есть какие-либо варианты здесь или я SOL?

1 ответ1

1

Я думаю, что вы могли бы быть SOL, если рассматриваемое приложение жестко запрограммировано, чтобы принимать только определенный сертификат. Однако, вероятно, не очень разумно, чтобы приложение было жестко запрограммировано таким образом, потому что это означало бы, что им придется выпустить новую версию своего приложения, если закрытый ключ их сервера когда-либо был скомпрометирован или если срок действия сертификата истек.

Но если он примет какой-либо серверный сертификат для своего целевого доменного имени, который был должным образом подписан доверенным корневым CA-сертификатом, вы, вероятно, можете выполнить следующие шаги:

  1. Создайте свой собственный сертификат корневого CA и используйте его для подписи / выдачи сертификата фиктивного сервера для рассматриваемого доменного имени. Установите фиктивный сервер в своем прокси-приложении MITM. Подумайте об использовании такого инструмента, как прокси-сервер Charles, который многие разработчики iOS используют для подобных вещей, потому что он делает его относительно простым.
  2. Скажите iPhone, чтобы он доверял вашему корневому сертификату CA. Это часто делается путем установки профиля конфигурации / обеспечения iOS, который вы можете создать с помощью приложения Apple Configurator (ранее утилита настройки iPhone).
  3. Запустите приложение с прокси на месте. Обратите внимание, что вам может понадобиться использовать / etc / hosts или управлять собственным DNS-сервером, чтобы убедиться, что имя хоста целевого сервера соответствует IP-адресу вашего прокси.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .