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

Даже такие известные эксперты в области ИТ, как Gartner, называют системы выявления атак (Intrusion Detection System, IDS) рыночной неудачей. Еще больше запутывает ситуацию то, что некоторые поставщики используют для своих продуктов определение «предотвращение атак», тем самым пытаясь заявить, что они не только выявляют вторжения, но и способны предотвратить их. Но пока в основе такой системы предотвращения атак остается прежняя технология IDS, проблемы не исчезнут. Пришла пора еще раз оценить современное состояние технологии выявления атак, рассмотреть базирующиеся на них системы предотвращения и проанализировать важнейшие недостатки, подвергающиеся критике со стороны корпоративных пользователей.

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

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

СОПОСТАВЛЕНИЕ С ШАБЛОНОМ

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

Рисунок 1. Консоль ПО Realsecure от ISS содержит большое количество сообщений.

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

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

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

Рисунок 2. Программный продукт Secure Net Provider Client предлагает обширную информацию о подконтрольной системе.

Другая возможность заключается в корреляции потенциально известных атак с информацией о фактически имеющейся инфраструктуре ИТ. Специфическое для Windows злонамеренное действие, направленное против рабочей станции UNIX, является либо полностью ошибочным, либо, по крайней мере, бессмысленным, так как нацелено на уязвимое место, которого нет у конечной системы. Следовательно, сигнал тревоги можно либо отфильтровать, либо значительно снизить его приоритет. В качестве источника информации по инфраструктуре служат, например, результаты сканирования сети или пассивных «дактилоскопических» сенсоров. Во время «дактилоскопирования» система считывает общий сетевой трафик и выясняет на основе содержащейся в пакетах данных информации, какая операционная система или какие приложения находятся по определенному конечному адресу в контролируемой сети. Наиболее оптимальный вариант — коррелировать данную информацию в режиме реального времени с регистрацией сигналов тревоги, поступающих от системы выявления атак.

В большинстве случаев администраторы, пытаясь избежать ложных сигналов об атаке, вручную подстраивают сенсоры системы IDS. При этом они деактивируют определенные шаблоны для конкретных групп сенсоров или IP-адресов. Такая работа требует не только больших затрат и средств, она может привести к тому, что сенсоры станут почти слепыми, а это ставит под сомнение смысл всего проекта по внедрению IDS.

В целом проблема ложных сигналов тревоги в системах с классической технологией выявления на базе анализа протоколов и сопоставления с шаблоном не разрешаема. Лишь совершенно новая идея для выявления атак способна повлиять на улучшение ситуации. Кроме того, независимо от проблематики ложных сигналов тревоги, операционные издержки при использовании системы IDS очень высоки. Выявление атак часто сравнивают с функциональностью охранной сигнализации. Однако подобное сравнение не вполне корректно. Охранную сигнализацию в здании активируют, как правило, ночью. В это время суток здание стоит опустевшее, и любая обнаруженная активность либо движение требует внимания. Различие между стандартным состоянием, т. е. пустым помещением, и потенциальным взломом очевидно. Выявление атак на базе сети выглядит совсем иначе. Контролируемая сеть постоянно активна. Граница между нормальным потоком данных и потенциальным вторжением нечеткая, и система IDS на базе сети часто выдает сигнал тревоги. Поэтому в качестве сравнения с реальным миром более подходят камеры наблюдения или аппараты для рентгена багажа в аэропорту. Без человека, который сидит перед экраном и, обладая большим опытом, решает, какое явление нормально, а какое — нарушение правил, оба аппарата почти бесполезны. К тому же человек может увидеть только то, что определил аппарат. Предметы, которые невидимы на экране, остаются для контролирующего лица скрытыми. Аналогично этому система IDS распознает только те вторжения, для которых ей удается подобрать известный шаблон в потоке данных или выявить очевидное отклонение от сетевого протокола.

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

Самая лучшая скорость распознавания ничего не даст, если человек не справляется с потоком информации, который такая система выдает. Занять за короткий промежуток времени всю имеющуюся память сигналами тревоги об атаках для системы IDS — не проблема. И все же этот аспект часто не принимается во внимание при выборе решения. Позже в процессе внедрения компании вынуждены управлять данными о событиях размером более 1 Гбайт, так как, вопреки обещаниям производителей, многие случаи классифицируются как вторжение далеко не сразу. Но если позже возникает необходимость повторно отследить инцидент, произошедший месяца три назад, в распоряжении администратора должны быть необходимые данные на тот момент времени.

Те, кто использует систему либо планирует ее ввести, должны учитывать ограничения имеющихся систем. Чаще всего производители указывают предельные значения: число известных шаблонов или максимально анализируемую пропускную способность. Однако обычно они не указывают, как много или какие именно вторжения система IDS не может обнаружить. Проблема снова заключается в технологии выявления, поскольку и при анализе протоколов она частично базируется на шаблонах. Когда в потоке данных присутствует определенный шаблон, атака распознается. Но если атака происходит, а шаблон при этом не появляется, то система ее не обнаруживает. Часто системы выявляют вторжение по характерной последовательности байт при атаке посредством известного автоматизированного инструмента вторжения, так называемого эксплоита. Если злоумышленник обладает достаточным опытом, у него есть хороший шанс создать такой инструмент самому и провести атаку так, чтобы она осталась незамеченной со стороны системы IDS на базе шаблонов.

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

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

Штефан Штробел — коммерческий директор компании Cirosec. С ним можно связаться через сайт: http://www.cirosec.de.


? AWi Verlag