Технология сканирования на наличие уязвимостей
Для студентов технических специальностей
Иван Андреевич Трещев
Геннадий Федорович Вильдяйкин
Анастасия Сергеевна Ватолина

© Иван Андреевич Трещев, 2020

© Геннадий Федорович Вильдяйкин, 2020

© Анастасия Сергеевна Ватолина, 2020

ISBN 978-5-4498-9961-3

Создано в интеллектуальной издательской системе Ridero

1 Сбор информации о сетевом уровне

Пусть есть две виртуальные машины с ОС Windows 7, состоящие в домене. Контроллер домена работает на третьей виртуальной машине с ОС Windows Server 2008 R2.

Компьютер 1 в ходе выполнения работы будет защищаться. С компьютера 2 будут производиться «атаки».

Сбор информации о сети будет производится с компьютера 2, чтобы узнать какую информацию о компьютере 1 можно получить удаленно. Для выполнения задачи используется программное обеспечение NetScanTools.

Получим первоначальные сведения об адресе компьютера 2, о настройках сети в которой он расположен (рисунок 1.1).

Рисунок 1.1 – Сведения о компьютере 2

Получены hostname компьютера и имя домена, в котором он находится; наименование сетевой карты; MAC-адрес; тип сетевого интерфейса; IPv4 и IPv6 адреса; IP-адрес DNS сервера (в данном случае адрес контроллера домена) и некоторые другие настройки сети, где расположен исследуемый ПК.

При помощи утилиты nbtstat получим таблицу имен NetBIOS (листинг 1).

Листинг 1 – Получение таблиц имен NetBIOS

Результат на рисунке 1.2.

Рисунок 1.2 – Список имен NetBIOS компьютеров в сети

Воспользуемся NetScanTools, чтобы получить имена NetBIOS (рисунок 1.3).

Рисунок 1.3 – Список имен NetBIOS

Определим домены в сети при помощи команды (листинг 2):

Листинг 2 – Получение списка доменов в сети

Результат на рисунке 1.4.

Рисунок 1.4 – Список доменов в сети

Исследуемые компьютеры работают в домене LAB.

Для определения списка контроллеров домена воспользуемся утилитой nltest (листинг 3).

Листинг 3 – Получение имен первичного и вторичного контроллеров домена

Результаты на рисунке 1.5.

Рисунок 1.5 – Список контроллеров домена

Основной контроллер домена – ПК с именем DC-1.

Определим имена включенных компьютеров домена командой (листинг 4).

Листинг 4 – Получения списка компьютеров домена

Результаты на рисунке 1.6.

Рисунок 1.6 – Список компьютеров в домене

Определить адреса включенных компьютеров в сети при помощи утилиты NetScanTools (рисунок 1.7):

Рисунок 1.7 – Адреса включенных компьютеров

Получим список совместно используемых ресурсов удаленного компьютера, используя команду (листинг 5).

Листинг 5 – Список совместно используемых ресурсов удаленного компьютера

Результат на рисунке 1.8:

Рисунок 1.8 – Список совместно используемых ресурсов удаленного ПК

Получим перечень общих ресурсов при помощи утилиты – рисунки 1.9, 1.10.

Рисунок 1.9 – Список совместно используемых ресурсов удаленного ПК

Рисунок 1.10 – Список совместно используемых ресурсов удаленного ПК

Общим ресурсом удаленного ПК является папка на диске – SHARED.

Произведем сканирование портов удаленного компьютера (рисунки 1.11, 1.12).

Рисунок 1.11 – Результаты сканирования TCP-портов

Рисунок 1.12 – Результаты сканирования UDP-портов

По результатам сканирования компьютера было выявлено 10 активных TCP-портов и 30 возможно активных UDP-портов.

На результаты сканирования UDP-портов влияет наличие межсетевого экрана, который при блокировании не будет отправлять ICMP сообщение о недоступности порта и будет ошибочно считаться открытым или отсутствие такого сообщения из-за ограничений, установленных на частоту использования ICMP-пакетов.

