Безопасность

Системы обнаружения и предотвращения вторжений. Программы для государственных учреждений США

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

Системы обнаружения вторжений ( IDS ) появились очень давно. Первыми из них можно считать ночной дозор и сторожевых собак. Дозорные и сторожевые собаки выполняли две задачи: они определяли инициированные кем-то подозрительные действия и пресекали дальнейшее проникновение злоумышленника. Как правило, грабители избегали встречи с собаками и, в большинстве случае, старались обходить стороной здания, охраняемые собаками. То же самое можно сказать и про ночной дозор. Грабители не хотели быть замеченными вооруженными дозорными или охранниками, которые могли вызвать полицию.

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

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

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

Сигнализация, оповещающая о проникновении грабителя, предназначена для обнаружения любых попыток входа в защищаемую область, когда эта область не используется. Система обнаружения вторжений IDS предназначена для разграничения авторизованного входа и несанкционированного проникновения, что реализуется гораздо сложнее. Здесь можно в качестве примера привести ювелирный магазин с сигнализацией против грабителей. Если кто-либо, даже владелец магазина, откроет дверь, то сработает сигнализация. Владелец должен после этого уведомить компанию, обслуживающую сигнализацию, о том, что это он открыл магазин, и что все в порядке. Систему IDS , напротив, можно сравнить с охранником, следящим за всем, что происходит в магазине, и выявляющим несанкционированные действия (как, например, пронос огнестрельного оружия). К сожалению, в виртуальном мире "огнестрельное оружие" очень часто остается незаметным.

Вторым вопросом, который необходимо принимать в расчет, является определение того, какие события являются нарушением периметра безопасности . Является ли нарушением попытка определить работающие компьютеры? Что делать в случае проведения известной атаки на систему или сеть ? По мере того как задаются эти вопросы, становится понятно, что найти ответы на них не просто. Более того, они зависят от других событий и от состояния системы-цели.

Определение типов систем обнаружения вторжений

Существуют два основных типа IDS : узловые ( HIDS ) и сетевые ( NIDS ). Система HIDS располагается на отдельном узле и отслеживает признаки атак на данный узел. Система NIDS находится на отдельной системе, отслеживающей сетевой трафик на наличие признаков атак, проводимых в подконтрольном сегменте сети. На рисунке 13.1 показаны два типа IDS , которые могут присутствовать в сетевой среде.


Рис. 13.1.

Узловые IDS

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

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

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

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

Устраним уязвимости информационной системы - устраним и возможность реализации атак.

На сегодняшний день считается неизвестным, сколько существует методов атак. Говорят о том, что до сих пор отсутствуют какие-либо серьезные математические исследования в этой области. Но еще в 1996 году Фред Коэн описал математические основы вирусной технологии. В этой работе доказано, что число вирусов бесконечно. Очевидно, что и число атак бесконечно, поскольку вирусы - это подмножество множества атак.

Модели атак

Традиционная модель атаки строится по принципу (рис.1) или (рис.2), т.е. атака исходит из одного источника. Разработчики сетевых средств защиты (межсетевых экранов, систем обнаружения атак и т.д.) ориентированы именно на традиционную модель атаки. В различных точках защищаемой сети устанавливаются агенты (сенсоры) системы защиты, которые передают информацию на центральную консоль управления. Это облегчает масштабирование системы, обеспечивает простоту удаленного управления и т.д. Однако такая модель не справляется с относительно недавно (в 1998 году) обнаруженной угрозой - распределенными атаками.
Рисунок 1. Отношение "один к одному"

В модели распределенной атаки используются иные принципы. В отличие от традиционной модели в распределенной модели используются отношения (рис.3) и (рис.4).

Распределенные атаки основаны на "классических" атаках типа "отказ в обслуживании ", а точнее на их подмножестве, известном как Flood-атаки или Storm-атаки (указанные термины можно перевести как "шторм", "наводнение" или "лавина"). Смысл данных атак заключается в посылке большого количества пакетов на атакуемый узел. Атакуемый узел может выйти из строя, поскольку он "захлебнется" в лавине посылаемых пакетов и не сможет обрабатывать запросы авторизованных пользователей. По такому принципу работают атаки SYN-Flood, Smurf, UDP Flood, Targa3 и т.д. Однако в том случае, если пропускная способность канала до атакуемого узла превышает пропускную способность атакующего или атакуемый узел некорректно сконфигурирован, то к "успеху" такая атака не приведет. Например, с помощью этих атак бесполезно пытаться нарушить работоспособность своего провайдера. Но распределенная атака происходит уже не из одной точки Internet, а сразу из нескольких, что приводит к резкому возрастанию трафика и выведению атакуемого узла из строя. Например, по данным России-Онлайн в течение двух суток, начиная с 9 часов утра 28 декабря 2000 г. крупнейший Internet-провайдер Армении "Арминко" подвергался распределенной атаке. В данном случае к атаке подключились более 50 машин из разных стран, которые посылали по адресу "Арминко" бессмысленные сообщения. Кто организовал эту атаку, и в какой стране находился хакер - установить было невозможно. Хотя атаке подвергся в основном "Арминко", перегруженной оказалась вся магистраль, соединяющая Армению с всемирной паутиной. 30 декабря благодаря сотрудничеству "Арминко" и другого провайдера - "АрменТел" - связь была полностью восстановлена. Несмотря на это компьютерная атака продолжалась, но с меньшей интенсивностью.

Этапы реализации атак

Можно выделить следующие этапы реализации атаки:

Обычно, когда говорят об атаке, то подразумевают именно второй этап, забывая о первом и последнем. Сбор информации и завершение атаки ("заметание следов") в свою очередь также могут являться атакой и могут быть разделены на три этапа (см. рис.5).
Рисунок 5. Этапы реализации атаки

Cбор информации - это основной этап реализации атаки. Именно на данном этапе эффективность работы злоумышленника является залогом "успешности" атаки. Сначала выбирается цель атаки и собирается информация о ней (тип и версия операционной системы, открытые порты и запущенные сетевые сервисы, установленное системное и прикладное программное обеспечение и его конфигурация и т.д.). Затем идентифицируются наиболее уязвимые места атакуемой системы, воздействие на которые приводит к нужному злоумышленнику результату. Злоумышленник пытается выявить все каналы взаимодействия цели атаки с другими узлами. Это позволит не только выбрать тип реализуемой атаки, но и источник ее реализации. Например, атакуемый узел взаимодействует с двумя серверами под управлением ОС Unix и Windows NT. С одним сервером атакуемый узел имеет доверенные отношения, а с другим - нет. От того, через какой сервер злоумышленник будет реализовывать нападение, зависит, какая атака будет задействована, какое средство реализации будет выбрано и т.д. Затем, в зависимости от полученной информации и желаемого результата, выбирается атака, дающая наибольший эффект. Например:
SYN Flood, Teardrop, UDP Bomb - для нарушения функционирования узла;
CGI-скрипт - для проникновения на узел и кражи информации;
PHF - для кражи файла паролей и удаленного подбора пароля и т.п.

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

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

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

1. Сбор информации

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

Изучение окружения

На этом этапе нападающий исследует сетевое окружение вокруг предполагаемой цели атаки. К таким областям, например, относятся узлы Internet-провайдера "жертвы" или узлы удаленного офиса атакуемой компании. На этом этапе злоумышленник может пытаться определить адреса "доверенных" систем (например, сеть партнера) и узлов, которые напрямую соединены с целью атаки (например, маршрутизатор ISP) и т.д. Такие действия достаточно трудно обнаружить, поскольку они выполняются в течение достаточно длительного периода времени и снаружи области, контролируемой средствами защиты (межсетевыми экранами, системами обнаружения атак и т.п.).

Идентификация топологии сети

Существует два основных метода определения топологии сети, используемых злоумышленниками:

  1. изменение TTL (TTL modulation),
  2. запись маршрута (record route).

По первому методу работают программы traceroute для Unix и tracert для Windows. Они используют поле Time to Live ("время жизни") в заголовке IP-пакета, которое изменяется в зависимости от числа пройденных сетевым пакетом маршрутизаторов. Для записи маршрута ICMP-пакета может быть использована утилита ping . Зачастую сетевую топологию можно выяснить при помощи протокола SNMP, установленного на многих сетевых устройствах, защита которых неверно сконфигурирована. При помощи протокола RIP можно попытаться получить информацию о таблице маршрутизации в сети и т.д.

Многие из этих методов используются современными системами управления (например, HP OpenView, Cabletron SPECTRUM, MS Visio и т.д.) для построения карт сети. И эти же методы могут быть с успехом применены злоумышленниками для построения карты атакуемой сети.

Идентификация узлов

Идентификация узла, как правило, осуществляется путем посылки при помощи утилиты ping команды ECHO_REQUEST протокола ICMP. Ответное сообщение ECHO_REPLY говорит о том, что узел доступен. Существуют свободно распространяемые программы, которые автоматизируют и ускоряют процесс параллельной идентификации большого числа узлов, например, fping или nmap. Опасность данного метода в том, что стандартными средствами узла запросы ECHO_REQUEST не фиксируются. Для этого необходимо применять средства анализа трафика, межсетевые экраны или системы обнаружения атак.

Это самый простой метод идентификации узлов. Однако он имеет два недостатка.

  1. Многие сетевые устройства и программы блокируют ICMP-пакеты и не пропускают их во внутреннюю сеть (или наоборот не пропускают их наружу). Например, MS Proxy Server 2.0 не разрешает прохождение пакетов по протоколу ICMP. В результате возникает неполная картина. С другой стороны, блокировка ICMP-пакета говорит злоумышленнику о наличии "первой линии обороны" - маршрутизаторов, межсетевых экранов и т.д.
  2. Использование ICMP-запросов позволяет с легкостью обнаружить их источник, что, разумеется, не может входить в задачу злоумышленника.

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

Идентификация сервисов или сканирование портов

Идентификация сервисов, как правило, осуществляется путем обнаружения открытых портов (port scanning). Такие порты очень часто связаны с сервисами, основанными на протоколах TCP или UDP. Например:

  • открытый 80-й порт подразумевает наличие Web-сервера,
  • 25-й порт - почтового SMTP-сервера,
  • 31337-й - серверной части троянского коня BackOrifice,
  • 12345-й или 12346-й - серверной части троянского коня NetBus и т.д.
Для идентификации сервисов и сканирования портов могут быть использованы различные программы, в т.ч. и свободно распространяемые. Например, nmap или netcat.

Идентификация операционной системы

Основной механизм удаленного определения ОС - анализ ответов на запросы, учитывающие различные реализации TCP/IP-стека в различных операционных системах. В каждой ОС по-своему реализован стек протоколов TCP/IP, что позволяет при помощи специальных запросов и ответов на них определить, какая ОС установлена на удаленном узле.

Другой, менее эффективный и крайне ограниченный, способ идентификации ОС узлов - анализ сетевых сервисов, обнаруженных на предыдущем этапе. Например, открытый 139-й порт позволяет сделать вывод, что удаленный узел, вероятнее всего, работает под управлением ОС семейства Windows. Для определения ОС могут быть использованы различные программы. Например, nmap или queso.

Определение роли узла

Предпоследним шагом на этапе сбора информации об атакуемом узле является определение его роли, например, выполнении функций межсетевого экрана или Web-сервера. Выполняется этот шаг на основе уже собранной информации об активных сервисах, именах узлов, топологии сети и т.п. Например, открытый 80-й порт может указывать на наличие Web-сервера, блокировка ICMP-пакета указывает на потенциальное наличие межсетевого экрана, а DNS-имя узла proxy.domain.ru или fw.domain.ru говорит само за себя.

Определение уязвимостей узла

Последний шаг - поиск уязвимостей. На этом шаге злоумышленник при помощи различных автоматизированных средств или вручную определяет уязвимости, которые могут быть использованы для реализации атаки. В качестве таких автоматизированных средств могут быть использованы ShadowSecurityScanner, nmap, Retina и т.д.

2. Реализация атаки

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

  • проникновение;
  • установление контроля.

Проникновение

Проникновение подразумевает под собой преодоление средств защиты периметра (например, межсетевого экрана). Реализовываться это может быть различными путями. Например, использование уязвимости сервиса компьютера, "смотрящего" наружу или путем передачи враждебного содержания по электронной почте (макровирусы) или через апплеты Java. Такое содержание может использовать так называемые "туннели" в межсетевом экране (не путать с туннелями VPN), через которые затем и проникает злоумышленник. К этому же этапу можно отнести подбор пароля администратора или иного пользователя при помощи специализированной утилиты (например, L0phtCrack или Crack).

Установление контроля

После проникновения злоумышленник устанавливает контроль над атакуемым узлом. Это может быть осуществлено путем внедрения программы типа "троянский конь" (например, NetBus или BackOrifice). После установки контроля над нужным узлом и "заметания" следов, злоумышленник может осуществлять все необходимые несанкционированные действия дистанционно без ведома владельца атакованного компьютера. При этом установление контроля над узлом корпоративной сети должно сохраняться и после перезагрузки операционной системы. Это может быть реализовано путем замены одного из загрузочных файлов или вставка ссылки на враждебный код в файлы автозагрузки или системный реестр. Известен случай, когда злоумышленник смог перепрограммировать EEPROM сетевой карты и даже после переустановки ОС он смог повторно реализовать несанкционированные действия. Более простой модификацией этого примера является внедрение необходимого кода или фрагмента в сценарий сетевой загрузки (например, для ОС Novell Netware).

Цели реализации атак

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

Классификация атак

Существуют различные типа классификации атак. Например, деление на пассивные и активные, внешние и внутренние, умышленные и неумышленные. Однако дабы не запутать вас большим разнообразием классификаций, мало применимыми на практике, предлагаю более "жизненную" классификацию:

  1. Удаленное проникновение (remote penetration) . Атаки, которые позволяют реализовать удаленное управление компьютером через сеть. Например, NetBus или BackOrifice.
  2. Локальное проникновение (local penetration) . Атака, которая приводит к получению несанкционированного доступа к узлу, на котором она запущена. Например, GetAdmin.
  3. Удаленный отказ в обслуживании (remote denial of service) . Атаки, которые позволяют нарушить функционирование или перегрузить компьютер через Internet. Например, Teardrop или trin00.
  4. Локальный отказ в обслуживании (local denial of service) . Атаки, которые позволяют нарушить функционирование или перегрузить компьютер, на котором они реализуются. Примером такой атаки является "враждебный" апплет, который загружает центральный процессор бесконечным циклом, что приводит к невозможности обработки запросов других приложений.
  5. Сетевые сканеры (network scanners) . Программы, которые анализируют топологию сети и обнаруживают сервисы, доступные для атаки. Например, система nmap.
  6. Сканеры уязвимостей (vulnerability scanners) . Программы, которые ищут уязвимости на узлах сети и которые могут быть использованы для реализации атак. Например, система SATAN или ShadowSecurityScanner.
  7. Взломщики паролей (password crackers) . Программы, которые "подбирают" пароли пользователей. Например, L0phtCrack для Windows или Crack для Unix.
  8. Анализаторы протоколов (sniffers) . Программы, которые "прослушивают" сетевой трафик. При помощи этих программ можно автоматически искать такую информацию, как идентификаторы и пароли пользователей, информацию о кредитных картах и т.д. Например, Microsoft Network Monitor, NetXRay компании Network Associates или LanExplorer.

Компания Internet Security Systems, Inc. еще больше сократила число возможных категорий, доведя их до 5:

  1. Сбор информации (Information gathering).
  2. Попытки несанкционированного доступа (Unauthorized access attempts).
  3. Отказ в обслуживании (Denial of service).
  4. Подозрительная активность (Suspicious activity).
  5. Системные атаки (System attack).

Первые 4 категории относятся к удаленным атакам, а последняя - к локальным, реализуемом на атакуемом узле. Можно заметить, что в данную классификацию не попал целый класс так называемых "пассивных" атак ("прослушивание" трафика, "ложный DNS-сервер", "подмена ARP-сервера" и т.п.).

Классификация атак, реализованная во многих системах обнаружения атак, не может быть категоричной. Например, атака, реализация которой для ОС Unix (например, переполнение буфера statd) может иметь самые плачевные последствия (самый высокий приоритет), для ОС Windows NT может быть вообще не применима или иметь очень низкую степень риска. Кроме того, существует неразбериха и в самих названиях атак и уязвимостей. Одна и та же атака, может иметь разные наименования у разных производителей систем обнаружения атак.

Одной из лучших баз уязвимостей и атак является база данных X-Force, находящаяся по адресу: http://xforce.iss.net/. Доступ к ней может осуществляться как путем подписки на свободно распространяемый список рассылки X-Force Alert, так и путем интерактивного поиска в базе данных на Web-сервере компании ISS.

Заключение

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

Средства обнаружения компьютерных атак

Технология обнаружения атак должна решать следующие задачи:

  • Распознавание известных атак и предупреждение о них соответствующего персонала.
  • "Понимание" зачастую непонятных источников информации об атаках.
  • Освобождение или снижение нагрузки на персонал, отвечающий за безопасность, от текущих рутинных операций по контролю за пользователями, системами и сетями, являющимися компонентами корпоративной сети.
  • Возможность управления средствами защиты не-экспертами в области безопасности.
  • Контроль всех действий субъектов корпоративной сети (пользователей, программ, процессов и т.д.).

Очень часто системы обнаружения атак могут выполнять функции, существенно расширяющие спектр их применения. Например,

  • Контроль эффективности межсетевых экранов. Например, установка системы обнаружения атак после межсетевого экрана (внутри корпоративной сети) позволяет обнаружить атаки, пропускаемые МСЭ и, тем самым, определить недостающие правила на межсетевом экране.
  • Контроль узлов сети с неустановленными обновлениями или узлов с устаревшим программным обеспечением.
  • Блокирование и контроль доступа к определенным узлам Internet. Хотя системам обнаружения атак далеко до межсетевых экранов и систем контроля доступа к различным URL, например, WEBsweeper, они могут выполнять частичный контроль и блокирование доступа некоторых пользователей корпоративной сети к отдельным ресурсам Internet, например, к Web-серверам порнографического содержания. Это бывает необходимо тогда, когда в организации нет денег на приобретение и межсетевого экрана и системы обнаружение атак, и функции МСЭ разносятся между системой обнаружения атак, маршрутизатором и proxy-сервером. Кроме того, системы обнаружения атак могут контролировать доступ сотрудников к серверам на основе ключевых слов. Например, sex, job, crack и т.д.
  • Контроль электронной почты. Системы обнаружения атак могут использоваться для контроля неблагонадежных сотрудников, использующих электронную почту для выполнения задач, не входящих в их функциональные обязанности, например, рассылка резюме. Некоторые системы могут обнаруживать вирусы в почтовых сообщениях и, хотя до настоящих антивирусных систем им далеко, они все же выполняют эту задачу достаточно эффективно.

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

Классификация систем обнаружения атак

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

  1. host-based , то есть обнаруживающие атаки, направленные на конкретный узел сети,
  2. network-based , то есть обнаруживающие атаки, направленные на всю сеть или сегмент сети.

Системы обнаружения атак, контролирующие отдельный компьютер, как правило, собирают и анализируют информацию из журналов регистрации операционной системы и различных приложений (Web-сервер, СУБД и т.д.). По такому принципу функционирует RealSecure OS Sensor. Однако в последнее время стали получать распространение системы, тесно интегрированные с ядром ОС, тем самым, предоставляя более эффективный способ обнаружения нарушений политики безопасности. Причем такая интеграция может быть реализовано двояко. Во-первых, могут контролироваться все системные вызовы ОС (так работает Entercept) или весь входящий/исходящий сетевой трафик (так работает RealSecure Server Sensor). В последнем случае система обнаружения атак захватывает весь сетевой трафик напрямую с сетевой карты, минуя операционную систему, что позволяет уменьшить зависимость от нее и тем самым повысить защищенность системы обнаружения атак.

Системы обнаружения атак уровня сети собирают информацию из самой сети, то есть из сетевого трафика. Выполняться эти системы могут на обычных компьютерах (например, RealSecure Network Sensor), на специализированных компьютерах (например, RealSecure for Nokia или Cisco Secure IDS 4210 и 4230) или интегрированы в маршрутизаторы или коммутаторы (например, CiscoSecure IOS Integrated Software или Cisco Catalyst 6000 IDS Module). В первых двух случаях анализируемая информация собирается посредством захвата и анализа пакетов, используя сетевые интерфейсы в беспорядочном (promiscuous) режиме. В последнем случае захват трафика осуществляется с шины сетевого оборудования.

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

Практически все системы обнаружения атак основаны на сигнатурном подходе.

Достоинства систем обнаружения атак

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

Коммутация позволяет управлять крупномасштабными сетями, как несколькими небольшими сетевыми сегментами. В результате бывает трудно определить наилучшее место для установки системы, обнаруживающей атаки в сетевом трафике. Иногда могут помочь специальные порты (span ports) на коммутаторах, но не всегда. Обнаружение атак на уровне конкретного узла обеспечивает более эффективную работу в коммутируемых сетях, так как позволяет разместить системы обнаружения только на тех узлах, на которых это необходимо.

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

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

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

И, наконец, системы обнаружения атак, функционирующие на сетевом уровне, не зависят от операционных систем, установленных в корпоративной сети, так как они оперируют сетевым трафиком, которым обмениваются все узлы в корпоративной сети. Системе обнаружения атак все равно, какая ОС сгенерировала тот или иной пакет, если он в соответствие со стандартами, поддерживаемыми системой обнаружения. Например, в сети могут работать ОС Windows 98, Windows NT, Windows 2000 и XP, Netware, Linux, MacOS, Solaris и т.д., но если они общаются между собой по протоколу IP, то любая из систем обнаружения атак, поддерживающая этот протокол, сможет обнаруживать атаки, направленные на эти ОС.

Совместное применение систем обнаружения атак на уровне сети и уровне узла повысит защищенность вашей сети.

Сетевые системы обнаружения атак и межсетевые экраны

Наиболее часто сетевые системы обнаружения атак пытаются заменить межсетевыми экранами, уповая на то, что последние обеспечивают очень высокий уровень защищенности. Однако не стоит забывать, что межсетевые экраны - это просто системы, основанные на правилах, которые разрешают или запрещают прохождение трафика через них. Даже межсетевые экраны, построенные по технологии "", не позволяют с уверенностью сказать, присутствует ли атака в контролируемом ими трафике или нет. Они могут сказать, соответствует ли трафик правилу или нет. Например, МСЭ сконфигурирован так, чтобы блокировать все соединения кроме TCP-соединений на 80 порту (то есть HTTP-трафик). Таким образом, любой трафик через 80-ый порт законен с точки зрения МСЭ. С другой стороны, система обнаружения атак также контролирует трафик, но ищет в нем признаки атаки. Ее мало заботит, для какого порта предназначен трафик. По умолчанию весь трафик для системы обнаружения атак подозрителен. То есть, несмотря на то, что система обнаружения атак работает с тем же источником данных, что и МСЭ, то есть с сетевым трафиком, они выполняют дополняющие друг друга функции. Например, HTTP-запрос "GET /../../../etc/passwd HTTP/1.0". Практически любой МСЭ разрешает прохождение данного запроса через себя. Однако система обнаружения атак легко обнаружит эту атаку и блокирует ее.

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

Межсетевой экран - не панацея!

Варианты реакций на обнаруженную атаку

Мало обнаружить атаку, - необходимо на нее соответствующим образом отреагировать. Именно варианты реагирования во многом определяют эффективность системы обнаружения атак. На сегодняшний день предлагаются следующие варианты реагирования:

  • Уведомление на консоль (включая резервную) системы обнаружения атак или на консоль интегрированной системы (например, межсетевого экрана).
  • Звуковое оповещение об атаке.
  • Генерация управляющих последовательностей SNMP для систем сетевого управления.
  • Генерация сообщения об атаке по электронной почте.
  • Дополнительные уведомления на пейджер или факс. Очень интересная, хотя и редко применяемая возможность. Оповещение об обнаружении несанкционированной деятельности посылается не администратору, а злоумышленнику. По мнению сторонников данного варианта реагирования, нарушитель, узнав, что его обнаружили, вынужден прекратить свои действия.
  • Обязательная регистрация обнаруживаемых событий. В качестве журнала регистрации могут выступать:
    • текстовый файл,
    • системный журнал (например, в системе Cisco Secure Integrated Software),
    • текстовый файл специального формата (например, в системе Snort),
    • локальная база данных MS Access,
    • SQL-база данных (например, в системе RealSecure).
    Надо только учитывать, что объемы регистрируемой информации требуют, как правило, SQL-базу - MS SQL или Oracle.
  • Трассировка событий (event trace), т.е. запись их в той последовательности и с той скоростью, с которыми их реализовывал злоумышленник. Затем администратор в любое заданное время может прокрутить (replay или playback) необходимую последовательность событий с заданной скоростью (в реальном режиме времени, с ускорением или замедлением), чтобы проанализировать деятельность злоумышленника. Это позволит понять его квалификацию, используемые средства атаки и т.д.
  • Прерывание действий атакующего, т.е. завершение соединения. Это можно сделать, как:
    • перехват соединения (session hijacking) и посылка пакета с установленным флагом RST обоим участникам сетевого соединения от имени каждого из них (в системе обнаружения атак, функционирующей на уровне сети);
    • блокировка учетной записи пользователя, осуществляющего атаку (в системе обнаружения атак на уровне узла). Такая блокировка может быть осуществлена либо на заданный промежуток времени, либо до тех пор, пока учетная запись не будет разблокирована администратором. В зависимости от привилегий, с которыми запущена система обнаружения атак, блокировка может действовать как в пределах самого компьютера, на который направлена атака, так и в пределах всего домена сети.
  • Реконфигурация сетевого оборудования или межсетевых экранов. В случае обнаружения атаки на маршрутизатор или межсетевой экран посылается команда на изменение списка контроля доступа. Впоследствии все попытки соединения с атакующего узла будут отвергаться. Как и блокировка учетной записи злоумышленника, изменение списка контроля доступа может быть осуществлено или на заданный интервал времени или до того момента, как изменение будет отменено администратором реконфигурируемого сетевого оборудования.
  • Блокирование сетевого трафика так, как это реализовано в межсетевых экранах. Этот вариант позволяет ограничить трафик, а также адресатов, которые могут получить доступ к ресурсам защищаемого компьютера, позволяя выполнять функции доступные в персональных межсетевых экранах.

Сергей Гриняев ,
кандидат технических наук, старший научный сотрудник
[email protected]

Технология систем обнаружения вторжений в компьютерные сети (СОВ) достаточно молода и динамична. Сегодня в этой сфере идет активное формирование рынка, в том числе процессы поглощения и слияния компаний. Поэтому информация о системах обнаружения вторжений быстро устаревает, что затрудняет сравнительный анализ их технических характеристик. Список продуктов, расположенный в Интернете на сайте SANS/NSA1, более достоверен, поскольку он постоянно модифицируется и дополняется. Что же касается информации на русском языке, то она практически полностью отсутствует. В данную статью автор старался включить как можно больше ссылок на информационные ресурсы Интернета по теме обнаружения вторжений (список этих ресурсов приведен в конце статьи, а в тексте ссылки на него обозначены цифрами).

Обнаружение вторжений остается областью активных исследований уже в течение двух десятилетий. Считается, что начало этому направлению было положено в 1980 г. статьей Джеймса Андерсона "Мониторинг угроз компьютерной безопасности"2. Несколько позже, в 1987 г. это направление было развито публикацией статьи "О модели обнаружения вторжения" Дороти Деннинг3. Она обеспечила методологический подход, вдохновивший многих исследователей и заложивший основу для создания коммерческих продуктов в области обнаружения вторжений.

Экспериментальные системы

Исследования по обнаружению вторжений, выполненные в начале 1990-х гг., породили и целый ряд новых инструментальных средств4. Однако большинство из них разрабатывались студентами только с целью исследовать базовые концепции теоретического подхода, а после того, как авторы заканчивали обучение, поддержка и развитие прекращались. Вместе с тем эти разработки серьезно повлияли на выбор направления последующих исследований. Ранние разработки систем обнаружения вторжений в основном базировались на централизованной архитектуре, но в силу взрывного роста количества телекоммуникационных сетей разного назначения более поздние усилия сконцентрировались на системах с распределенной сетевой архитектурой.

Два из описанных здесь продуктов, EMERALD и NetStat, созданы на основе сходных подходов. Третья система, Bro, позволяет изучать проблемы проникновения в сеть с использованием попыток перегрузки или дезинформации системы обнаружения вторжения.

EMERALD

