img

DNS Спуфинг – как это работает и какие меры следует принять

21 ноября
20:00
Бесплатный вебинар
Введение в Docker
Ведущий — Филипп Игнатенко.
Руководитель центра разработки
Записаться
img
img

DNS спуфинг (spoofing), так же известный как отравление DNS кэша (cache poisoning), вид атаки, когда DNS кэш заполняется поддельными данными, в результате чего пользователь перенаправляется на вредоносный сайт.

DNS Спуфинг

Отравление DNS-кэша является результатом уязвимостей, которые позволяют преступникам отправлять поддельные DNS-ответы, которые серверы доменных имен (DNS - Domain Name Server) сохраняют в своих кэшах.

Обычно скомпрометированная запись перенаправляет пользователя на поддельный веб-сайт, который злоумышленники используют для совершения преступных действий, таких как распространение вредоносных программ или кража реквизитов кредитных карт, паролей, финансовых данных или другой конфиденциальной и частной информации.

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


Влияние отравления DNS-кэша

DNS спуфинг, обычно трудно обнаружить и может оказать большое негативное влияние, особенно для популярных веб-сайтов или веб-приложений со большим количеством посещений или зарегистрированными пользователями. Это представляет большой риск, особенно в некоторых чувствительных отраслях, таких как банковская, медицинская, онлайн-ритейл, электронная коммерция и другие.

Например, предполагается, что злоумышленникам удается изменить DNS-записи и IP-адреса для Amazon. Затем они направляют запрос на другой сервер с поддельным IP, который контролируют или принадлежит злоумышленникам. Любой человек, пытающийся получить доступ к подлинному сайту Amazon, будет перенаправлен на неправильный адрес, который может содержать вредоносные программы для кражи конфиденциальной информации.

Схема DNS спуфинга

Кроме веб-сайтов, злоумышленник может вставить поддельный адрес для сервера электронной почты или других веб-приложений, таких как банковские приложения.

Поскольку изменения в DNS регулярно распространяются с одного сервера на другой, отравленный кэш может распространяться на другие DNS-серверы и системы, что приводит к большому ущербу. Например, поддельная запись может быстро распространяться на другие машины, такие как DNS-серверы Интернет-провайдеров, которые затем будут хранить ее в своем кэше. Отсюда он распространяется дальше на оборудования пользователей, такое как браузеры, мобильные телефоны и маршрутизаторы, которые также будут хранить поддельную запись в своих кэшах.


Как работает атака отравление DNS-кэша?

Преступники могут отравить кэш DNS с помощью различных методик.

Во время обычных операций DNS-запросы хранятся или кэшируются в базе данных, которую пользователи веб-сайтов могут запрашивать в режиме реального времени. Как правило, база данных DNS содержит список имен Интернета и соответствующих IP-адресов. И это облегчает поиск и доступ к веб-сайтам с использованием имен в отличие от IP-адресов, что может быть очень сложным и запутанным.

Например, без системы DNS пользователям потребуется запомнить строку чисел, составляющих IP-адреса для всех веб-сайтов, которые они хотят посетить.

К сожалению, DNS имеет несколько недостатков в безопасности, которые злоумышленники могут использовать и вставлять в систему поддельные записи адресов интернет-домена. Обычно преступники отправляют на DNS-сервер поддельные ответы. Затем сервер отвечает пользователю, сделавшему запрос, и одновременно законные серверы кэшируют поддельную запись. Как только сервер кэша DNS сохранит поддельную запись, все последующие запросы на скомпрометированную запись получат адрес сервера, управляемого злоумышленником.

Отравление DNS-кэша в целом состоит из внедрения поврежденных записей в базу данных кэша сервера имен, и злоумышленники используют различные методы. К ним относятся:

  • Когда пользователь веб-сайта или веб-приложения отправляет запрос на определенный домен через браузер или онлайн-приложение, DNS-сервер сначала проверяет, существует ли запись в кэше. Если он не сохранен, он запросит информацию у авторитетных DNS-серверов, а затем ждет ответа. В течение некоторого времени злоумышленники будут использовать этот узкий период ожидания, временно брать на себя роль исходного DNS и выдавать поддельный ответ до того, как авторитетный сервер отправит подлинный адрес. Однако, поскольку период ожидания обычно очень короткий, показатель успеха очень низкий.
  • Другой способ включает отправку поддельных ответов от DNS-сервера, олицетворяющего легитимный. Поскольку проверка DNS обычно не выполняется, злоумышленники могут подделать ответ от DNS-распознавателя по мере запроса сервера имен. Это также становится возможным благодаря тому, что DNS-серверы используют протокол пользовательских датаграмм (UDP) вместо TCP. Обычно связь DNS небезопасна из-за незашифрованной информации в пакетах UDP и отсутствия аутентификации. Это облегчает злоумышленникам вставлять в ответы поддельные адреса.

Уязвимости DNS используемые злоумышленниками

Уязвимости безопасности в определенных веб-приложениях, а также отсутствие надлежащей аутентификации DNS-записей позволяют киберпреступникам легко скомпрометировать ответы DNS и остаться незамеченными. Некоторые из этих уязвимостей включают в себя:

Отсутствие проверки и валидации

DNS имеет первую структуру доверия, которая не требует проверки IP-адреса для подтверждения его подлинности перед отправкой ответа. Поскольку DNS-распознаватели не проверяют данные в кэше, там остается неверная запись, пока она не будет удалена вручную или не истечет срок действия TTL.

Уязвимость рекурсивного DNS-сервера

