Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Andronchik.pdf
Скачиваний:
678
Добавлен:
13.04.2015
Размер:
9.64 Mб
Скачать

43

Рис. 2.9. Пример ICMP-пакета Port Unreachable

ВЫПОЛНИТЬ!

8.Запустите программу-сканер портов SAURON.

9.Осуществите захват сетевого трафика.

10.Выполните сканирование TCP- и UDPпортов соседнего компьютера в диапазоне от 130 до 140, последовательно выполняя сканирование различными методами: Connect(), SYN-сканированием, FIN-сканированием, ACK-сканированием, XMAS-сканированием, NULL-сканированием, UDPсканированием.

11.Проанализируйте полученный трафик. Найдите отличительные признаки каждого метода сканирования. Сформулируйте признаки подобных атак. Сделайте вывод о возможности блокирования данных атак.

2.4. Выявление уязвимых мест атакуемой системы

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

44

жет, воспользовавшись известными уязвимостями данной версии, осуществить целенаправленную атаку.

Так, например, выяснив наличие открытого порта 25, злоумышленник отправляет стандартный запрос на соединение с ним и в ответ получает версию программного продукта, реализующего SMTP-сервер (рис. 2.10).

Признаком атаки в данном случае является выполнение входящих запросов к внутренним сетевым службам, особенно к таким, которые редко используются для работы в Интернет.

Рис. 2.10. Пример ответа SMTP-сервера

2.5.Реализации атак

Влитературе содержится большое количество упоминаний реализаций атак на различные сетевые службы: «Ping Flood» (затопление ICMPпакетами), «Ping of Death» (превышение максимально возможного размера IP-

пакета), «SYN Flood» (затопление SYN-пакетами), «Teardrop», «UDP Bomb»

и т. д. Так как целью пособия не является изучение всех алгоритмов атак, ограничимся только двумя атаками типа «отказ в обслуживании» (DoS), приводящими к «зависанию» либо сетевой службы, либо компьютера в целом. За-

45

метим, что описываемые атаки были актуальны для операционных систем предыдущего поколения.

Атака «Ping of Death» приводила к зависанию реализации стека протоколов TCP/IP в ОС Windows 95. Атака основана на отправке IP-пакета, длина которого превышает стандартную величину. Напомним, что максимальный размер IP-пакета составляет 65535 байт, из них 20 байт отводится на заголовок. Таким образом, максимальный размер данных, передаваемых в одном пакете, составляет 65515 байт. В реализации ряда ОС именно такой буфер и отводился для хранения получаемых данных, а размер буфера не контролировался. Если же приходил пакет большей длины, то получаемые данные затирали машинный код в оперативной памяти, находившийся после отведенного буфера. Для реализации атаки достаточно было использовать стандартную утилиту ping следующим образом:

ping -l 65527 -s 1 адрес_жертвы

Вэтом случае отправляемые данные составляют 65527 байт, заголовок ICMP — 8 байт, заголовок IP — 20 байт. Таким образом, отправлялся пакет длиной 65555 байт, что на 20 байт превышало максимальный размер IPпакета.

Другая известная атака, достаточно долго приводившая в неработоспособное состояние сетевые узлы под управлением ОС Windows NT версии 4.0, получила название WinNuke. Для ее реализации в Интернет можно было найти программу с аналогичным названием и простым интерфейсом (рис. 2.11).

Впроцессе выполнения программа WinNuke устанавливает стандартное TCP-соединение с портом 139 атакуемого узла. Особенностью соединения является то, что атакующим для установки соединения используется TCP-порт с номером 40, в отличие от обычно используемых номеров портов больших, чем 1024. После установки соединения атакующий отправляет нестандартный для SMB-протокола пакет (рис. 2.12), в результате получения которого ОС Windows NT версии 4.0 «вылетала в синий экран смерти».

2.6.Выявление атаки на протокол SMB

Протокол SMB/CIFS (Server Message Blocks/Common Internet File System) предназначен для соединения компьютеров с ОС типа Windows 9* и Windows NT 5.* между собой или с сервером Samba (UNIX-сервером). Протокол SMB включает в себя все возможные операции (команды) для работы с файлами и принтерами (открытие, закрытие, создание и удаление файлов и директорий, чтение и запись в файл, поиск файлов, отправка на печать и отмена печати).

46

Рис. 2.11. Интерфейс программы WinNuke

Рис. 2.12. Пример сетевого пакета программы WinNuke

SMB-сообщение состоит из двух частей: заголовка фиксированного размера и поля команды, размер которой меняется динамически в зависимости от состава сообщения. Протокол SMB имеет несколько версий и диалектов, каждая из последующих совместима с предыдущей (табл. 2.1).

 

