Как расшифровать трафик HTTPS

Расшифровать трафик HTTPS

В этой статье я покажу, как расшифровать трафик HTTPS с помощью Wireshark.

Еще по теме: Как работает DNS over HTTPS и кому нужен?

Как работает HTTPS

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

Работа HTTPS
Работа HTTPS

Схема показывает, что ключ сессии передавался с использованием асимметричного шифрования (закрытый и открытый ключи), затем данные шифровались сессионным ключом.

Как расшифровать трафик HTTPS

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

Шаг 1:  Для захвата ключа сеанса, добавьте SSLKEYLOGFILE в переменную среду.

Расшифровать трафик HTTPS. Установка переменного окружения
Установка переменного окружения

Шаг 2: Перезапустите Chrome и простая проверка sslkeylog.log должна выглядеть примерно так, как показано ниже.

Шаг 3: Попробуйте открыть сайт и убедитесь, что sslkeylog.log существует и в нем есть какие-то данные.

Расшифровать трафик HTTPS. Лог SSLkey
Лог SSLkey

Шаг 4: Включите Wireshark или tcpdump и прослушайте сетевой трафик. Я использую Wireshark просто для пользовательского интерфейса.

Шаг 5: Полученный файл pcap импортируйте в Wireshark.

Шаг 6: Для более удобн0ого просмотра можете использовать следующие настройки столбцов Wireshark.

Расшифровать HTTPS. Настройка отображения Wireshark
Настройка отображения Wireshark

Шаг 7: Перейдите в Preference —> Protocols —> TLS —> (Pre)-Master-Secret и добавьте файл sslkeylog.log.

Расшифровать HTTPS. Настройка ключа pre-master-secret
Настройка ключа pre-master-secret

Шаг 8: Теперь весь HTTPS-трафик будет расшифровываться.

Зашифрованный трафик HTTPS
Зашифрованный трафик HTTPS

 

Расшифрованный трафик HTTPS
Расшифрованный трафик HTTPS

Я попробовал открыть сайт https://wireshark.com/, и вот результат.

Расшифровать HTTPS

Заключение

Как видите, HTTPS не такой и безопасный. Если используете общедоступную сеть, дополнительная защита, такая, как туннелирование соединения, будет полезной.

ПОЛЕЗНЫЕ ССЫЛКИ:

ВКонтакте
OK
Telegram
WhatsApp
Viber

3 комментария

  1. TamirKT

    Создался файл SSLKEYLOGFILE. но, когда я пытаюсь расшифровать в wireshark, ничего не происходит. В чем может быть дело?

    • Ты добавил SSLKEYLOGFILE перед захватом трафика?

  2. Владислав

    Здравствуйте, а можно ли как-то данный файл использовать в Charles? Задача стоит просматривать трафик со своего телефона, там и логи по другому вроде сохраняются. Перенаправление в Charles есть но вот прочитать не могу (

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *