породило проблему преобразования имен в IP-адреса. Такое преобразование необходимо, так как на сетевом уровне адресация пакетов идет не по именам, а по IP-адресам, следовательно, для непосредственной адресации сообщений в Internet имена не годятся.
Была создана система преобразования имен, позволяющая пользователю в случае отсутствия у него информации о соответствии имен и IP-адресов получить необходимые сведения от ближайшего информационнопоискового сервера (DNS-сервера).
Рис.20. Ложный ARP-сервер
Эта система получила название доменной системы имен - DNS (Domain Name System). Для реализации систе-
мы DNS был создан специальный сетевой протокол DNS,
118
для обеспечения эффективной работы которого в сети создаются специальные выделенные информационнопоисковые серверы - DNS-серверы.
Рассмотрим DNS-алгоритм удаленного поиска IPадреса по имени в сети Internet:
1.Хост посылает на IP-адрес ближайшего DNSсервера (он устанавливается при настройке сетевой ОС) DNS-запрос, в котором указывает имя хоста, IP-адрес которого необходимо найти;
2.DNS-сервер, получив запрос, просматривает свою базу имен на наличие в ней указанного в запросе имени. В случае, если имя найдено, а, следовательно, найден и соответствующий ему IP-адрес, то на запросивший хост DNS-
сервер отправляет DNS-ответ, в котором указывает искомый IP-адрес. В случае, если указанное в запросе имя DNS-сервер не обнаружил в своей базе имен, то DNS-запрос отсылается DNSсервером на один из корневых DNS-серверов, адреса которых содержатся в файле настроек DNS-сервера root.cache, и описанная в этом пункте процедура повторяется, пока имя не будет найдено (или не найдено).
Однако при этом появилась возможность осуществления в сети, использующей протокол DNS, типовой удаленной атаки "Ложный объект". Пример такой атаки показан на рис.21.
119
Рис.21. Функциональная схема ложного DNS-сервера
Другой вариант внедрения ложного объекта с использованием недостатков алгоритма удаленного поиска состоит в периодической передаче на атакуемый объект заранее подготовленного ложного ответа без приема поискового запроса. В самом деле, атакующему, для того чтобы послать ложный ответ, не всегда обязательно дожидаться приема запроса (он может, в принципе, не иметь подобной возможности перехвата запроса). При этом атакующий может спровоцировать атакуемый объект на передачу поискового запроса, и тогда его ложный ответ будет немедленно иметь успех. Данная типовая удаленная атака, получившая название направленного "шторма" ложных DNS-ответов, чрезвычайно характерна для глобальных сетей, когда у атакующего из-за нахождения
120
его в другом сегменте относительно цели атаки просто нет возможности перехватить поисковый запрос (рис.22).
Рис. 22. Внедрение в Internet ложного сервера путем создания направленного "шторма" ложных DNS-ответов на атакуемый хост
Получив контроль над проходящим потоком информации в сети, ложный объект может а) перехватить информацию, передаваемую по сети, б) модифицировать передаваемые данные или коды (в том числе программным путем), в) внедрить вредоносные программы (вирусы, черви, программы-шпионы), г) изменить логику работы ис-
121
полняемых файлов (например, при запуске на сервере программы идентификации пользователей распределенной базы данных ложный объект может так модифицировать код этой программы, что появится возможность беспарольного входа с наивысшими привилегиями в базу данных.), в) подменить информацию (при возникновении в сети определенного контролируемого ложным объектом события одному из участников обмена посылается заранее подготовленная дезинформация, при этом такая дезинформация в зависимости от контролируемого события может быть воспринята либо как исполняемый код, либо как данные).
В последнем случае ложный объект контролирует событие, которое состоит в подключении пользователя к серверу. В этом случае он ожидает, например, запуска соответствующей программы входа в систему. В случае, если эта программа находится на сервере, то при ее запуске исполняемый файл передается на рабочую станцию. Вместо того, чтобы выполнить данное действие, ложный объект передает на рабочую станцию код заранее написанной специальной программы - захватчика паролей. Эта программа выполняет визуально те же действия, что и настоящая программа входа в систему, например, запрашивая имя и пароль пользователя, после чего полученные сведения посылаются на ложный объект, а пользователю выводится сообщение об ошибке. При этом пользователь, посчитав, что он неправильно ввел пароль (пароль обычно не отображается на экране) снова запустит программу подключения к системе (на этот раз настоящую) и со второго раза получит доступ. Результат такой атаки – имя и пароль пользователя, сохраненные на ложном объекте.
122