Атаки из сети Интернет

Содержание материала

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Схема работы службы DNS

Теперь рассмотрим схему работы службы DNS с точки зрения конечного пользователя при обращении его на какой-либо Web сервер. Итак, что происходит, когда пользователь хочет зайти на сайт www.mydomain.com?

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

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

Для того чтобы ваш DNS-сервер (или конечный хост) принял ответное сообщение за истинное, необходимо, чтобы совпали несколько условий:

  • Ответ пришел с того же IP-адреса, на который посылался запрос.
  • Ответ пришел на тот же порт, с которого посылался запрос.
  • В ответе должно быть указано то же самое имя, что и в DNS-запросе.
  • В заголовке DNS должно быть указано то же самое значение идентификатора запроса (ID), что и в самом запросе.

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

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

Конечно, для хакеров все не так радужно. Остается необходимость определить порт, с которого ваш сервер отправлял запрос, поле ID в запросе и придумать, как отправить UDP-пакет на ваш сервер от нужного IP-адреса (например, используя в качестве адреса отправителя IP-адрес сервера DNS вашего провайдера).

Однако решить эти задачи возможно.

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

Поле ID в запросе узнать тоже весьма реально. В лучшем случае оно будет перебираться, увеличиваясь на единицу при каждом запросе, к какому-либо внешнему серверу. Самым простым способом было бы послать на DNS-сервер какой-либо запрос о домене, подконтрольном злоумышленнику. Но, как правило, такая возможность из внешнего мира закрыта.

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

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

Номер порта, на который будет отправлен ответ, в данном случае это единственный параметр, подбираемый перебором. Еще несколько лет назад данный вид атаки был трудноосуществим именно из-за необходимости посылать большое количество информации с перебором портов получателя (а может, и поля ID в ответе). Но сейчас при наличии каналов в Интернете со скоростью 10,100 Мбит и более эта задача представляется не такой уж и сложной.

***

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


Обмениваться, хранить, передавать Ваши файлы стало просто как никогда.
yandex-disk
Читать подробнее: для чего Yandex-Диск проекту Mini-Server. Практика установки, настройки и использования сетевого хранилища на Ubuntu server LTS 12.04 в статье Резервное копирование сервера Ubuntu на Яндекс Диск.

>> Ubuntu 12.04 + Nginx Скачать сервер
>> Fedora 15 Скачать сервер
>> Простой Debian 6.0.6 Скачать сервер
>> CentOS 6.0 и
+ (5.6) другой
Скачать сервер
>> OpenSUSE 11.4
MAX
Скачать сервер

Вход на сайт

ВНИМАНИЕ!

Регистрация на сайте только по согласованию с администратором ресурса. Обращаться через форму обратной связи.