СОРМ расшифровывает HTTPS трафик к Mail.ru и ICQ

wxh2bzozumkh2uyyx_u-_dazs24.png

На конференции Chaos Constructions 2019 Леонид darkk Евдокимов показал любопытный доклад про случайно обнаруженные в открытом доступе панели управления СОРМ. Доклад можно посмотреть здесь: darkk.net.ru/2019/cc В двух словах: панели со статистикой работы программно-аппаратных комплексов СОРМ от МФИ Софт торчали наружу в интернет и всем было пофиг.

В какой-то момент времени наружу торчали сырые дампы перехваченного трафика, которые успел проиндексировать поисковик shodan.io. Вот один из таких дампов: archive.li/RG9Lj
Там есть MAC-адреса, IMEI телефонов и разная другая личная информация. Но самое интересное в этих дампах, что туда каким-то образом попал трафик к некоторым хостам на 443 порт (HTTPS) в открытом виде! То есть видны полностью GET запросы, а это значит что СОРМ умеет расшифровывать HTTPS. Попробуем подумать как такое возможно.

Вот как выглядит перехваченные куски трафика. Видно, что соединение происходит на порт 443, но при этом GET-запрос виден целиком:

bppf2a8zklcz875gu2sbbjsh-ii.png

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

Вариант 1: HTTP-трафик на 443 порт


Обычно, при отправке HTTP-трафика на HTTPS-порт (443) веб-сервер возвращает ошибку:

pbawkcevujc2emo4fjxqsko8vt8.png
Ошибка при HTTP-запросе на порт 443

Автор доклада выдвигает предположение, что некоторые хосты могли принимать нешифрованный HTTP-трафик на порт 443. И действительно такие хосты нашлись, например mra1.mail.ru.

Это можно проверить так:

curl -v  http://mra1.mail.ru:443

Видно, что запрос отрабатывает без ошибки. При этом другие хосты из дампа отвечают ошибкой на такой запрос.

qcakxoicf0kkralyrfn_aovlnuk.png
Некоторые хосты принимают HTTP-трафик на HTTPS-порт

Из этой гипотезы следует, что программы Мейлу.ру и ICQ умеет по команде СОРМ отключать шифрование и переключаться с HTTPS на HTTP. Лично мне это кажется маловероятным, так как предполагает активные действия со стороны СОРМ и такую закладку легко обнаружить в программе локально. К тому же другие провайдеры, находящиеся по пути следования трафика, смогут перехватывать конфиденциальную информацию пользователей.

Вариант 2: у них есть ключи


Для пассивной расшифровки современного TLS недостаточно иметь приватный ключ сервера, так как для шифрования используются временные ключи (Perfect Forward Secrecy).

Тут возможны два варианта:

  • Либо СОРМ имеет только приватный ключ мейл.ру и ICQ, и активно MiTM-ит соединение и подсовывает свои временные ключи
  • Либо получает временные ключи от Мейл.ру по отдельному каналу

Это вполне укладывается в недавние требования ФСБ от всех сервисов выдать им ключи шифрования. Очевидно, что Мейл.ру, полностью рукопожатая и законопослушная компания, это требование выполнила.

Вывод


Этот пример наглядно показывает, что средства слежки имеют мало общего с безопасностью и сохранностью личных данных. И если все компании передадут свои ключи шифрования ФСБ, через пару дней всю вашу переписку можно будет купить за недорого, как это сейчас происходит с базами ГИБДД, пробивами по телефонным номерами, получением выписки из банков и т.д.

© Habrahabr.ru