Когда рекурсивный запрос активен, DNS-сервер получает запрос и выполняет всю работу по поиску правильного адреса и отправке ответа пользователю. Если у него нет записи в кэше, он будет запрашивать ее у других DNS-серверов от имени клиента, пока не получит адрес и не вернет его пользователю. Включение рекурсивного запроса представляет уязвимость безопасности, которую злоумышленники могут использовать для отравления кэша DNS.

Уязвимость рекурсивного DNS-сервера<

Поскольку сервер ищет адрес, он предоставляет злоумышленнику возможность перехватить трафик и предоставить поддельный ответ. Затем рекурсивный DNS-сервер отправит ответ пользователю и одновременном сохранит поддельный IP-адрес в кэше.

Отсутствие шифрования

Как правило, протокол DNS не зашифрован, и это облегчает злоумышленникам перехват его трафика. Кроме того, серверы не должны проверять IP-адреса, на которые они направляют трафик, следовательно, они не могут определить, является ли он подлинным или поддельным.


Как предотвратить DNS спуфинг?

Мониторинг данных DNS в реальном времени может помочь установить наличие в трафике необычных шаблонов, действий пользователей или поведения, таких как посещение вредоносных веб-сайтов. И хотя обнаружение отравления DNS-кэшем затруднено, существует несколько мер безопасности, и компании и поставщики услуг могут принять меры, чтобы предотвратить это. Некоторые из мер, предотвращающих отравление DNS-кэша, включают использование DNSSEC, отключение рекурсивных запросов и многое другое.

Предельный уровень отношений доверия

Одной из уязвимостей DNS-транзакций являются отношения высокого доверия между различными DNS-серверами. Это означает, что серверы не проверяют подлинность получаемых ими записей, что позволяет злоумышленникам даже отправлять поддельные ответы со своих нелегитимных серверов.

Чтобы злоумышленники не использовали этот недостаток, группы безопасности должны ограничить уровень доверительных отношений, которые имеют их DNS-серверы с другими. Настройка DNS-серверов таким образом, чтобы они не опирались на доверительные отношения с другими DNS-серверами, затрудняет использование киберпреступниками DNS-сервера для компрометации записей на законных серверах.

Существует множество инструментов для проверки наличия угроз безопасности DNS.

Использование протокола DNSSEC

Расширения безопасности системы доменных имен (DNSSEC - Domain Name System Security Extensions) используют криптографию с открытым ключом для подписи DNS-записей, поэтому они добавляют функцию проверки и позволяют системам определять, является ли адрес законным или нет. Это помогает проверять и аутентифицировать подлинность запросов и ответов и тем самым предотвращать подделку.

При обычной работе протокол DNSSEC связывает уникальную криптографическую подпись с другой информацией DNS, такой как записи CNAME и A. Затем DNS-распознаватель использует эту подпись для проверки подлинности DNS-ответа перед отправкой его пользователю.

DNSSEC

Подписи безопасности гарантируют, что ответы на запросы, которые получают пользователи, проверяются законным исходным сервером. Хотя DNSSEC может предотвратить отравление кэша DNS, он имеет такие недостатки, как сложное развертывание, предоставление данных и уязвимость перечисления зон в более ранних версиях.

Не уверены, что в вашем домене включен DNSSEC? Немедленно проверьте с помощью инструмента DNSSEC Test.


Используйте последние версии программного обеспечения DNS и BIND (Berkeley Internet Name Domain)

BIND версии 9.5.0 или выше обычно имеет расширенные функции безопасности, такие как криптографически безопасные идентификаторы транзакций и рандомизация портов, что помогает минимизировать отравление DNS-кэша. Кроме того, ИТ-специалисты должны поддерживать программное обеспечение DNS в актуальном состоянии и гарантировать, что оно является самой последней и безопасной версией.

Помимо вышеизложенного, ниже приведены другие эффективные способы или практики предотвращения отравления DNS-кэшем.

  • Настройка DNS-сервера для ответа только информацией, относящейся к запрошенному домену
  • Убедитесь, что на сервере кэша хранятся только данные, относящиеся к запрошенному домену
  • Принудительно использовать сети IP для всего трафика
  • Отключить функцию рекурсивных запросов DNS

Заключение

Отравление кэш-памяти DNS приводит к перенаправлению пользователей домена на вредоносные адреса. Некоторые серверы, управляемые злоумышленниками, могут обманывать ничего не подозревающих пользователей, которые загружают вредоносные программы или предоставляют пароли, информацию о кредитных картах и другие конфиденциальные личные данные. Для предотвращения этого важно использовать передовые методы обеспечения безопасности.

Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
Кибербезопасность
Скидка 10%
Основы кибербезопасности
Стань специалистом по кибербезопасности, изучи хакерский майндсет и научись защищать свою инфраструктуру! Самые важные и актуальные знания, которые помогут не только войти в ИБ, но и понять реальное положение дел в индустрии
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
Киберпреступность — это печальная реальность современности, затрагивающая как частных пользователей, так и бизнес. Ни одна компа
img
При передаче данных между системами крайне важно сохранять их целостность и конфиденциальность. Для этого существуют протоколы и
img
Основные тезисы: Шифрование – это крайне важная технология для информационной безопасности, которая обеспечивает конфиденциально
img
Испытание на возможность проникновения в систему – это критически важный компонент, который предоставляет отказоустойчивые техно
img
Распределенные атаки типа «отказ в обслуживании» (DDoS - Distributed Denial of Service) направлены на то, чтобы «отключить» орга
img
  На заре информационных технологий, у разработчиков не было никакой необходимости беспокоиться о сетях. Их главной задачей бы
21 ноября
20:00
Бесплатный вебинар
Введение в Docker