Очень незаметно в ИБ-сообществе прошла новость о том, что Cloudflare реализовала возможность валидации DNS-записей по DNSSEC с использованием ML-DSA-44 (стандартизированный NIST FIPS 204 постквантовый алгоритм цифровой подписи).
DNSSEC позволяет проверить подлинность DNS-ответа по всей цепочке доверия DNS:
Root - TLD - Domain - IPЕсть мнение, что существующие алгоритмы можно будет взламывать квантовым компьютером, который вот-вот появится и разделит жизнь криптографии на "до" и "после". Поэтому Cloudflare, вроде, молодцы. Но есть нюанс...
Нас с коллегой заинтересовала не криптографическая сторона, а размер подписи в 2420 байт.
Cloudflare предлагает проверить ответ на тестовом домене, запустив определенную команду.
Пробуем:
dig @1.1.1.1 valid.mldsa44.dnstest.dev +dnssec
<интересует секция с размером ответа, поэтому пропускаем остальное>
;; Query time: 56 msec
;; SERVER: 1.1.1.1#53(1.1.1.1) (TCP)
;; WHEN: Mon Sep 14 18:55:10 MSK 2026
;; MSG SIZE rcvd: 2563
То есть, в ответ на запрос (66 байт) получаем ответ 2563 байт - почти в 43 раза больше.
Теперь видоизменим команду так, как ее будут использовать для DDoS:
dig @1.1.1.1 valid.mldsa44.dnstest.dev rrsig
<интересует секция с размером ответа, поэтому пропускаем остальное>
;; Query time: 32 msec
;; SERVER: 1.1.1.1#53(1.1.1.1) (TCP)
;; WHEN: Mon Sep 14 18:55:23 MSK 2026
;; MSG SIZE rcvd: 22347
Видим, что ответ (22347) больше запроса (66) в 338,6 раз. Просто подарок для атакующих.
Напоминаю: суть DDoS-атаки DNS Amplification в том, чтобы забомбить жертву большими ответами DNS-серверов на запросы с подделанного адреса жертвы, переполнив канал мусорным трафиком.
Из примечательного: если запустить запрос на получение всех записей тестового домена (ANY), то ответ будет намного меньше:
dig @1.1.1.1 valid.mldsa44.dnstest.dev any
<интересует секция с размером ответа, поэтому пропускаем остальное>
;; Query time: 12 msec
;; SERVER: 1.1.1.1#53(1.1.1.1) (TCP)
;; WHEN: Mon Sep 14 19:18:07 MSK 2026
;; MSG SIZE rcvd: 60
Во избежание использования для DDoS-атак в норме DNS-сервер заставляет клиента переходить с UDP на TCP, если размер DNS-ответа превышает 512 байт при классическом DNS, либо 1232-4096 (как настроить) для EDNS.
В случае с 1.1.1.1 мы видим это в строке
;; SERVER: 1.1.1.1#53(1.1.1.1) (TCP)Но если бы все DNS были так настроены, то и DDoS-атак DNS Amp было бы намного меньше.
Остается надеяться, что DNSSEC с постквантовым алгоритмом подписи ML-DSA-44 будет доступен только по TCP, иначе нас ждет новый виток популярности DNS Amplification и рекордные по мощности DDoS-атаки.
Ведь вряд ли мы с коллегой вдвоем умнее всего Cloudflare вместе взятого. Ведь вряд ли...
#DDoS #DNS