Группа исследователей обнаружила связанную с DNS уязвимость (CVE-2023-50387), получившую название KeyTrap. По словам исследователей, эта проблема способна вывести из строя значительную часть интернета.
Уязвимость описывается как критический недостаток в структуре Domain Name System Security Extensions (DNSSEC), наборе расширений протокола DNS, который позволяет гарантировать достоверность и целостность данных, а также минимизировать атаки, связанные с подменой IP-адреса при разрешении доменных имен. Фактически целью DNSSEC является предотвращение «отравления» ответов на DNS-запросы и манипулирования ими.
О проблеме сообщили специалисты из немецкого Национального исследовательского центра прикладной кибербезопасности ATHENE, Дармштадтского технического университета, Франкфуртского университета имени Иоганна Вольфганга Гёте и Fraunhofer SIT. Они предупреждают, что KeyTrap затрагивает все популярные имплементации и сервисы Domain Name System (DNS), а ее эксплуатация может вызвать перебои в работе интернета в целом. Причем для атаки понадобится всего один специально подготовленный DNS-пакет, который спровоцирует истощение ресурсов процессора и длительный DoS.
При этом в отчете экспертов подчеркивается, что уязвимость оставалась незамеченной более двух десятилетий (с 1999 года), хотя нет никаких признаков того, что ею когда-либо пользовались хакеры.
Также утверждается, что производители софта для DNS-серверов назвали эту проблему «худшей DNS-атакой из всех когда-либо обнаруженных».
«Эксплуатация [KeyTrap] приведет к серьезным последствиям для любого приложения, использующего интернет, в том числе к недоступности таких технологий, как веб-браузинг, электронная почта и обмен мгновенными сообщениями. С помощью KeyTrap злоумышленник может полностью вывести из строя большую часть всемирной сети», — рассказывают исследователи.
Сообщается, что атакам подвержены системы, использующие DNS-резолверы с валидацией DNSSEC. По данным исследователей, по состоянию на декабрь 2023 года такие резолверы использовали более 31% всех веб-клиентов в мире.

Исследователи объясняют, что проблема связана с требованием DNSSEC передавать все криптографические ключи для поддерживаемых шифров и соответствующие подписи для валидации. Процесс происходит одинаково, даже если некоторые ключи DNSSEC сконфигурированы неправильно, неверны или относятся к шифрам, которые не поддерживаются.
Вооружившись этим знанием, эксперты разработали новый класс DNSSEC-атак, связанных с алгоритмической сложностью, которые могут в 2 млн раз увеличить количество процессорных инструкций для DNS-резолверов, тем самым провоцируя отказ в обслуживании. Продолжительность такого DoS зависит от конкретной имплементации резолвера, но, по словам исследователей, один запрос атакующих способен вызвать задержку ответа на время от 56 секунд до 16 часов.

Специалисты подчеркивают, что KeyTrap может влиять на крупнейших поставщиков DNS-услуг, включая Google и Cloudflare. Поэтому еще в ноябре 2023 года эксперты уведомили ряд компаний о найденной проблеме и совместно с ними разработали меры по ее устранению. В результате затронутые поставщики выпустили серию исправлений, последнее из которых вышло на прошлой неделе, 13 февраля 2024 года.
Хотя затронутые поставщики уже представили патчи и постарались снизить риски, специалисты пишут, что окончательное решение проблемы KeyTrap может потребовать пересмотра всей философии разработки DNSSEC и самого стандарта.
Бюллетени безопасности, связанные с CVE-2023-50387, уже опубликовали Microsoft, BIND, PowerDNS, NLnet, Akamai. Представители Google и Cloudflare так же подтвердили СМИ, что исправили уязвимость KeyTrap в своих системах, и пользователям ничто не угрожает.
Руководитель Akamai Свен Даммер (Sven Dummer) поблагодарил исследовательскую группу не только за само обнаружение уязвимости, но и за работу с DNS-провайдерами и производителями ПО.
«Возможно, вы не знаете об этом, но глобальный интернет только что уклонился от пули: KeyTrap — это уязвимость в ключевой инфраструктуре, необходимой для функционирования всего интернета, и одна из самых страшных когда-либо обнаруженных проблем», — считает Даммер.