Описание урока
В пятом уроке рассмотрим систему обнаружения вторжений. Произведём настройку профиля СОВ, проведём тестирование и смоделируем атаку на защищаемую сеть.

Статья 7: Система обнаружения вторжений

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

Система может работать в двух режимах:

Обнаружение (Detect) – система обнаруживает атаку и записывает данные в журнал.

Предотвращение (Prevent) – система блокирует атаку и записывает данные в журнал..

Сигнатуры

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

Сигнатуры в Usergate классифицируются по следующим параметрам:

Уровень угрозы – риск сигнатуры по 5-ти бальной шкале (очень низкий, низкий, средний, высокий, очень высокий).

Операционная система – операционная система, для которой разработана данная сигнатура (Android, BSD, Cisco, Windows, Linux и др.).

Протокол – протокол, для которого разработана данная сигнатура (IP, SSL, TCP, UDP).

Категория – группа сигнатур, объединенных общими параметрами. Присутствуют следующие категории:

attack_response – сигнатуры, определяющие ответы на известные сетевые атаки.
coinminer – скачивание, установка, деятельность известных майнеров.
dns – известные уязвимости DNS.
dos – сигнатуры известных Denial of services атак.
exploit – сигнатуры известных эксплоитов.
ftp – известные FTP-уязвимости.
imap – известные IMAP-уязвимости.
info – потенциальная утечка информации.
ldap – известные LDAP-уязвимости.
malware – скачивание, установка, деятельность известных malware.
misc – другие известные сигнатуры.
netbios – известные уязвимости протокола NETBIOS.
phishing – сигнатуры известных phishing атак.
pop3 – известные уязвимости протокола POP3.
rpc – известные уязвимости протокола RPC.
scada – известные уязвимости протокола SCADA.
scan – сигнатуры, определяющие попытки сканирования сети на известные приложения.
shellcode – сигнатуры, определяющие известные попытки запуска программных оболочек.
smtp – известные уязвимости протокола SMTP.
snmp – известные уязвимости протокола SNMP.
sql – известные уязвимости SQL.
telnet – известные попытки взлома по протоколу telnet.
tftp – известные уязвимости протокола TFTP.
user_agents – сигнатуры подозрительных Useragent.
voip – известные уязвимости протокола VoIP.
web_client – сигнатуры, определяющие известные попытки взлома различных веб-клиентов, например, Adobe Flash Player.
web_server – сигнатуры, определяющие известные попытки взлома различных веб-серверов.
web_specific_apps – сигнатуры, определяющие известные попытки взлома различных веб приложений.
worm – сигнатуры, определяющие сетевую активность известных сетевых червей.

Класс – тип атаки, которая детектируется данной сигнатурой. Присутствуют следующие классы:

arbitrary-code-execution – попытка запуска произвольного кода
attempted-admin – попытка получения административных привилегий.
attempted-dos – попытка совершения атаки Denial of Service.
attempted-recon – попытка атаки, направленной на утечку данных.
attempted-user – попытка получения пользовательских привилегий.
bad-unknown – потенциально плохой трафик
command-and-control – попытка общения с C&C центром
default-login-attempt – попытка логина с именем/паролем по умолчанию.
denial-of-service – обнаружена атака Denial of Service.
exploit-kit – обнаружен exploit kit
misc-activity – прочая активность.
misc-attack – обнаружена атака.
shellcode-detect – обнаружен исполняемый код.
string-detect – обнаружена подозрительная строка.
suspicious-login – попытка логина с использованием подозрительного имени пользователя.
trojan-activity – обнаружен сетевой троян.
web-application-attack – обнаружена атака на веб-приложение.

Настройка СОВ

Перейдем к настройке СОВ. Первым делом необходимо настроить профиль СОВ: «Библиотеки» – «Профили СОВ» – «Добавить».
Настройка профиля СОВ
Затем, в панели «Сигнатуры» необходимо добавить в профиль необходимые сигнатуры. Например, если у вас нет Cisco, то и не зачем добавлять данные сигнатуры. В рамках данной статьи, для тестирования системы предотвращения вторжений в профиль СОВ добавляем все сигнатуры.
    Добавление сигнатур
    Далее создаем правило СОВ: «Политики безопасности» – «СОВ» – «Добавить». Доступны следующие поля для заполнения:

    Включено – включает или отключает правило.

    Название – название правила.

    Описание – описание правила.

    Действие – возможны следующие варианты:

    • Разрешить – не блокирует трафик.

    • Журналировать – не блокирует трафик и записывает в журнал (режим обнаружения).

    • Запретить – блокирует трафик и записывает в журнал (режим предотвращения).

    Источник – указывается источник трафика.

    Назначение – указывается получатель трафика.

    Сервис – тип сервиса (HTTPS, DNS и др.).

    Профили – список профилей СОВ.

    Профили исключения
    – сигнатуры, которые будут исключены из профиля (например, которые создают ложные срабатывания).

    Настроим наше правило на предотвращение всех угроз:
    Настройка правила

    Тестирование

    Теперь протестируем работу компонента:

    В качестве атакуемой машины будет выступать ВМ во внутренней сети (ip-адрес 172.16.20.50), в качестве атакующего ВМ Kali Linux (ip-адрес 10.10.1.240).
    Компоненты тестирования
    Эксплуатировать компьютер пользователя будем через Metasploit Framework. На основании сканирования системы данный фрэймворк предложит необходимые эксплойты.

    Тестирование:

    1. Сканирование системы

    С машины Kali Linux выполняется сканирование веб-сервера утилитой nmap.
    Журнал СОВ
    Usergate обнаружил, что защищаемый хост подвергся сканированию, о чем есть соответствующие записи в «журнале СОВ».

    2. На основании открытых портов и используемых сервисов подбираются эксплойты и массово отправляются на атакуемую машину.*

    * - данный сценарий реализуется через графический интерфейс Metasploit Framework Armitage. Затем проводится атака Hail Mary.

    Usergate обнаружил попытку вторжения и заблокировал ее:

    Моделирование атак

    Проверим, как будет выглядеть атака без активированного правила СОВ. Воспроизведем несколько атак:

    1. Эксплойт EthernalBlue (CVE-2017-0144) – эксплойт, эксплуатирующий уязвимость семейства Windows, в протоколе smb. Данная уязвимость использовалась при распространении WannaCry.
    2. VNC-payload

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

    Заключение

    Как итог, мы видим, что активированная система предотвращения вторжений смогла предотвратить данные атаки. Данная система является важным компонентом при комплексном подходе к защите периметра сети.

    Автор статьи: Дмитрий Лебедев, инженер TS Solution.