В этой статье я покажу, как расшифровать трафик HTTPS с помощью Wireshark.
Еще по теме: Как работает DNS over HTTPS и кому нужен?
Как работает HTTPS
При использовании HTTPS (HTTP через SSL/TLS) данные отправляются с помощью механизма шифрования. HTTPS использует гибридный механизм шифрования, асимметричное шифрование для отправки ключа сеанса и использование симметричного шифрования для передачи данных.

Схема показывает, что ключ сессии передавался с использованием асимметричного шифрования (закрытый и открытый ключи), затем данные шифровались сессионным ключом.
Как расшифровать трафик HTTPS
Допустим у нас есть удаленный или прямой доступ к целевой машине, тогда можно добавить переменную пользовательской среды и перехватить трафик с помощью Wireshark или tcpdump.
Шаг 1: Для захвата ключа сеанса, добавьте SSLKEYLOGFILE в переменную среду.

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

Шаг 4: Включите Wireshark или tcpdump и прослушайте сетевой трафик. Я использую Wireshark просто для пользовательского интерфейса.
Шаг 5: Полученный файл pcap импортируйте в Wireshark.
Шаг 6: Для более удобн0ого просмотра можете использовать следующие настройки столбцов Wireshark.

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

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


Я попробовал открыть сайт https://wireshark.com/, и вот результат.
Заключение
Как видите, HTTPS не такой и безопасный. Если используете общедоступную сеть, дополнительная защита, такая, как туннелирование соединения, будет полезной.
ПОЛЕЗНЫЕ ССЫЛКИ:
- Анализ трафика при помощи ZUI
- Как перехватить пароли с помощью WireShark
- Перехват трафика в локальной сети по проводу
Создался файл SSLKEYLOGFILE. но, когда я пытаюсь расшифровать в wireshark, ничего не происходит. В чем может быть дело?
Ты добавил SSLKEYLOGFILE перед захватом трафика?
Здравствуйте, а можно ли как-то данный файл использовать в Charles? Задача стоит просматривать трафик со своего телефона, там и логи по другому вроде сохраняются. Перенаправление в Charles есть но вот прочитать не могу (
так ты по сути добавил подменный ssl и из него все читал, поэтому и не было проблем при прочтении трафика.
Но если не подменять ssl то расшифровать трафик будет куда сложнее