2 Работа с межсетевым экраном

2.1 Атака Сканирование портов

Пусть необходимо использовать программный межсетевой экран Outpost Firewall.

Проведем сканирование TCP-портов с отключенным межсетевым экраном (рисунок 2.1).

Рисунок 2.1 – Сканирование портов TCP

В данном сканируемом интервале оказалось два активных порта 135 и 139.

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

Посмотрим, как осуществляется сканирование при помощи анализатора трафика Wireshark (рисунки 2.2, 2.3).

Рисунок 2.2 – Пример ответа компьютера, если порт закрыт

Если порт закрыт, то в ответ получен пакет RST, ACK. RST означает обрыв соединения и очистку буфера, то есть соединение установлено не было.

Рисунок 2.3 – Пример ответа компьютера, если порт открыт

Порт 135 является открытым (рисунок 2.1). Компьютер в этом случае ответил пакетом FIN, ACK. FIN – флаг, который указывает на завершение соединения.

Просканируем UDP-порты (рисунок 2.4).

Рисунок 2.4 – Сканирование портов UDP

Если послать UDP-пакет на закрытый порт, система ответит сообщением ICMP «порт недоступен». Отсутствие такого сообщения истолковывается как сигнал того, что порт открыт. Однако, если порт блокируется брандмауэром, метод неверно покажет, что порт открыт. Если заблокированы ICMP-сообщения о недоступности порта, все порты будут казаться открытыми. Также, может быть установлено ограничение на частоту использования ICMP-пакетов, что также влияет на результаты, даваемые методом.

Посмотрим, как осуществляется сканирование при помощи анализатора трафика Wireshark (рисунок 2.5).

Рисунок 2.5 – Ответ компьютера, если UDP-порт закрыт

Если UDP-порт закрыт, то отправляется ICMP сообщение – Port unreachable, активность других портов не подтверждена.

Проведем сканирование портов при установленном межсетевом экране с настройками по умолчанию (рисунки 2.6—2.10).

Рисунок 2.6 – Предупреждение сканера портов

Рисунок 2.7 – Реакция межсетевого экрана на сканирование

Рисунок 2.8 – Происходит только первоначальный ARP-запрос

Рисунок 2.9 – Сканирование портов не произошло

Рисунок 2.10 – Журнал межсетевого экрана: обнаружение атаки

В соответствии с настройками по умолчанию IP-адрес атакующего блокируется на 5 минут (рисунок 2.11).

Рисунок 2.11 – Действия МЭ в случае атаки

2.2 Блокировка доступа к серверу для Internet Explorer

Согласно варианту задания, необходимо разрешить программе Internet Explorer доступ в Internet, за исключением одного сервера. При проведении работы будем использовать сервер с IP-адресом 185.189.14.207. Зайдем на сайт (рисунок.2.12).

Рисунок 2.12- Сервер доступен до создания правила для МЭ

Создадим правило, запрещающее программе Internet Explorer доступ к серверу с данным IP-адресом (рисунок 2.13).

Рисунок 2.13 – Создание правила для МЭ

Теперь доступ на сайт заблокирован, другие сайты доступны (рисунки 2.14, 2.15).

Рисунок 2.14 – Соединение с сайтом заблокировано

Рисунок 2.15 – Другие сайты доступны

Рисунок 2.16— Установление соединения с сайтом до создания правила блокировки

Рисунок 2.17 – Ошибка после создания правила блокировки

При блокировании сервера получен код ошибки 403 – доступ запрещен.

2.3 «Отрезать» защищаемый компьютер от сети

Создадим правило блокировки для всех IP-адресов (рисунок 2.18).

Рисунок 2.18 – Правило блокировки IP-адресов

Результат работы правила на рисунках 2.19—2.12.

Рисунок 2.19 – IP-адрес заблокирован

Рисунок 2.20 – IP-адрес заблокирован

Рисунок 2.21 – IP-адрес заблокирован

На практике была рассмотрена многофункциональная диалоговая программа NetScanTools, изучены её основные функции. С ее помощью были получены сведения о конфигурации сети, расположенных в ней компьютерах, которые могут быть использованы злоумышленниками при атаке. Это составляет зачастую первую стадию работы по «анализу» сети.

Также был использован программный межсетевой экран Outpost Firewall. Настроены правила для блокирования IP-адресов, созданы правила для приложения, работающего с сетью.

Для анализа пакетов использовалось приложение Wireshark, которое может работать со структурой самых различных сетевых протоколов, и поэтому позволяет разобрать сетевой пакет, отображая значение каждого поля протокола любого уровня.

3 Политика паролей учетных записей в Active Directory

Пусть вновь есть две виртуальные машины с ОС Windows 7, состоящих в домене. Контроллер домена работает на третьей виртуальной машине с ОС Windows Server 2008 R2.

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

Настроим политику паролей учетных записей домена, задав единые требования к паролям пользователей рисунки 3.1—3.5.

Откроем консоль управления доменными политиками GPO – Group Policy Management console – gpmc.msc.

Рисунок 3.1 – Пункт «Управление групповой политикой»

Развернем вкладку нашего домена, найдем политику Default Domain Policy. Нажмем правую клавишу мыши на нее и выберем пункт изменить (рисунок 3.2).

Рисунок 3.2 – Меню управления групповыми политиками

Политики паролей находятся в следующем разделе редактора GPO: Конфигурация компьютера – Конфигурация Windows – Параметры безопасности – Политики учетных записей – Политика паролей (рисунок 3.3).

Рисунок 3.3 – Окно редактора GPO

Чтобы отредактировать настройки нужной политики, дважды нажмем по ней. Чтобы включить политику, нужно поставить флажок «Определить следующий параметр политики» и указать необходимую настройку.

По заданию необходимо запретить «простые» с точки зрения безопасности пароли. Для этого включим параметр политики «Пароль должен отвечать требованиям сложности» (рисунок 3.4).

Рисунок 3.4 – Включение параметра политики безопасности

