Новые технологии предотвращения информационных атак нарушителя
Защищены ли современные информационные системы от атак нарушителей?
Создание высокоэффективных и многофункциональных информационных систем (ИС) позволяет в настоящее время реализовать их в самых различных сферах жизни современного общества. ИС позволяют автоматизировать и повысить эффективность обработки информации путём применения соответствующего программного и аппаратного обеспечения. Однако использование ИС одновременно обостряет и проблемы защиты ресурсов этих систем от угроз информационной безопасности. Одной из таких наиболее критичных угроз является возможность реализации нарушителем информационных атак, направленных, например, на нарушение работоспособности ИС или получение несанкционированного доступа к информации, хранящейся в ИС. Необходимо отметить, число информационных атак за последние годы характеризуется неуклонным ростом. Так по данным Координационного центра немедленного реагирования CERT (http://www.cert.org), число атак на ИС, зафиксированных в 2002 году, составляет 74 тыс., что в два раза превышает аналогичный показатель 2001 года [1]. Для противодействия информационным атакам в настоящее время всё чаще применяются специальные системы защиты – системы обнаружения атак.
Системы обнаружения атак – структура и функциональные задачи
Системы обнаружения атак (СОА) представляют собой специализированные программно-аппаратные комплексы, предназначенные для выявления информационных атак в ИС. Типовая архитектура систем обнаружения атак включает в себя следующие компоненты (рис. 1):
-
модули-датчики (или модули-сенсоры), предназначенные для сбора необходимой информации о функционировании ИС;
-
модуль выявления атак, выполняющий обработку данных, собранных датчиками, с целью обнаружения информационных атак нарушителя;
-
модуль реагирования на обнаруженные атаки;
-
модуль хранения данных, в котором хранится вся конфигурационная информация, а также результаты работы системы обнаружения атак. Таким модулем, как правило, является стандартная СУБД, например MS SQL Server, Oracle или DB2;
-
модуль управления компонентами системы обнаружения атак.
Все вышеперечисленные модули системы обнаружения атак могут быть реализованы как в виде одного, так и нескольких программно-аппаратных компонентов.
Как системы обнаружения атак собирают исходные данные об ИС?
Системы обнаружения атак собирают всю информацию, необходимую им для выявления атак, при помощи сетевых (network-based) и хостовых (host-based) модулей-датчиков [2]. Сетевые датчики предназначены для сбора информации обо всех пакетах данных, передаваемых в рамках того сетевого сегмента, где установлен датчик. Сетевые датчики реализуются в виде отдельного программно-аппаратного блока, подключаемого к сегменту ИС. Хостовые же датчики устанавливаются на рабочие станции и сервера ИС, и собирают информацию обо всех событиях, происходящих на этих узлах системы. Как правило, большая часть существующих СОА используют оба типа датчиков для того, чтобы имелась возможность сбора максимального объёма данных, необходимого для обнаружения информационных атак. Типовая схема размещения СОА в ИС в этом случае предполагает установку сетевых датчиков до и после межсетевого экрана (МЭ), что позволяет обеспечить контроль его функционирования и защиту. Одновременно сетевые датчики могут быть установлены в сегментах, где размещение хостовых датчиков на каждый компьютер нецелесообразно вследствие высоких материальных затрат. Хостовые же датчики системы обнаружения атак устанавливаются на наиболее критических серверах ИС, которые должны быть защищены от информационных атак (рис. 2).
Рис. 1. Типовая архитектура систем обнаружения атак
Рис. 2. Типовая схема размещения модулей-датчиков СОА в ИС
Нажмите, чтобы увеличить картинку
Каким образом системы обнаружения атак выявляют атаки нарушителей?
Функции обнаружения атак в ИС выполняются СОА при помощи двух типов модулей выявления атак (МВА) - сигнатурных и поведенческих. Сигнатурные МВА имеют встроенные средства для создания и хранения внутренних моделей информационных атак, которые и получили наименование сигнатурных. В качестве сигнатуры атаки могут выступать: строка символов, семантическое выражение на специальном языке, формальная математическая модель др. Каждая сигнатура в общем случае может быть соотнесена с определённой атакой нарушителя.
Алгоритм работы сигнатурных МВА выглядит следующим образом. При получении исходных данных от модулей-датчиков МВА проводят их анализ на предмет наличия в них сигнатур атак. В случае обнаружения сигнатуры в исходных данных, МВА фиксирует факт обнаружения информационной атаки нарушителя. Преимуществом сигнатурных МВА является их высокая точность работы, а очевидным недостатком – невозможность обнаружения тех атак, сигнатуры которых отсутствуют в базе данных МВА.
Поведенческие МВА, в отличие от сигнатурных, базируются не на внутренних моделях информационных атак, а на моделях штатного процесса функционирования ИС. Для создания таких моделей, как правило, применяются статистические, нейросетевые и иммунные методы. Принцип работы поведенческих МВА заключается в обнаружении несоответствия между текущим режимом функционирования ИС и моделью штатного режима работы, заложенной в МВА. Любое такое несоответствие рассматривается поведенческими МВА как информационная атака. Преимуществом МВА данного типа является возможность обнаружения новых атак без необходимости постоянного изменения параметров функционирования модуля. Недостатком же таких МВА является сложность создания точной модели штатного режима функционирования ИС.
Каковы возможности СОА по реагированию на выявленные атаки?
После выявления в ИС атаки системы обнаружения атак имеет возможность предпринять определённые ответные действия, направленные на её блокирование. За реализацию этих действий отвечает модуль реагирования системы обнаружения атак. Читателю по всей вероятности будет интересно узнать, какие методы реагирования уже реализованы в ряде существующих коммерческих систем обнаружения атак.
Базовым методом реагирования системы обнаружения атак является оповещение администратора ИС о выявленной атаке. Система обнаружения атак может уведомить администратора следующими способами:
- выводом соответствующего сообщения на консоль управления администратора;
- посылкой администратору сообщения средствами электронной почты;
- путём формирования SNMP-trap сообщения и последующей его посылкой в систему управления (например, HP OpenView, IBM Tivoli, CA Unicenter и др.).
Сообщение об обнаруженной атаке, как правило, формируется в соответствии с проектом Международного стандарта IDMEF (Intrusion Detection Message Exchange Format), который определяет модель представления данных, генерируемых СОА, в формате XML. В соответствии с этим стандартом сообщения, посылаемые администратору безопасности, содержат следующую информацию:
- дату и время обнаружения атаки;
- общее описание атаки, включая возможные ссылки на дополнительные источники информации о выявленной атаке;
- символьный идентификатор атаки по классификатору CVE (Common Vulnerabilities Exposures) или CERT (Computer Emergency Response Team);
- уровень приоритета обнаруженной атаки (низкий, средний или высокий);
- информацию об источнике атаки (IP-адрес, номер порта, доменное имя и др.);
- информацию об объекте атаки (IP-адрес, номер порта, доменное имя и др.);
- рекомендации по устранению уязвимости, в результате которой был зафиксирован факт реализации атаки.
Помимо простого оповещения администратора о факте выявления атаки существующие СОА могут реализовать и ряд иных типов реагирования, таких как:
- блокирование TCP-соединения, по которому была реализована атака. Такое закрытие реализуется путём посылки субъектам соединения специального TCP-сегмента с установленным флагом RST;
- запуск заданной внешней программы с определёнными параметрами. Наличие такой функции модуля реагирования позволяет администратору системы обнаружения атак дополнять существующие методы реагирования своими собственными, реализованными в виде внешних подпрограмм;
- реконфигурация межсетевого экрана с целью блокирования трафика, поступающего от хоста нарушителя. В настоящее время большая часть существующих межсетевых экранов имеет соответствующие внешние интерфейсы, обеспечивающие взаимодействие МЭ с СОА. Примером такого интерфейса является интерфейс OPSEC для межсетевого экрана CheckPoint FW-1;
- блокирование учётной записи внутреннего пользователя ИС, который является потенциальным источником атаки. Учётные записи должны блокироваться на заданный период времени при помощи хостовых датчиков СОА.
А можно ли не только обнаружить, но и предотвратить атаку?
Читателю будет нетрудно заметить, что все рассмотренные выше методы реагирования СОА реализуются уже после того, как была обнаружена атака. Поэтому это может быть чревато нанесением существенного ущерба ИС. Наличие такого недостатка во всех СОА первого поколения инициировало разработку принципиально новых технологий, позволяющих не только обнаруживать, но предотвращать информационные атаки. Характерно, что в настоящее время эти технологии уже реализованы в нескольких зарубежных СОА.
Хорошо известно, что на сетевом уровне ИС выполняется сетевое взаимодействие между хостами системы с помощью различных протоколов. На системном же уровне проводятся локальные операции системного и прикладного программного обеспечения ИС, которые выполняются на хостах системы. Отсюда и предотвращение атак на сетевом уровне предполагает использование сетевых датчиков, а на системном – хостовых датчиков СОА. Для того, чтобы понять насколько эффективными могут быть новые методы блокирования информационных атак рассмотрим более подробно технологии предотвращения атак на различных уровнях ИС более подробно.
Предотвращение атак на сетевом уровне ИС
Технология предотвращения атак на сетевом уровне может быть реализована только при помощи специализированных сетевых датчиков, структура и алгоритм работы которых описываются ниже. Сетевые датчики в этом случае выполняются в виде отдельных аппаратных блоков, которые устанавливается в каналы связи таким образом, чтобы весь сетевой трафик проходил через этот блок. Для этого датчик оснащается двумя сетевыми адаптерами, функционирующими в «смешанном» режиме (promiscuous mode), через которые предполагается прохождение всей информации, передаваемой в сегменте ИС. Структура такого датчика показана на рис. 3.
Рис. 3. Структура сетевого датчика СОА
Принцип работы компонентов сетевого датчика СОА состоит в следующем.
Пакеты данных поступают на вход одного из двух адаптеров, установленных в сетевом датчике. Далее они записываются в буферную память датчика, откуда считываются МВА. В МВА данные анализируются с целью обнаружения информационных атак нарушителя. При необходимости могут быть задействованы имеющиеся в МВА механизмы IP-дефрагментации и сборки TCP-сессий. В процессе проведения анализа пакетов данных модуль обращается к базе данных сигнатур атак и профилей (назначение её будет рассмотрено ниже). В случае обнаружения атаки информация об этом направляется в модуль реагирования, который и определяет оптимальный метод реакции системы обнаружения атак. Помимо описанных выше стандартных методов реагирования модуль может принять решение и об удалении тех пакетов, при помощи которых реализуется атака. Такая операция и позволяет сетевому датчику блокировать обнаруженную информационную атаку [3]. В случае же если пакеты данных, проходящие через датчик, не представляют опасности для ИС, они передаются дальше по заданному маршруту.
Весьма важно сказать и о том, что алгоритм функционирования МВА сетевого датчика позволяет использовать два метода обнаружения информационных атак – сигнатурный и профильный. Смысл сигнатурного метода анализа состоит в выявлении атак на основе известных шаблонов или сигнатур, которые хранятся в соответствующей базе данных датчика (рис. 3). Профильный же метод обнаружения предназначен для выявления «аномального» сетевого трафика, параметры которого не соответствуют параметрам профиля ИС, также хранящегося в базе данных датчика. Любой аномальный трафик, выявленный в ИС, будет расцениваться датчиком в качестве попытки реализации атаки и подлежит блокировке. Профильный метод выявления атак относится к группе поведенческих методов анализа (см. выше). Технологически предусматривается, что сетевой датчик для каждого из хостов ИС обязан хранить отдельный профиль трафика, который может получать или отправлять хост. При этом задача состоит в том, что трафик, параметры которого не соответствуют значениям параметров профиля, удаляется из общего информационного потока. В качестве примера можно привести параметры профиля HTTP-трафика, который может поступать в Web-сервер ИС (табл. 1).
Таблица 1
Наименование параметра Профиля |
Описание параметра профиля |
IP-адреса отправителя HTTP-трафика |
Параметр определяет диапазон IP-адресов хостов, от которых могут поступать HTTP-запросы к Web-серверу |
Номера TCP-портов Web-сервера |
Параметр задаёт допустимые номера TCP-портов, с которых к Web-северу могут поступать HTTP-запросы |
Методы формирования HTTP-запросов | Параметр определяет разрешённые методы формирования HTTP-запросов к Web-серверу |
Информационные ресурсы Web-сервера | Параметр задаёт допустимые информационные ресурсы, доступ к которым может быть получен посредством HTTP-запросов |
Параметры HTTP-запроса | Параметр определяет допустимые значения параметров, которые могут содержаться в HTTP-запросах к ресурсам Web-сервера |
Аналогичные профили задаются и по отношению к другим типам сетевого трафика, циркулирующего в ИС.
Преимущество профильного метода состоит в том, что он создаёт возможность для предотвращения не только известных в настоящее время информационных атак, но и большого числа несанкционированных воздействий нарушителей, которые ещё не изучены в достаточной степени и реализация которых связана с нарушением параметров, заложенных в профиле. Так, например, введение ограничения на допустимые значения параметров HTTP-запросов позволяет блокировать такие атаки, как Code Red, Code Red II, Nimbda [4], а также все их последующие модификации. Кроме того, профильный метод не хранит сигнатуры конкретных сетевых атак и, следовательно, не требует постоянного обновления сигнатурной базы.
Управление компонентами сетевого датчика проводится с помощью отдельного модуля управления, в функциях которого заложена способность изменять параметры работы каждого из компонентов. Реализуются эти функции по командам, формируемым в центральном модуле управления СОА (рис. 1) и направляемым сетевому датчику по выделенному каналу связи через отдельный сетевой адаптер (рис. 3).
Результаты работы сетевого датчика протоколируются в локальной базе данных, доступ к содержимому которой администратор безопасности ИС может получить с использованием модуля управления сетевого датчика.
Одним из примеров коммерческих СОА, реализующих технологию предотвращения атак на сетевом уровне, может служить система «IntruShield» компании IntruVert (http://www.intruvert.com).
Предотвращение атак на системном уровне ИС
Технология предотвращения информационных атак на системном уровне реализуется на уровне хостов ИС с использованием хостовых датчиков СОА. Этот подход позволяет предотвратить два типа информационных атак:
-
сетевые атаки, реализуемые нарушителем удалённо путём посылки объекту нападения серии пакетов данных с целью нарушить информационную безопасность хоста;
-
системные атаки, реализуемые нарушителем локально посредством несанкционированного запуска программ, также с целью нарушить информационную безопасность хоста. Примерами таких программ являются информационные вирусы, программы типа «Троянский конь», программы, направленные на несанкционированное повышение прав доступа и др.
Защита от атак этого типа обеспечивается сетевыми и системными компонентами хостовых датчиков, типовая структура которых отражена на Рис. 4.
Рис. 4. Структура хостового датчика
Алгоритм функционирования сетевого компонента во многом повторяет алгоритм работы сетевого датчика. Сетевой компонент перехватывает все пакеты данных, поступающие на хост ИС, анализирует их и отфильтровывает те, которые могут представлять опасность для хоста. Анализ проводится либо на основе сигнатур, либо на основе профиля трафика хоста. Сетевой компонент, в отличие от датчика, перехватывает и анализирует пакеты данных на различных уровнях модели взаимодействия открытых систем. Это даёт возможность предотвращать атаки, которые реализуются по криптозащищённым IPSec- и SSL/TLS-соединениям. Сетевой компонент датчика может состоять из нескольких отдельных программных модулей, запускаемых на хосте. Так, например, для перехвата и анализа HTTP-трафика, поступающего в Web-сервер MS Internet Information Services, он может включать в себя отдельный модуль, выполненный в виде ISAPI-фильтра, который позволяет перехватывать весь входящий HTTP-трафик на прикладном уровне и удалять те HTTP-запросы, которые не соответствуют заданному профилю.
Важно подчеркнуть, что системный компонент хостового датчика позволяет перехватывать и анализировать системные вызовы всех приложений, запущенных на узле ИС. Анализ проводится на основе сигнатур или на основе профиля хоста ИС. В каждом из перехваченных системных вызовов анализируются следующие параметры:
- имя процесса/приложения, инициировавшего системный вызов;
- учётная запись пользователя, от имени которого выполняется системный вызов;
- идентификатор ресурса, к которому направлен системный вызов;
- параметры системного вызова и др.
В случае установления факта нарушения системным вызовом информационной безопасности хоста, он подвергается блокировке. Такой механизм анализа и обработки системных вызовов позволяет предотвратить системные атаки нарушителей.
Параметры функционирования приложений, которые можно контролировать с использованием системного компонента, и их описание приведены в Таб. 2.
Таблица 2
Наименование параметра | Описание |
Доступ приложений к файловой системе хоста |
Параметр контролирует доступ приложений к файловой системе хоста. С использованием этого параметра компонент может предотвратить несанкционированный доступ к файлам пользователей со стороны некоторых приложений |
Доступ приложений к системным конфигурационным файлам операционной системы (ОС) хоста |
Параметр позволяет контролировать доступ приложений к реестру, системным библиотекам и другим конфигурационным файлам ОС. С помощью этого параметра компонент может запретить внесение изменений в эти системные файлы, что позволит обеспечить защиту от программ типа «Троянский конь», а также программ, направленных на несанкционированное получение администраторских прав |
Параметры вызова системных функций из приложения |
Параметр позволяет блокировать те системные вызовы, значения параметров которых не соответствуют заданным ограничениям. Это позволяет предотвратить системные атаки, направленные на переполнение буфера программ (buffer overflow attacks), приводящие к несанкционированному выполнению кода на хосте |
Среда выполнения приложения |
Параметр системного компонента блокирует запросы приложения на запись в ту область памяти, которая не принадлежит этому приложению. Это позволяет обеспечить защиту от информационных вирусов, а также программ, направленных на несанкционированное получение администраторских прав |
Большая часть приведенных выше параметров анализируется системным компонентом с помощью профильного метода. При этом для каждого приложения или группы приложений определяется свой собственный профиль работы. Так, например, профиль HTTP-сервера должен разрешать доступ Web-приложений только к Web-ресурсам, включающим в себя HTML-документы, ASP-сценарии, CGI-модули и др. Доступ ко всем остальным информационным ресурсам хоста, включая системные конфигурационные файлы ОС, должен быть запрещён.
Сигнатурный анализ системных вызовов позволяет выявлять известные системные атаки. Примерами таких атак являются «GetAdmin» и «SecHole», которые реализуются путём запуска на локальной машине специальных программ, позволяющих несанкционированно получить администраторские права доступа к хосту.
Примерами коммерческих СОА, реализующих технологию предотвращения информационных атак на системном уровне, являются программные комплексы «Entercept» компании Entercept Technologies, «StormWatch» компании OKENA и «Форпост» (ЗАО «РНТ»).
Методика тестирования СОА
Поскольку новое поколение СОА способно не только обнаруживать, но и предотвращать информационные атаки, то к тестированию систем этого класса требуется иной подход. В первую очередь это связано с тем, что тестированию должны подвергаться не только функции обнаружения атак, но и функции их блокирования. Для тестирования СОА, реализующих технологию предотвращения атак на сетевом уровне, могут использоваться специализированные системы анализа защищённости, позволяющие смоделировать заданное множество сетевых атак нарушителя. В этом случае эффективность СОА будет определяться количеством допущенных ошибок первого и второго рода. Под ошибкой первого рода понимается блокирование СОА легального сетевого запроса, не являющегося атакой. Ошибка второго рода возникает в том случае, если СОА не смогла блокировать реальную сетевую атаку.
Тестирование СОА, реализующих технологию предотвращения атак на системном уровне, реализуется способом, аналогичным тому, который применяется на сетевом уровне ИС. Единственное отличие состоит в том, что здесь, кроме всего прочего, необходимо проводить моделирование системных атак нарушителя. Другими словами требуется провести установку программ типа «Троянский конь», активизировать информационный вирус, несанкционированно изменить системные файлы ОС хоста и др. Эффективность СОА этого типа оценивается путём подсчёта количества ошибок первого и второго рода, допущенных системой в процессе своего функционирования.
Заключение
Проведенный анализ новых методов защиты информационных ресурсов ИС позволяет констатировать, что они создают возможность не только выявлять, но и предотвращать атаки, как на сетевом, так и на системном уровнях ИС. Это даёт право автору сделать вывод о том, что такие технологии обеспечивают качественно новый уровень защиты от информационных атак нарушителя. В первую очередь это связано с тем, что они переводят существующие СОА из разряда пассивных в класс активных средств противодействия атакам нарушителя.
Немаловажно отметить и тот факт, что российские компании, работающие в области информационной безопасности, также инициировали разработку аналогичных технологий защиты от информационных атак и в настоящее время уже готовы представить на рынок новые продукты. Это позволит отечественным системам обнаружения атак в перспективе достойно конкурировать с зарубежными аналогами.
Литература:
[1] В.А. Сердюк. Перспективы развития новых технологий обнаружения информационных атак. Системы безопасности связи и телекоммуникаций, №5, 2002
[2] В.А. Сердюк. Системы обнаружения компьютерных атак и их роль в защите информационных сетей. BYTE/Россия, №10, 2000.
[3] S.M. Avdoshin, V.A. Serdiouk. Some approaches to information security of communication networks. Informatica, Slovenia, №26, 2002
[4] Theuns Verwoerd, Ray Hunt. Intrusion detection techniques and approaches. Computer Communications, №25, 2002