Подтвердить что ты не робот

Захват трафика HTTPS в ясности?

У меня есть локальное приложение (которое я не писал и не могу изменить), которое ведет переговоры с удаленной веб-службой. Он использует HTTPS, и я хотел бы видеть, что в трафике.

Есть ли способ сделать это? Я бы предпочел систему Windows, но я рад установить прокси-сервер в Linux, если это упростит работу.

Что я рассматриваю:

  • Перенаправление веб-сайта путем взлома файла моих хостов (или настройки альтернативного DNS).
  • Установка HTTPS-сервера на этом сайте с помощью самоподписанного (но надежного) сертификата.
  • По-видимому, WireShark может видеть, что в HTTPS, если вы передаете ему закрытый ключ. Я никогда не пробовал это.
  • Как-то прокси-сервер этот трафик на реальный сервер (т.е. это полномасштабная атака "человек в середине" ).

Звучит ли это разумно? Может ли WireShark действительно увидеть, что в трафике HTTPS? Может ли кто-нибудь указать мне подходящий прокси (и настроить для него)?

4b9b3361

Ответ 1

Делает ли Fiddler делать то, что вы хотите?

Что такое Fiddler?

Fiddler - это прокси-сервер для веб-отладки, который регистрирует весь трафик HTTP (S) между вашим компьютера и Интернета. обманщик позволяет вам проверять все HTTP (S) трафик, установить точки останова и "скрипку", с входящими или исходящими данными. Fiddler включает мощную подсистема сценариев на основе событий и может быть расширена с помощью любого .NET. язык.

Fiddler является бесплатным и может отлаживать трафик практически с любого приложение, включая Интернет Explorer, Mozilla Firefox, Opera и тысячи других.

Ответ 2

Wireshark может определенно отображать зашифрованные потоки TLS/SSL в виде открытого текста. Однако для этого вам обязательно понадобится секретный ключ сервера. Закрытый ключ должен быть добавлен в Wireshark в качестве опции SSL в соответствии с предпочтениями. Обратите внимание, что это работает, только если вы можете следить за потоком SSL с самого начала. Он не будет работать, если соединение SSL будет повторно использовано.

Для Internet Explorer это (повторное использование сеанса SSL) можно избежать, очистив состояние SSL с помощью диалогового окна "Свойства обозревателя". В других средах может потребоваться перезапуск браузера или даже перезагрузка системы (чтобы избежать повторного использования сеанса SSL).

Другим ключевым ограничением является использование RSA-шифра. Wireshark не может декодировать поток TLS/SSL, который использует DFH (Diffie-Hellman).

Предполагая, что вы можете выполнить указанные выше ограничения, команда правой кнопкой мыши "Follow SSL Stream" работает достаточно хорошо.

Ответ 3

Вам нужно настроить прокси для своего локального приложения, и если он не выполняет настройки прокси-сервера, поставьте прозрачный прокси-сервер и проложите весь трафик https, прежде чем выходить на улицу. Что-то вроде этого может быть "человеком" посередине: http://crypto.stanford.edu/ssl-mitm

Кроме того, здесь приведены краткие инструкции по архивированию этого с помощью wirehark: http://predev.wikidot.com/decrypt-ssl-traffic

Ответ 4

Вы также должны рассмотреть Charles. Из описания продукта во время этого ответа:

Charles - это HTTP-прокси-сервер/HTTP-монитор/обратный прокси-сервер, который позволяет разработчику просматривать весь трафик HTTP и SSL/HTTPS между их машиной и Интернетом. Это включает в себя запросы, ответы и заголовки HTTP (которые содержат файлы cookie и кеширования).

Ответ 5

  • Для использования прокси-сервера https для мониторинга это зависит от типа рукопожатия. Если локальное приложение не проверяет сертификат сервера подписи ЦС, которую вы не можете подделать, и сервер не проверяет ваш сертификат локального приложения (или если у вас есть его для настройки на прокси https), вы можете настроить прокси-сервер https для отслеживать трафик https. В противном случае, я думаю, невозможно отслеживать трафик с помощью прокси-сервера https.

  • Другой способ, которым вы можете попробовать, - добавить измерительный прибор в подпрограммах вашей клиентской программы, где он отправляет и получает сообщения из своей библиотеки https. Он нуждается в некоторой обратной инженерной работе, но должен работать для вас во всех ситуациях.

Ответ 6

Я бы порекомендовал WireShark, это лучший инструмент для отслеживания различных частей трафика. Хотя, я не уверен, что вы видите с включенным SSL. Может быть, если вы снабдите его сертификатом?