Fiddler-инструмент для анализа трафика мобильных приложений. Выявляем уязвимости

Согласно статистике - в 2020 году мобильные приложения были загружены пользователями более 240 млн раз, и это число продолжает расти.

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

Большинство современных мобильных приложений построены на клиент-серверной архитектуре. Как правило, клиент функционирует под управлением одной из популярных мобильных ОС – Android или iOS, и обменивается данными с сервером. Использование открытых незащищенных протоколов передачи данных многократно увеличивают риски компрометации передаваемого трафика. Но даже защищенные соединения не всегда дают 100% гарантию надежности сохранности данных.

В данной статье мы познакомимся с инструментом Fiddler, позволяющим перехватывать и анализировать весь трафик между клиентом и сервером. Данный инструмент может помочь выявить уязвимости в процессе клиент-серверного взаимодействия мобильного приложения.

(Если вы уже работали с этим инструментом, делитесь опытом в комментариях)

Подготовительные шаги

Для начала установите Fiddler на ПК или ноутбук. Убедитесь, что ПК/ноутбук и смартфон находятся в одной сети (например, подключив устройства к одному wifi-роутеру). Это условие является обязательным, т.к. устройства не увидят друг друга. Проверить связь между устройствами можно через команду ping.

Настройка Fiddler

Далее, убедитесь, что Fiddler может принимать входящие соединения:

  1. Откройте Fiddler, далее: Tools → Options, вкладка «Connections»;
  2. Поставьте флажок «Allow remote computers to connect»;
  3. Перезапустите Fiddler, чтобы изменения в настройках вступили в силу.
Fiddler-инструмент для анализа трафика мобильных приложений. Выявляем уязвимости

Настройка устройства на базе Android

Убедитесь, что Fiddler запущен и брандмауэр Windows отключен, далее на Android-устройстве выполните шаги:

  1. Откройте настройки, далее выберите Wi-Fi, затем нажмите на имя подключенной сети и удерживайте, пока не появится всплывающее окно;
  2. Нажмите «изменить сеть», далее в всплывающем окне разверните пункт «расширенные настройки»;
  3. Выберите «Вручную» в поле со списком «Прокси-сервер»;
  4. В поле «Имя хоста прокси-сервера» введите IP-адрес вашего ПК/ноутбука;
  5. В поле «порт прокси-сервера» введите порт (по умолчанию 8888).
Fiddler-инструмент для анализа трафика мобильных приложений. Выявляем уязвимости

После нажатия на кнопку «Сохранить» весь трафик смартфона должен быть виден в окне Fiddler.

Настройка устройств на базе iOS

Убедитесь, что Fiddler запущен и брандмауэр Windows отключен, далее на iOS-устройстве выполните шаги:

  1. Откройте Настройки → Wi-Fi;
  2. Найдите сеть, к которой подключен смартфон, и нажмите на значок «i»;
  3. Пролистайте вниз, найдите «настройка прокси», далее выберите «Вручную»;
  4. В поле «Сервер» введите IP-адрес вашего ПК/ноутбука;
  5. В поле «Порт» введите значение по умолчанию: 8888.
Fiddler-инструмент для анализа трафика мобильных приложений. Выявляем уязвимости

После нажатия на кнопку «Сохранить» весь трафик смартфона должен быть виден в окне Fiddler.

Перехват HTTPS-трафика

С этими настройками возможен перехват только незащищенного HTTP-трафика. Для работы с защищенным HTTPS-трафиком потребуется установка корневого сертификата на устройствах, а также дополнительная настройка Fiddler.

  1. Перейдите по ссылке на устройстве: http://ipv4.fiddler:8888
  2. Установите сертификат:

    Для Android: скачайте FiddlerRoot certificate, откройте его, установите и задайте имя.

    Для iOS: скачайте FiddlerRoot certificate, откройте его, нажмите «разрешить», после чего перейдите в НастройкиПрофиль загруженУстановить. Далее в НастройкахОсновныеОб этом устройствеДоверие сертификатам → найдите сертификат и сделайте его доверенным.

  3. В настройках Fiddler (Options→ HTTPS) установите флажок «Decrypt HTTPS traffic», после чего разрешите установку сертификата.
Fiddler-инструмент для анализа трафика мобильных приложений. Выявляем уязвимости

После этого вы сможете работать и анализировать защищенный HTTPS-трафик в Fiddler.

44
5 комментариев

Спасибо, интересно ещё как именно работать с ним, в смысле что нибудь практическое 

2
Ответить

Комментарий недоступен

1
Ответить

Wireshark под виндой тоже работает, это инструмент немного для других целей.

Ответить

Один из  обзоров этого инструмента (подробный практический пример) можно посмотреть здесь  https://youtu.be/YPg18W7O8aU

1
Ответить