Fiddler chrome https настройка

Обновлено: 04.07.2024

Согласно статистике - в 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.

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

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

Ниже описано, как его настроить и использовать на примере следующего окружения:

А в завершении статьи описано, что делать, если после настройки остались ошибки подключения. Описано как удалить из кеша браузера информацию об оригинальном сертификате.

Дистрибутив Fiddler 4 можно скачать по ссылке:

Описание доступно на сайте проекта:

Инструкция по настройке Fiddler + Firefox (простая, понятная):

После установки можно сделать следующие настройки:

Сделать прокси-сервис несистемным

fiddler-4-1

fiddler-4-2

fiddler-4-3

Также кликнуть по ссылке Protocols и вписать в список протоколов все популярные протоколы:

как показано выше

Отдельный профиль для работы через Fiddler

Для перехвата трафика и экспериментов желательно иметь браузер, в котором не жалко очистить кеш и изменить настройки. Удобно создать новый отдельный профиль Mozilla Firefox.

Для этого нужно выполнить три шага:

  1. Закрыть открытый браузер Mozilla (это важно)
  2. Создать пустой каталог для нового профиля: C:\temp\profile
  3. Создать ярлык или bat-файл c командой запуска Mozilla:

Можно запускать браузер с чистым профилем.

В linux командный файл для работы с временным профилем может выглядеть так:

Настройка эталонного профиля

Поэтому важно настроить новый чистый профиль. Плюс в нём будет чистый кеш. Значит все запросы будут отправлены браузером. Что важно при эмуляции нагрузки.

Загрузка сертификата Fiddler в Mozilla Firefox

Запустить Fiddler и выгрузить сертификат в файл на рабочий стол.

fiddler-4-4

Запустить Mozilla Firefox открыть настройки, расширенные, сертификаты и импортировать сертификат Fiddler 4 в список доверенных. Выбрав сертификат с рабочего стола.

firefox

Certificate.Trusted

Настройка работы Mozilla Firefox через прокси сервер

Запустить Fiddler, посмотреть на каком порту он слушает соединения.

fiddler-4-5

Установить в Mozilla Firefox работу через прокси-сервер на этом же порту, в большинстве случаев это будет localhost и порт 8888.

firefox-2

firefox-3

fiddler-4-7

Для удобства работы можно включить правила (Главное меню / Rules):

Remove All Encodings полезно если сервер отдаёт ответы в сжатом виде (gzip encoding). А это почти всегда так для современного веба. И чтобы поиск по ответам сервера работал корректно нужно сразу распаковывать ответы сервера.

Неподдерживаемые протоколы

Ввести в строку фильтра

Далее отключить настройки

Ввести строку фильтра

security.tls.version.max по умолчанию значение 4, если в Fiddler была предварительно включена поддержка tls1.1 и tls1.2 (смотри выше как), то версию надо понизить до 3.

Выполняете действие, но не видно никаких логов в Fiddler

Возможно в Mozilla Firefox не настроен прокси-сервер.

Если тут написано Internet Explorer или что-то, что не соответствует вашему процессу, то рекомендую покликать на эту надпись и добиться того, чтобы фильтр был в состоянии: All processes

Возможно на вкладке Filters (справа одна из вкладок) была настроена фильтрация запросов. В таком случае название вкладки будет с включенной галочкой:

Перейдите на вкладку фильтров и отключите фильтры.

Если браузере видна ошибка, что соединение не защищено

И при этом есть возможность добавить исключение для сайта

Значит был пропущен или не полностью выполнен шаг добавления сертификата Fiddler в доверенные сертификаты браузера.

  • настройки Mozilla Firefox были выполнены для отдельного профиля (как рекомендуется в статье), а сейчас запущен профиль по умолчанию, или наоборот
  • сертификат Fiddler был добавлен в доверенные сертификаты Mozilla, но при этом не была проставлена галочка со степенью доверия: Этот сертификат может служить для идентификации веб-сайтов
  • вы настроили работу Mozilla Firefox через Fiddler, и сертификат указали, но потом в Fiddler сгенерировали новый сертификат

Нет возможности добавить исключение для сайта

  • прежний сертификат Fiddler;
  • сертификат настоящего удостоверяющего центра (ещё до настройки работы браузера через Fiddler).

Это браузер видит неожданную смену сертификата издателя, чует атаку, и блокирует подключение без возможности добавить исключение. Защищает.

В этом случае можно выбрать три варианта:

Вариант 1. Профиль

Перейти на новый профиль браузера. Настроить его по новой.

Вариант 2. Забыть сайт (в текущем профиле)

Потеряется вся история работы с сайтом. Куки, сессии.

Вариант 3. Забыть вообще всё (очистить профиль)

Если остались вопросы, оставляйте комментарии. Или задавайте вопросы почтой, адрес в разделе Контакты.

Материал на этой странице устарел, поэтому скрыт из оглавления сайта.

Fiddler – прокси, который работает с трафиком между Вашим компьютером и удалённым сервером, и позволяет инспектировать и менять его.

Использовать его можно с любым браузером.

Эта статья описывает Fiddler 2.4. В вашей версии Fiddler какие-то возможности могут измениться, какие-то образоваться.

Режимы подключения

У Fiddler есть 2 способа подключения.

Первый – это просто запустить его. При этом он автоматически будет работать для программ, использующих WinINET.

Это, например, Internet Explorer, Chrome, приложения MS Office.

Firefox тоже автоматически подхватит Fiddler, за счёт того что при установке Fiddler в него ставится соответствующее расширение:


Второй – это явно поставить Fiddler как прокси для браузера, по адресу 127.0.0.1:8888 . Например, так можно сделать для Opera, если уж не хочется перезапускать.

Fiddler не под Windows

Если вы работаете не под Windows, то Fiddler можно поставить в виртуальную машину.

Чтобы сделать возможной подключение внешних браузеров, нужно включить настройках Fiddler: Tools → Fiddler Options → Connections(вкладка) галочку «Allow remote clients to connect». После этого Fiddler станет доступен как прокси на интерфейсе 0.0.0.0 , так что можно будет браузеру из внешней ОС указать в качестве прокси виртуальную машину. И пользоваться Fiddler.

Если вы так захотите поступить, то вдобавок возьмите удобный переключатель прокси, например Elite Proxy Switcher под Firefox или Proxy Pick для IE, чтобы переключение на прокси осуществлялось в один клик.

Операции над запросами

При заходе в Fiddler, открывается окно запросов слева и рабочие вкладки справа.


Как видно, опций много, на изображении они еле-еле помещаются. И, поверьте, возможностей – ещё больше.

Возможности

В окне запросов слева можно просматривать и выбирать запросы, смотреть их заголовки, сохранять их на диск все вместе или по отдельности.

AutoResponder – позволяет подставить свой файл вместо сервера.

С Fiddler задача решается просто – сохраняете скрипт на диске, в AutoResponder указываете, что vasya.js нужно брать с диска, а не с сайта – и исправляете, что нужно, перезагружаете страницу, проверяете – всё с комфортом.

Composer – позволяет составить запрос на сервер вручную.

Например, вы хотите сделать такой же AJAX-запрос, как только что делали. Для этого можно просто выбрать его слева и нажать кнопку Replay (слева-сверху).

А если хочется поменять? Нет ничего проще – выбираем справа Composer и перетаскиваем запрос слева в него. После этого исправляем, что хотим и Execute.

Filters – позволяет назначить действия в зависимости от вида запроса. Опции станут понятны после перехода на вкладку.

FiddlerScript – основа мощи Fiddler: скрипт, задающий функциональность. Его редактированием можно добавить или удалить пункты меню, колонки в списке запросов, и, вообще, поменять почти всё.

Правила

Слева-сверху в меню находится пункт Rules (правила). В нём изначально находятся некоторые возможности FiddlerScript, которые поставляются «из коробки».

Хотите посмотреть, как ваш сайт будет грузиться «на GPRS»? Выбирайте Rules → Performance → Simulate Modem speeds.

При наступлении любого события из обширного списка, Fiddler вызывает соответствующий обработчик из правил. Например, onBeforeRequest, onShutdown. Стандартные правила отлично прокомментированы, и писать новые весьма просто.

FiddlerScript позволяет манипулировать заголовками, запросом, менять ширину канала, управлять выводом запроса в Fiddler и так далее и т.п.

Брейкпойнт на запросе

В меню Rules → Automatic Breakpoints можно включить автоматическое прерывание Fiddler при обработке запроса.

После этого, если сделать запрос в браузере, подключённом к Fiddler, то его выполнение зависнет, а в левом окошке Fiddler этот запрос будет отмечен специальным значком.

Если выбрать такой подвисший запрос мышкой, то во вкладке SessionInspector им можно управлять: менять сам запрос и ответ сервера (после Break on Response, когда сервер уже ответил).

Задавать прерывание на запросах определённого вида также можно через Filters.

После окончания отладки этот сертификат можно убрать.

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.

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

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


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

Читайте также: