Уважаемый пользователь !

Запрошенная Вами страница является устаревшей. В связи с недавней
реструктуризацией проекта вы могли попасть на эту страницу со
стороннего сервера по ссылке, утратившей актуальность. Рекомендуем Вам
перейти к заглавной странице нашего сервера и поискать требуемый вами материал в архиве проекта


С Т А Т Ь Я - 2 7 / 0 9 / 9 9

ОБНАРУЖЕНИЕ АТАКИ ПРИ ПОМОЩИ ФАЙРВОЛА Взад Вперёд


Ещё одна замечательная статья старого знакомого Lance Spitzner'a, котороый простым и понятным языком рассказыват о таких сложных вещах, как настройка политики безопасности систем, об отслеживании атак и ликвидации их последствий. Сегодня он расскажет нам, каким образом по лог файлам файрвола определить попытки вторжения.

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

ПРОБЛЕМА
Как вам узнать, когда кто-то тестирет вашу сеть на уязвимости ? Логи - самое лучшее средство, особенно логи FW-1. К сожалению, их сложно понять (особенно если в день их набегает по 400 мегабайт). Есть ли возможность автомаизации оповещения об атаках ? Да, и я расскажу, как это сделать.

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

ЦЕЛЬ
Цель - получить предупреждающее письмо, что кто-то пытается сканировать или атаковать вашу подсеть. Мы хотим автоматизировать весь процесс, и так же вести архивирование логов событий в подобие базы данных. Привер такой почты выглядит так:

Date: Wed, 31 Dec 1997 15:40:01 -0600 (CST)
From: ids@example.net
To: fwadmin@example.net
Subject: #### Firewall ALERT ####

You have received this message because someone is potentially scanning your systems. The information below is the packet that was denied and logged by the Firewall. This is email alert number 3, with a limit of 5 from evil.example.org.

----- CRITICAL INFORMATION -----

Date: 31Dec1997
Time: 15:39:59
Source: evil.example.org
Destination: firewall
Service: domain-tcp

----- ACTUAL LOG ENTRY -----

31Dec1997 15:39:59 drop fw1 >elx0 mail proto tcp
src evil.example.org dst firewall service domain-tcp
s_port 37401 len 44 rule 6
Как вы видите, почта предупреждает администратора о том, что некто попытался подключиться к порту, закрытому файрволом для внешнего мира.

РЕШЕНИЕ
Чтобы обнаруживать и отслеживать попытки сканирования, мы написали скрипт, который фиксирует попытки коннекта к предопределённым портам, и затем отсылает почту. Чтобы сделать это, мы используем функцию файрвола "User Defined Alert". Это будет скрипт, alert.sh. Когда активизируется user defined alert, то запускается наш скрипт, который обрабатываает данные, и делает всю работу за нас. Правила фильтрации пакетов, которые мы устанавливаем на файрволе, будут описаны ниже. Во-первых, следует установить список портов, сканирование которых мы хотим отслеживать. Затем, мы делаем несколько демонов, которые будут слушать на этих портах и вводить сканирующего человека в заблуждение. Когда начнётся скан этих портов, то исполнится наш скрипт.

Конечный результат - вы получаете почту с указанием, какие порты были просканированы. Если у вас были три фальшивых "уязвимых" систеы, которые слушали на трёх портах, то вы получите целых 12 писем с отчётом о сканировании. Но, как показывает практика, сети сканируются на наличие какой-то одной уязвимости, например на наличие старых версий imapd (порт 143). В этом случае, вы получите только три сообщения, одно с каждой системы. Когда производится сканирование отдельной системы, то как правило сканируется диапазон портов, к примеру от 0 до 1024. В таком случае, вы получите 4 сообщения от одной машины, которую подробно просканировали. Но на самом деле, число посылаемых сообщений можно ограничить - в нашем скрипте есть возможность даже для этого.

ПРИМЕНЕНИЕ Чтобы приметить эту методику, мы выбираем три или четыре системы из сети, которые планируется контролировать. Я, как правило, выбираю DNS-сервера и сам файрволд, так как они являются самыми важными целями для хакера, пытающегося вторгнуться в сеть. После того, как вы решили, за какими системами вы хотите наблюдать, создайте объект "workstation" в консоли управления файрволом. Теперь выберите список портов, за которыми вы хотите осуществлять контроль (и помните, что те системы, за которыми вы хотите вести контроль, вовсе не обязаны существовать в реальности - вы можете создать объект workstation даже ддля несуществующей системы, и это не будет ошибкой). Список портов, которые вы можете к примеру контролировать -

imap (port 143)
SMB (port 139)
login (port 513)
http (port 80)
NetBus (12345)
BO (31337)
BO2000 (54321)
Sub7 (1243)


Чаще всего sciptkiddie будет сканировать именно эти порты, хотя естественно, ваши системы под openBSD не имеют запущенного сервера нетбаса ;). Так же удостоверьтесь, не закрыты ли эти порты экраном на роутере - пусть хакер думает, что ваша любимая система заражена нетбасом, и сможет даже произвести соединение. А ниже - пример установки правил мониторинга:

FW-1 configuration
Как вы можете видеть на картинке, эта система имеет небольшое количество портов, за которыми ведётся контроль. Так же правило, по которому будут отрабатываться атаки есть User Defined Alert. Как только происходит соединение с каким-либо из этих портов, запускается скрипт, который анализирует логи на предмет событий, относящихся к атаке и посылает вам почту.

Итак, сам скрипт можно взять здесь.

 - -void duke()

not found Уважаемый пользователь !

Запрошенная Вами страница является устаревшей. В связи с недавней
реструктуризацией проекта вы могли попасть на эту страницу со
стороннего сервера по ссылке, утратившей актуальность. Рекомендуем Вам
перейти к заглавной странице нашего сервера и поискать требуемый вами материал в архиве проекта