Top Banner
Fiddler HTTP/HTTPS прокси.
27
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Fiddler

FiddlerHTTP/HTTPS прокси.

Page 2: Fiddler

Все браузеры Все платформыВсе операционные системы

Поддерживаемые технологии

Page 3: Fiddler

ФичиСниф всего HTTP/HTTPS

Плагинчики

Манипулирование запросами/ответамии создание новых

Декрипт HTTPS трафика с помощью MIM

Page 4: Fiddler

Полезные плагинчикиCertMaker for iOS and AndroidИсправляет несовместимость некоторых устройств с сертификатом фидлера.

AnyWHEREВрет о текущем местоположении

XML DataSet InspectorРендерит XML с помощью табов и таблиц

Page 5: Fiddler

Полезные плагинчикиWCF Binary-Encoded Message InspectorПозволяет рассматривать бинарно-закодированные WCF-сообщения в виде XML

XML Request InspectorКрасиво выводит XML-данные, отправленные POST-запросом

3 Syntax-Highlighting Add-Ons• Подсветка для HTML, CSS, JS, XML и прочей каки;• Редактор правил фидлера + подсветка

Page 6: Fiddler

Что можно сделать с фидлером?

• Запустить• Закрыть

Page 7: Fiddler

Презентацияокончена

Page 8: Fiddler

Запросы/ответы Полезнота

Page 9: Fiddler

Контекстное меню сессии

• Заблокировать хост• Скопировать или сохранить ссылку,

хидеры, контент или всю сессию• Или выкинуть сессию из списка• Попросить Fiddler выбрать

родительский запрос; дочерние запросы; или дублирующие запросы

• Если выбрано два запроса – то сравнить их

Page 10: Fiddler

Вкладка “Inspectors”

Позволяет посмотреть headerы и контент в удобном виде.Сверху располагается запрос, снизу ответ сервера

Page 11: Fiddler

Вкладка “Composer”

Позволяет создать запрос вручную.Можно перетянуть уже посланный запрос из списка слева, отредактировать его и послать заново

Page 12: Fiddler

Вкладка “Filters”Позволяет фильтровать запросы. Например, если мы сейчас слушаем музыку в вк и пытаемся определить, чего посылает бедное приложение, то имеет смысл не показывать вк.

Для того, чтобы заблочить сайт полностью, нужно написать два паттерна:• *.vk.com• vk.com

Page 13: Fiddler

Вкладка “AutoResponser”

С помощью этой вкладки можно настроить отдачу уже готового контента вместо ответов сервера.Галочка “enable automatic response” включает фичу, галочка “unmatched requests passthrough” позволяет запросам, не описанным в правилам идти в интернет.

Page 14: Fiddler

Меню “Rules”

• Breakpoints• Мы можем зафорсить GZIP-упаковку или

убрать упаковки вообще (очень удобно в использовании вместе с AutoResponder)

• Зафорсить определенный UserAgent и посмотреть, что отдает сервер.

• Включить симуляцию скоростей уровня модема

• Выключить кеш

Page 15: Fiddler

Меню “Tools”

• Переход к настройкам фидлера• Перейти к функциональности TextWizard –

преобразователя данных из одного формата в другой

• Переход к настройкам интернета для Win8-приложений

• Поверх DNS прописать новые соответствия доменного имени и айпи (например вместо vk.com -> google.com)

Page 16: Fiddler

Тулбар

• Функционал Replay позволяет послать запрос еще раз. Если зажать Shift, вылезет попап с вопросом о количестве повторений

• Кнопочка “x” – очищает список запросов• Кнопочка “Go” – все запросы, которые стоят на бряке

продолжают выполнение

Page 17: Fiddler

Тулбар

• Кнопка “Stream” – включает/выключает режим отдавать клиенту постепенно. Если кнопка выключена, то фидлер сначала полностью выкачивает ответ сервера (например, 20-мегабайтный файл) и только уже потом отдает браузеру

• Кнопочка “Decode” – для снятия GZIP и прочего.• “Keep: …“ – позволяет менять количество хранимых запросов

ответов. Рекомендуется либо выключать фидлер на ночь, либо поставить 1000.

Page 18: Fiddler

Общий принцип работы HTTPS

HTTPS – это обычный HTTP, работающий через криптографические протоколы SSL и TLS.Используются алгоритмы асимметричного шифрования. У веб-сервера есть сертификат, который состоит из закрытого ключа (используется для зашифровки) и открытого ключа (используется для расшифровки)

Page 19: Fiddler

Общий принцип работы HTTPS

• Клиент подключается к серверу• Сервер отправляет публичный ключ сертификата и

зашифрованное сообщение• Если клиент доверяет сертификату, то выполняется

процедура рукопожатия (handshake), во время которой клиент и сервер договаривается о сеансовых ключах• Весь последующий трафик происходит через

шифрование и расшифрование ключами клиента или сервера.

Page 20: Fiddler

Декрипт HTTPS

Проблема HTTPS – метод проверки доверия сертификату. Для проверки используются центры сертификации, которые подтверждают, что сертификат действительно выдан этим центром сертификации.НО! Можно вручную установить сертификат на устройство и устройство будет ему полностью доверять.

Page 21: Fiddler

Декрипт HTTPS• На устройство устанавливется сертификат прокси-

сервера• Весь трафик между устройством и сервером проходит

через прокси-сервер• Прокси-сервер договаривается с сервером о сеансовых

ключах• Прокси-сервер договаривается с клиентом о сеансовых

ключах• Прокси-сервер расшифровывает трафик от сервера,

шифрует своими ключами и отправляет клиенту (то же самое при передаче трафика от клиента к серверу)

Page 22: Fiddler

Декрипт HTTPS

Топаем в Tools -> Fiddler Options -> HTTPS и выставляем галочки “Capture HTTPS CONNECTs” и “Decrypt HTTPS traffic”.Фидлер может предложить поставить сертификат на компьютер – сделайте это, но это будет работать только в пределах браузеров и нормальных приложений

Page 23: Fiddler

Декрипт HTTPS

Переходим во вкладку “Connections” и выставляем все так, как на скрине.

Page 24: Fiddler

Декрипт HTTPS

Возвращаемся на главное окно фидлера и вводимprefs set fiddler.network.proxy.registrationhostname {HostName}Вместо {HostName} подставьте имя компьютера. Перезапускаем Fiddler. На самом деле этот шаг не обязателен, его можно пропустить

Page 25: Fiddler

Декрипт HTTPS

Запускаем Fiddler, на устройстве в браузере открываем ссылку:

http://{HostName}:8888/FiddlerRoot.cer(вместо {HostName} можно просто подставить IP-адрес)

И устанавливаем сертификат. Теперь весь трафик на устройстве будет декриптоваться Fiddlerом

Page 26: Fiddler

WP Emulator + Fiddler = ♡

Итак, нам нужно подружить Windows Phone Emulator и Fiddler. Первым делом нужно выключить эмулятор. Если вы запустите Fiddler после запуска эмулятора – ничего не заработает. А дальше каждый раз при запуске эмулятора устанавливаем в него сертификат Fiddlerа.Прокси-сервер прописывать не надо, Fiddler и так на вашем компе

Page 27: Fiddler

Windows Store apps + Fiddler

Для того, чтобы подружить Windows Store приложения и Fiddler нужно нажать на кнопку и разрешить определенным приложениям гонять трафик через локальный компьютер.Для приложений, которые запущены в дебаге ничего делать не нужно