Научная статья на тему 'Анализ механизма обнаружения и сдерживания эпидемий сетевых червей на основе "кредитов доверия"'

Анализ механизма обнаружения и сдерживания эпидемий сетевых червей на основе "кредитов доверия" Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
268
81
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СЕТЕВАЯ БЕЗОПАСНОСТЬ / NETWORK SECURITY / СЕТЕВЫЕ ЧЕРВИ / NETWORK WORMS / ОБНАРУЖЕНИЕ И ОГРАНИЧЕНИЕ РАСПРОСТРАНЕНИЯ СЕТЕВЫХ ЧЕРВЕЙ / SIMULATION OF DEFENSE AGAINST NETWORK WORMS / МЕХАНИЗМЫ ЗАЩИТЫ / CREDIT BASED PROTECTION MECHANISMS / ОСНОВАННЫЕ НА КРЕДИТАХ ДОВЕРИЯ / МОДЕЛИРОВАНИЕ ЗАЩИТЫ ОТ СЕТЕВЫХ ЧЕРВЕЙ / DETECTION AND CONTAINMENT OF NETWORK WORM PROPAGATION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Воронцов Виктор Васильевич, Котенко Игорь Витальевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Analysis of Credit Based Mechanism of Network Worm Epidemics Detection and Containment

Issues connected with the analysis and updating of credit based mechanisms of detection and containment of network worm epidemics are discussed. The peculiarities of the given protection mechanism, and also a technique and results of its evaluation for various types of network traffic are submitted

Текст научной работы на тему «Анализ механизма обнаружения и сдерживания эпидемий сетевых червей на основе "кредитов доверия"»

МОДЕЛИ И АЛГОРИТМЫ ЗАЩИТЫ ИНФОРМАЦИИ

УДК 004.056

В. В. Воронцов, И. В. Котенко

АНАЛИЗ МЕХАНИЗМА ОБНАРУЖЕНИЯ И СДЕРЖИВАНИЯ ЭПИДЕМИЙ СЕТЕВЫХ ЧЕРВЕЙ НА ОСНОВЕ „КРЕДИТОВ ДОВЕРИЯ"

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

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

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

С учетом этого актуальность задачи разработки механизмов обнаружения и ограничения распространения сетевых червей не вызывает сомнений. Одним из методов обнаружения сетевых червей являются механизмы, которые используют различные схемы проверки статистических гипотез. Среди них можно выделить механизмы, основанные на „пороговом случайном прохождении" (Threshold Random Walk — TRW) [1] и кредитах доверия (Credit Based Rate Limiting — CB) [2]. Данный класс механизмов предназначен для обнаружения быстро распространяющихся сетевых червей. Однако область его применения и его эффективность исследованы в недостаточной степени, поэтому анализ данного механизма и его адаптация к различным видам сетевого трафика и конфигурациям компьютерных сетей является важной и актуальной научной задачей в области компьютерной безопасности.

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

Механизм обнаружения и сдерживания на основе кредитов доверия. Класс механизмов, основанных на кредитах доверия [2], для обнаружения факта инфицирования узла использует идею анализа статистических данных о неудачных соединениях, предложенную в работе [1]. Основная модификация механизма, рассмотренного в работе [1], заключается в изменении направления анализа поступивших событий на хронологически обратный [2], т.е.

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

При функционировании механизма защиты, основанного на кредитах доверия, для каждого узла сети составляется список (PCH-лист, PCH — Previous Contacted Hosts) ранее посещенных узлов (т.е. узлов, к которым были осуществлены первоначальные обращения с данного узла). Запись о первоначальном соединении содержит следующие поля: TP-адрес узла, попытку установления соединения с которым необходимо осуществить, время попытки установления соединения, состояние записи („ожидание", „успешно" или „ошибка"). Каждому узлу также ставится в соответствие очередь первоначальных соединений (FCC-очередь, FCC — First Contact Connection), в которой хранятся все поступившие запросы от этого узла. Запросы из этой очереди обрабатываются в порядке их поступления, вне зависимости от статуса.

При получении системой мониторинга запроса на соединение от узла I проверяется, существует ли IP-адрес узла, с которым осуществляется попытка установления соединения, в списке ранее посещенных узлов узла I . При отсутствии адреса назначения в этом списке он добавляется в PCH-лист узла I, и в очередь FCC добавляется соответствующая запись с адресом узла назначения в качестве параметра и статусом „ожидание".

При поступлении запроса, обращенного к узлу I , от узла, запрос к которому находится в очереди FCC узла I, данный запрос считается ответом на запрос первоначального соединения, и статус записи устанавливается в состояние „успешно", за исключением случая, когда ответом является пакет TCP RST.

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

Далее исходящий трафик анализируется на предмет возможности заражения червем при помощи метода обратной последовательной проверки гипотез [1].

Работа механизма сдерживания на основе кредитов доверия базируется на следующих двух принципах: 1) исходящие запросы от узла разрешаются только при положительном значении переменной, задающей количество кредитов, в противном случае запросы на соединение блокируются; 2) производится периодическая корректировка количества доступных кредитов.

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

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

Методика моделирования и оценки механизма защиты. Для оценки эффективности исследуемого механизма и его усовершенствования был разработан и реализован программный комплекс моделирования работы механизмов обнаружения и ограничения распространения сетевых червей [3, 4].

Разработанный комплекс позволяет моделировать реакцию механизма защиты на сетевой трафик как при наличии червя в компьютерной сети, так и при его отсутствии. Функционирование исследуемого механизма защиты оценивается по следующим показателям эффективности методов обнаружения и реагирования: доля блокированного и (или) задержанного легитимного трафика (степень ложных срабатываний, false positives); доля пропущенного злонамеренного трафика (степень пропусков атак, false negatives); время реакции на атаку и др.

Обобщенная методика моделирования и оценки исследуемого механизма защиты представлена на рис. 1.

Рис. 1. Обобщенная методика моделирования и оценки механизма защиты

В начале процесса моделирования выбирался тип „чистого" сетевого трафика (при отсутствии червей) для тестирования и последующей оценки эффективности работы исследуемого механизма. В качестве базовых использовались записи сетевых трафиков следующих типов: нормального сетевого трафика (без „быстрых" приложений и червей); сетевого трафика при условии функционирования в сети приложений P2P (peer-to-peer) как примера быстрых приложений; комбинация этих двух типов. Записи трафиков были получены как из открытых источников, так и из созданной тестовой сети.

Задача получения трафика червя для дальнейшего комбинирования с „чистым" трафиком была решена посредством генерирования сетевых пакетов с параметрами, соответствующими той или иной модели червя. При моделировании использовались модели известных сетевых червей (например, Code Red II, Slammer) и модели потенциально возможных („искусственных") червей, формируемые на основе задания таких параметров функционирования, как тип соединения (TCP или UDP); частота генерации пакетов; изменение скорости, с которой производится сканирование; тип сканирования или методика выбора адреса узла-получателя и порта; вероятность установления успешного TCP-соединения; размер пакета и др.

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

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

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

Результаты экспериментов и предложения по использованию механизма защиты. Было проведено более 700 экспериментов для различных видов трафика и разных исходных параметров.

На рис. 2 показана зависимость суммарной ошибки (Е) работы механизма обнаружения и сдерживания на основе кредитов доверия от процента успешных соединений в трафике (Ы) при отсутствии в сети сетевого червя (на „чистом" трафике). Как видно из рисунка, исследуемый механизм продемонстрировал в целом приемлемое качество работы — было заблокировано в среднем менее 5 % нормального трафика. На рис. 3. проиллюстрирована зависимость Е(Ы) при наличии в анализируемом трафике трафика сетевого червя.

Е 0,20

0,15

0,10

0,05 0

30 40 50 60 70 80 Ы, % Рис. 2. Результаты экспериментов для „ чистого " трафика: П— Р2Р-трафик, О — нормальный трафик

Е 0,35 — х х

0,3 — —---

0,25 — х

0,2 — ---- х

0,15 0,1 -- я ♦ Д х

0,05 0 ■- ■ ■ -,■-1— ▲ А —А-А-,-

_i"_1____1_1_■—

10 20 30 40 N, %

Рис. 3. Результаты экспериментов для смешанного трафика: Q — комбинация трафика искусственного червя и Р2Р-трафика, ■ — комбинация трафика искусственного червя и нормального трафика, Д — комбинация трафика червя Code Red II и нормального трафика, х — комбинация трафика червя Code Red II и Р2Р-трафика

Результаты моделирования можно оценить в двух случаях: при наличии или отсутствии в сети быстрых приложений. Так, при исследовании комбинации „нормальный трафик — трафик червя" при отсутствии в сети активной работы „быстрых" приложений (в рассматриваемом случае Р2Р-клиентов) результаты тестирования продемонстрировали положительный эффект применения механизма обнаружения и сдерживания сетевых червей. Несмотря на то что в наихудшем случае суммарная ошибка превысила значение 0,1 (т.е. было заблокировано

—♦-

около 10 % трафика), процент пропуска атаки не превысил 0,17 для искусственного червя и составил около 1 при наличии в сети червя Code Red II.

Не столь оптимистичная картина была получена по результатам тестирования механизма для комбинации „быстрый трафик — трафик червя", т.е. при активном функционировании в сети Р2Р-клиентов. Максимальная суммарная ошибка в этом случае составила от 0,37 до 0,385 для трафиков искусственного червя и червя Code Red II соответственно. Такое большое значение ошибки было вызвано, прежде всего, большой степенью ложного срабатывания — 0,3635 и 0,384 соответственно.

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

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

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

Выбор этих параметров обусловлен следующими соображениями:

1) для сеансов „быстрых" приложений, вероятнее всего, характерны определенные шаблоны действий, например, посылка большого количества пакетов одинакового размера на одни и те же порты с той или иной периодичностью;

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

