Подмена сервера доменных имен (DNS) — это кибератака, с помощью которой злоумышленник направляет трафик жертвы на вредоносный сайт (вместо легитимного IP-адреса). Злоумышленники используют метод «отравления» кэша DNS для перехвата интернет-трафика и кражи учетных данных или конфиденциальной информации. Отравление кэша DNS и подмена DNS — тождественные понятия, часто используемые как синонимы. Хакер хочет обманом заставить пользователей ввести личные данные на небезопасном сайте. Как ему этого добиться? С помощью отравления кэша DNS. Для этого хакер подменяет или заменяет данные DNS для определенного сайта, а затем перенаправляет жертву на сервер злоумышленника вместо легитимного сервера. Таким образом хакер добивается своей цели, ведь перед ним открываются широкие возможности: он может совершить фишинговую атаку, украсть данные или даже внедрить в систему жертвы вредоносную программу.
Что такое подмена DNS и отравление кэша?
Прежде чем начать разговор об отравлении кэша DNS, сначала давайте вспомним, что такое DNS и кэширование DNS. DNS — это всемирный каталог IP-адресов и доменных имен. Можно сказать, что это своеобразный телефонный справочник интернета. DNS переводит удобные для пользователей адреса, такие как varonis.com, в IP-адреса, например 92.168.1.169, которые используются компьютерами для работы в сети. Кэширование DNS — это система хранения адресов на DNS-серверах по всему миру. Для ускорения обработки ваших DNS-запросов разработчики создали распределенную систему DNS. Каждый сервер хранит список известных ему DNS-записей, который называется кэшем. Если на ближайшем к вам DNS-сервере нужный IP-адрес отсутствует, он запрашивает вышестоящие DNS-серверы до тех пор, пока адрес веб-сайта, на который вы пытаетесь попасть, не будет найден. После этого ваш DNS-сервер сохраняет эту новую запись в вашем кэше, чтобы в следующий раз получить ответ быстрее.
Примеры и последствия отравления кэша DNS
Концепция DNS не приспособлена к специфике современного интернета. Конечно, со временем DNS был усовершенствован, однако сейчас по-прежнему достаточно одного неправильно настроенного DNS-сервера, чтобы миллионы пользователей ощутили на себе последствия. Пример — атака на WikiLeaks, когда злоумышленники с помощью отравления кэша DNS перехватывали трафик, перенаправляя его на собственный клон сайта. Целью этой атаки было увести трафик с WikiLeaks, и она достигла определенного успеха. Отравление кэша DNS весьма непросто обнаружить обычным пользователям. В настоящее время система DNS построена на доверии, и это является ее слабым местом. Люди чересчур сильно доверяют DNS и никогда не проверяют, соответствует ли адрес в их браузере тому, что им в действительности нужно. Злоумышленники же пользуются этой беспечностью и невнимательностью для кражи учетных данных и другой важной информации.
Как работает отравление кэша DNS?
Отравление кэша DNS означает, что на ближайшем к вам DNS-сервере содержится запись, отправляющая вас по неверному адресу, который, как правило, контролируется злоумышленником. Существует ряд методов, которые используют злоумышленники для отравления кэша DNS.
Перехват трафика локальной сети с помощью подмены протокола ARP
Вы удивитесь, насколько уязвимой может быть локальная сеть. Многие администраторы могут пребывать в уверенности, что перекрыли все возможные доступы, но, как известно, дьявол кроется в деталях.
Одна из распространенных проблем — сотрудники, работающие удаленно. Можно ли быть уверенными, что их сеть Wi-Fi защищена? Хакеры могут взломать слабый пароль от сети Wi-Fi за считанные часы.
Еще одна проблема — открытые порты Ethernet, доступные всем желающим в коридорах, вестибюлях и других общественных местах. Просто представьте: посетитель может подключить к своему устройству кабель Ethernet, предназначенный для дисплея в вестибюле. Как хакер может использовать доступ к вашей локальной сети, полученный одним из перечисленных выше способов? Во-первых, он сможет создать фишинговую страницу для сбора учетных данных и другой ценной информации. Затем он может разместить этот сайт либо в локальной сети, либо на удаленном сервере, и для этого ему потребуется всего-навсего одна строка кода на Python. После этого хакер может начать следить за сетью с помощью специальных инструментов, таких как Betterrcap. На этом этапе хакер изучает сеть и производит рекогносцировку, но трафик все еще проходит через маршрутизатор. Затем злоумышленник может совершить подмену протокола разрешения адресов (ARP), чтобы изнутри изменить структуру сети. Протокол ARP используется сетевыми устройствами для связывания MAC-адреса устройства с IP-адресом в сети. Bettercap будет отправлять сообщения, заставляя все устройства в сети считать компьютер хакера маршрутизатором. Благодаря этой уловке хакер сможет перехватывать весь сетевой трафик, проходящий через маршрутизатор. Достигнув перенаправления трафика, злоумышленник может запустить модуль Bettercap для подмены DNS. Этот модуль будет искать любые запросы к целевому домену и отправлять жертве ложные ответы. Ложный ответ содержит IP-адрес компьютера злоумышленника, переправляя все запросы к целевому сайту на фишинговую страницу, созданную хакером. Теперь хакер видит трафик, предназначенный для других устройств в сети, собирает вводимые учетные данные и внедряет вредоносные загрузки.
Если же хакер не может получить доступ к локальной сети, он прибегнет к одной из следующих атак.
Подделка ответов с помощью атаки «дней рождения»
DNS не проверяет подлинность ответов на рекурсивные запросы, поэтому в кэше сохраняется первый ответ. Злоумышленники используют так называемый «парадокс дней рождения», чтобы попытаться предугадать и отправить поддельный ответ запрашивающей стороне. Для предугадывания атака «дней рождения» использует математику и теорию вероятностей. В этом случае злоумышленник пытается угадать идентификатор транзакции вашего DNS-запроса, и в случае успеха поддельная запись DNS попадает к вам раньше легитимного ответа. Успех атаки «дней рождения» не гарантирован, но в конце концов злоумышленник сможет подложить в кэш поддельный ответ. После того как атака увенчается успехом, хакер сможет видеть трафик от поддельной записи DNS до окончания жизненного цикла (TTL) записи DNS.
Эксплойт Каминского
Эксплойт Каминского является разновидностью атаки «дней рождения». Обнаруживший эту уязвимость Дэн Каминский впервые представил ее на конференции BlackHat в 2008 году. Суть эксплойта заключается в том, что сначала хакер отправляет DNS-резолверу запрос для несуществующего домена, например fake.varonis.com. Получив такой запрос, DNS-резолвер перенаправляет его на авторитетный сервер имен, чтобы получить IP-адрес ложного субдомена. На этом этапе злоумышленник перегружает DNS-резолвер огромным количеством поддельных ответов в надежде, что один из этих поддельных ответов совпадет с идентификатором транзакции исходного запроса. В случае успеха хакер подменяет в кэше DNS-сервера IP-адрес, например, как в нашем примере с varonis.com. Резолвер продолжит отвечать всем запрашивающим, что поддельный IP-адрес varonis.com является настоящим, пока не истечет жизненный цикл записи DNS.
Как обнаружить отравление кэша DNS?
Как обнаружить, что кэш DNS отравлен? Для этого нужно следить за вашими DNS-серверами в поисках индикаторов возможной атаки. Однако ни у кого нет вычислительных мощностей, чтобы справиться с такими объемами DNS-запросов. Лучшим решением будет применить к вашему мониторингу DNS аналитику безопасности данных. Это позволит отличить нормальное поведение DNS от атак злоумышленников.
• Внезапное увеличение активности DNS из одного источника в отношении одного домена свидетельствует о потенциальной атаке «дней рождения».
• Увеличение активности DNS из одного источника, который запрашивает у вашего DNS-сервера многочисленные доменные имена без рекурсии, свидетельствует о попытке подобрать запись для последующего отравления.
Помимо мониторинга DNS необходимо также вести мониторинг событий Active Directory и поведения файловой системы, чтобы вовремя обнаружить аномальную активность. А еще лучше будет использовать аналитику для поиска взаимосвязи между всеми тремя векторами. Это позволит получить ценную контекстную информацию для усиления стратегии кибербезопасности.
Способы защиты от отравления кэша DNS
Помимо мониторинга и аналитики вы можете внести изменения в настройки DNS-сервера:
- ограничьте рекурсивные запросы, чтобы защититься от потенциального целевого отравления кэша;
- храните только данные, относящиеся к запрашиваемому домену;
- ограничьте ответы только теми, которые касаются запрашиваемого домена;
- требуйте у клиентов использовать протокол HTTPS.
Убедитесь, что вы используете последние версии программного обеспечения BIND и DNS и, таким образом, имеете все актуальные исправления уязвимостей. Если возможно, например, в случае с удаленными сотрудниками, организуйте работу так, чтобы все удаленные компьютеры были подключены через VPN. Это защитит трафик и DNS-запросы от локального отслеживания. Кроме того, стимулируйте сотрудников создавать надежные пароли для сетей Wi-Fi, чтобы также снизить риски.
И, наконец, используйте зашифрованные DNS-запросы. Модули безопасности службы доменных имен (DNSSEC) — это протокол DNS, который использует подписанные DNS-запросы для предотвращения их подмены. При использовании DNSSEC, DNS-резолверу необходимо проверить подпись на уполномоченном DNS-сервере, что замедляет весь процесс. Вследствие этого DNSSEC пока не получил широкого распространения.
DNS поверх HTTPS (DoH) и DNS поверх TLS (DoT) являются конкурирующими спецификациями для следующей версии DNS и, в отличие от DNSSEC, предназначены для обеспечения безопасности DNS-запросов без ущерба скорости. Тем не менее эти решения не идеальны, поскольку могут замедлить или полностью сделать невозможным локальный мониторинг и анализ DNS. Важно отметить, что DoH и DoT могут обходить родительский контроль и другие блокировки на уровне DNS, установленные в сети. Несмотря на это, Cloudflare, Quad9 и Google имеют общедоступные DNS-серверы с поддержкой DoT. Многие новые клиенты поддерживают эти современные стандарты, хотя их поддержка и отключена по умолчанию. Вы можете найти более подробную информацию об этом в нашем посте по безопасности DNS.
Подмена DNS заменяет легитимный IP-адрес сайта на IP-адрес компьютера хакера. Обнаружить подмену очень непросто, ведь с точки зрения конечного пользователя он вводит в браузере абсолютно нормальный адрес сайта. Несмотря на это остановить подобную атаку можно. Риски снизить можно, используя мониторинг DNS, например, от Varonis, а также стандарт шифрования DNS поверх TLS (DoT).
Отравление кэша: часто задаваемые вопросы
Ознакомьтесь с распространенными вопросами о подмене DNS и ответами на них.
Отравление кэша DNS и подмена кэша DNS (спуфинг) — это одно и то же?
Да, отравлением кэша и подменой кэша называют один и тот же тип кибератаки.
Как работает отравление кэша DNS?
Отравление кэша обманывает ваш DNS-сервер, сохраняя на нём поддельную запись DNS. После этого трафик перенаправляется на сервер, выбранный хакером, и там осуществляется кража данных.
Какие меры безопасности можно применять для защиты от отравления кэша DNS?
Владельцы сайта могут осуществлять мониторинг и аналитику для выявления подмены DNS. Кроме того, можно обновить DNS-серверы, чтобы использовать модули безопасности службы доменных имен (DNSSEC) или другую систему шифрования, например DNS поверх HTTPS или DNS поверх TLS. Повсеместное использование полного сквозного шифрования, такого как HTTPS, также может предотвратить подмену DNS. Брокеры безопасного облачного доступа (CASB) чрезвычайно полезны для этих целей. Конечные пользователи могут сбросить потенциально подделанный кэш DNS, периодически очищая кэш DNS своего браузера, или после подключения к небезопасной или общедоступной сети. Использование VPN может защитить от подмены DNS в локальной сети. Избегайте подозрительных ссылок. Это поможет избежать риска заражения кэша вашего браузера.
Как проверить, подверглись ли вы атаке с отравлением кэша?
После того как кэш DNS был отравлен, это сложно обнаружить. Куда лучшая тактика — осуществлять мониторинг ваших данных и защищать систему от вредоносных программ, чтобы уберечься от утечек данных в следствие отравления кэша DNS. Посетите нашу интерактивную лабораторию кибератак, чтобы увидеть, как мы используем мониторинг DNS для обнаружения реальных угроз кибербезопасности.
Как работает связь DNS?
Когда конечный пользователь вводит URL-адрес, например Varonis.com, в свой браузер, происходит следующее:
- Сначала браузер проверит свой локальный кэш на наличие уже сохраненных данных DNS.
- Если эти данные отсутствуют, он запросит вышестоящий DNS-сервер, которым, как правило, является ваш маршрутизатор в локальной сети.
- Если маршрутизатор в своем кэше тоже не содержит требуемой записи DNS, то запрос отправится дальше, к вышестоящим поставщикам DNS, таким как Google, Cloudflare или Quad9.
- Этот вышестоящий сервер получит DNS-запрос и проверит свой кэш.
4.1. Если данных в кэше нет, запустится рекурсивный DNS-резолвер, и сначала будут запрошены корневые серверы DNS с вопросом «кто обрабатывает .com».
4.2. Затем резолвер отправит запрос серверу домена верхнего уровня .com, чтобы узнать «кто обрабатывает Varonis.com», на который домен верхнего уровня отвечает полномочным сервером имен для данного URL.
4.3. После этого резолвер отправляет запрос полномочному серверу имен вопрос «какой IP-адрес у Varonis.com», на который полномочный сервер отвечает IP-адресом домена. - Затем данные DNS отправляются обратно по цепочке, пока не попадут на устройство конечного пользователя. На всем пути следования каждый из DNS-серверов запишет полученный ответ в свой кэш для дальнейшего использования.
Как злоумышленники отравляют кэш DNS?
Способов отравления кэша много, и вот самые распространенные из них: принудить жертву нажать на вредоносную ссылку, использующую встроенный код для изменения кэша DNS в браузере пользователя; взлом локального DNS-сервера с помощью «атаки через посредника». Вышеупомянутая «атака через посредника» использует подмену протокола разрешения адресов (ARP) для перенаправления DNS-запросов на DNS-сервер, контролируемый злоумышленником.
Что такое отравление кэша DNS?
Отравление кэша DNS — это действия по замене записи в базе данных DNS на IP-адрес, ведущий на вредоносный сервер, контролируемый злоумышленником.
Как выполняется подмена DNS?
Хакер выполняет атаку с подменой DNS, получая доступ и изменяя кэш DNS или перенаправляя запросы DNS на свой собственный DNS-сервер.
Что подразумевается под подменой DNS (спуфингом)?
Понятие «подмена DNS» (спуфинг) значит, что URL, вводимый пользователем в браузере, например varonis.com, на самом деле не ведет на нужный официальный IP-адрес, соответствующий этому URL. Вместо этого пользователь перенаправляется на вредоносный сервер, контролируемый хакером.
Чем опасна подмена DNS?
Подмена DNS представляет опасность, потому что по своей природе служба имен доменов (DNS) считается надежной, поэтому зачастую ее не защищают каким-либо шифрованием. Это приводит к тому, что хакеры могут подменять записи в кэше DNS для дальнейшей кражи данных, внедрения вредоносных программ, фишинга и блокировки обновлений.
Основная угроза, которую представляет атака подменой DNS, заключается в краже данных через фишинговые страницы. Помимо этого существует риск внедрения вредоносной программы под видом загружаемых файлов, которые выглядят настоящими. Также, если обновление системы производится через интернет, злоумышленник может блокировать обновление, изменяя записи в DNS так, чтобы они не вели на нужный сайт.