Идентификация брандмауэров
Почти каждый брандмауэр имеет свои отличительные особенности. Поэтому с помощью сканирования портов, инвентаризации и сбора идентификационных маркеров взломщики могут правильно определить тип, версию и набор правил практически каждого брандмауэра в сети. Почему так важна подобная идентификация? Как только вся эта информация будет получена, взломщик может приступать к ее анализу, поиску уязвимых мест и дальнейшему их использованию.
Прямое сканирование
Самый простой способ поиска брандмауэров заключается в сканировании определенных портов, используемых ими по умолчанию. Некоторые современные брандмауэры можно уникально идентифицировать, выполнив простое сканирование портов. Для этого необходимо лишь знать, что именно вы хотите найти. Например, брандмауэры Firewall-1 компании Checkpoint ожидают поступления запросов с TCP-портов 256, 257 и 258, a Proxy Server компании Microsoft обычно прослушивает TCP-порты с номерами 1080 и 1745. Обладая такой информацией, поиск этих типов брандмауэров окажется тривиальным, если воспользоваться сканером портов, таким как утилита nmap.
nmap – n – vv – P0 – p256.1080.1745 192.168.50.1-60.254
Параметр -P0 отключает передачу тестовых ICMP-пакетов перед сканированием. Это оказывается очень важным, поскольку многие брандмауэры не реагируют на поступающие эхо-запросы ICMP.
Чтобы найти все бреши в защите пограничных устройств вашей сети, как начинающий, так и опытный взломщик прибегнет к сканированию широкого диапазона портов. Однако наиболее опасные злоумышленники постараются выполнить сканирование как можно более незаметно. При этом для того чтобы избежать разоблачения, они могут воспользоваться любым из многочисленных приемов, включая ping-прослушивание случайно выбранных адресов, произвольных портов, а также использование ложных узлов и выполнение распределенного сканирования.
Если вы надеетесь, что система выявления вторжений (IDS › Intrusion › Detection System) сможет выявить подобные атаки, то оцените потенциальную опасность еще раз. Большинство систем IDS настроено таким образом, что они способны обнаружить лишь наиболее "шумное" или прямолинейное сканирование портов. Если систему IDS не настроить должным образом, большинство злоумышленников останутся абсолютно незамеченными. Сканирование произвольных портов можно реализовать с помощью сценария Perl.
Контрмеры: защита от прямого сканирования
Способы предотвращения сканирования портов брандмауэра во многом совпадают с методами, рассмотренными в главе 2. Необходимо заблокировать попытки такого сканирования на пограничном маршрутизаторе или воспользоваться одним из средств выявления вторжений (свободно распространяемым или коммерческим). Однако и в этом случае нельзя предотвратить простое сканирование портов, поскольку по умолчанию большинство систем IDS не позволяет обнаружить подобную деятельность. Так что перед их использованием необходимо выполнить соответствующую настройку.
Обнаружение
Для того чтобы безошибочно обнаружить факт сканирования портов по случайному закону или с применением ложных узлов, нужно тонко настроить соответствующую сигнатуру. Для получения дополнительной информации по этому вопросу внимательно изучите документацию, входящую в комплект поставки используемой системы IDS.
Для того чтобы обнаружить сканирование портов из предыдущего примера с использованием системы RealSecure 3.0, нужно дополнительно повысить ее чувствительность, модифицировав специальные параметры. Мы рекомендуем внести следующие изменения.
- Выберите и настройте политику Network Engine Policy.
- Выберите команду Port Scan и щелкните на кнопке Options.
- В поле Ports внесите значение 5.
- В поле Delta задайте интервал 60 секунд.
При использовании брандмауэра Firewall-1 системы UNIX для выявления попыток сканирования можно воспользоваться утилитой Ланца Спитзнера. Как упоминалось в главе 2, его сценарий alert.sh поможет настроить брандмауэр компании Checkpoint и осуществить мониторинг сканирования портов, а при обнаружении такой деятельности будет сгенерировано уведомление, установленное пользователем.