Типы атак. Часть 4

Dummy DNS for host
Внедрение в сеть Internet ложного сервера путем создания нап-
равленного "шторма" ложных DNS-ответов на атакуемый хост. В этом
случае хакер осуществляет постоянную передачу на атакуемый хост
заранее подготовленного ложного DNS-ответа от имени настоящего
DNSсервера без приема DNS-запроса.
Другими словами, атакующий
создает в сети Internet направленный "шторм" ложных DNS-ответов.
Это возможно, так как обычно для передачи DNS-запроса использует-
ся протокол UDP, в котором отсутствуют средства идентификации па-
кетов. Единственными критериями, предъявляемыми сетевой ОС хоста
к полученному от DNS-сервера ответу, является, во-первых, совпа-
дение IP-адреса отправителя ответа с IP-адресом DNS-сервера,
во-вторых, чтобы в DNS-ответе было указано то же имя, что и в
DNS-запросе, в-третьих, DNS-ответ должен быть направлен на тот же
UDPпорт, с которого был послан DNS-запрос (в данном случае это
первая проблема для атакующего), и, в-четвертых, в DNS-ответе по-
ле идентификатор запроса в заголовке DNS (ID) должно содержать то
же значение, что и в переданном DNS-запросе (а это вторая пробле-
ма). Предпологаем, что атакующий не имеет возможности перехватить
DNS-запрос, то основную проблему для него представляет номер
UDP-порта, с которого был послан запрос. Но номер порта отправи-
теля принимает ограниченный набор значений, поэтому атакующему
достаточно действовать простым перебором, направляя ложные ответы
на соответствующий перечень портов. На первый взгляд второй проб-
лемой может быть двухбайтовый идентификатор DNS-запроса, но в
данном случае он либо равен единице, либо имеет значение близкое
к нулю (один запрос - ID увеличивается на 1). Поэтому для осу-
ществления данной удаленной атаки атакующему необходимо выбрать
интересующий его хост (А), маршрут к которому требуется изменить
так, чтобы он проходил через ложный сервер - хост атакующего. Это
достигается постоянной передачей (направленным "штормом") атакую-
щим ложных DNS-ответов на атакуемый хост от имени настоящего
DNS-сервера на соответствующие UDP-порты. В этих ложных DNSотве-
тах указывается в качестве IP-адреса хоста А IP-адрес атакующего.
Далее атака развивается по следующей схеме. Как только цель атаки
(атакуемый хост) обратиться по имени к хосту А, то от данного
хоста в сеть будет передан DNS-запрос, который атакующий никогда
не получит, но этого ему и не требуется, так как на хост сразу же
поступит постоянно передаваемый ложный DNS-ответ, который и будет
воспринят ОС атакуемого хоста как настоящий ответ от DNS-сервера.
Атака состоялась и теперь атакуемый хост будет передавать все па-
кеты, предназначенные для А, на IP-адрес хоста атакующего, кото-
рый, в свою очередь, будет переправлять их на А, имея возможность
воздействовать (менять, модифицировать, анализировать и др) на
перехваченную информацию. Таким образом, реализация данной уда-
ленной атаки, использующей пробелы в безопасности службы DNS,
позволяет из любой точки сети Internet нарушить маршрутизацию
между двумя заданными объектами. То есть данная удаленная атака
осуществляется межсегментно по отношению к цели атаки и угрожает
безопасности любого хоста Internet, использующего обычную службу
DNS.

