Разработчики Nginx откликнулись и любезно помогли с решением проблемы.
Сохранение сессионных ключей выполняется с помощью известного механизма LD_PRELOAD, позволяющего загружать указанные разделяемые библиотеки раньше других, в результате чего можно перехватывать какие-либо функции и заменять их собственной реализацией. В данном случае, отдельные функции бибилотеки OpenSSL подменяются «обертками», которые вызывают «настоящие» функции оригинальной библиотеки, но при этом логгируют интересующие данные в файл.
Комментарий от ValdikSS:
Если кто не знает, что такое сессионный ключ — это финальный ключ, использующийся при шифровании трафика. Зная сессионный ключ, расшифровать трафик тривиально (это штатная функция в Wireshark, например). Обладание обычным приватным ключом не позволит расшифровать трафик из-за согласования уникальных эфемерных ключей при установке соединения, а обладание сессионными ключами — позволит.
В контексте данной новости интересен тот факт, что известный сетевой эксперт Леонид Евдокимов в своём нашумевшем докладе про случайно обнаруженные в открытом доступе панели управления СОРМ, упоминал про "код для расшифровки трафика и для получения ключей шифрования из некоторого сервера в пакетах от МФИ-софт".
Приказ, обязывающий ОРИ передавать ФСБ «информацию, необходимую для декодирования принимаемых, передаваемых или обрабатываемых электронных сообщений» действительно существует.
Со списком (реестром) интернет-сервисов, относящихся к «организаторам распространения информации» можно ознакомится на портале Роскомнадзора, либо в более читаемом виде на сайте Роскомсвободы.
Комментарии (11)
autuna
18.09.2019 13:31+1А ведь это убойная (в прямом смысле) вещь для всех расположенных в стране интернет сервисов.
Если трафик https пишется и вскрывается, то получается, что любые логины/пароли которые вводят пользователи достаются на раз-два. И никакой гарантии от утечки, или сознательной провокации — нет.
Как только народ это осознает — начнётся бегство пользователей.
Всё ИМХО, разумеется.
При таком раскладе мне искренне жаль и Яндекс, и Хабр.Meklon
18.09.2019 14:09-1Ну как бы еще неплохо иметь уникальные credentials. Тогда утечка — не особо утечка.
Viacheslav01
18.09.2019 14:13+1Никуда массовый пользователь не побежит, ему все равно, оценить риски такого положения вещей многие просто не могут.
Tufed
18.09.2019 17:03+1Не любые. Ну что за детский сад. Без паники. А только те сайты, которые передадут ключи. Вопрос был от состоящих в «реестре распространителей информации». Их самих фсб обязывает выдать ключи для доступа к SSL трафику их собственных пользователей сайта. Если сайт, на который вы ходите, точно так же отдаст ключи — трафик только на этот сайт станет прозрачным тому кто может перехватить этот трафик и имеет эти ключи. Об этом было, об этом есть, и об этом в данной статье косвенные подтверждения.
ValdikSS
18.09.2019 13:56+3Если кто не знает, что такое сессионный ключ — это финальный ключ, использующийся при шифровании трафика. Зная сессионный ключ, расшифровать трафик тривиально (это штатная функция в Wireshark, например). Обладание обычным приватным ключом не позволит расшифровать трафик из-за согласования уникальных эфемерных ключей при установке соединения, а обладание сессионными ключами — позволит.
darkk
18.09.2019 14:06+2Отправил автору письма инвайт на хабр. Надеюсь, за что-то похожее на раскрытие методов ОРД к нему претензий не будет, а schors не накликает =)
megafonishe
Хм, а есть ли смысл писать плагин наподобие HttpsEwerywhere, который будет сверять домен с реестром ОРИ и кричать «Алярм!»?
Murimonai
Можно предложить автору плагина RKN Alert доработать свое творение немножко, как вариант.
Хотя функционал и списки разные, конечно.
Но для владельцев такого ресурса это будет сродни смертному приговору: большинство юзеров получивших предупреждение сродни гугловскому красному экрану — просто свалит куда подальше.
darkk
Будет очень тяжело от постоянных алярмов про
mc.yandex.ru
иbs.yandex.ru
, куда, например,Referer
уйдёт.nlykl
Оба домена в черном списке uBlock origin.
Tufed
К слову, и не просто так они там оказались.