Даже самым быстро реагирующим поставщикам требуются часы или даже дни для выпуска сигнатуры для систем обнаружения вторжений, основанных на правилах. В случае же Slammerа, уязвимая сеть будет поражена в течение нескольких секунд – слишком быстро даже для самых тщательно обновляемых RBID систем. Так как же блокировать червя, удваивающего количество зараженных систем каждые 8.5 секунд? Ответ может лежать в использовании менее известного метода обнаружения вторжений, называемого статистическим (или основанным на поведении) обнаружением аномалий.
24 января 2003 года мир столкнулся с новой угрозой - червем W32.SQLExp.Worm (позже названным Slammer/Sapphire). Этот червь, использовавший уязвимость переполнения буфера в Microsoft SQL Server 2000 (включая MSDE 2000), продемонстрировал беспрецедентную скорость распространения. В течение 10 минут с момента запуска он поразил 90% всех уязвимых систем по всему миру. До этого случая черви такого типа и "заразности" существовали только в теории и представляли чисто академический интерес.
Даже самым быстро реагирующим поставщикам требуются часы или даже дни для выпуска сигнатуры для систем обнаружения вторжений, основанных на правилах (RBID). В случае с Slammer уязвимая сеть оказывалась пораженной в течение нескольких секунд – слишком быстро даже для самых тщательно обновляемых RBID систем. Возникает вопрос: как блокировать червя, удваивающего количество зараженных систем каждые 8.5 секунд? Ответ может лежать в использовании менее известного метода обнаружения вторжений, называемого статистическим (или основанным на поведении) обнаружением аномалий.
Наиболее известные системы обнаружения вторжений основаны на правилах (сигнатурах). RBID системы для выявления потенциальной атаки используют "сигнатуру" атаки с последующим анализом входящего трафика. Сигнатуры весьма разнообразны и могут определять параметры от номера порта в пакете до последовательности байт в серии пакетов. После разработки сигнатуры её использование обычно довольно эффективно предотвращает нежелательную сетевую активность.
Главным недостатком подхода RBID является необходимость предварительной разработки сигнатур и обновления системы. Без актуальных сигнатур эффективность системы значительно снижается. К сожалению, разработка правил даже для атаки средней сложности не тривиальна и требует времени. Сначала атака должна быть обнаружена, записана и проанализирована. Затем сигнатуру надо создать и выпустить. После этого оператор IDS должен создать новое правило для своей системы. Все эти шаги занимают время, которого может не быть при атаке быстрораспространяющихся червей, подобных W32.SQLExp. Даже при максимально быстром выполнении всех этих шагов остается фундаментальная проблема: если это новая атака, и для нее нет сигнатуры, RBID система может не заметить эту активность.
Статистические системы (SBID) имеют другой подход к обнаружению вторжений. Концепция SBID систем проста: система определяет "нормальную" сетевую активность и затем весь трафик, не подпадающий под определение "нормального", помечается как аномальный. SBID системы пытаются изучить сетевой трафик каждой конкретной сети. Процесс анализа трафика продолжается все время, пока SBID система активна, поэтому, предполагая, что типовой сетевой трафик остается постоянным, можно сказать, что чем дольше система используется в этой сети, тем точнее и эффективнее она становится.
Анализируя сетевой трафик и обрабатывая информацию при помощи сложных статистических алгоритмов, SBID системы ищут аномалии в установившейся картине нормального сетевого трафика. Всем пакетам дается оценка "аномальности" (включающая в себя степень ненормальности специфического события), и если эта оценка выше определенного предела, IDS генерирует сигнал тревоги. Ключевой особенностью любой SBID системы является её возможность изучать сетевую активность и отличать нормальную сетевую активность от аномальной.
Для иллюстрации принципа работы SBID систем можно привести аналогию с домашним питомцем. Представьте, что у вас есть собака (Шарик), и каждый день вы приходите с работы и кормите её. День ото дня вы приходите домой к пустой миске и наполняете её собачьим кормом. Однажды вы пришли домой и обнаружили, что миска лишь наполовину пуста. В зависимости от конкретной ситуации, это событие может быть очень обескураживающим и требовать изучения, а может быть чем-то, на что вы даже не обратите внимание. Теперь представьте, что вы пришли домой, а миска полностью полная. В этом случае, разумно было бы предположить, что что-то идет не так. Шарик мог заболеть, убежать, просто не быть голодным, но мог ведь и сдохнуть! Понятно, что в зависимости от степени необычности ситуации, может потребоваться дальнейшее выяснение обстоятельств.
Именно так организована работа SBID систем. Система изучает, что именно является "нормальным" для вашего трафика, наблюдая за активностью в течение некоторого периода времени. Когда происходит неизвестное или редкое (аномальное) событие, SBID обнаруживает его и генерирует сигнал тревоги. Разница между нормальным и аномальным событием определяется пороговой величиной. Если пороговая величина высока, то незначительные аномалии не принимаются во внимание. Если порог низок, то большинство аномалий являются причиной для расследования.
SBID системы имеют ряд значительных преимуществ:
Несмотря на значительный потенциал, SBID системы имеют ряд существенных недостатков:
Оптимальная конфигурация IDS может быть достигнута совместным использованием SBID и RBID систем. Системы обнаружения вторжений, основанные на правилах, популярны по одной причине – они давно и неплохо работают. Обновляя сигнатуры и изменяя набор правил для нужд конкретной сети, администратор RBID может пресечь более 95% атак. Однако в сфере безопасности достаточно пропустить лишь один удар, чтобы вывести сеть из строя. Поэтому использование SBID систем дополнительно к RBID системам может быть отличным решением.
Совместно используя разные системы обнаружения вторжений, сеть может получить преимущества обоих подходов. IDS, основанные на правилах, будут обнаруживать известные атаки, в то время как статистические IDS будут отлавливать "0-day" и "slow and low" случаи. Такая конфигурация наилучшим образом справилась бы с червем W32.SQLExp. SBID система должна обнаружить необычную активность (огромное количество UDP пакетов на порт 1434 и случайные IP адреса) и сообщить об аномальном трафике. Обнаруженный червь может быть легко уничтожен оператором на инфицированной машине.
На сегодняшний день не существует идеального решения для обнаружения вторжений. Наиболее эффективным подходом представляется комбинация различных методов IDS. Хотя на рынке пока представлено относительно мало поставщиков, предлагающих SBID решения, эти технологии постепенно становятся частью более широкого спектра решений по кибербезопасности.
В будущем, несомненно, появятся еще более заразные и деструктивные черви, чем W32.SQLExp. В современном мире кибер-преступлений, злонамеренных пользователей и кибер-терроризма угрозы будут продолжать развиваться, заставляя профессионалов по обеспечению безопасности постоянно совершенствовать свои навыки и инструменты. Использование статистических систем обнаружения вторжений в дополнение к уже имеющимся системам, основанным на правилах, позволит создать более надежную защиту от текущих и будущих угроз. Повысив таким образом защищенность вашей сети, вы сможете больше времени уделять своим повседневным задачам и меньше беспокоиться о потенциальных кибер-атаках.
Спойлер: мы раскрываем их любимые трюки