- •Воронеж 2008
- •Воронеж 2008
- •Введение
- •1 Подбор пароля
- •1.1 Общие понятия парольной защиты
- •1.1.1 Парольная система
- •1.1.2 Методы подбора паролей
- •1.1.3 Методы количественной оценки стойкости паролей
- •1.2 Парольная защита операционных систем
- •1.2.1 Подбор паролей в ос Windows
- •1.2.1.1 База данных учетных записей пользователей
- •1.2.1.2 Хранение паролей пользователей
- •1.2.1.3 Использование пароля
- •1.2.1.4 Возможные атаки на базу данных sam
- •1.2.2 Подбор паролей в ос unix
- •1.3 Классификация и принцип работы программного обеспечения для подбора паролей
- •1.3.1 Подбор паролей в oc Windows
- •1.3.2 Подбор паролей в oc unix
- •1.3.3 Подбор паролей в архивах zip, rar и arj
- •1.3.4 Подбор паролей документов ms Office
- •1.3.5 Подбор паролей pdf документов
- •1.4 Противодействие подбору паролей
- •1.4.1 Требования к паролю
- •1.4.2 Правила назначения/изменения паролей
- •1.4.3 Требования к генерации паролей
- •1.4.4 Хранение пароля пользователем
- •1.4.5 Хранение паролей компьютерной системой
- •1.4.6 Противодействие попыткам подбора паролей
- •1.4.7 Защита Windows nt и Unix от подбора паролей
- •2.1.2 Протокол tcp
- •2.1.2.1 Функции протокола tcp
- •2.1.2.2 Базовая передача данных
- •2.1.2.3 Разделение каналов
- •2.1.2.4 Управление соединениями
- •2.1.2.5 Заголовок тср-сегмента
- •2.1.2.6 Состояния соединения
- •2.2 Основные методы, применяемые при сканировании портов
- •2.2.1 Методы сканирования tcp-портов
- •2.2.1.1 Методы открытого сканирования
- •2.2.1.1.1 Метод icmp-сканирования
- •2.2.1.1.2 Сканирование tcp-портов функцией connect()
- •2.2.1.1.3 Сканирование tcp-портов флагом syn
- •2.2.1.1.4 Сканирование tcp-портов флагом fin
- •2.2.1.1.5 Сканирование с использованием ip-фрагментации
- •2.2.1.1.6 Сканирование tcp-портов методом reverse-ident (обратной идентификации)
- •2.2.1.1.7 Сканирование Xmas
- •2.2.1.1.8 Null сканирование
- •2.2.1.2 Методы "невидимого" удаленного сканирования
- •2.2.1.2.1 Скрытая атака по ftp
- •2.2.1.2.2 Сканирование через proxy-сервер
- •2.2.1.2.3 Скрытное сканирование портов через системы с уязвимой генерацией ip id
- •2.2.1.2.3.1 Исторические предпосылки
- •2.2.1.2.3.2 Описание базового метода ip id сканирования
- •2.2.1.2.3.3 Исследование правил и обход брандмауэра при сканировании
- •2.2.1.2.3.4 Сканирование машин с приватными адресами
- •2.2.1.2.3.5 Использование ip id при сканирование udp сервисов за брандмауэром
- •2.2.2 Методы сканирования udp-портов
- •2.2.2.1 Сканирование udp-портов проверкой icmp-сообщения «Порт недостижим»
- •2.2.2.2 Сканирование udp-портов с использованием функций recvfrom() и write()
- •2.3.1 Сканирование портов в ос семейства Windows
- •2.3.2 Сканирование портов в ос семейства Unix
- •2.4 Защита от сканирования портов
- •3 Анализ сетевого трафика
- •3.1 Анализ сетевого трафика сети Internet
- •3.1.1 Ложные arp-ответы
- •3.1.2 Навязывание ложного маршрутизатора
- •3.1.3 Атака при конфигурировании хоста
- •3.1.4 Атака на протоколы маршрутизации
- •3.2 Протокол telnet
- •3.2.1 Протокол ftp
- •3.2.3 Программы анализаторы сетевого трафика (сниффиры)
- •3.2.4 Принцип работы сниффира
- •3.3 Методы противодействия сниффирам
- •3.3.1 Протокол ssl
- •3.3.2 Протокол skip
- •3.3.3 Устройство обеспечения безопасности локальной сети skipBridge
- •4 Внедрение ложного доверенного объекта
- •4.1 Особенности атаки «Внедрение ложного доверенного объекта»
- •4.2 Внедрение ложного объекта путем использования недостатков алгоритмов удаленного поиска
- •4.2.1.1 Протокол arp и алгоритм его работы
- •4.2.1.2 Техника выполнения arp-spoofing
- •4.2.1.3 Методы обнаружения
- •4.2.1.4 Методы противодействия
- •4.2.2.1 Принцип работы Domain Name System
- •4.2.2.2 Внедрение dns-сервера путем перехвата dns-запроса
- •4.2.2.3 «Шторм» ложных dns ответов на атакуемый хост
- •4.2.2.4 Перехват dns-запроса или создание направленного «шторма» ложных dns-ответов непосредственно на атакуемый dns-сервер
- •4.2.2.5 Обнаружение и защита от внедрения ложного dns-сервера
- •4.3.1.2 Внедрение ложного доверенного объекта путем навязывания ложного маршрута с помощью протокола icmp
- •4.3.1.3 Обнаружение и методы противодействия
- •5 Отказ в обслуживании
- •5.1 Модель DoS атаки
- •5.1.1 Отказ в обслуживании (DoS)
- •5.1.2 Распределенный отказ в обслуживании (dDoS)
- •5.2.1.1 Описание утилиты для реализации icmp – флуда и атаки Smurf
- •5.2.1.2 Реализация атаки icmp-flooding, на основе отправки icmp-пакетов
- •5.2.1.3 Реализация атаки Smurf
- •5.2.3 Низкоскоростные dos-атаки
- •5.2.3.1 Механизм таймаута tcp-стека
- •5.2.3.2 Моделирование и реализация атаки
- •5.2.3.2.1 Минимальная скорость DoS-атаки
- •5.2.3.3 Многопоточность и синхронизация потоков
- •5.2.3.5 Атаки в сети интернет
- •5.2.4 Syn атака
- •5.3 Анализ средств и методов сетевой защиты
- •5.3.1 Настройка tcp/ip стека
- •5.3.4 Межсетевые экраны (FireWall)
- •5.3.5 Системы обнаружения атак (ids)
- •5.3.6 Система Sink Holes
- •Заключение
- •Список информационных источников
- •394026 Воронеж, Московский просп., 14
4.2.2.2 Внедрение dns-сервера путем перехвата dns-запроса
Возможность атаки на DNS путем фальсификации ответа DNS-сервера известна довольно давно. Объектом атаки может являться как резолвер, так и DNS-сервер. Причины успеха подобных атак кроются в легкости подделки ответа сервера. Протоколы DNS, используемые в настоящее время, не предусматривают каких либо средств проверки аутентичности полученных данных и их источника, полностью полагаясь в этом на нижележащие протоколы транспортного уровня. Используемый транспортный протокол (UDP) с целью повышения эффективности не предусматривает установления виртуального канала и использует в качестве идентификатора источника сообщения IP-адрес, который может быть элементарно подделан. Переход к использованию TCP несколько замедлит систему, так как при использовании TCP требуется создание виртуального соединения. Сетевая ОС вначале посылает DNS-запрос с использованием протокола UDP. И только в том случае, если ей придет специальный ответ от DNS-сервера, сетевая ОС пошлет DNS-запрос с использованием TCP [40].
Для реализации атаки путем перехвата DNS-запроса атакующему необходимо перехватить DNS-запрос, извлечь из него номер порта отправителя запроса, идентификатор DNS-запроса и искомое имя (имя домена), а затем послать ложный DNS-ответ на извлеченный из DNS-запроса порт, в котором указать в качестве искомого IP-адреса настоящий IP-адрес ложного DNS-сервера (рисунок 4.12). Это позволит в дальнейшем полностью перехватить трафик между атакуемым хостом и сервером (рисунок 4.13).
Необходимым условием осуществления данного варианта атаки является перехват DNS-запроса. Это возможно только в том случае, если атакующий находится либо на пути основного трафика [24], либо в сегменте настоящего DNS-сервера (рисунок 4.11). Если сеть построена на свитчах, то для осуществления перехвата DNS-запроса, необходимо использовать ARP-spoofing, для того чтобы отравить записи в ARP-таблицах. Это необходимо чтобы трафик проходил, через компьютер атакующего.
Рисунок 4.11 - Расположение субъекта и объекта атаки
Рисунок 4.12 - Перехват DNS-запроса и отправление ложного DNS-ответа
Рисунок 4.13 - Работа сети во время атаки
Если сеть построена на свитчах, то для осуществления перехвата DNS-запроса, необходимо использовать ARP-spoofing, для того чтобы отравить записи в ARP-таблицах. Это необходимо чтобы трафик проходил, через компьютер атакующего.
4.2.2.3 «Шторм» ложных dns ответов на атакуемый хост
В этом варианте проведения удаленной атаки на службу DNS, атакующий хост осуществляет постоянную передачу на атакуемый хост подготовленного заранее ложного DNS-ответа от настоящего доверенного DNS-сервера, тем самым создается направленный «шторм» ложных DNS-ответов.
Возможность создания «шторма» ложных DNS-ответов достигается из-за того, что обычно для передачи DNS-запроса используется протокол UDP, в котором отсутствуют средства идентификации пакетов.
Вид пакетов, отправляемых атакующим, будет иметь следующий вид (таблица 4.5):
Таблица 4.5. Вид ложных DNS ответов
Адрес отправителя |
Адрес получателя |
ID |
Номер порта |
Ответ на DNS-запрос |
IP-адрес DNS-сервера |
IP-адрес «жертвы» |
ID |
Номер порта |
IP-адрес атакующего |
Каждый новый пакет, отправленный атакующим будет отличаться от предыдущего только измененными значениями полей «ID» и «Номер порта» (таблица 4.6).
Таблица 4.6. «Шторм» ложных DNS-ответов
Адрес отправителя |
Адрес получателя |
ID |
Номер порта |
Ответ на DNS-запрос |
IP-адрес DNS-сервера |
IP-адрес «жертвы» |
ID1 |
Номер порта1 |
IP-адрес атакующего |
IP-адрес DNS-сервера |
IP-адрес «жертвы» |
ID2 |
Номер порта2 |
IP-адрес атакующего |
IP-адрес DNS-сервера |
IP-адрес «жертвы» |
IDi |
Номер портаi |
IP-адрес атакующего |
IP-адрес DNS-сервера |
IP-адрес «жертвы» |
IDn |
Номер портаn |
IP-адрес атакующего |
Требования, предъявляемые к полученному от DNS-сервера ответу заключается в том чтобы:
- IP-адреса отправителя ответа совпадал с IP-адресом DNS-сервера.
- В DNS-ответе должно быть указано то же имя, что и в DNS-запросе.
- DNS-ответ должен быть направлен на тот же UDP-порт, с которого был послан DNS-запрос.
- В DNS-ответе поле идентификатор запроса в заголовке DNS (ID) должно содержать то же значение, что и в переданном DNS-запросе.
Внедрение в Internet ложного сервера путем создания направленного «шторма» ложных DNS-ответов на атакуемый хост:
а) атакующий создает направленный "шторм" ложных DNS-ответов на атакуемый хост (рисунок 4.14);
б) Атакуемый хост посылает DNS-запрос и немедленно получает ложный DNS-ответ (рисунок 4.15);
в) фаза приема, воздействия и передачи перехваченной информации на ложном сервере (рисунок 4.16).
Рисунок 4.14 - «Шторм» ложных DNS-ответов
В качестве объекта атаки обычно выбирается активный клиент сети. Ставка делается на то, что клиент будет пытаться связаться с каким-либо широко известным сервером. Методом простого перебора UDP-портов клиента и идентификаторов DNS-запросов ложный сервер DNS атакует потенциальную жертву «штормом» ложных ответов.
Рисунок 4.15 - Получение ложного DNS-ответа
Рисунок 4.16 - Работа сети во время атаки
Кроме того, следует помнить, что корпоративная сеть всегда имеет несколько серверов DNS, причем приоритет их для клиента хакеру заранее не известен. Поэтому если цель атаки - проникновение внутрь корпоративной сети, то ложный сервер DNS должен генерировать ответы от имени всех серверов DNS сети, что приведет к резкому снижению производительности соединения «локальная сеть – Internet» на длительный промежуток времени [41].