Что делает DNSSEC невосприимчивым к атакам MITM?
Почему я не могу подписать ключ для example.com и передать его разрешающему серверу имен или клиенту, прежде чем они смогут получить его из реального источника?
MITM не невозможен, просто требуется гораздо больше усилий. Из-за процесса проверки целостности, на который указали Кейт и Ник, вам придется подделать не только целевой домен example.com, но также .com и. (после подписания). Это означает, что простое отравление кеша больше не будет работать, вам нужно полностью разрушить весь поток преобразователя цели.
Он работает как SSL во многих отношениях. У корневого домена есть записи о делегировании, которые используются для проверки того, что преобразователь дочернего домена (в данном случае .com) действительно является правильным преобразователем. Это повторяется для каждого дочернего домена, пока вы не дойдете до имени хоста. Фактический процесс проверки работает в обратном порядке: он идет вверх по дереву, пока не достигает беззнакового уровня, и оттуда проверяет. Злоумышленникам DNS придется подделать все дерево преобразователя до подписанного корня (будь то .com или.), Чтобы добиться успеха. Вот почему получение подписи DNS-root - такое большое дело.
DNSSEC улучшает безопасность во многом за счет того, что значительно усложняет загрузку неверных данных в кеш-память преобразователя и повышает устойчивость к играм с помощью процесса транзакции DNS между клиентами и законными преобразователями. Полностью скомпрометированный DNS-сервер по-прежнему будет возвращать неверные данные, даже если он использует DNSSEC, а встроенный прокси-сервер, перезаписывающий DNS-запросы на проводе, должен будет подделывать каждый отдельный DNS-запрос, а не только намеченные, но это более сложная проблема. В основном; а также сложнее встать на место в первую очередь.
В этой статье это немного объясняется. Небольшой отрывок: что такое DNSSEC?
DNSSEC - это предлагаемый Интернет-стандарт, который изменяет записи ресурсов и протоколы DNS для обеспечения безопасности транзакций запросов и ответов между преобразователями доменных имен и серверами имен. В частности, безопасность, которую обеспечивает DNSSEC, включает:
Проверка целостности: преобразователь DNS может определить, что информация, полученная от сервера имен, не была изменена при передаче. Аутентификация источника: преобразователь DNS может определить, что полученная информация была получена с авторитетного сервера имен.
Аутентифицированный отказ в существовании: преобразователь DNS может проверить, что конкретный запрос неразрешим, поскольку на полномочном сервере имен фактически не существует записи DNS.