Пример: Глобальная сеть INTERNET
Я ищу:
На главную  |  Добавить в избранное  

Главная/

Компютерные сети. /

Безопасность сетей на базе TCP/IP

←предыдущая следующая→
1 2 3 4 5 

преобразования имён в адреса существовал специальный файл (так называемый hosts-файл), в котором именам в соответствие ставились IP-адреса. Файл регулярно обновлялся и рассылался по Сети. По мере развития Internet, число объединённых в Сеть хостов увеличивалось, и такая схема становилась всё менее работоспособной. Поэтому ей на смену пришла новая система преобразования имён, позволяющая пользователю получить IP-адрес, соответствующий определённому имени, от ближайшего информационно-поискового сервера (DNS-сервера). Этот способ решения проблемы получил название Domain Name System (DNS – доменная система имён). Для реализации этой системы был разработан протокол DNS.

Алгоритм работы DNS-службы такой:

  1. Хост посылает на IP-адрес ближайшего DNS-сервера DNS-запрос, в котором указывается имя сервера, IP-адрес которого требуется найти.
  2. DNS-сервер при получении такого запроса ищет указанное имя в своей базе имён. Если оно и соответствующий ему IP-адрес найдены, то DNS-сервер отправляет на хост DNS-ответ, в котором указывает этот адрес. Если имя не найдено в своей базе имён, то DNS-сервер пересылает DNS-запрос на один из ответственных за домены верхнего уровня DNS-серверов. Эта процедура повторяется, пока имя не будет найдено или будет не найдено.

Как видно из приведённого алгоритма, в сети, использующей протокол DNS, возможно внедрение ложного объекта – ложного DNS-сервера

Так как по умолчанию служба DNS функционирует на базе протокола UDP, не предусматривающего, в отличие от TCP, средств идентификации сообщений, это делает её менее защищённой.

Возможна такая схема работы ложного DNS-сервера:

  1. Ожидание DNS-запроса.
  2. Извлечение из полученного сообщения необходимых сведений и передача за запросивший хост ложного DNS-ответа от имени (с IP-адреса) настоящего DNS-сервера и с указанием в этом ответе IP-адреса ложного DNS-сервера.
  3. При получении пакета от хоста – изменение в IP-заголовке пакета его IP-адреса на IP-адрес ложного DNS-сервера и передача пакета на сервер. Ложный DNS-сервер ведёт работу с сервером от своего имени.
  4. При получении пакета от сервера – изменение в IP-заголовке пакета его IP-адреса на адрес ложного DNS-сервера и передача пакета на хост. Ложный DNS-сервер для хоста является настоящим сервером.

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

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

Также для затруднения данной атаки можно предложить использовать протокол TCP вместо UDP, хотя из документации не всегда известно, как это сделать, да и использование TCP всё равно не обеспечивает полную безопасность.

 

Навязывание хосту ложного маршрута с использованием протокола ICMP с целью создания в сети Internet ложного маршрутизатора

Это ещё одна атака, связанная с внедрением в РВС ложного объекта. Маршрутизация в Internet осуществляется на сетевом уровне (IP-уровень). Для её обеспечения в памяти сетевой ОС каждого хоста существуют таблицы маршрутизации, содержащие данные о возможных маршрутах. Каждый сегмент сети подключен к глобальной сети Internet как минимум через один маршрутизатор. Все сообщения, адресованные в другие сегменты сети, направляются на маршрутизатор, который, в свою очередь, перенаправляет их далее по указанному в пакете IP-адресу, выбирая при этом оптимальный маршрут.

Как говорилось ранее, в сети Internet существует управляющий протокол ICMP, одно из назначений которого состоит в динамическом изменении таблицы маршрутизации оконечных сетевых систем. Удалённое управление маршрутизацией реализовано в виде передачи на хост управляющего ICMP-сообщения Redirect Message.

Для осуществления данной атаки необходимо подготовить ложное ICMP-сообщение Redirect Datagrams for the Host, где указать адрес хоста, маршрут к которому будет изменён, и IP-адрес ложного маршрутизатора. Затем это сообщение передаётся на атакуемый хост от имени маршрутизатора. Эта атака позволяет получить контроль над трафиком между этим хостом и интересующим взломщика сервером, если хост и взломщик находятся в одном сегменте, или нарушить работоспособность хоста, если они располагаются в разных сегментах.

Защититься от этого воздействия можно фильтрацией проходящих ICMP-сообщений при помощи систем Firewall. Другой способ заключается в изменении сетевого ядра ОС, чтобы запретить реакцию на ICMP-сообщение Redirect.

Подмена одного из субъектов TCP-соединения в сети Internet (hijacking)

Протокол TCP (Transmission Control Protocol) является одним из базовых протоколов транспортного уровня сети Internet. Он позволяет исправлять ошибки, которые могут возникнуть в процессе передачи пакетов, устанавливая логическое соединение – виртуальный канал. По этому каналу передаются и принимаются пакеты с регистрацией их последовательности, осуществляется управление информационным потоком, организовывается повторная передача искаженных пакетов, а в конце сеанса канал разрывается. При этом протокол TCP является единственным базовым протоколом из семейства TCP/IP, имеющим дополнительную систему идентификации сообщений и соединения.

Для идентификации TCP-пакета в TCP-заголовке существуют два 32-разрядных идентификатора, которые также играют роль счетчика пакетов. Их названия - Sequence Number (номер последовательности) и Acknowledgment Number (номер подтверждения).

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

При нахождении взломщика и объекта атаки в одном сегменте, задача получения значений идентификаторов решается анализом сетевого трафика. Если же они находятся в разных сегментах, приходится пользоваться математическим предсказанием начального значения идентификатора экстраполяцией его предыдущих значений.

Для защиты от таких атак необходимо использовать ОС, в которых начальное значение идентификатора генерируется действительно случайным образом. Также необходимо использовать защищённые протоколы типа SSL, S-HTTP, Kerberos и т.д.

 

Направленный шторм ложных TCP-запросов на создание соединения

На каждый полученный TCP-запрос на создание соединения операционная система должна сгенерировать начальное значение идентификатора ISN и отослать его в ответ на запросивший хост. При этом, так как в сети Internet (стандарта IPv4) не предусмотрен контроль за IP-адресом отправителя сообщения, то невозможно отследить истинный маршрут, пройденный IP-пакетом, и, следовательно, у конечных абонентов сети нет возможности ограничить число возможных запросов, принимаемых в единицу времени от одного хоста. Поэтому возможно осуществление типовой атаки "Отказ в обслуживании", которая будет заключаться в передаче на атакуемый хост как можно большего числа ложных TCP-запросов на создание соединения от имени любого хоста в сети. При этом атакуемая сетевая ОС в зависимости от вычислительной мощности компьютера либо – в худшем случае

←предыдущая следующая→
1 2 3 4 5 


Copyright © 2005—2007 «RefStore.Ru»