Данная настройка параметров управления паролями означает, что пользователю запрещено использовать имя своей учетной записи в пароле (не более чем два символа подряд из username или Firstname), также в пароле должны использоваться 3 типа символов из следующего списка: цифры (0 – 9), символы в верхнем регистре, символы в нижнем регистре, спец символы ($, #, % и т.д.).

Новые настройки парольной политики будут применены ко все компьютерам домена в фоновом режиме в течении некоторого времени (90 минут), при загрузке компьютера

Чтобы принудительно выполнить фоновое обновление всех параметров групповой политики, независимо от того, изменились ли они, воспользуемся командой gpupdate /force (рисунок 3.5).

Рисунок 3.5 – Принудительное обновление политик безопасности

Для проверки создадим пользователя (рисунок 3.6).

Рисунок 3.6 – Созданный пользователь

Позволим ему самостоятельно изменять пароль (рисунок 3.7).

Рисунок 3.7 – Имя входа пользователя

Сделаем так, чтобы компьютером PC-1 в домене могу управлять только данный пользователь (рисунок 3.8).

Рисунок 3.8 – Компьютером PC-1 управляет только user-1

Рисунок 3.9 – Свойства PC-1

Зайдем под учетной записью данного пользователя на PC-1 и попробуем поставить пароль «User-1*743». Данный пароль включает в себя специальные символы, большие и маленькие буквы, цифры и его длина составляет 10 символов (минимальная длина в соответствии с политикой – 7) (рисунок 3.10).

Рисунок 3.10 – Попытка изменить пароль

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

Рисунок 3.11 – Не удалось изменить пароль

Проверим сможет ли администратор на контролере домена установить пароль «PAUL_*%351» (рисунки 3.12).

Рисунок 3.12 – Меняем пароль на DC

Рисунок 3.13 – Вводим пароль

Получаем сообщение об ошибке (рисунок 1.14). Пароль отвечает требованиям сложности, но содержит в себе целиком имя пользователя (firstname).

Рисунок 3.14 – Сообщение об ошибке

4 Аудит событий в Active Directory

В Windows Server 2008 необходимо настроить аудит события «Вход в систему» (успешный и неуспешный).

Откроем редактор групповых политик. Для этого в меню пуск в строке поиска напишем gpedit.msc (рисунок 4.1).

Рисунок 4.1 – Поиск в меню Пуск

В открывшемся окне переходим по пути: Конфигурация компьютера-Конфигурация Windows-Параметры безопасности-Локальные политики-Политика аудита (рисунок 4.2).

Рисунок 4.2 – Редактор локальной групповой политики

Два раза нажмем на параметр групповой политики Аудит входа в систему. Устанавливаем флажки для успешных и неудачных попыток доступа (рисунок 4.3).

Рисунок 4.3 – Установка аудита входа в систему

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

Для просмотра данных событий открываем Оснастку «Просмотр событий» – нажимаем меню Пуск – пишем в строку поиска «Просмотр событий» или открываем данный пункт в меню «Администрирование» (рисунок 4.4).

Рисунок 4.4 – Просмотр событий в меню «Пуск»

Пройдем по пути: Просмотр событий (Локальный) -Журналы Windows-Безопасность (рисунок 4.5).

Рисунок 4.5 – Меню просмотра событий

Выполним успешную попытку входа с PC-1 под учетной записью user-1, которая была создана ранее. В журнале появляется запись о событии входа, где указана дата, время, пользователь и ПК (рисунок 4.6).

Рисунок 4.6 – Событие успешного входа в систему

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

Рисунок 4.7 – Событие при неудачном входе в систему

При выходе пользователя из системы также создается запись в журнале (рисунок 4.8).

Рисунок 4.8 – Событие выхода из системы

5 Ограничение входа на компьютеры с помощью групповых политик

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

Создадим групповую политику, чтобы только администратор мог локально войти в систему на PC-1.

В настоящей сети для применения политик лучше пользоваться группами, а не применять политики ко всем пользователям/компьютерам домена.

Создадим группу «Компьютеры для администраторов» (рисунок 5.1).

Рисунок 5.1 – Создание группы для применения политики

Включим в эту группу компьютер «PC-1», к которому будет применяться политика (рисунок 5.2).

Рисунок 5.2 – Включение компьютера в группу

Перейдем по пути: Пуск-Администрирование-Управление групповой политикой, откроем наш лес и домен, в папке «Объекты групповой политики» создадим новый объект (рисунок 5.3).

Рисунок 5.3 – Создание объекта групповой политики

Вводим название (рисунок 5.4).

Рисунок 5.4 – Новое имя GPO

Теперь нужно определить, что будет делать данная политика (рисунок 5.5).

Рисунок 5.5 – Меню изменения GPO

Перейдем по пути Конфигурация компьютера-Конфигурация Windows-Параметры безопасности-Локальные политики-Назначение прав пользователя-Локальный вход в систему (рисунок 5.6).

Рисунок 5.6 – Выбор политики

Поставим флажок «Определить следующие параметры политики» и выберем группы/пользователей, которым хотим предоставить доступ. В нашем случае дадим доступ Администратору и всем Администраторам домена (рисунок 5.7).

Рисунок 5.7 – Определение параметров политики

Перейдем в управление групповыми политиками и перетащим нужный GPO на домен, либо выберем опцию как на рисунке 5.8.

Рисунок 5.8 – Привязка объекта GPO к домену

Выберем созданный GPO (рисунок 5.9).

Рисунок 5.9 – Выбор GPO

Определим, к кому будут применяться данные политики, для нас это компьютеры администраторов (рисунок 5.10).

Рисунок 5.10 – Применение фильтров безопасности

Попробуем зайти на выбранный компьютер под учетной записью обычного пользователя и получим сообщение об ошибке (рисунок 5.11).

Рисунок 5.11 – Вход в систему для пользователя запрещен

Администратор может осуществить локальный вход в систему.

6 Ограничение доступа к компьютерам из сети

Создадим новый объект групповой политики (рисунок 6.1).

Рисунок 6.1 – Новый объект групповой политики

Перейдем по пути Конфигурация компьютера-Конфигурация Windows-Параметры безопасности-Локальные политики-Назначение прав пользователя-Доступ к компьютеру из сети (рисунок 6.2).

Рисунок 6.2 – Выбор политики

Согласно заданию, нужно настроить систему так, чтобы только локальной группе администраторов был разрешен доступ к этому компьютеру по сети. Определим параметры политики как на рисунке 6.3.

Рисунок 6.3 – Определение параметров политики

Применим данную политику к группе «Компьютеры для администраторов», в которую входит PC-1 (рисунок 6.4).

Рисунок 6.4 – Выбор фильтра безопасности

На данном компьютере создадим общую папку с название SHARED и дадим общий доступ для всех (рисунок 6.5).

Зайдем в данную папку с контроллера домена, пользователь Администратор состоит в группе «Администраторы домена» и имеет доступ к папке (рисунок 6.6)

Добавим новый компьютер в домен (PC-2) и создадим пользователя без привелегий администратора, попробуем зайти в данную общую папку (рисунок 6.7).

Рисунок 6.5 – Создание общей папки

Рисунок 6.6 – Вход в общую папку

Рисунок 6.7 – Ошибка доступа к общей папке

На рисунках 6.8, 6.9 приведены сведения о компьютерах домена PC-1 и PC-2, соответственно.

Рисунок 6.8 – Сетевые настройки PC-1

Рисунок 6.9 – Сетевые настройки PC-2

7 Разработка методов оптимизации и предложение средств автоматизации мониторинга

В деятельности современной государственной информационной системе особое место отводится аудиту информационной безопасности, целью которого является получение объективных качественных и количественных оценок текущего состояния информационной безопасности в соответствии с установленными требованиями и показателями. Основное содержание деятельности аудитора информационной системы связано с решением комплекса нетривиальных информационно-аналитических задач. К таким задачам относят: анализ информационных рисков; оценка текущего уровня защищенности ресурсов информационной системы; локализация «слабых звеньев» и выделение уязвимостей в системе защиты информации; оценка соответствия системы защиты информации существующим стандартам; выработка рекомендаций по внедрению новых и повышению эффективности используемых механизмов безопасности.

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

– Использование сканеров уязвимостей.

– Использование профилей сканирования.

– Уменьшение одинаково-сконфигурированных хостов.

7.1 Количественный показатель оптимизации сканирования уязвимостей

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

Приведем пример организации с упрощенной архитектурой сети на 100 ip-адресов. На рисунке представлена топология сети, включающая в себя: сетевые принтеры, ip-телефоны, ip-камеры, сервер, компьютеры, ноутбуки и соединяющие их коммутаторы, и маршрутизаторы (см. рисунок 7.1). Ip-адрес имеют только устройство работающие на сетевом уровне модели OSI, поэтому возможность сканирования коммутаторов отсутствует. Решить проблему поможет виртуальный интерфейс коммутатора – SVI. Маршрутизаторы в свою очередь имеют несколько интерфейсов, работающих на сетевом уровне, поэтому в данном случае это устройство имеет 5 ip-адресов

Рисунок 7.1 – Топология сети организации

Исходя из топологии сети объединим одинаково-сконфигурированный хосты в независимые пулы для выборочного сканирования: (A₁,A₂,…,An) … (N₁,N₂,…,Nn)

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

Конец ознакомительного фрагмента.

Текст предоставлен ООО «ЛитРес».

Прочитайте эту книгу целиком, купив полную легальную версию на ЛитРес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.