Dummy DNS for server
Внедрение в сеть Internet ложного сервера путем создания нап-
равленного "шторма" ложных DNS - ответов на атакуемый DNS - сер-
вер. Из схемы удаленного DNS-поиска следует, что в том случае,
если указанное в запросе имя DNS-сервер не обнаружил в своей базе
имен, то запрос отсылается сервером на один из корневых DNS-сер-
веров, адреса которых содержатся в файле настроек сервера ro-
ot.cache. То есть, в том случае, если DNS-сервер не имеет сведе-
ний о запрашиваемом хосте, то он пересылает запрос далее, а зна-
чит, теперь сам DNS-сервер является инициатором удаленного
DNS-поиска. Поэтому ничто не мешает атакующему, действуя методами
Dummy DNS for host, направить свою атаку на DNS-сервер. То есть,
в качестве цели атаки теперь будет выступать не хост, а DNS-сер-
вер и ложные DNS-ответы будут направляться атакующим от имени
корневого DNSсервера на атакуемый DNS-сервер. При этом важно учи-
тывать следующую особенность работы DNS-сервера. Для ускорения
работы каждый DNS-сервер кэширует в области памяти свою таблицу
соответствия имен и IP-адресов хостов. В том числе в кэш заносит-
ся динамически изменяемая информация об именах и IP-адресах хос-
тов, найденных в процессе функционирования DNSсервера. То есть,
если DNS-сервер, получив запрос, не находит у себя в кэштаблице
соответствующей записи, он пересылает ответ на следующий сервер
и, получив ответ, заносит найденные сведения в кэш-таблицу в па-
мять. Таким образом, при получении следующего запроса DNS-серверу
уже не требуется вести удаленный поиск, так как необходимые све-
дения уже находятся у него в кэш-таблице. Из анализа описанной
схемы удаленного DNS-поиска становится очевидно, что в том слу-
чае, если в ответ на запрос от DNS-сервера атакующий направит
ложный DNS-ответ (или в случае "шторма" ложных ответов будет вес-
ти их постоянную передачу), то в кэш-таблице сервера появится со-
ответствующая запись с ложными сведениями и, в дальнейшем, все
хосты, обратившиеся к данному DNS-серверу, будут дезинформированы
и при обращении к хосту, маршрут к которому атакующий решил изме-
нить, связь с ним будет осуществляться через хост атакующего. И с
течением времени эта ложная информация, попавшая в кэш DNS-серве-
ра, будет распространяться на соседние DNS-серверы высших уров-
ней, а, следовательно, все больше хостов в Internet будут дезин-
формированы и атакованы.Очевидно, что в том случае, если атакую-
щий не может перехватить DNS-запрос от DNS-сервера, то для реали-
зации атаки ему необходим "шторм" ложных DNS-ответов, направлен-
ный на DNS-сервер. При этом возникает следующая основная пробле-
ма, отличная от проблемы подбора портов в случае атаки, направ-
ленной на хост. Как уже отмечалось ранее DNS-сервер, посылая зап-
рос на другой DNS-сервер, идентифицирует этот запрос двухбайтовым
значением (ID). Это значение увеличивается на единицу с каждым
передаваемым запросом. Узнать атакующему это текущее значение
идентификатора DNS-запроса не представляется возможным. Поэтому,
ничего кроме перебора 216 возможных значений ID предложить
что-либо достаточно сложно. Зато исчезает проблема перебора пор-
тов, так как все DNS-запросы передаются DNS-сервером на 53 порт.
Следующая проблема, являющаяся условием осуществления этой уда-
ленной атаки на DNS-сервер при направленном "шторме" ложных
DNSответов состоит в том, что атака будет иметь успех, только в
том случае, если DNS-сервер пошлет запрос на поиск определенного
имени (которое содержится в ложном DNS-ответе). DNS-сервер посы-
лает этот столь необходимый и желанный для атакующего запрос в
том случае, если на него прийдет DNS-запрос от какого-либо хоста
на поиск данного имени и этого имени ни окажется в кэш-таблице
DNS-сервера. В принципе этот запрос может прийти когда угодно и
атакующему может быть придется ждать результатов атаки сколь
угодно долго. Однако ни что не мешает атакующему, не дожидаясь
никого, самому послать на атакуемый DNS-сервер подобный DNS-зап-
рос и спровоцировать DNS-сервер на поиск указанного в запросе
имени. Тогда эта атака с большой вероятностью будет иметь успех
практически сразу же после начала ее осуществления.

Syslog spoofing
Заключается в передаче на компьютер жертву сообщения от имени
другого компьютера внутренней сети. Поскольку протокол syslog ис-
пользуется для ведения системных журналов, путем передачи ложных
сообщений на компьютер-жертву можно навязать информацию или за-
мести следы несанкционированного доступа.

