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, чтобы изменения в настройках вступили в силу.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0
5 комментариев
Вжух

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

Ответить
Развернуть ветку
Аккаунт удален

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

Ответить
Развернуть ветку
Артурас Лапинскас

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

Ответить
Развернуть ветку
Аккаунт удален

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

Ответить
Развернуть ветку
Ludmila Vybornova

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

Ответить
Развернуть ветку
2 комментария
Раскрывать всегда