👨⚕️️ Расшифровка трафика SSL / TLS с помощью Wireshark — Information Security Squad

👨⚕️️ Расшифровка трафика SSL / TLS с помощью Wireshark

Вступление

Интернет не был разработан таким образом, чтобы быть безопасным с самого начала.

Многие протоколы (такие как HTTP и DNS) были разработаны, чтобы служить для передачи информации по сети, не тратя время на безопасность.

Однако в современном Интернете конфиденциальность и безопасность являются главными приоритетами.

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

Это позволяет компьютерам использовать те же базовые протоколы для форматирования данных (например, HTTP), но добавить уровень безопасности (преобразовав его в HTTPS).

Проблема с SSL / TLS для профессионалов в области кибербезопасности заключается в том, что это работает и в плохую сторону.

Хотя стандарты шифрования были разработаны для хороших целей, их используют и плохие парни.

В этой статье мы опишем, как выполнить расшифровку SSL / TLS в Wireshark.

Что вам нужно

Wireshark — это широко известный и бесплатный инструмент для анализа сети.

Первый шаг в его использовании — загрузить его отсюда и установить.

Еще одна вещь, которую вам нужно сделать перед расшифровкой TLS-зашифрованного трафика, — это настроить ваш веб-браузер для экспорта клиентских TLS-ключей.

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

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

В Firefox и Chrome это можно сделать, установив переменную среды SSLKEYLOGFILE.

Если эта переменная установлена, оба браузера настроены на сохранение копии секретов клиента в указанном месте.

В Linux эту переменную можно установить с помощью команды Export.

В Windows его можно установить, открыв «Дополнительные параметры системы», выбрав «Переменные среды» и добавив новую системную переменную.

Пример этой переменной в Windows показан ниже:

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

После этого у нас есть все, что нужно для расшифровки трафика TLS.

Выполнение расшифровки трафика

Если вы хотите расшифровать трафик TLS, вам сначала нужно его перехватить.

По этой причине важно, чтобы Wireshark был запущен до начала сеанса просмотра веб-страниц.

Прежде чем мы начнем захват, мы должны подготовить его для расшифровки трафика TLS.

Для этого нажмите Edit → Preferences. Выберите Protocols  в левой панели и прокрутите вниз до TLS.

В этот момент вы должны увидеть что-то похожее как на экране ниже.

Внизу этого экрана есть поле для (Pre) -Master-Secret имени файла журнала.

Как показано выше, вам нужно установить это значение в том же месте, что и SSLKEYLOGFILE для вашего браузера.

Когда закончите, нажмите ОК.

Теперь на главном экране Wireshark будет показан список возможных адаптеров для захвата.

В этом примере я буду использовать WiFi 2, так как по нему проходит трафик (показан черной линией)

При нажатии на адаптер начнется захват трафика на этом устройстве.

Теперь вы готовы создать некоторый трафик с шифрованием TLS.

Перейдите в Chrome или Firefox и перейдите на сайт, который использует HTTPS (мы использовали Facebook для этого примера).

После загрузки вернитесь в Wireshark и остановите захват (красный квадрат).

Просматривая снимок, вы, вероятно, увидите много трафика.

Сейчас мы ищем пакеты, связанные с вашим сеансом просмотра в TLS-шифровании.

Одним из способов является поиск DNS и фильтрация по предоставленному IP-адресу (показано ниже).

На изображении ниже показан пакет из нашего сеанса просмотра в Facebook.

Как видно, Wireshark показывает несколько разных вкладок в нижней части окна.

В дополнение к вкладке Frame, один помечен как расшифрованный TLS.

Глядя на ASCII-представление пакета, мы видим сертификат веб-сайта (включая слово Facebook).

На данный момент мы успешно расшифровали трафик TLS в Wireshark.

Приложения и ограничения

Используя расшифровку TLS, предприятия могут расшифровывать и выполнять глубокую проверку пакетов трафика, проходящего через их предприятие.

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

Хотя мы достигли этого, экспортировав ключи из Chrome и Firefox, многие предприятия решили внедрить прокси-сервер, который разделяет соединение TLS на две половины.

Хотя это эффективно для мониторинга, это также имеет значительные последствия для конфиденциальности и безопасности.

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

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

В результате расшифровка TLS на уровне предприятия может быть опасной и должна выполняться безопасным способом.

 

cryptoparty

Cryptography is typically bypassed, not penetrated.

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

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

5e7fa976b0640d40