Грандиозная проблема безопасности транспортного уровня (TLS) обнаружилась в начале марта: миллионы пользователей интернета оказались уязвимы для атак, способных разоблачить пароли, номера кредитных карт и другие финансовые данные. Из-за своего масштаба атака получила собственное уникальное название – DROWN, что обычно случается только с самыми серьёзными
Преднамеренное ослабление
Согласно Threatpost, уязвимость была выявлена группой международных исследователей (PDF), которые называли её «Decrypting RSA with Obsolete and Weakened eNcryption» («расшифровка RSA устаревшим и ослабленным шифрованием») — DROWN. Атака эксплуатирует уязвимость в SSLv2, который относится к так называемой криптографии экспортного класса. Проблемы с такой криптографией всплывают уже на протяжении десятилетий.
Уязвимость можно эксплуатировать, использовав подтверждения связи SSLv2 для расшифровки сессий TLS. Операторы DROWN могут расшифровывать как текущие сессии, так и те, что записаны в прошлом.
Как говорят исследователи, из-за «из-за ряда непростительных ошибок, допущенных большим количеством людей» данная уязвимость фактически делает TLS-соединения в «удручающе большом сегменте сети», а также в почтовых серверах и виртуальных частных сетях открытыми для атак «весьма посредственных злоумышленников».
Аукнувшаяся проблема: 33% соединений #HTTPS под угрозой
Tweet
Что затронуто
DROWN является кросс-протокольной атакой, которая использует ошибки в одном варианте реализации протокола (SSLv2) для атаки на безопасность соединений, выполненных под другим протоколом — TLS. Оба эти протокола поддерживают шифрование RSA, но если TLS должным образом защищает от некоторых хорошо известных атак на данное шифрование, то с «экспортными наборами» SSLv2 номер не проходит.
И цифры за всем этим кроются весьма пугающие: около 33% всех серверов HTTPS уязвимы для злоумышленников, которые имеют возможность прерывать шифрование соединения веб-браузера с веб-сервером и подсматривать данные, передаваемые между ними. Всего под угрозой приблизительно 11 миллионов веб-сайтов с HTTPS.
Масштаб уязвимости усугубляется двумя устаревшими версиями реализации OpenSSL, которые до сих пор работают на многих веб-серверах.
Противодействие и преуменьшение значимости
В понедельник OpenSSL выпустила два патча, которые отключают протокол SSLv2 по умолчанию, а также удаляют шифры экспорта SSLv2. Патчи включают версию 1.0.2g набора инструментов с открытым исходным кодом для SSL/TLS и версию 1.0.1s набора инструментов с открытыми исходниками для SSL/TLS.
В то время как заинтересованные стороны, такие как Red Hat, опубликовали заявления, преуменьшающие угрозу DROWN (и предложили патчи), представители OpenSSL не столь оптимистичны.
«Эта уязвимость давно известна, она присутствовала в более ранних версиях протокола SSL, но тогда еще не была дополнена бэкдорами, появившимися в криптосистемах, ослабленных экспортным исполнением», — заявил в интервью Threatpost Стив Маркес (Steve Marquess) из OpenSSL.
Маркес отметил, что SSLv2 использовать нельзя, но «множество веб-сайтов до сих пор им пользуются».
«Не создавайте слишком сильное шифрование»
Основной причиной этого сбоя в шифровании стало двадцатилетней давности требование правительства США наложить ограничение на «криптографию экспортного класса». В 1990-е годы любой реализатор SSLv2 был вынужден встраивать ряд «шифронаборов экспортного класса», предлагавших 40-разрядные сессионные ключи.
Это фактически означает, что такое шифрование можно взломать (грубой силой) в разумные сроки, от десятков секунд до нескольких часов, используя общедоступные вычислительные мощности в диапазоне от современного ПК до облачного компьютерного сервиса Amazon EC2. В отличие от этого, 128-разрядные сессионные ключи не так легко сломать.
Притом, что правительство США больше не накладывает эти экспортные ограничения, изувеченная криптография до сих пор широко применяется.
Другие уязвимости, такие как Logjam и FREAK, также основываются на этом слабом криптокоде.
Ещё раз о старом хламе
В прошлом году мы рассказывали о давно устаревшем сетевом протоколе RIPv1, который использовался для запуска мощной DDoS-атаки.
Устаревшие инструменты становятся киберугрозой сами по себе. #безопасность
Tweet
Хотя его активно не рекомендовали применять последние двадцать лет, более чем достаточно устройств по-прежнему отвечают на запросы RIPv1, чем и воспользовались эксплуатировавшие его киберпреступники.
Мы по-прежнему используем в интернете много устаревших на десятки лет технологий, вдобавок, множество давно устаревших устройств с чудовищными прорехами в кибербезопасности продолжают оставаться в онлайне, отвечая на «антикварные» запросы. От некоторых из этих технологий нельзя отказаться сразу, конечно, но нередко приходится встречаться и с полностью устаревшими и вполне заменяемыми протоколами, программным обеспечением и оборудованием, которые уже сами по себе превратились в фактический источник угроз.
В случае DROWN мы столкнулись с проблемой намеренно ослабленной безопасности (по причинам слишком очевидным, чтобы подробно на них останавливаться), которая аукнулась спустя многие годы. История с DROWN ясно показывает, что цена использования старых, уязвимых интернет-протоколов потенциально слишком высока.
Ближе к середине марта Threatpost сообщил, что DROWN всё ещё представляет собой существенную угрозу, поскольку в буквальном смысле «сотни» (на самом деле много больше 600) облачных сервисов по-прежнему подвержены риску из-за невероятно медленных темпов обновления. По некоторым данным, 98,9% предприятий используют, по меньшей мере, один уязвимый для DROWN облачный сервис.