13.04.2024

Атака MaginotDNS, позволяющая подменить данные в кэше DNS

Группа китайских исследователей на конференции Black Hat USA 2023 раскрыла детали атаки MaginotDNS, позволяющей осуществить подстановку некорректных NS-записей в кэш DNS-серверов (отравление кэша), используемых одновременно для перенаправления запросов (forwarder) и рекурсивного определения имён (resolver). Успешное проведение атаки может привести к обращению к неверным DNS-серверам, отдающим ложные сведения о целевом домене, и подмене атакующим целиком DNS-зон, в том числе для доменов верхнего уровня ( .com, .net, .ru и т.п.).

Возможность подмены NS-записей для другого домена вызвана ошибкой в применении в DNS-серверах алгоритма проверки Bailiwick, который не допускает приём серверов имён, напрямую не связанных с запрошенным доменом. В ситуации, когда DNS-сервер одновременно может работать в режиме resolver-а и forwarder-а, проверка Bailiwick выполняется только в режиме resolver-а, но не используется в режиме forwarder-а. Так как в обоих режимах используется общий кэш DNS-сервера, данной особенностью можно воспользоваться для подмены записей для запросов в режиме resolver-а через отравление кэша при манипуляции с запросами и ответами в режиме forwarder-а.

Предложено два варианта проведения атаки: «off-path» — когда атакующий не может перехватывать трафик между атакуемым DNS-сервером и вышестоящим DNS-сервером, используемом в качестве forwarder-а; «on-path» — когда атакующий может перехватывать DNS-запросы, между атакуемым DNS-сервером и forwarder-ом. В режиме «on-path», когда атакующий в ходе анализа трафика получил информацию о номере сетевого порта исходящего DNS-запроса, в процессе атаки выполнялся запрос подконтрольного атакующим домена «attacker.com», который приводит к обращению к DNS-серверу атакующих, и одновременно отправляются фиктивные ответы с данными о NS-записях для домена «.com», которые оседают в кэше. При демонстрации атаки на DNS-сервер BIND в режиме «off-path» для подбора номера порта и 16-разрядного идентификатора транзакции исходящего DNS-запроса дополнительно используется техника атаки SAD DNS, которая в тестовом запуске потребовала совершения 1642 попыток подбора в течение 32 минут.

Возможность проведения атаки подтверждена для DNS-серверов BIND, Knot, Technitium и Microsoft DNS. DNS-серверы Unbound, MaraDNS и PowerDNS атаке не подвержены. В BIND (CVE-2021-25220) и Knot (CVE-2022-32983) уязвимости, позволяющие совершить атаку, были устранены в начале 2022 года в выпусках Knot 5.5.1 и BIND 9.11.37, 9.16.27 и 9.18.1.

В марте 2022 года исследователями было проведено сканирование глобальной сети, которое выявило 154955 потенциально подверженных атаке публично доступных DNS-серверов, одновременно работающих в режиме перенаправления и резолвинга. Из них 54949 DNS-серверов (35.5%) использовали уязвимое программное обеспечение. Все уязвимые DNS-серверы были подвержены варианту атаки «on-path», проводимой при возможности перехвата трафика между DNS-сервером и forwarder-ом. Варианту атаки «off-path», при которой атакующий не контролировал трафик, оказались подвержены 88.3% уязвимых серверов.

Источник: https://www.opennet.ru/opennews/art.shtml?num=59598 Источник.