Заключение. Итак, в настоящей статье проанализирован один из перспективных механизмов защиты от сетевых червей — механизм обнаружения и сдерживания сетевых червей на основе кредитов доверия, описана общая методика моделирования и оценки механизмов защиты, приведены результаты экспериментов. Проанализированы положительные и отрицательные стороны существующего механизма [2] и предложены направления для дальнейшей его модификации в целях повышения качества обнаружения и сдерживания сетевых червей при условии, что в защищаемой подсети активно функционируют так называемые „быстрые" приложения.

Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (проект № 07-01-00547), программы фундаментальных исследований ОИТВС* РАН (контракт № 3.2/03), Фонда содействия отечественной науке, а также при частичной финансовой поддержке, осуществляемой в рамках проекта с фирмой „Hewlett-Packard" (США) и проекта Евросоюза RE-TRUST (контракт № 021186-2).

список литературы

1. Jung J., Paxson V., Berger A.W., Balakrishnan H. Fast portscan detection using sequential hypothesis testing // Proc. of the 2004 IEEE Symposium on Security and Privacy, Oakland, СА, USA, May 9—12, 2004. IEEE Computer Society. 2004. P. 211—225.

2. Schechter S., Jung J., Berger A. W. Fast detection of scanning worm infections // Proc. of the 7th Intern. Symposium on Recent Advances in Intrusion Detection, French Riviera, France, Sept. 2004. P. 59—81.

Здесь и далее: Отделение информационных технологий и вычислительных систем — прежнее название Отделения нанотехнологий и информационных технологий РАН.

26

В. А. Десницкий, И. В. Котенко

3. Воронцов В. В., Котенко И. В. Модели обнаружения и сдерживания сетевых червей на основе проактивного подхода // Материалы V Санкт-Петербург. межрегион. конф. „Информационная безопасность регионов России (ИБРР-2007)", 23—25 окт. 2007 г. СПб., 2007. С. 47—48.

4. Котенко И. В., Воронцов В. В. Проактивный подход к обнаружению и сдерживанию сетевых червей // Тр. Междунар. науч.-техн. конф. „Интеллектуальные системы (AIS 07)" и „Интеллектуальные САПР (CAD-2007)". М.: Физматлит, 2007. Т. 2. С. 61—68.

Сведения об авторах Виктор Васильевич Воронцов — СПИИРАН, научно-исследовательская

сти; E-mail: vorontsov@comsec.spb.ru Игорь Витальевич Котенко — СПИИРАН, научно-исследовательская

сти; E-mail: ivkote@iias.spb.su

Поступила в редакцию 06.05.08 г.

группа компьютерной безопасно-группа компьютерной безопасно-

УДК 004.056

В. А. Десницкий, И. В. Котенко

МОДЕЛЬ ЗАЩИТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ НА ОСНОВЕ МЕХАНИЗМА „УДАЛЕННОГО ДОВЕРИЯ"

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

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

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

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

i Надоели баннеры? Вы всегда можете отключить рекламу.