IP spoofing
Хакер отправляет в сеть пакеты с ложным обратным адресом. С
помощью этой атаки хакер может переключать на свой компьютер сое-
динения, установленные между другими компьютерами. При этом права
доступа хакера становятся равными правам того пользователя, чье
соединение с сервером было переключено на компьютер хакера. Уста-
новка TCPсоединения происходит в три стадии: клиент выбирает и
передает серверу sequence number (назовем его C-SYN), в ответ на
это сервер высылает клиенту пакет данных, содержащий подтвержде-
ние (C-ACK) и собственный sequence number сервера (S-SYN). Теперь
уже клиент должен выслать подтверждение (S-ACK). После этого сое-
динение считается установленным и начинается обмен данными. При
этом каждый пакет имеет в заголовке поле для sequence number и
acknowledge number. Данные числа увеличиваются при обмене данными
и позволяют контролировать корректность передачи. Предположим,
что хакер может предсказать, какой sequence number (S-SYN по схе-
ме) будет выслан сервером. Это возможно сделать на основе знаний
о конкретной реализации TCP/IP. Таким образом, послав один пакет
серверу, хакер получит ответ и сможет (возможно, с нескольких по-
пыткок и с поправкой на скорость соединения) предсказать sequence
number для следующего соединения. Если реализация TCP/IP исполь-
зует специальный алгоритм для определения sequence number, то он
может быть выяснен с помощью посылки нескольких десятков пакетов
серверу и анализа его ответов. Итак, предположим, что система A
доверяет системе B, так, что пользователь системы B может сделать
"rlogin A" и оказаться на A, не вводя пароля. Предположим, что
хакер расположен на системе C. Система A выступает в роли серве-
ра, системы B и C - в роли клиентов. Первая задача хакера - ввес-
ти систему B в состояние, когда она не сможет отвечать на сетевые
запросы. Это может быть сделано несколькими способами, в простей-
шем случае нужно просто дождаться перезагрузки системы B. Нес-
кольких минут, в течении которых она будет неработоспособна,
должно хватить. После этого хакер может попробовать притвориться
системой B, для того, что бы получить доступ к системе A (хотя бы
кратковременный). Хакер высылает несколько IP-пакетов, инициирую-
щих соединение, системе A, для выяснения текущего состояния sequ-
ence number сервера. Хакер высылает IP-пакет, в котором в качест-
ве обратного адреса указан уже адрес системы B. Система A отвеча-
ет пакетом с sequence number, который направляется системе B. Од-
нако система B никогда не получит его (она выведена из строя),
как, впрочем, и хакер. Но он на основе предыдущего анализа дога-
дывается, какой sequence number был выслан системе B. Хакер подт-
верждает "получение" пакета от A, выслав от имени B пакет с пред-
полагаемым S-ACK (заметим, что если системы располагаются в одном
сегменте, хакеру для выяснения sequence number достаточно перех-
ватить пакет, посланный системой A). После этого, если хакеру по-
везло и sequence number сервера был угадан верно, соединение счи-
тается установленным. Теперь хакер может выслать очередной фаль-
шивый IP-пакет, который будет уже содержать данные. Например, ес-
ли атака была направлена на rsh, он может содержать команды соз-
дания файла .rhosts или отправки /etc/passwd хакеру по электрон-
ной почте.

Host spoofing
Атака основана на протоколе ICMP, одной из функцией которого
является информирование хостов о смене текущего маршрутизатора.
Данное управляющее сообщение носит название redirect. Существует
возможность посылки с любого хоста в сегменте сети ложного redi-
rect-сообщения от имени маршрутизатора на атакуемый хост. В ре-
зультате у хоста изменяется текущая таблица маршрутизации и, в
дальнейшем, весь сетевой трафик данного хоста будет проходить,
например, через хост, отославший ложное redirectсообщение. Таким
образом возможно осуществить активное навязывание ложного маршру-
та внутри одного сегмента сети Internet.


Комментарии

Нет комментариев. Вы можете быть первым!

Оставить комментарий