47

 

 

Таблица 2.1

Диалекты протокола SMB

 

 

 

Название протокола

Обозначение

 

Core

PC NETWORK PROGRAM 1.0

 

 

 

 

Core Plus

MICROSOFT NETWORKS 1.03

 

LAN Manager 1.0

LANMAN1.0

 

 

 

 

LAN Manager 2.0

LM1.2X002

 

LAN Manager 2.1

LANMAN2.1

 

 

 

 

NT LAN Manager 1.0

NT LM 0.12

 

 

 

 

Samba's NT LM 0.12

Samba

 

 

 

 

Common Internet File System

CIFS 1.0

 

 

 

 

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

Установка соединения между сервером (компьютером, предоставляющим доступ к ресурсу) и клиентом (компьютером, который желает воспользоваться данным ресурсом) происходит в 4 шага:

1.Установка виртуального соединения. Создается двунаправленный виртуальный канал между клиентом и сервером.

2.Выбор версии протокола (рис. 2.13). Клиент посылает запрос, содержащий список всех версий протоколов SMB, по которым он может создать соединение. Сервер отвечает номером записи в списке, предложенном клиентом (считая записи с 0), или значением 0xFF, если ни один из вариантов предложенных протоколов не подходит. Здесь же сервер передает требуемый режим безопасности, признак необходимости шифрования пароля и «вызов» (8 случайных байт), используя который клиент зашифрует пароль и передаст его серверу в виде «ответа» на следующем шаге.

3.Установка параметров сессии (рис. 2.14). Клиент посылает имя пользователя, пароль (если он существует) в виде «ответа», имя рабочей группы, а также полный путь к доступной директории на сервере (перечень доступных директорий сервер предоставляет клиенту ранее по иному запросу).

4.Получение доступа к ресурсу. Сервер выдает клиенту идентификатор (TID — уникальный идентификатор для ресурса, используемого клиентом), показывая тем самым, что пользователь прошел процедуру авторизации и ресурс готов к использованию. Сервер указывает тип службы доступа: A — для диска или файла; LPT1 — для вывода на печать; COM — для прямого соединения принтеров и модемов, IPC — для идентификации при доступе к ресурсу.

48

К

Л

И

Е

Н

Т

К

Л

И

Е

Н

Т

C SMB_COM_NEGOTIATE

Список диалектов

R SMB_COM_NEGOTIATE

Диалект, режим защиты, вызов

Рис. 2.13. Согласование SMB-диалекта

CSMB_COM_SESSION_SETUP_ANDX

Имя, домен, пароль/ответ

R SMB_COM_SESSION_SETUP_ANDX TID

Рис. 2.14. Установка параметров сессии

С

Е

Р

В

Е

Р

С

Е

Р

В

Е

Р

ВЫПОЛНИТЬ!

12.Создайте на виртуальном компьютере, работающем под управлением ОС Windows 2000, каталоги и в нем небольшой текстовый файл. Предоставьте созданный каталог в сетевой доступ.

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

14.Просмотрите полученный трафик. Какой протокол используется для файлового обмена? Какие номера TCP-портов задействованы на приемнике и источнике?

15.Найдите пакеты этапа согласования SMB-диалекта. Какой диалект выбран сервером?

16.Найдите пакет, в котором передается имя пользователя. Передается ли пароль пользователя в открытом виде?

49

17.Найдите пакет, в котором передается текст открытого вами файла (описание пакета начинается с «R read & X»). Передается ли текст файла в зашифрованном виде?

Одной из основных широко известных уязвимостей [4], присутствующих в сетевых настройках по умолчанию в ОС Windows 2000 (исправлено в Windows XP), является возможность установления «нулевого сеанса» (анонимного подключения). Целью данной атаки являлось подключение к сетевым ресурсам ОС Windows 2000 без указания имени пользователя и пароля.

Для установления «нулевого сеанса» осуществляется подключение к ресурсу IPC$ удаленного компьютера без указания имени и пароля при помощи стандартной утилиты net:

net use \\*.*.*.*\IPC$ "" /user:"",

где *.*.*.* — IP-адрес компьютера, /user:"" — имя пользователя (пусто); "" — пароль пользователя (пусто).

ВЫПОЛНИТЬ!

18. Разорвите все установленные ранее соединения командой: net use * /delete

19.Включите режим захвата трафика. Выполните анонимное подключение к виртуальному компьютеру. Просмотрите полученный трафик. Какие номера TCP-портов задействованы на приемнике и источнике? Какой SMBдиалект выбран сервером? Найдите пакет, в котором передается имя пользователя в виде пустой строки.

20.Сделайте вывод о возможности обнаружения и блокирования данной атаки.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]