Шарыпин Е.М. Системы обнаружения вторжений Аннотация В данной обзорной статье на тему "Системы обнаружения вторжений" рассматривается история и перспективы развития систем обнаружения вторжений, а также приводится краткое описание структуры и принципов работы подобного ПО, а также классификация данных систем по нескольким признакам. Введение Система обнаружения вторжений – это устройство или программное обеспечение, обеспечивающее наблюдение за сетевой и системной активностью и обнаружение вредоносных действий и нарушений политики безопасности. Примерами нарушения политики безопасности могуть быть: атаки на сетевые сервисы, атаки направленные на повышение привелегий, неавторизованный доступ к файлам и т.п. СОВ делятся на несколько типов и подходят к решению задачи обнаружения вредоносного трафика по разному. Существует два основных типа СОВ – сетевые и узловые, а также некоторые другие, которые будут рассмотрены ниже. Некоторые СОВ могут попытаться пресечь попытку несанкционированного доступа, но это не является не необходимой ни основной задачей системы обнаружения. Основными задачами систем обнаружения и предотвращения вторжений (СОПВ) является обнаружение возможных инцидентов, хранение информации о них и составление отчетов о попытках взлома. Кроме того, предприятия и организации используют СОПВ и в других целях, например аудит систем безопасности, документирование возможных уязвимостей, а также в качестве «пугала», предотвращающего нарушения политики безопасности пользователями внутри системы. СОПВ стали неотъемлемой частью современной инфраструктуры безопасности практически в любых серьезных организациях. [1] Как правило, относящуюся СОПВ обычно записывают информацию, непосредственно к наблюдаемым событиям, уведомляют администратора сети в случае потенциального вторжения и составляют отчеты о событиях. Многие СОПВ также могут противостоять обнаруженным угрозам, пытаясь предотвратить успех атаки. Например, СОПВ может сама остановить атаку, изменить настройки брандмауэра или изменить содержание атаки. [1][2] Структура Как правило, СОВ имеют следующую структуру: [1] Хранилище Сеть Консоль управления Сенсоры Анализ Рис.1 Структура СОВ. Сенсорная подсистема, собирающая информацию, связанную с безопасностью сети. Хранилище, в котором хранится информация, получаемая от сенсоров и информация, обработанная анализатором. Анализатор, выявляющий подозрительный трафик и атаки, основываяс на данных от сенсоров. Консоль управления, позволяющая конфигурировать СОВ. Классификация Системы контроля вторжений можно разделить на несколько видов: Сетевые СОВ, обычно представляют собой устройство устанавливаемое в сети. Узловые СОВ, обычно представляют собой программу - агент, устанавливаемую на устройства в сети. Протокол-ориентированные СОВ: системы, анализирующиее данные, передаваемые определенными протоколами. OSI7-ориентированные СОВ: системы, анализирующие данные передаваемые специфичными методами протоколов седьмого уровня модели OSI. Например , установленная на SQL сервере такая СОВ будет анализировать содержимое полученных SQL-команд. Гибридные СОВ, совмещающие два и более подхода. В дальнейшем рассмотрим сетевые и узловые СОВ как наиболее фундаментальные. [3] Кроме того, системы обнаружения вторжений можно разделить по характеру ответной реакции: пассивные или системы обнаружения, в которых после обнаружения и опознания подозрительного трафика СОВ только уведомляет пользователя или администратора реактивные или системы предотвращения, противостоящие вторжениям, путем сброса соединения либо препрограммирования правил брандмауэра с целью блокировки подозрительного траффика. гибридные, осуществляющие и обнаружение и противостояние вторжением в автоматическом режиме. Системы обнаружения вторжений также можно классифицировать по методикам анализа: статистические СОВ сигнатурные СОВ гибридные СОВ В дальнейшем мы их рассмотрим подробнее. Сетевые и узловые СОВ Сетевые системы обнаружения вторжений ССОВ обычно устанавливаются в стратегически важных точках внутри сети и как правило представляют из себя устройства, подключаемые к сети организации. Они анализируют весь проходящий траффик во всей подсети, работая в неразборчивом режиме, а затем сравнивают проходящий траффик с базой уже известных атак. Когда атака обнаружена и опознана, уведомление об этом отсылается администратору. Примером конфигурации ССОВ является, например установка ее в одной подсети с брандмауэрами в целях обнаружения попыток их обхода. В идеальном случае ССОВ сканирует весь входящий и исходящий траффик, но на практике это может привести к созданию «узкого места», тем самым снижается производительность сети в целом. Узловые системы обнаружения вторжений Узловые системы обнаружения вторжений (УСОВ) работают на отдельных устройствах и рабочих станциях сети. УСОВ анализирует траффик только одного устройства, и предупреждает администратора или пользователя в случае тревоги. Кроме того, УСОВ при установке, как правило, создает резервную копию системных файлов и периодически сравнивает ее с текущим состоянием этих файлов. В случае их изменения или отсутствия, она немедленно уведомляет администратора для последующего расследования ситуации. Часто такая система устанавливается на критически важных узлах, на которых не предусмотрено изменение системных установок. Кроме того, УСОВ могут использовать системно-зависимые средства и ханипоты (специально сконфигурированные системы, с минимальной защитой, приванные приманивать злоумышленников). Сравнение с брандмауэрами. Хотя и брандмауэры и СОВ являются системами сетевой безопасности, между ними существуют серьезные отличия. Основной задачей сетевых экранов является фильтрация трафика между сетями с целью предотвращения атак. Кроме того брандмауэры не могут оповестить администратора об атаке или подозрительной активности внутри сети. Системы обнаружения вторжений постоянно наблюдают, пропуская весь трафик через себя, за потенциальными нарушениями политики безопасности как извне, так и внутри сети, и оповещают об этом операторов. Как правило, это достигается с помощью комбинации методик, например: анализ сетевого трафика, эвристический анализ и идентификация сигнатур известных атак и немедленное оповещение. Основные методы анализа, используемые СОВ Двумя основными подходами к анализу сетевой активности, на сегодняшний день являются статистический и сигнатурный. Современные системы обнаружения вторжений используют как правило комбинацию этих методов Статистические СОВ Системы обнаружения вторжений, использующиие статистический подход после установки "обучаются" администратором, который задает политику СОВ, соответствующую нормальной активности в сети - типы траффика, соединения между узлами, используемые протоколы и порты. При обнаружении аномалий в работе сети или статистически значимых отличий траффика от типичного в данной сети, СОВ оповещает об этом администратора. Основной проблемой такого подхода является сложность в настройке и большое количество ложноположительных тревог в случае некорректно заданных правил. [2] Сигнатурные СОВ Сигнатурные системы обнаружения вторжений анализируют проходящий траффик в сети и сравнивают пакеты с базой данных сигнатур (известных атрибутов атак). Такой подход схож с тем, как работает большинство антивирусного ПО. При таком подходе основной проблемой является устаревание баз сигнатур - между появлениями новых типов атак и обновлением баз сигнатур может пройти достаточное количество времени, в течение которого СОВ будет неспособна обнаружить такую угрозу. Недостатки и проблемы СОВ: Шум может серьезно повлиять на эффективность работы СОВ. Пакеты, ошибочно сгенерированные недочетами в разработке ПО, поврежденные данные службы доменных имен могут создать довольно высокий коэффициент ложных тревог. [4] Довольно часто случается так, что количество настоящих атак гораздо меньше количества ложных тревог. Иногда разница настолько велика, что настоящая атака может быть проигнорирована или вообще не замечена. [4] Как уже было сказано выше, серьезной проблемой является устаревание библиотек сигнатур, что может серьезно сказаться на эффективности обнаружения и предотвращения атак. [4] Система обнаружения вторжений не может компенсировать недочеты в проектировании инфраструктуры безопасности, уязвимости протоколов как таковых или слабые методы аутентификации. Если атакующий получает доступ, используя уязвимости слабого метода аутентификации, то СОВ не сможет предотвратить ущерб. [2] Зашифрованные пакеты не обрабатываются системами обнаружения вторжений. Таким образом, атака с использованием зашифрованных пакетов может привести к успешному вторжению, не обнаруженному СОВ, пока злоумышленник не начнет предпримать действия внутри сети, обнаруживаемые системой.[4] Системы обнаружения вторжений предоставяет информацию об атаках используя сетевой адрес, содержащийся в IP-пакетах, проходящих в сети. Это эффективно, если сетевой адрес в пакете настоящий, так как как адрес в пакете может быть искажен или сфальсифицирован. Так как сетевые СОВ являются сетевыми устройствами, они подвержены тем же протокол-ориентированным атакам, что и обыкновенные узлы. Искаженная информация и атаки на стек TCP/IP могут привести к отказу в работе ССОВ. Способы обхода СОВ: Существует много способов обхода СОВ, приведенные ниже являются наиболее простыми и распространнеными: Фрагментация пакетов: отсылая фрагментированные пакеты, атакующий способен легко обойти сигнатурные СОВ, так как в этом случае СОВ не сможет обнаружить сигнатуру атаки, а следовательно и прнять какие-то меры по ее предотвращению. Отказ от установок по умолчанию: если СОВ ожидает троянской атаки на порту 12345, а атакующий изменил порт, используемый трояном, то СОВ, возможно, будет неспособна обнаружить угрозу. Скоординированная атака с малым количеством пакетов от одного атакующего: атакующий может полностью просканировать сеть, используя ботнет. Атакующий назначет каждому боту разную цель и порт. В этом случае СОВ будет сложно скоррелировать захваченные приходящие пакеты от этих хостов между собой и придти к выводу что сеть организации сканируется. Проксирование и подмена адреса: атакующий может серьезно повысить сложность обнаружения источника атаки с помощью плохо защищенных или сконфигурированных прокси-серверов, пробросив через них траффик атаки. В таком случая СОВ станоивтся очень тяжело иднтифицировать источник атаки. Полиморфизм и смена поведения: большинство СОВ являются сигнатурными. Немного изменяя содержимое пакетов атаки, возможно избежать обнаружения. История Прообразом систем обнаружения вторжений стала идея создания набора инструментов администратора, который упрощающал бы аудит "следов активности". [5] Примерами таких "следов" могут являться журналы доступа пользователей, журналы доступа к файлам и протоколы системных событий. В 1984 году Фред Коэн из университета Колумбии, известный специалист в компьютерной безопасности, автор понятия "компьютерный вирус", отметил : "На сегодняшний день обнаружение вторжений является неразрешимой задачей" В 1986 году Дороти Деннинг в соавторстве с Питером Нойманном опубликовала теоритическую модель СОВ, которая стала основой для многих современных СОВ [6]. Ее модель была основана на принципах статистического анализа, и впоследствии была реализована на практике в SRI International (Стэнфордский международный исследовательский институт), и получила название IDES (Intrusion Detection Expert System). Она являлась узловой СОВ и работала на компьютерах под управлением Sun OS.[7] Помимо описанного Деннинг статистического подхода IDES использовала основанную на правилах экспертную систему. Экспертная система использовалась для обнаружения и опознавания известных типов атак, а статистический анализ использовался для выявления новых или нестандартных методов вторжения.[7] Таким образом, можно сказать что IDES была не только первой СОВ, но и уже была гибридной, то есть совмещала статистический и сигнатурный подход к обнаружению. Тереза Лант предложила использовать искуственную нейронную сеть в качестве третьего компонента логики СОВ, но ее предложение не получила дальнейшего развития в связи с низкой производительностью компьютеров того времени. В 1993 году SRI выпустил новую версию СОВ - NIDES (Next-generation IDES), поддерживаемую до сих пор. [8] Кроме того, работы Денниг и Лант послужили в качестве основы для некоторых других СОВ. Одной из таких является разработанная для операционной системы Multics система MIDAS (Multics Intrusion Detection & Alerting System)[9], написанная на Common Lisp. В этом же году появляется Haystack, первая чисто статистическая СОВ. [10] Система Wisdom & Sense была статистической СОВ, разработанной в 1989 году в Лос-Аламосской национальной лаборатории.[11] Она создавала правила для своей экспертной системы, основывая на статистическом анализе активности в сети. В 1990 году было разработано множество разных СОВ. Приведем примеры. В системе TIM (Time-based Inductive Machine) для компьютеров VAX 3500 использовалось индуктивное обучение безопасному поведению пользователя. Таким образом, TIM стала первой обучающейся СОВ.[12] В этом же году появляются NSM (Network Security Monitor)[12], ISOA (Information Security Officer's Assistant)[14] и ComputerWatch [15], разработанный в AT&T Labs. Все они использовали статистический анализ для обнаружения вторжений. NSM же обладала уникальным функционалом на то время - для распознавания нарушений политики безопасности она анализировала матрицы доступа, и сообщала об их неожиданных изменениях. [12] В 1991 году, разработчики Университета Калифорнии создали прототип распределенной СОВ, DIDS (Distributed IDS), являющуюся первой УСОВ. [16][17] Национальная лаборатория им. Лоуренса в Беркли анонсировала СОВ Bro в 1998 году, которая использовала свой язык для обработки данных получаемых с помощью известной сниффер-библиотеки libpcap.[18][19] Кроме того, libpcap также использовала Network Flight Recorder (NFR) В 1998 году, помимо этого вышел сниффер APE, месяцем позже переименовыанный в Snort, до сих пор самую популярную СОПВ (более 300000 пользователей).[20] Современность и перспективы. Как уже было отмечено выше, в современных инфраструктурах СОВ являются неотъемлимой их частью. Наиболее популярными из систем с открытым кодом являются Snort, Suricata и OSSEC HIDS, из систем с проприетарным кодом CATNET и McAfee IPS. Популярными ССОВ являются Cisco Secure IDS, устанавливаемая на межсетевые экраны производства этой же компании и Dragon IDS, гибридную СОВ, устанавливаемую как на устройства так и на рабочие станции. Наиболее перспективным направлением развития СОВ является внедрение когинтивных способностей в функционал этих систем с использованием исскуственных нейронных сетей и нечеткой логики, и снижение количества ложных тревог. Кроме того, наблюдается тенденция к миниатюриации СОВ, что в будущем позволит устанавливать их на каждое устройство в сети, в том числе на роутеры и свитчи, повышая уровень безопаности в целом. Кроме того, в последнее время цель атак переместилась на прикладной уровень модели OSI – на веб-сервисы, XML, SOAP, ERP, CRM, СУБД, IP-телефонию и прочее. Сетевые системы обнаружения и предотвращения перестали справляться с атаками, так как они не работают на уровне их реализации. Поэтому одним из направлений развития станет поддержка новых технологий и протоколов.[21][22] Заключение и выводы В этой статье были рассмотрены разные типы систем обнаружения вторжений, были описаны принципы работы таких систем, а также различия с другими типами ПО, обеспечивающими безопасность компьютерных систем. Также приводится классификация СОВ по нескольким признакам, Кроме того, в этой работе была рассмотрена история развития и перспективы такого ПО. Основываясь на изученном, можно сказать что в современных условиях СОВ, несмотря на рассмотренные недостатки являются неотъемлимой частью инфраструктуры безопасности. Литература 1. Scarfone, Karen; "Guide to Intrusion Detection and Prevention Systems (IDPS)" / Scarfone, Karen, Mell, Peter. Computer Security Resource, Austin, 2007. 2. Mattord, Verma; "Principles of Information Security." / Verma Mattord, 300p, 2008 3. Sen, Sevil; "Power-Aware Intrusion Detection in Mobile Ad Hoc Networks" / Sevil Sen, John E. Clark, Juan Tapaidor, York , 2006 - (http://wwwusers.cs.york.ac.uk/~jac/PublishedPapers/AdhocNetsFinal.pdf) 4. Anderson, Ross; Security Engineering: A Guide to Building Dependable Distributed Systems./ Ross Anderson, New York: pp. 387–388., 2007 5. Anderson, James P.; "Computer Security Threat Monitoring and Surveillance," / James P. Anderson, Washing, PA, 1980. 6. Denning, Dorothy E.;"An Intrusion Detection Model,"/ Dorothy E. May, // Proceedings of the Seventh IEEE Symposium on Security and Privacy, pages 119–131,1986. 7. Lunt, Teresa F., "IDES: An Intelligent System for Detecting Intruders,"/ Teresa F. Lunt, // Proceedings of the Symposium on Computer Security; Threats, and Countermeasures; Rome, November 22–23, pages 110–121, 1990. 8. Lunt, Teresa F., "Detecting Intruders in Computer Systems,"/ Teresa F. Lunt // Conference on Auditing and Computer Technology at SRI International, 1993 9. Sebring, Michael M.;"Expert Systems in Intrusion Detection: A Case Study"/ Michael M. Sebring, Alan R. Whitehurst // The 11th National Computer Security Conference, 1988 10. Smaha, Stephen E.; "Haystack: An Intrusion Detection System," / Stephen E. Smaha // The Fourth Aerospace Computer Security Applications Conference, Orlando, 1988 11. Vaccaro, H.S.; "Detection of Anomalous Computer Session Activity,"/ H.S Vaccaro // The 1989 IEEE Symposium on Security and Privacy, 1989 12. Teng, Henry S.;"Adaptive Real-time Anomaly Detection Using Inductively Generated Sequential Patterns,"/ Henry S. Teng, Kaihu Chen, Stephen Lu // IEEE Symposium on Security and Privacy, 1900 13. A Network Security Monitor; / Heberlein, L. Todd, Dias, Gihan V., Levitt, Karl N., Mukherjee, Biswanath, Wood, Jeff, and Wolber, David // Symposium on Research in Security and Privacy, Oakland, pages 296–304, 1990 14. Winkeler, J.R.; "A UNIX Prototype for Intrusion and Anomaly Detection in Secure Networks," / J.R. Winkeler, J.R. // The Thirteenth National Computer Security Conference, Washington, DC., pages 115–124, 1990 15. Dowell, Cheri, ;"The ComputerWatch Data Reduction Tool", Cheri Dowell, Paul Ramsted // Proceedings of the 13th National Computer Security Conference, Washington, D.C., 1990 16. DIDS (Distributed Intrusion Detection System) -- Motivation, Architecture, and An Early Prototype; The 14th National Computer Security Conference, October, pages 167–176., 1991 17. Jackson, Kathleen; "A Phased Approach to Network Intrusion Detection,"/ Kathleen Jackson, David H. Dubois, Cathy Stallings // A 14th National Computing Security Conference, 1991 18. Paxson, Vern, "Bro: A System for Detecting Network Intruders in Real-Time,"/ Vern Paxson // Proceedings of The 7th USENIX Security Symposium, San Antonio, TX, 1998 19. Amoroso, Edward, "Intrusion Detection: An Introduction to Internet Surveillance, Correlation, Trace Back, Traps, and Response,"/ Edward Amoroso, Intrusion.Net Books, Sparta, New Jersey, 1999 20. Snort IDS and IPS Toolkit / Syngress, 2007 21. Лукацкий, Алексей, "Предотвращение сетевых атак, технологии и и решения" / Алексей Лукацкий, Москва , 2006 22. Cавельев Д.А., "Перспективы развития современных систем обнаружения вторжений и предотвращений атак." / Д.А. Савельев, // XV Всероссийская научная конференция