EMERALD (Event Monitoring Enabling Responses to Anomalous Live Disturbances), самый современный продукт в своем классе, разработан компанией SRI (http://www.sri.com). Это семейство инструментальных средств создавалось для исследования проблем, связанных с обнаружением аномалий (отклонений пользователя от нормального поведения) и определения сигнатур (характерных "образов" вторжения).

Первые работы SRI в этой области начались в 1983 г., когда был разработан статистический алгоритм, способный определить различия в поведении пользователя5. Немного позже подсистема анализа сигнатур вторжения была дополнена экспертной системой P-BEST6. Результаты исследований были реализованы в одной из ранних версий системы IDES7. Эта система способна контролировать в реальном масштабе времени действия пользователей, подключенных к нескольким серверам. В 1992-1994 гг. был создан уже коммерческий продукт NIDES8, также предназначенный для защиты отдельных серверов (host-based) и использующий экспертную систему P-BEST. Далее разработчики добавили к системе компонент Resolver, который объединял результаты статистического анализа и анализа сигнатур. Интерфейс пользователя в NIDES также был существенно улучшен.

Затем была создана система EMERALD. В ней были учтены результаты экспериментов с IDES/NIDES, но эта система предназначалась уже для обеспечения безопасности сетевых сегментов (network-based). Главная цель ее разработки - обнаружение вторжений в больших гетерогенных сетях. Такие среды труднее контролировать и анализировать из-за распределенного характера поступающей информации.

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

Иерархическая модель обеспечивает три уровня анализа, который выполняют мониторы сервисов, доменов и окружения. Эти блоки имеют общую базовую архитектуру, включающую набор анализаторов для обнаружения аномалий, анализа сигнатур и resolver-компонент. Последний объединяет результаты, полученные от анализаторов двух предыдущих уровней. Каждый модуль содержит библиотеку объектов ресурсов, что позволяет настраивать его компоненты под конкретное приложение. Сами ресурсы могут многократно использоваться в нескольких мониторах EMERALD. На нижнем уровне мониторы сервисов работают для отдельных компонентов и сетевых услуг в пределах одного домена, анализируют данные (файлы регистрации действий, событий и т.д.), выполняют анализ локальных сигнатур и статистические исследования. Мониторы домена обрабатывают информацию, поступившую от мониторов сервисов, более детально исследуя ситуацию в масштабах всего домена, а мониторы окружения выполняют анализ междоменной области. Мониторы сервисов могут связываться друг с другом с помощью виртуальных каналов связи.

Опыт использования NIDES продемонстрировал эффективность статистических методов при работе с пользователями и с прикладными программами. Контроль прикладных программ (например, анонимного ftp-сервера) был особенно эффективен, так как для анализа требовалось меньшее количество прикладных профилей. Именно поэтому в EMERALD была реализована методика, в которой управление профилем отделено от анализа.

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

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

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

NetStat

NetStat - последний продукт из серии инструментальных средств STAT, созданных в Калифорнийском университете (Санта-Барбара). Исследования по проекту STAT сосредоточены на обнаружении вторжений в реальном масштабе времени. Для этого анализируются состояние систем и процессы перехода в них9. Основная идея заключается в том, что некоторые последовательности действий, однозначно указывающие на присутствие нарушителя, переводят систему из начального (санкционированного) состояния в несанкционированное.

Большинство централизованных систем обнаружения вторжений определяют факт вторжения на основе "контрольного следа". Модуль "Аудит следа анализатора" в STAT фильтрует и обобщает эту информацию (след). Результаты, преобразованные в удобный для анализа вид, называются сигнатурами и представляют собой важнейший элемент в подходе STAT. Последовательность действий, описанная сигнатурой, переводит систему через ряд состояний к несанкционированному виду. Вторжение определяется по переходам между состояниями, которые зафиксированы в наборах продукционных правил.

Первоначально метод был реализован в UNIX-системе USTAT9, предназначенной для защиты отдельных серверов. Основные блоки USTAT - препроцессор, база знаний (база фактов и база правил), блок вывода и решатель. Препроцессор фильтрует и упорядочивает данные в форму, которая исполняет роль независимого контрольного файла системы. В базе правил хранятся правила перехода между состояниями, которые соответствуют предопределенным последовательностям вторжения, а в базе фактов - описание динамически изменяющихся состояний системы относительно возможных текущих вторжений.

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

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

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

NetStat10 - продукт дальнейшего развития USTAT, ориентированный на поддержку обнаружения вторжений в сети серверов с единой распределенной файловой системой. В настоящее время в архитектуру NetStat11 вносится ряд существенных изменений, что приведет к переориентации с обеспечения безопасности отдельных серверов на обеспечение безопасности сетевых сегментов. Кроме того, NetStat включает набор зондов, которые отвечают за обнаружение и оценку вторжений в тех подсетях, в которых они функционируют.

Bro

Bro - исследовательский инструмент, разрабатываемый Ливерморской национальной лабораторией (Lawrence Livermore National Laboratory, http://www.llnl.gov) министерства энергетики США. Он предназначен для изучения проблем отказоустойчивости систем обнаружения вторжения. Рассмотрим основные особенности комплекса Bro12.

Контроль перегрузки - способность обрабатывать большие объемы передачи данных без снижения пропускной способности. Нарушитель может попытаться перегрузить сеть посторонними пакетами для вывода системы обнаружения вторжения из строя. В этом случае СОВ будет вынуждена пропускать некоторые пакеты, среди которых могут оказаться и созданные злоумышленниками для проникновения в сеть.

Уведомление в реальном масштабе времени. Оно необходимо для своевременного информирования и подготовки ответных действий.

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

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

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

Система обладает иерархической архитектурой с тремя уровнями функций. На нижнем уровне Bro использует утилиту libpcap для извлечения из сети пакетов с данными. Этот блок обеспечивает независимость основных блоков анализа от технических особенностей телекоммуникационной сети, в которой развернута система, а также позволяет отфильтровать существенную долю пакетов на нижнем уровне. Благодаря этому libpcap может перехватывать все пакеты, связанные с прикладными протоколами (ftp, telnet и т.д.).

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

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

Выполнение кода может закончиться генерацией дальнейших событий, регистрацией уведомления в реальном масштабе времени или регистрацией данных. Чтобы добавить новую функцию к возможностям Bro, надо подготовить описание образа, идентифицирующего событие, и написать соответствующие обработчики событий. В настоящий момент Bro контролирует четыре прикладных сервиса: finger, ftp, portmapper и telnet.

Bro работает под управлением нескольких вариантов ОС UNIX и используется как часть системы защиты Национальной лаборатории. С 1998 г. в результате функционирования Bro в международные организации CIAC и CERT/CC было передано 85 сообщений об инцидентах. Разработчики особо отмечают производительность системы - она не испытывает проблем потери пакетов в сети FDDI при пиковой производительности до 200 пакетов в секунду.

Коммерческие продукты

Коммерческие программы, о которых пойдет речь, - это небольшая часть всего множества продуктов, присутствующих на рынке1, 13-14. Сравнительную оценку коммерческих продуктов можно найти в ряде отчетов15-19. Описанные в статье системы можно рассматривать как классические образцы.

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

CMDS

Система CMDS21,22 была разработана компанией Science Applications International (http://www.saic.com), однако теперь ее поддерживает и продает ODS Networks (http://www.ods.com)23. Этот продукт предназначен для обеспечения безопасности серверов и мониторинга иерархической сети машин. Поддерживаются статистический и сигнатурный методы обнаружения, можно генерировать отчеты о прогнозах развития вторжения. Для анализа аномалий CMDS использует статистический анализ. Идентифицируются образы поведения, отклоняющиеся от нормальной практики пользователя. В статистике учитываются показатели времени входа/выхода из системы, запуска прикладных программ, количества открытых, измененных или удаленных файлов, использования прав администратора, наиболее часто используемых каталогов.

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

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

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

NetProwler

NetProwler25-27 выпускается фирмой Axent (http://www.axent.com), с конца 2000 г. входящей в состав корпорации Symantec (http://www.symantec.com). Компонент Intruder Alert обнаруживает нападения на серверы, а NetProwler (ранее известный как ID-Track от компании Internet Tools) поддерживает обнаружение вторжений в сегментах сетей. Основу NetProwler составляет процесс динамического анализа полной сигнатуры. Этот метод обеспечивает интеграцию небольших порций информации, извлекаемой из сети, в более сложные события, что позволяет проверять события на совпадение с предопределенными сигнатурами в реальном масштабе времени и формировать новые сигнатуры. NetProwler имеет библиотеку сигнатур для различных операционных систем и типов нападений, благодаря чему пользователи могут сами строить профили сигнатур, используя Мастер определения сигнатуры. Тем самым пользователи могут описывать нападения, состоящие из отдельных, повторяющихся или целого ряда событий. Сигнатура нападения включает четыре элемента: примитив поиска (образец строки), примитив значения (значение или диапазон значений), сохраненное ключевое слово (имя протокола) и операционная система (или приложение, связанное с нападением).

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

NetRanger

NetRanger28-31 от Cisco Systems (http://www.cisco.systems) - система обнаружения вторжения в сетевых сегментах. С ноября 1999 г. продукт носит название Cisco Secure Intrusion Detection System. Система NetRanger работает в реальном времени и масштабируема к уровню информационной системы. Она состоит из двух компонентов - датчиков Sensor и директоров Director; датчики реализованы аппаратно, а директор - программно. Датчики размещаются в стратегических точках сети и контролируют проходящий трафик. Они могут анализировать заголовки и содержание каждого пакета, а также сопоставлять выбранные пакеты с образцом. Для определения типа нападения они используют экспертную систему на основе продукционных правил.

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

При фиксации факта нападения датчик инициирует ряд действий - включение сигнализации, регистрацию события, уничтожение сеанса или полный разрыв соединения. Директор обеспечивает централизованное управление системой NetRanger. Это включает удаленную инсталляцию новых сигнатур в датчики, сбор и анализ данных защиты.

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

Centrax

До недавнего времени система защиты от несанкционированного доступа фирмы Centrax (http://www.centraxcorp.com) поставлялась под названием Entrax. Однако в марте 1999 г. Centrax была куплена компанией Cybersafe (http://www.cybersafe.com), которая внесла в Entrax существенные технические изменения и переименовала продукт в Centrax32-34. Первоначально система Entrax была ориентирована на обеспечение безопасности отдельных серверов. Centrax, кроме того, контролирует события в сегменте сети. Система состоит из компонентов двух видов - пультов управления и целевых агентов, которые аналогичны директорам и датчикам в NetRanger. Целевые агенты, в свою очередь, также бывают двух видов: для сбора информации на основе централизованной или сетевой (распределенной) архитектуры. Целевые агенты постоянно находятся на машинах, которые они контролируют (индивидуальные ПК, файл-серверы или серверы печати), передавая информацию для обработки на пульт управления. Для более эффективной работы сетевой целевой агент реализован на автономной машине. Агенты первого типа поддерживают более 170 сигнатур (для вирусов, троянских программ, просмотра объекта и изменения пароля), а сетевые - только 40.

Пульт управления состоит из нескольких блоков. Целевой администратор загружает политику сбора и аудита для целевых агентов, администратор оценки исследует серверы на предмет выявления уязвимости защиты, а аварийный администратор отображает информацию об обнаруженных угрозах и может реагировать на них, разрывая сеанс связи. Пульт управления работает с ОС Windows NT, в то время как целевые агенты - с Windows NT или Solaris.

RealSecure

RealSecure19, 35-37 от компании Internet Security Systems (http://www.iss.net) - еще один продукт для обнаружения вторжений в реальном времени. Он также имеет трехуровневую архитектуру и состоит из модулей распознавания для сегментов сети и отдельных серверов и модуля администратора. Модуль распознавания для сегментов функционирует на специализированных рабочих станциях; он отвечает за обнаружение вторжения и реакцию на него. Каждый такой модуль контролирует трафик в определенном сетевом сегменте на наличие сигнатур нападения. Обнаружив неправомочное действие, сетевой модуль может отреагировать на него разрывом соединения, посылкой сообщения по электронной почте или на пейджер, или другими заданными пользователем действиями. Он также передает сигнал тревоги модулю администратора или пульту управления.

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

Общедоступные системы

Кроме коммерческих и исследовательских систем существуют свободно распространяемые общедоступные программы для обнаружения вторжения. Рассмотрим в качестве примера две программы - Shadow и Network Flight Recorder, которые поддерживаются объединенными усилиями Военно-морского Центра сухопутных операций США, компании Network Flight Recorder, Агентства национальной безопасности США и Института SANS38, а также утилиту Tripwire. Уровень их поддержки гораздо ниже, чем у коммерческих систем, однако многим пользователям они помогут понять и оценить принципы работы СОВ, их возможности и ограничения. Такие системы интересны еще и тем, что их исходный код доступен.

Shadow

Система Shadow39, 40 содержит так называемые станции-датчики и анализаторы. Датчики обычно располагаются в важных точках сети - таких, как внешняя сторона межсетевых экранов, в то время как анализаторы находятся внутри защищенного сегмента сети. Датчики извлекают заголовки пакетов и сохраняют их в специальном файле. Анализатор ежечасно считывает эту информация, фильтрует ее и генерирует следующий журнал. Логика работы Shadow такова, что, если события уже идентифицированы и для них существует стратегия реагирования, предупредительные сообщения не генерируются. Этот принцип исходит из опыта работы с другими СОВ, в которых было много ложных предупреждений, напрасно отвлекавших пользователей.

Датчики используют для извлечения пакетов утилиту libpcap, разработанную исследовательской группой Lawrence Berkeley Laboratories Network Research Group41. Станция не делает предобработки данных, не вынуждая злоумышленника проверять свои пакеты. Основной анализ происходит в модуле tcpdump, который содержит фильтры пакетов. Фильтры могут быть простыми или состоящими из нескольких простых фильтров. Простой фильтр, например tcp_dest_port_23, выбирает пакеты протокола TCP с портом адресата 23 (telnet). Некоторые типы вторжений достаточно трудно обнаружить фильтрами tcpdump (в частности, те, которые применяют редкое зондирование сети). Для них Shadow использует инструмент на основе языка perl - модуль one_day_pat.pl.

Shadow функционирует на многих UNIX-системах, включая FreeBSD и Linux, и использует Web-интерфейс для отображения информации.

Network Flight Recorder

Network Flight Recorder (NFR) одноименной компании вначале существовал как в коммерческой, так и в общедоступной версии42-44. Затем политика его распространения изменилась: NFR закрыл доступ к исходному тексту свободно распространяемой версии, поскольку она была менее эффективной, чем коммерческий продукт, а пользователи могли принять его за коммерческую версию. Вместе с тем NFR по-прежнему планирует оставить коммерческий продукт доступным для изучения, но скорее всего уже не в исходных кодах.

Так же, как в Shadow, в NFR используется несколько измененная версия утилиты libpcap для извлечения случайных пакетов из сети (кроме заголовков, она может извлекать и тело пакета). База данных и модуль анализа обычно функционируют на одной платформе вне межсетевых экранов. Копии NFR можно размещать и во внутренних стратегических точках корпоративной сети, чтобы обнаружить потенциальные угрозы, исходящие от собственных пользователей компании.

NFR содержит собственный язык программирования (N), предназначенный для анализа пакетов. Фильтры, написанные на N, компилируются в байт-код и интерпретируются модулем выполнения.

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

Tripwire

Tripwire - инструмент оценки целостности файла, первоначально разработанный в Университете Пурду (шт. Индиана, США). Подобно NFR, эта программа входит и в общедоступные, и в коммерческие системы. Исходный код общедоступной версии для ОС UNIX распространяется свободно. Tripwire отличается от большинства других инструментальных СОВ тем, что обнаруживает изменения в уже проверенной файловой системе.

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

Логика работы Tripwire не зависит от типа события, однако эта программа не обнаруживает вторжений, которые не изменяют проверенные файлы.

Последняя коммерческая версия Tripwire - 2.X для платформ UNIX и Windows NT 4.0. Версия 2.0 для Red Hat Linux 5.1 и 5.2 распространяется бесплатно. Версия 1.3 доступна в исходных кодах и представляет состояние программы на 1992 г.

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

Программы для государственных учреждений США

Отличия от коммерческих систем

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

В феврале 1999 г. министерство энергетики США, Совет национальной безопасности и Управление политики в области науки и техники Администрации США организовали проведение симпозиума под названием "Обнаружение враждебного программного кода, вторжений и аномального поведения". На нем присутствовали представители коммерческого и государственного секторов. В принятом на симпозиуме документе были определены функции, которых не должно быть в коммерческих продуктах. Дело в том, что компании заинтересованы в защите конфиденциальной информации только для целей ведения бизнеса. Правительство также заинтересовано в защите собственных сетей, но главная задача для него - не извлечение прибыли, а защита национальной безопасности. Это очень важный момент. Правительственным организациям прежде всего необходимо обеспечить обнаружение вторжений в государственные информационные сети со стороны иностранных спецслужб. Ресурсы и возможности противника, поддержанного иностранным государством, могут превысить возможности лучших коммерческих СОВ.

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

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

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

CIDDS

CIDDS (Common Intrusion Detection Director System, также известная как CID Director) - специализированная аппаратно-программная операционная среда, разрабатываемая в рамках проекта создания средств обнаружения вторжений (IDT) Центра информационной войны Военно-воздушных сил США (Air Force Information Warfare Center, AFIWC). Центр AFIWC - структура, ответственная за разработку СОВ для сетей ВВС США. В ее состав входит Служба компьютерной безопасности ВВС (AFCERT), которая отвечает за разработку ежедневных операций по администрированию и обеспечению защиты информационных сетей.

CIDDS в реальном времени получает данные о подключениях и работе от автоматизированного измерителя инцидентов защиты (Automated Security Incident Measurement, ASIM), системы датчиков и других инструментальных СОВ. Предусмотрена возможность анализа собранных данных как в автоматическом режиме, так и с привлечением экспертов-аналитиков.

Программное обеспечение CID Director состоит из программ на C, C++ и Java, а также сценариев и SQL-запросов базы данных Oracle. Director хранит информацию в локальной БД Oracle и обеспечивает пользователю возможность анализировать индикаторы потенциально опасных действий, встречающихся в сетях ВВС США. Допускается а) обнаружение потенциально опасных, злонамеренных или неправомочных действий, которые происходят в течение долгого времени; б) обнаружение действий, которые имеют целью определенные компьютеры или типы сетей; в) обнаружение действий, которые проходят транзитом или задействуют несколько сетей; г) анализ тенденций и глобальных целей. В CIDDS также реализована возможность воспроизводить данные подключений в реальном масштабе времени для анализа последовательностей нажатия клавиш.

CIDDS обеспечивает для системы ASIM централизованное хранение и анализ данных. Director получает данные от различных датчиков, которые контролируют состояние всех сетей ВВС. Эти сети могут быть гомогенными или гетерогенными и обслуживать различные задачи ВВС. CIDDS служит центральной базой данных и точкой анализа для всех перечисленных сетей.

Планы будущего развития предусматривают установку CIDDS на различных уровнях во всех структурах ВВС. Все системы будут отправлять основную информацию в единую базу данных AFCERT.

Каждый компьютер CID Director связан с системой датчиков ASIM. ПО датчика состоит из модулей на C и Java, сценариев для оболочки UNIX (Bourne) и файлов конфигурации, которые вместе фильтруют пакеты и анализируют состояние сети. По существу это утилита для перехвата и анализа разнородных пакетов данных. Его ПО ведет мониторинг трафика протоколов IP, TCP, UDP и ICMP для идентификации подозрительных действий. Возможны два режима работы датчика - пакетный и реального времени.

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

ASIM-датчик пакетного режима собирает сетевой трафик за некоторый период времени с настраиваемой продолжительностью, обычно 24 ч. После обобщения данные анализируются, и, если требуется, их можно просмотреть с локальной консоли или передать в центральный офис AFIWC/AFCERT. Каждые сутки собранные данные шифруются и передаются в AFIWC/AFCERT для анализа специалистом-аналитиком, который определяет, являются ли идентифицированные действия злонамеренными, неправомочными или нормальными уполномоченными.

Заключение

В настоящее время в области СОВ идет переход к созданию систем, ориентированных на защиту сетевых сегментов. Для американского рынка характерна следующая ситуация: коммерческие системы значительно отличаются от программных продуктов, которые рекомендованы для использования в государственных учреждениях. Отметим, что это общая тенденция в сфере ИТ, - для обеспечения безопасности государственных учреждений должны использоваться только специально созданные системы, недоступные на рынке. Последние имеют характерное отличие: они ориентированы не на автоматические алгоритмы распознавания признаков вторжений, а на экспертов-аналитиков, ежедневно оценивающих передаваемые данные.

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

Источники информации, упомянутые в статье

  1. Stocksdale, Gregory. (National Security Agency). SANS/NSA Intrusion Detection Tools Inventory. WWW: http://www.sans.org/NSA/idtools.htm .
  2. Anderson, James P. Computer Security Threat Monitoring and Surveillance. Fort Washington, PA: James P. Anderson Co.
  3. Denning, Dorothy E. (SRI International). An Intrusion Detection Model. IEEE Transactions on Software Engineering (SE-13), 2 (February 1987): 222-232.
  4. Mukherjee, Biswanath; Heberlein, L.Todd; & Levitt, Karl N. (University of California, Davis). Network Intrusion Detection. IEEE Network 8, 3 (May/June 1994): 26-41. WWW: http://seclab.cs.ucdavis.edu/papers.html .
  5. Anderson, Debra, et al. (SRI International). Detecting Unusual Program Behavior Using the Statistical Component of the NextGeneration Intrusion Detection Expert System (NIDES) (SRICSL-95-06). Menlo Park, CA: Computer Science Laboratory, SRI International, May 1995. WWW: http://www.sdl.sri.com/nides/index5.html .
  6. Lindqvist, Ulf & Porras, Phillip A. Detecting Computer and Network Misuse Through the Production-Based Expert System Toolset (P-BEST). Proceedings of the 1999 IEEE Symposium on Security and Privacy. Oakland, CA, May 9-12, 1999. WWW: http://www2.csl.sri.com/emerald/pbest-sp99-cr.pdf .
  7. Lunt, Teresa F., et al. (SRI International). A Real-Time Intrusion Detection Expert System (IDES). WWW: http://www2.csl.sri.com/nides.index5.html .
  8. Anderson, Debra; Frivold, Thane; & Valdes, Alfonso. (SRI International). Next-Generation Intrusion Detection Expert System (NIDES), A Summary (SRI-CSL-95-07). Menlo Park, CA: Computer Science Laboratory, SRI International, May 1995. WWW: http://www.sdl.sri.com/nides.index5.html .
  9. Kemmerer, Richard A., et al. (University of California, Santa Barbara). STAT Projects. WWW: http://www.cs.ucsb.edu/~kemm/netstat.html/projects.html .
  10. Kemmerer, Richard A. (University of California, Santa Barbara). NSTAT: A Model-Based Real-Time Network Intrusion Detection System (TRCS97-18). November 1997.WWW: .
  11. Vigna, Giovanni & Kemmerer, Richard A. (University of California, Santa Barbara). NetSTAT: A Network-Based Intrusion Detection Approach. Proceedings of the 14th Annual Computer Security Applications Conference. Scottsdale, AZ, Dec. 1998 . Available WWW: http://www.cs.ucsb.edu/~kemm/netstat.html/documents.html .
  12. Paxson, Vern. (Lawrence Berkeley National Laboratory). Bro: A System for Detecting Network Intruders in Real-Time, Proceedings of 7th USENIX Security Symposium. San Antonio, TX, January 1998. WWW: http:// www.aciri.org/vern/papers.html .
  13. Sobirey, Michael. Michael Sobirey"s ID Systems Page. WWW: http://www-rnks.informatik.tucottbus.de/~sobirey/ids.html .
  14. Information Assurance Technology Analysis Center. Information Assurance Tools Report. WWW: http://www.iatac.dtic.mil/iatools.htm .
  15. Newman, David; Giorgis, Tadesse; & Yavari-Issalou, Farhad. Intrusion Detection Systems: Suspicious Finds. WWW: http://www.data.com/lab_tests/intrusion.html .
  16. Newman, David; Giorgis, Tadesse; & Yavari-Issalou, Farhad. Intrusion Detection Systems: Suspicious Finds-II. WWW: http://www.data.com/lab_tests/intrusion2.html .
  17. Newman, David; Giorgis, Tadesse; & Yavari-Issalou, Farhad. Intrusion Detection Systems: Suspicious Finds-III. WWW: http://www.data.com/lab_tests/intrusion3.html .
  18. Scambray, Joel; McClure, Stuart; & Broderick, John. (InfoWorld Media Group Inc.). Network Intrusion-Detection Solutions. InfoWorld 20, 18 (May 4, 1998). WWW: http://www.infoworld.com/cgi-bin/displayArchive.pl?/98/18/intrusa.dat.htm .
  19. Phillips, Ken. (PC Week). One if by Net, Two if by OS . WWW: http://www.zdnet.com/products/stories/reviews/0,4161,389071,00.html .
  20. MIT Lincoln Laboratory. DARPA Intrusion Detection Evaluation. WWW: http://www.ll.mit.edu/IST/ideval/index.html .
  21. Van Ryan, Jane. SAIC"s Center for Information Security Technology Releases CMDS Verson 3.5 .WWW: http://www.saic.com/news/may98/news05-15-98.html .
  22. Proctor, Paul E. (SAIC). Computer Misuse Detection System(CMDS) Concepts. WWW: http://cpits-web04.saic.com/satt.nsf/externalbycat .
  23. ODS Networks, Inc. CDMS: Computer Misuse Detection System. WWW: http://www.ods.com/security/products/cmds.shtml .
  24. Riley, Gary. CLIPS: A Tool for Building Expert Systems. WWW: http://www.ghg.net/clips/CLIPS.html .
  25. AXENT Technologies, Inc. NetProwler-Advanced Network Intrusion Detection. WWW: http://www.axent.com/iti/netprowler/idtk_ds_word_1.html .
  26. AXENT Technologies, Inc. Netprowler. WWW: http://www.axent.com/product/netprowler/default.htm .
  27. AXENT Technologies, Inc. Netprowler-II . WWW: http://www.axent.com/product/netprowler/npbrochure.htm .
  28. Cisco. NetRanger.WWW: http:// www.cisco.com/warp/public/778/security/netranger .
  29. Cisco. The NetRanger Intrusion Detection System. WWW: http://www.cisco.com/warp/public/778/security/netranger/prodlit
    /netra_ov.htm .
  30. Cisco. NetRanger Intrusion Detection System. WWW: http://www.cisco.com/warp/public/778/security/netranger/netra_ds.htm .
  31. Cisco. NetRanger - General Concepts. WWW: http://www.cisco.com/warp/public/778/security/netranger/netra_qp.htm .
  32. CyberSafe Corporation. Centrax FAQ"s. WWW: http://www.centraxcorp.com/faq.html .
  33. CyberSafe Corporation. Centrax: New Features & Enhancements in Centrax 2.2. WWW: http://www.centraxcorp.com/centrax22.html .
  34. CyberSafe Corporation. Centrax FAQ"s .WWW: http://www.centraxcorp.com/faq.html .
  35. Internet Security Systems. Real Secure. WWW: http://www.iss.net/prod/realsecure.pdf .
  36. Internet Security Systems. RealSecure System Requirements. WWW: RS%20sys%20reqs">http://www.iss.net/reqspec/reqDisplay.php3?pageToDisplay=RS%20sys%20reqs .
  37. Internet Security Systems. RealSecure Attack Signatures. WWW: http://www.iss.net/reqspec/linkDisplay.php3?pageToDisplay=RS%20a.s.%20from%20DB .
  38. Stocksdale, Greg. CIDER Documents. WWW: http://www.nswc.navy.mil/ISSEC/CID/ .
  39. Irwin, Vicki; Northcutt, Stephen; & Ralph, Bill. (Naval Surface Warfare Center). Building a Network Monitoring and Analysis Capability-Step by Step. WWW: http://www.nswc.navy.mil/ISSEC/CID/step.htm .
  40. Northcutt, Stephen. (Naval Surface Warfare Center, Dahlgren). Intrusion Detection: Shadow Style-Step by Step Guide. SANS Institute Report (November 1988).
  41. Floyd, Sally, et al. (Lawrence Berkeley National Laboratory). LBNL"s Network Research Group. FTP: http://ftp.ee.lbl.gov/ .
  42. Network Flight Recorder, Inc. Step-by-Step Network Monitoring Using NFR. WWW: http://www.nswc.navy.mil/ISSEC/CID/nfr.htm .
  43. Ranum, Marcus J., et al. (Network Flight Recorder, Inc.). Implementing a Generalized Tool for Network Monitoring. WWW: http://www.nfr.net/forum/publications/LISA-97.htm .
  44. Network Flight Recorder, Inc. The Network Flight Recorder in Action! WWW: http://www.nfr.net/products/technology.html .

Соответствующий английский термин - Intrusion Detection System (IDS) . Системы обнаружения вторжений обеспечивают дополнительный уровень защиты компьютерных систем.

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

Обычно архитектура СОВ включает:

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

Виды систем обнаружения вторжений [ | ]

IDES использовала два подхода к обнаружению вторжений: в ней использовалась экспертная система для определения известных видов вторжений и компонент обнаружения, основанный на статистических методах и профилях пользователей и систем охраняемой сети. Тереза Лунт предложила использовать искусственную нейронную сеть как третий компонент для повышения эффективности обнаружения. Вслед за IDES в 1993 вышла NIDES (Next-generation Intrusion Detection Expert System - экспертная система обнаружения вторжений нового поколения).

MIDAS (Multics intrusion detection and alerting system), экспертная система, использующая P-BEST и LISP , была разработана в 1988 году на основе работы Деннинга и Неймана. В этом же году была разработана система Haystack, основанная на статистических методах.

W&S (Wisdom & Sense - мудрость и чувство), основанный на статистических методах детектор аномалий, был разработан в 1989 году в. W&S создавал правила на основе статистического анализа и затем использовал эти правила для обнаружения аномалий.

В 1990, в TIM (Time-based inductive machine) было реализовано обнаружение аномалий с использованием индуктивного обучения на основе последовательных паттернов пользователя на языке Common LISP . Программа была разработана для VAX 3500. Примерно в то же время был разработан NSM (Network Security Monitor - монитор сетевой безопасности), сравнивающий матрицы доступа для обнаружения аномалий на рабочих станциях Sun-3/50. В том же 1990 году был разработан ISOA (Information Security Officer’s Assistant), содержащий в себе множество стратегий обнаружения, включая статистику, проверку профиля и экспертную систему. ComputerWatch, разработанный в AT&T Bell Labs, использовал статистические методы и правила для проверки данных и обнаружения вторжений.

В 2001 году была разработана система ADAM IDS (Audit data analysis and mining IDS). Система использовала данные tcpdump для создания правил.

См. также [ | ]

Примечания [ | ]

  1. Anderson, James P., "Computer Security Threat Monitoring and Surveillance, " Washing, PA, James P. Anderson Co., 1980.
  2. Denning, Dorothy E., "An Intrusion Detection Model, " Proceedings of the Seventh IEEE Symposium on Security and Privacy, May 1986, pages 119-131
  3. Lunt, Teresa F., "IDES: An Intelligent System for Detecting Intruders, " Proceedings of the Symposium on Computer Security; Threats, and Countermeasures; Rome, Italy, November 22-23, 1990, pages 110-121.
  4. Lunt, Teresa F., "Detecting Intruders in Computer Systems, " 1993 Conference on Auditing and Computer Technology, SRI International

Как и многие новые технологии, обнаружение атак (intrusion detection) неоднозначно воспринимается многими людьми. Также неоднозначно эта технология и понимается. Обнаружение атак - очень широкая область, которая охватывает многие аспекты, начиная с датчиков движения и систем видеонаблюдения и, заканчивая системами обнаружения мошенничества в реальном масштабе времени. Данная лекция не позволяет рассказать обо всех аспектах этой технологии. Поэтому я рассмотрю только обнаружение нефизических атак на вычислительные или сетевые ресурсы. И, прежде чем начать дальнейшее повествование, я дам определение технологии обнаружения атак, от которого я и буду отталкиваться.
Обнаружение атак - это процесс идентификации и реагирования на подозрительную деятельность, направленную на вычислительные или сетевые ресурсы.
Атака - это любое действие нарушителя, которое приводит к реализации угрозы путем использования уязвимостей вычислительной системы.

Введение в системы обнаружения атак
Сообщения о проникновении в корпоративные сети и атаках на Web-сервера в последнее время появляются с ужасающей частотой. Число и сложность предлагаемых на рынке информационных технологий периодически растет. Очень часто злоумышленники преодолевают установленные в компании или банке защитные средства (системы аутентификации, межсетевые экраны и т.д.), установленные для разграничения доступа к ресурсам корпоративной сети. С увеличением квалификации злоумышленники становятся более изощренными в разработке и применении методов проникновения за защитную преграду. Обнаружить таких злоумышленников очень трудно. Они маскируются под авторизованных пользователей, используют промежуточные узлы для сокрытия своего истинного адреса, осуществляют атаки распределенные во времени (в течение нескольких часов) и пространстве (одновременно с нескольких узлов) и т.д. Многие атаки осуществляются за очень короткое время (минуты и даже секунды), что также не позволяет обнаружить и предотвратить их стандартными защитными средствами.
Связано это с тем, что большинство компьютерных защитных систем построено на классических моделях разграничения доступа, разработанных в 70-х, 80-х годах. Согласно этим моделям субъекту (пользователю или программе) на основе заданных правил разрешается или запрещается доступ к какому-либо объекту (например, файлу). Однако действия, производимые субъектом над объектом, никак не регламентируется и таким образом невозможно, например, предотвратить копирование файла пользователем, которому доступ к данному файлу разрешен. Развитие этих моделей позволило устранить эти недостатки путем контроля конфиденциальности (модель Белла-Лападула) или целостности (модель Биба) информационных потоков. Однако возникает закономерное противоречие между удобством использования системы и уровнем обеспечиваемой ею безопасности. Приходится чем-то жертвовать. Либо удобством использования защищаемой системы, либо уровнем ее защищенности. Очень трудно придти к компромиссу и найти такую конфигурацию системы, которая совмещает в себе и достаточный уровень ее защищенности, и удобство в эксплуатации.
Кроме того, модели управления доступом не могут помочь в случае реализации атак от "посвященных", авторизованных пользователей или процессов (программ), прошедших процедуру аутентификации. Если злоумышленник подобрал или перехватил Ваш пароль (а делается это достаточно легко), то никакая система разграничения доступа не поможет предотвратить кражу или подмену информации, доступную для скомпрометированного пользователя.
Еще совсем недавно, когда корпоративные сети и Internet не были столь широко распространены как сегодня, системный администратор мог позволить себе изредка просматривать списки рассылки по вопросам безопасности (ISS X-Force, CERT Advisory, Bugtraq и т.д.) и, в случае обнаружения новой уязвимости, предотвратить ее использование злоумышленником, установив для своей операционной системы новые "заплаты" (patch"и и hotfix"ы). Однако это обновление могло быть удалено пользователем или другим администратором случайно или в процессе работы. Через неделю или месяц администратор мог вновь проверить свою систему, и вновь установить необходимую "заплату". Однако сейчас все изменилось, сетевые и информационные технологии меняются настолько быстро, что статичные защитные механизмы, к которым относятся и системы разграничения доступа, и межсетевые экраны, и системы аутентификации, сильно ограничены и во многих случаях не могут обеспечить эффективной защиты. Следовательно, необходимы динамические методы, позволяющие обнаруживать и предотвращать нарушения безопасности.
Одной из технологий, которая может быть применена для обнаружения нарушений, которые не могут быть идентифицированы при помощи моделей контроля доступа является технология обнаружения атак.
Для описания технологии обнаружения атак необходимо последовательно ответить на четыре вопроса, которые почти полностью охватывают все аспекты данной технологии.

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

Статистический метод
В анализируемой системе первоначально определяются профили для всех ее субъектов. Любое отклонение используемого профиля от эталонного считается несанкционированной деятельностью. Основные преимущества статистического подхода - это адаптация к поведению субъекта и использование уже разработанного и зарекомендовавшего себя аппарата математической статистики. Кроме того, статистические методы универсальны, т.к. не требуется знания о возможных атаках и используемых ими уязвимостях. Однако при использовании этих методик возникает и несколько проблем.
Во-первых, "статистические" системы могут быть с течением времени "обучены" нарушителями так, чтобы атакующие действия рассматривались как нормальные. Во-вторых, "статистические" системы не чувствительны к порядку следования событий. А в некоторых случаях одни и те же события в зависимости от порядка их следования могут характеризовать аномальную или нормальную деятельность. И, наконец, очень трудно задать граничные (пороговые) значения отслеживаемых системой обнаружения атак характеристик, чтобы адекватно идентифицировать аномальную деятельность. Кроме того, данные методы неприменимы в тех случаях, когда для пользователя отсутствует шаблон типичного поведения или когда для пользователя несанкционированные действия типичны.

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

Нейронные сети
Большинство современных подходов к процессу обнаружения атак используют некоторую форму анализа контролируемого пространства на основе правил или статистических методов. В качестве контролируемого пространства могут выступать журналы регистрации или сетевой трафик. Этот анализ опирается на набор заранее определенных правил, которые создаются администратором или самой системой обнаружения атак. Экспертные системы представляют наиболее распространенную форму подходов к обнаружению атак на основе правил. Экспертная система состоит из набора правил, которые охватывают знания человека-"эксперта". К сожалению, экспертные системы требуют постоянного обновления для того, чтобы оставаться постоянно актуальными. В то время как экспертные системы предлагают хорошую возможность для просмотра данных в журналах регистрации, требуемые обновления могут либо игнорироваться, либо выполняться вручную администратором. Как минимум, это приведет к экспертной системе с недостаточными (ослабленными) возможностями. В худшем случае, отсутствие сопровождения снизит степень защищенности всей сети, вводя ее пользователей в заблуждение относительно действительного уровня защищенности.
Любое разделение атаки либо во времени, либо среди нескольких злоумышленников, является трудным для обнаружения при помощи экспертных систем. Сетевые атаки постоянно изменяются, поскольку хакеры используют индивидуальные подходы, а также в связи с регулярными изменениями в ПО и аппаратных средствах выбранных систем. Из-за неограниченного разнообразия атак и хакеров даже специальные постоянные обновления базы данных правил экспертной системы никогда не дадут гарантии точной идентификации всего диапазона атак.
Одним из путей устранения названных проблем является использование нейронных сетей. В отличие от экспертных систем, которые могут дать пользователю определенный ответ, соответствуют или нет рассматриваемые характеристики характеристикам, заложенным в базе данных правил, нейросеть проводит анализ информации и предоставляет возможность оценить, согласуются ли данные с характеристиками, которые она научена распознавать. В то время как степень соответствия нейросетевого представления может достигать 100%, достоверность выбора полностью зависит от качества системы в анализе примеров поставленной задачи (т.н. обучение).
Первоначально нейросеть обучается путем правильной идентификации предварительно выбранных примеров предметной области. Реакция нейросети анализируется и система настраивается таким образом, чтобы достичь удовлетворительных результатов. В дополнение к первоначальномупериоду обучения, нейросеть также набирается опыта с течением времени, по мере того, как она проводит анализ данных, связанных с предметной областью. Наиболее важное преимущество нейросетей при обнаружении злоупотреблений заключается в их способности "изучать" характеристики умышленных атак и идентифицировать элементы, которые не похожи на те, что наблюдались в сети прежде.
Корреляция (в рассматриваемой области) - это процесс интерпретации, обобщения и анализа информации из всех доступных источников о деятельности анализируемой системы в целях обнаружения атак и реагирования на них.
Если не вдаваться в подробности процесса корреляции данных, то можно выделить два аспекта, на которые следует обратить внимание при выборе системы обнаружения атак. Первый аспект - число сессий (сетевых или пользовательских), анализируемых одновременно анализ. В настоящий момент практически все системы осуществляют анализ в заданный момент времени всего одной сессии, что не позволяет, например, обнаруживать скоординированные атаки из нескольких источников.
Второй аспект - когда осуществлять анализ, в реальном режиме времени или после осуществления атаки. Казалось бы, ответ очевиден - конечно в реальном времени. Однако все не так просто. Большей точности (хотя иногда и в ущерб эффективности) распознавания можно добиться именно после осуществления атаки, когда в вашем распоряжении находится вся информация об инциденте.

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

Уведомление
Самым простым и широко распространенным методом уведомления является посылка администратору безопасности сообщений об атаке на консоль системы обнаружения атак. Поскольку такая консоль не может быть установлена у каждого сотрудника, отвечающего в организации за безопасность, а также в тех случаях, когда этих сотрудников могут интересовать не все события безопасности, необходимо применение иных механизмов уведомления. Таким механизмом является посылка сообщений по электронной почте, на пейджер, по факсу или по телефону. Последние два варианта присутствуют только в системе обнаружения атак RealSecure американской компании Internet Security Systems, Inc.
К категории "уведомление" относится также посылка управляющих последовательностей к другим системам. Например, к системам сетевого управления (HP OpenView, Tivoli TME10, CA Unicenter и т.д.) или к межсетевым экранам (CheckPoint Firewall-1, Lucent Managed Firewal l, Raptor Firewall и т.д.). В первом случае используется стандартизованный протокол SNMP, а во втором - внутренние или стандартизованные (например, SAMP) протоколы.

Сохранение
К категории "сохранение" относятся два варианта реагирования: регистрация события в базе данных и воспроизведение атаки в реальном масштабе времени. Первый вариант широко распространен и в других системах защиты и на нем не стоит долго останавливаться. Второй вариант более интересен. Он позволяет администратору безопасности воспроизводить в реальном масштабе времени (или с заданной скоростью) все действия, осуществляемые атакующим. Это позволяет не только проанализировать "успешные" атаки и предотвратить их в дальнейшем, но и использовать собранные данные для разбирательств.

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

Требования пользователей
Необходимо заранее определить, от чего и от кого надо защищать свою вычислительную систему. Следует определить соотношение между затратами (зачастую немалыми) на приобретение и эксплуатацию системы обнаружение атак и выгодой от ее использования . Процесс выбора одной из более чем 30 существующих на рынке систем может занять не одну неделю или месяц. Но эти усилия стоят того. Правильный выбор системы обнаружения атак поможет сэкономить сотни тысяч долларов, которые могли бы быть утеряны в случае нарушения функционирования вычислительной системы.
Однако какими бы эффективными ни были механизмы, заложенные в систему обнаружения атак, она не найдет применения, если она не отвечает требованиям пользователей. Чем сложнее система обнаружения атак, тем выше ее стоимость. Однако стоимость - это не единственный основополагающий фактор при осуществлении выбора. Необходимо учитывать и применяемые механизмы получения информации об атаках, алгоритмы анализа и корреляции данных, варианты реагирования, производительность системы, ее надежность и т.д. Число таких параметров достаточно велико. В целом, все требования, которые необходимо учитывать при выборе систем обнаружения атак, можно условно разделить на несколько групп:

  • Инсталляция и развертывание системы;
  • Безопасность самой системы;
  • Обнаружение атак;
  • Реагирование на атаки;
  • Конфигурация системы;
  • Контроль событий;
  • Управление данными системы;
  • Производительность системы;
  • Архитектура системы;
  • Техническая поддержка системы.

Не стоит выбирать систему обнаружения атак, основываясь только на текущей ситуации. Попытайтесь заглянуть в будущее и проанализировать рост вычислительной системы, изменение предоставляемых ею услуг и т.д. Учитывая это, вы сможете эффективно вложить свои средства в систему защиты уже сейчас.
Немаловажным является вопрос внедрения системы обнаружения атак в существующую технологию обработки информации и, затем, адаптации ее к окружающим условиям. Одновременно с внедрением необходимо провести обучение персонала правилам использования системы в организации. Необходимо заметить, что система обнаружения атак не сможет обеспечить абсолютной защиты от всех атак; она поможет выявить подозрительный трафик и иные формы несанкционированного доступа. Однако наибольшей эффективности при использовании системы обнаружения атак можно достичь, еслик ней "прилагаются" специалисты, способные правильно эксплуатировать систему и понимающие, когда и как реагировать на выдаваемые ею сообщения.
Более подробно с требованиями, предъявляемыми к системам обнаружения атак можно ознакомиться в документе "Системы обнаружения атак. Стратегия выбора", разработанном в Научно-инженерном предприятии "Информзащита", получить который можно, обратившись по адресу www.infosec.ru.

Системы обнаружения атак или межсетевые экраны?
Очень часто задают вопрос: "Нужна ли мне система обнаружения атак, если у нас уже используется межсетевой экран?" Несомненно нужна. Система обнаружения атак является существенно важным дополнением межсетевого экрана (firewall), но никак не его заменой. Межсетевые экраны предназначены для того, чтобы предотвратить вторжение "плохих парней" из сети. Однако иногда эти средства из-за ошибок разработки, аппаратных отказов, ошибок пользователей или просто невежества не обеспечивают приемлемого уровня доступа. Например, кто-то не понимает необходимости защиты сети и оставляет на рабочем месте включенным модем для доступа к компьютеру из дома. Межсетевой экран не может не только защитить в этом случае, но и обнаружить это факт. В этом случае системы обнаружения атак незаменимы. Независимо от того, какова надежность и эффективность фильтрации вашего межсетевого экрана, пользователи зачастую находят способы обойти все установленные Вами преграды. Например, объекты ActiveX или апплеты Java могут представлять новые направления для реализации атак через межсетевыеэкраны. Кроме того, по статистике не менее 75% всех компьютерных преступлений происходит изнутри корпоративной сети, от своих сотрудников. А, как уже было сказано выше, "классические" средства защиты, к которым относятся и межсетевые экраны, не позволяют защитить корпоративную сеть в случае наличия плохого умысла со стороны пользователя, имеющего в нее доступ. Поэтому, межсетевой экран не может заменить систему обнаружения атак и оба этих средства нужны для построения эффективной системы защиты информации.
Представьте Вашу сеть как многоэтажное высотное здание, в котором межсетевой экран - это швейцар у дверей на входе, а каждый модуль слежения системы обнаружения атак - это сторожевой пес у каждой конкретной двери. Как правило, швейцар с удовольствием пропускает людей, которые выглядят довольно хорошо, и задерживает подозрительных людей. Однако, умный преступник способен пройти мимо швейцара и проникнуть внутрь здания, не вызвав его подозрений. Сторожевой пес лучше знает, кого он может впустить в данную дверь и мгновенно реагирует на вторжение.

Системы обнаружения атак в России
Первая система обнаружения атак появилась в России в середине 1997 года, когда было заключено соглашение между Научно-инженерным предприятием "Информзащита" и малоизвестной в то время американской фирмой Internet Security Systems, Inc. (ISS), разработавшей систему обнаружения атак RealSecure. С тех пор ситуация изменилась в лучшую сторону. Компания ISS в настоящий момент является лидером на рынке средств обнаружения атак (по данным корпорации IDC - в 1999 году 52 % всего рынка). В России ситуация аналогичная - система RealSecure захватила большую часть российского рынка средств обнаружения атак. Этому предшествовала большая и кропотливая работа по созданию соответствующей инфраструктуры поддержки этой системы. В настоящий момент завершается ее русификация.
Помимо системы RealSecure на российском рынке представлены следующие продукты зарубежных фирм:

  • NetRanger компании Cisco Systems.
  • OmniGuard Intruder Alert компании Axent Technologies.
  • SessionWall-3 компании Computer Associates.
  • Kane Security Monitor компании Security Dynamics.
  • CyberCop Monitor компании Network Associates.
  • NFR компании Network Flight Recodred.

Первая тройка во главе с RealSecure является лидирующей и во всем мире. Всего же известно более 30 коммерчески распространяемых систем обнаружения атак.

Стандарты и руководящие документы
С конца прошлого - начала этого года ведутся работы по выработке руководящих документов, которые позволят проводить адекватный анализ и оценку предлагаемых на российском рынке систем обнаружения атак. Аналогичные работы проводятся и за рубежом. В качестве примера можно назвать стандарты CIDF или IDEF, разрабатываемые в Министерстве Обороны США и рабочей группы консорциума IETF.

Перспективы и тенденции развития
Можно заметить, что оба решения: IDS и сетевого, и системного уровней имеют свои достоинства и преимущества, которые эффективно дополняют друг друга, а также устраняют недостатки друг друга.
Итак, вкратце я описал существующие решения в области обнаружения атак. Но применимы ли они в том виде, в котором они сейчас существуют, в следующем тысячелетии? Вряд ли. И вот почему. Современные сети становятся настолько сложными, что их трудно контролировать существующими методами. Число узлов в сетях растет с небывалой скоростью, ширится применение гигабитных скоростей и коммутируемых сетей на основе VLAN. Объем передаваемого по сетям трафика возрастает на несколько порядков. Нужны совершенно новые подходы в обнаружении атак, позволяющие справиться с указанными факторами .

Микроагенты
Как уже отмечено выше, существующие системы обнаружения атак относятся либо к классу сетевых (network-based), либо к классу системных (host-based). Однако идеальным решением было бы создание системы, совмещающей в себе обе эти технологии, т.е. на каждый контролируемый узел устанавливался бы агент системы обнаружения атак и контролировал не только атаки на прикладном уровне (уровне ОС и уровне приложений), но и сетевые атаки, направленные на данный узел. Этот подход имеет несколько преимуществ по сравнению с существующими решениями.
Во-первых, высокая сетевая скорость уже не представляет проблемы, поскольку указанный агент просматривает только трафик для данного узла вместо всего трафика всей сети. Во-вторых, расшифрование пакетов осуществляет прежде, чем они достигнут агента. И, наконец, из-за того, что он размещается непосредственно на каждом контролируемом компьютере, коммутируемые сети также не накладывают ограничений на их использование.
Эти агенты комбинируют характеристики сетевого модуля слежения, работающего в реальном масштабе времени, с тактическими преимуществами агента системного уровня. В настоящий момент о разработках в этой области объявила только компания Internet Security Systems (ISS
) . Компания ISS назвала эту разработку Micro Agent и планирует завершить ее к концу этого года. Эти микроагенты будут дополнять существующие сетевые и системные модули слежения системы обнаружения атак RealSecure компании ISS.

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

  • Разработать механизмы эффективного использования дискового пространства для хранения журналов регистрации и данных сетевого трафика;
  • Разработать механизмы эффективного представления администратору только тех данных, которые представляют для него интерес.

Эти две проблемы взаимосвязаны, но я коснусь только второй задачи. Многие специалисты сталкивались с ситуацией, когда система обнаружения атак генерит сотни, а в крупных сетях, тысячи записей о происходящих событиях. Проанализировать эти события вручную администратору не под силу. И хотя в системах обнаружения атак, представленных на рынке, существуют механизмы объединения нескольких однотипных событий в одно, эта работа еще далека до завершения.
В настоящий момент методы эффективного представления данных разрабатываются различными производителями и исследовательскими центрами. Например, компания ISS в конце июня этого года объявила о создании "технологии слияния" (Fusion Technology), которая позволит группировать сотни событий, зарегистрированных системой обнаружения атак RealSecure и другими средствами защиты третьих разработчиков, в одно-два уведомления, представленные на экране консоли управления. В этом же направлении движется и исследовательский центр COAST, в котором создана рабочая группа по разработке эффективного формата журналов регистрации и представления данных администратору безопасности.Из российских разработчиков такие механизмы реализует НИП "Информзащита" в своей новой технологии управления информационной безопасностью "Беркут".

Принятие решений, прогнозирование атак
Системы обнаружения атак в новом тысячелетии должны стать более интеллектуальными по сравнению со своими современными аналогами. И это касается не только процесса обнаружения атак, что может быть реализовано при помощи различных механизмов, в т.ч. и при помощи описанных выше нейросетей. Интеллектуальность будет присутствовать в процессе принятия решения о реагировании на атаки, а также при прогнозировании новых атак на корпоративную сеть. Первым шагом в создании таких систем можно назвать создание компанией ISS продукта под названием SAFEsuite Decisions. Эта система позволяет получать данные, получаемые от различных средств защиты, в т.ч. межсетевых экранов, систем анализа защищенности и обнаружения атак. Затем эти данные можно анализировать, обобщать их и определять на их основе подверженность того или иного узла или сегмента сети атакам со стороны внешних или внутренних злоумышленников. Знание уязвимостей, полученное от систем анализа защищенности, наряду со знанием частоты атак, полученное от межсетевых экранов и систем обнаружения атак, установленных на различных сегментах сети, позволяет прогнозировать нападения на узлы и сегменты сети, в т.ч. и скоординированные атаки, осуществляемые одновременно из нескольких мест.

В данной теме раскрыты в основном те вопросы, на которые стоит обращать внимание при выборе системы обнаружения атак. Однако, установив выбранную систему, вы еще не полностью защитили себя от атак. И это надо понимать. Система обнаружения атак - это всего лишь необходимое, но явно недостаточное условие для обеспечения эффективной системы защиты организации. Необходимо провести целый спектр организационных и технических мероприятий для построения целостной системы защиты вашей организации. Это и анализ рисков, и разработка политики безопасности, и установка и настройка различных средств защиты (межсетевые экраны, систем анализа защищенности и т.д.), и обучение специалистов, и т.д.
Подводя итог, можно сказать, что система обнаружения атак - это больше, чем несколько модулей слежения, установленных на различных узлах корпоративной сети. Эффективная и надежная система обнаружения атак позволяет собирать, обобщать и анализировать информацию от множества удаленных сенсоров на центральной консоли. Она позволяет сохранять эту информацию для более позднего анализа, и предоставляет средства для проведения такого анализа. Эта система постоянно контролирует все установленные модули слежения и мгновенно реагирует в случае возникновения тревоги. И, наконец, система обнаружения атак не более чем дорогостоящая игрушка, если у вас в штате нет экспертов в области защиты информации, которые знают, как использовать эту систему и как реагировать на постоянно растущую информационную угрозу. Использование всех этих компонентов в комплексе образует реальную и эффективную систему обнаружения атак.