Хакеры атакуют: как уберечь DNS-сервер
Атаки на DNS–сервера – далеко не новая стратегия злоумышленников. Например, в прошлом по причине подобной атаки пользователи в течение часа не могли зайти на страницы сервиса Twitter. Для обеспечения безопасности DNS сегодня разработана система Domain Name System Security Extensions, с внедрением которой также связан ряд проблем. Но вот в чем главный вопрос: даст ли DNSSEC стопроцентную гарантию безопасности?Ежедневно мы выходим в интернет, чтобы искать информацию, общаться, вести бизнес и так далее. Но мало кто задумывается о том, как осуществляется выход в сеть, и как мы попадаем на нужные страницы. Да и зачастую такие подробности знать не обязательно. Картина резко меняется, когда речь заходит об обеспечении безопасности. Для защиты от злоумышленников созданы различные средства ИБ, однако постоянно возникают новые уязвимости, а хакеры изобретают все новые способы атак. При организации безопасной веб-инфраструктуры обычно вспоминают о файловых, почтовых серверах и пр. Однако не менее важно защищать и системы доменных имен (Domain Name System, или DNS).
Из-за атаки на DNS-сервер пользователи Twitter целый час вместо любимого сервиса видели угрозы иранских хакеров в адрес США
DNS является распределенной системой, то есть представляет собой совокупность компьютеров, и предназначена для получения информации о доменах. Чаще всего пользуется для получения IP-адреса по имени хоста. Например, при вводе пользователем в адресную строку браузера адреса система DNS автоматически определит связанный с введенным именем IP и выдаст пользователю страницу по запрашиваемому адресу. Сейчас существует множество DNS-решений: BIND, Microsoft DNS Server, Open DNS и другие. Все они требуют защиты. Ведь, если хакер атакует DNS-сервер, то пользователи будут попадаться в ловушку, даже не подозревая об этом.
Чем опасны DNS-атаки
Во–первых, в результате DNS-атак пользователь рискует не попасть на нужную страницу. При вводе адреса сайта атакованный DNS будет перенаправлять запрос на подставные страницы.
Во–вторых, в результате перехода пользователя на ложный IP–адрес хакер может получить доступ к его личной информации. При этом пользователь даже не будет подозревать, что его информация рассекречена.
Атаки на DNS – далеко не новая стратегия хакеров, однако только недавно борьба с этим видом угроз стала принимать глобальный характер. "В прошлом уже происходили атаки на DNS–сервера, приводящие к массовым сбоям. Так, например, в декабре прошлого года из-за подмены DNS–записи в течение часа для пользователей был недоступен известный всем сервис Twitter. Акция носила политический характер, и вместо интерфейса социальной сети на главной странице ресурса отображались предостережения иранских хакеров по поводу американской агрессии. Но подобные атаки относятся к локальным инцидентам и не так серьезны. Куда опаснее атаки на корневые DNS–сервера. В частности, широкую огласку получили атаки в октябре 2002 года, когда неизвестные пытались "задедосить" 10 из 13 DNS–серверов верхнего уровня, и в 2009 году, когда пытались нарушить работу как минимум двух корневых серверов", - рассказал Алексей Шевченко, руководитель направления инфраструктурных решений российского представительства ESET.
Виды атак
Основной причиной такой подверженности DNS-систем угрозам является то, что они работают по протоколу UDP, более уязвимому, чем TCP.
Существует несколько способов атаки на DNS. Первый тип – это создание обманного DNS-сервера вследствие перехвата запроса. Механизм данной атаки очень прост. Хакер – атакующий, ждет DNS-запроса от компьютера жертвы. После того как атакующий получил запрос, он извлекает из перехваченного пакета IP–адрес запрошенного хоста. Затем генерируется пакет, в котором злоумышленник представляется целевым DNS–сервером. Сама генерация ответного пакета так же проста: хакер в ложном ответе жертве в поле IP DNS– сервера прописывает свой IP. Теперь компьютер жертвы принимает атакующего за реальный DNS. Когда клиент отправляет очередной пакет, атакующий меняет в нем IP-адрес отправителя и пересылает далее на DNS. В результате настоящий DNS-сервер считает, что запросы отправляет хакер, а не жертва. Таким образом, атакующий становится посредником между клиентом и реальным DNS–сервером. Далее хакер может исправлять запросы жертвы по своему усмотрению и отправлять их на реальный DNS. Но перехватить запрос можно, только если атакующая машина находится на пути основного трафика или в сегменте DNS–сервера.
Второй способ атаки применяется удаленно, если нет доступа к трафику клиента. Для генерации ложного ответа необходимо выполнение нескольких пунктов. Во-первых, совпадение IP-адреса отправителя ответа с адресом DNS-сервера. Затем, совпадение имен, содержащихся в DNS–ответе и запросе. Кроме того, DNS–ответ должен посылаться на тот же порт, с которого был отправлен запрос. Ну и, наконец, в пакете DNS–ответа поле ID должно совпадать с ID в запросе.
Первые два условия реализуются просто. А вот третий и четвертый пункт - сложнее. Обе задачи решаются подыскиванием нужный порта и ID методом перебора. Таким образом, у хакера есть все необходимое, чтобы атаковать жертву. Механизм этой атаки заключается в следующем. Жертва посылает на DNS–сервер запрос и переходит в режим ожидания ответа с сервера. Хакер, перехватив запрос, начинает посылать ложные ответные пакеты. В результате на компьютер клиента приходит шквал ложных ответов, из которых отсеиваются все, кроме одного, в котором совпали ID и порт. Получив нужный ответ, клиент начинает воспринимать подставной DNS–сервер как настоящий. Хакер же, в свою очередь, в ложном DNS ответе может поставить IP-адрес любого ресурса.