Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Построение эффективных методов криптографической защиты программ от компьютерных вирусов Булыгин, Юрий Сергеевич

Построение эффективных методов криптографической защиты программ от компьютерных вирусов
<
Построение эффективных методов криптографической защиты программ от компьютерных вирусов Построение эффективных методов криптографической защиты программ от компьютерных вирусов Построение эффективных методов криптографической защиты программ от компьютерных вирусов Построение эффективных методов криптографической защиты программ от компьютерных вирусов Построение эффективных методов криптографической защиты программ от компьютерных вирусов Построение эффективных методов криптографической защиты программ от компьютерных вирусов Построение эффективных методов криптографической защиты программ от компьютерных вирусов Построение эффективных методов криптографической защиты программ от компьютерных вирусов Построение эффективных методов криптографической защиты программ от компьютерных вирусов
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Булыгин, Юрий Сергеевич. Построение эффективных методов криптографической защиты программ от компьютерных вирусов : диссертация ... кандидата технических наук : 05.13.17. - Москва, 2006. - 113 с. : ил.

Содержание к диссертации

Введение

2 ГЛАВА 1 27

2.1 Обзор криптографических средств защиты программ 27

2.1.1 Угрозы информационной безопасности 27

2.1.2 Аутентификация 28

2.1.3 Коды аутентичности сообщений (МАС) 30

Применение кодов аутентификации 31

2.1.4 Функции хеширования 33

Применение функций хеширования 34

2.1.5 Электронные цифровые подписи 37

Основные определения и классификация 38

Схемы электронной подписи с добавлением 39

2.2 Краткий анализ системы криптографической защиты 40

2.2.1 Постановка задачи 40

2.2.2 Области применения 41

Защита лицензионных и коммерческих данных 42

Защита файлов программного обеспечения 43

Защита дистрибутивов программного обеспечения 43

Защита шаблонов вирусных атак и спама 44

2.2.3 Основные свойства 44

Поддержка различных криптографических стандартов . 44

Защита данных приложения от подмены 45

Защита от манипуцляции составом приложения 45

Запрещение использования ключей . 45

Обновление ключей 45

Ограничение применения ключей 46

ГЛАВА 2 47

3.1 Хранение электронной подписи файлов программного обеспечения 47

3.1.1 Внутренне хранение ЭЦП 47

3.1.2 Внешнее хранение ЭЦП 48

Внешнее раздельное хранение 48

Внешнее совместное хранение 49

3.2 Защита от манипуляции состава программного обеспечения . 50

3.2.1 Несанкционированное изменение программного обеспечения 50

3.2.2 Модель разбиения на целостные наборы 52

3.2.3 Вложенные реестры наборов 54

3.2.4 Оптимизация реестров наборов 56

3.3 Обновление наборов файлов 57

3.4 Управление ключами программного обеспечения 59

3.4.1 Иерархия и классификация открытых ключей 59

3.4.2 Ограничение применения ключей 61

3.4.3 Состав открытых ключей программного обеспечения . 65

3.5 Защита открытых ключей от подмены 65

3.5.1 Инфраструктура открытых ключей (сертификация) . 66

3.5.2 Перекрестное подписывание открытых ключей 70

3.5.3 Взаимная сертификация 72

3.5.4 Использование средств хранения секретных данных, предоставляемых ОС 73

3.5.5 Применение "секретной" бесключевой функции шифрования 75

3.6 Новый метод защиты открытых ключей от подмены 76

3.6.1 Трехпроходный протокол Шамира обмена секретом . 76

3.6.2 Алгоритм Мэсси-Омуры; * 77

3.6.3 Атака "человек-посередине" на протокол Шамира . 78

3.6.4 Частичные атаки подмены открытого ключа программы . 79

Подмена невозможна на первом шаге протокола 80

Подмена возможна только на первом шаге протокола . 81

3.6.5 Применение протокола Шамира для защиты открытых ключей от подмены 82

4 ГЛАВА 3 84

4.1 Математические модели эволюции вирусных эпидемий 84

4.1.1 Простейшая эпидемиологическая модель (SI) 84

4.1.2 Учет гетерогенности числа контактов 85

4.1.3 Учет излечения без иммунитета (SIS) 85

4.1.4 Учет приобретения иммунитета (SIR) 86

4.1.5 Приобретение временного иммунитета (SIRS) 87

4.2 Модель эпидемии с учетом вакцинации и гибели от заражения . 88

5 ГЛАВА 4 90

5.1 Эпидемии компьютерных вирусов 90

5.1.1 Заражение предварительно составленного списка уязвимой популяции 91

5.1.2 Модель идеального развития эпидемии 92

5.1.3 Время заражения списка уязвимой популяции 94

Средний размер компьютерного вируса 97

5.2 Живучесть эпидемии компьютерных вирусов 99

5.2.1 Несовершенные списки уязвимой популяции 99

Дублирование заражения 100

5.2.2 Метод полного дублирования заражения 101

5.2.3 Метод предварительной пробы уязвимости (полностью уязвимое дерево распространения 103

5.3 Применение результатов 104

6 Основные выводы и результаты работы 105

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

Введение к работе

По данным ежегодного обзора компьютерных преступлений и безопасности инстатута информационной безопасности ФБР США в течение последних 6 лет наибольшая доля всех компьютерных преступлений приходится на компьютерные вирусы и сетевые черви, и по оценкам ежегодного отчета исследовательского института в области стратегического и финансового управления информационными технологиями Computer Economics, суммарный финансовый ущерб от атак компьютерных вирусов в 2004г. составил $17.8 млрд. Значительное число атак приходится на антивирусное программное обеспечение и системы обнаружения вторжений. Прежде всего атаки направлены на нейтрализацию обнаружения и устранения компьютерных вирусов путем модификации кода антивирусных программ и баз шаблонов атак. Второй серьезной угрозой является выпуск и распространение нелицензионных программ путем той же модификации содержимого программы либо непосредственно лицензионных данных, используемых программой для контроля срока ее использования. И наконец, большую опасность представляет встраивание шпионских и других вредоносных программ в программное обеспечение. Данные угрозы являются причинами внедрения методов криптографических защиты программ от компьютерных вирусов.

1.1.2. Цель работ и задачи исследования

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

1. Проанализировать требования, предъявляемые к системам криптографи

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

2. Проанализировать математические модели, описывающие распространения компьютерных вирусов и сетевых червей.

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

1.1.3. Методы исследования

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

1.1.4. Научная новизна

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

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

3. Предложена модель и получена аналитическая оценка времени заражения заранее составленного списка уязвимой популяции.

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

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

1.1.5. Практическая ценность работы

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

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

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

4. Предложеный механизм хранения ЭЦП файлов программ, открытых ключей или их сертификатов позволяют обновлять их после смены криптографических алгоритмов и секретных ключей производителя.

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

1.1.6. Реализация и внедрение результатов работы

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

Результаты работы по анализу и полученным аналитическим оценкам механизмов распространения компьютерных вирусов учитываются при создании Концепции информационной безопасности сетей связи третего поколения Российской Федерации, разрабатываемой в рамках НИР "Исследование и разработка механизмов обеспечения информационной безопасности сетей связи третего поколения" (шифр: "Безопасность 3G", генеральный исполнитель: ФГУП "НТЦ "Атлас" ФСБ России", заказчик: Ассоциация операторов сетей связи третьего поколения "Ассоциация 3G").

Результаты диссертации используются также в учебном процессе при проведении семинаров в рамках курса "Защита информации" в Московском физико-техническом институте (государственном университете).

1.1.7. Апробация работы

Основные результаты работы докладывались и обсуждались на следующих российских и международных конференциях:

— the 8th International Symposium on Communication Theory and Applications - ISCTA 05, Ambleside, UK, 2005.

— XLIV, XLV, XLVIII ежегодные научные конференции МФТИ, Москва-Долгопрудный, 2001,2002,2005.

Основные результаты обсуждались на научных семинарах кафедры радиотехники МФТИ (ГУ). Применение результатов обсуждалось на технологических заседаниях Департамента инновационных технологий ЗАО "Лаборатория Касперского". Отдельные результаты обсуждались на заседаниях Временной проблемной комиссии по вопросам НИР "Безопасность 3G".

1.1.8. Публикации

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

1.1.9. Основные положения, выносимые на защиту

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

2. Механизм защиты открытых ключей и их сертификатов, основанный на применении "бесключевых" коммутирующих функций шифрования, в частности трехпроходного протокола Шамира.

3. Математическая модель и оценки время заражения уязвимой популяции компьютерными вирусами, использующими предварительно составленные списки уязвимых узлов.

4. Метод полного дублирования заражения в заранее составленном списке уязвимых узлов.

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

1.1.10. Структура и объем работы

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

Коды аутентичности сообщений (МАС)

Техника аутентификации, предпологающая присоединение к сообщению созданного с использованием секретного ключа небольшого блока данных фиксированного размера, является техникой аутентификации криптографической контрольной суммой или кодом аутентичности сообщения (MAC - Message Authentication Code). При этом предполагается, что две участвующие в обмене данных стороны, А и В, используют общий секретный ключ к.

Чтобы послать сообщение М адресату В, оправитель А вычисляет код аутентичности сообщения как функцию сообщения и ключа MAC = Ck{M). Сообщение с добавленным к нему значением MAC пересылается адресату. Получатель выполняет аналогичные вычисления с полученным сообщением, используя тот же секренный ключ, чтобы вычислить новое значение MAC и сравнить с полученным.

Если предположить, что секретный ключ знают только получатель и отправитель и если полученное значение MAC совпадает с подщитанным, то можно утверждать следующее: — получатель может быть уверен, что сообщение не было изменено. Если противник изменит сообщение, но не изменит соответствующим образом MAC, тогда вычисленное значение не будет совпадать с полученным. Поскольку противнику секретныйключ не известен, он не сможет правильно изменить значение MAC, чтобы оно соответствовало измененному сообщению — получатель может быть уверен, что сообщение пришло от указанного отправителя, поскольку никому больше не известен секретный ключ и никто другой не может подготовить сообщение с соответствующим MAC — если сообщение включает присвоенный ему порядковый номер (например, в случае использования протоколов TCP), то получатель может быть уверен в том, что сообщенияприходят в правильной последовательности.

Применение кодов аутентификации

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

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

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

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

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

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

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

Защита от манипуляции состава программного обеспечения

В предыдущем разделе в качестве недостатка методов хранения ЭЦП приведена угроза атак манипуляции с составом файлов программного обеспечения. Данная атака заключаяется в следующих несанкционированных манипуляциях: — замена файла на его более старую или уязвимую версию; — удаление файла; — добавление файла этого же производителя программного обеспечения.

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

В программном обеспечении имеется набор файлов V, содержащих записи вирусных шаблонов (аналог вирусной РНК). Каждому файлу ставится в соответствие ЭЦП из S: У = {у{:1 = l..n}, S = {si : і = l..n} (3.1) Существует также набор файлов вирусных шаблонов: у = {щ:і = l..m}, (3.2) элементом которого является Файл щ Є V, не определяющий определенный компьютерный вирус. Данный набор может быть, например, устаревшим.

Атака подмены файла его более старой или уязвимой версией заключается в возможности замены Vk Є V на щ Є V (Рис. 3.1).

Система криптографической защиты не сможет распознать, а следовательно и предотвратить, подмену, т.к. ЭЦП s(vk) файла щ корректна, т.е. соответствует его содержимому, независимо от того, какому набору V или V принадлежит файл щ.

Сформулируем следующее утверждение для предотвращения подобного класса атак на программное обеспечение, проиллюстрированное на Рис. 3.2.

Утверждение 3.1. Для устранения атаки подмены файла Vi є V на его более старую или уязвимую версию щ eV необходимо, чтобы систе ма криптографической защиты обеспечивала целостность не отдельного файла Vi, а всего набора V.

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

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

Реестром набора V = {v i = 1...ГЇ] называется список ЭЦП всех файлов набора s(vi), подписанный общей ЭЦП s(V) (Рис. 3.3). ЭЦП реестра определяется следующим образом (далее реестр будет однозначно определяться его ЭЦП):

ЭЦП s(V) реестра набора V обеспечивает целостность всех элементов этого набора и следовательно предотвращает атаку подмены файла г/ Є V файлом Vk Є V (Рис. 3.2). Очевидно, что в каждом программном продукте состав наборов определяется правилом, которое можно сформулировать в виде следующего утверждения.

Утверждение 3.2. Набор V, целостность которого необходимо обеспечить с помощью реестра, имеющего ЭЦП s(V), должен содержать только те файлы г ,-, которые обновляются одновременно.

Доказательство. В качестве доказательства рассмотрим следующий пример. Программное обеспечение состоит из файлов vi (і = l..n), которые обнов ляются автоматически, и файлов pj (j = l..m), которые обновляется по желанию пользователя программного обеспечения.

Учет гетерогенности числа контактов

Наиболее простой моделью эволюции эпидемии в биологических и социальных сетях является модель уязвимый-зараженный (SI, susceptible-infected) /Зі/. В данной модели субъект либо здоровый, но уязвимый заражению, либо заражен, а значит заражающий остальных. Размер популяции постоянен и равен N = S(t) + I(t), где в момент времени t имеется S(t) уязвимых и I(t) зараженных субъектов. Изменение во времени плотности зараженных субъектов г ( ) — N пропорционально вероятности заражения во время контакта с зараженным субъектом Л, плотности уязвимых субъектов s(t) = 1 — i(t), плотности уже зараженных субъектов i(t) и среднему числу контактов (к), которые имеет уязвимый субъект в единицу времени: = \(k)[l-i(t))i(t) (4.1)

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

Данный результат использует усредненное по всей сети число контактов (к). Для учета гетерогенности числа контактов популяция разбивается на подмножества из Nk субъектов, в которых каждый субъект в среднем имеет к контактов в единицу времени /38, 51, 52, 53/. Плотность зараженных субъектов в момент времени t, имеющих к контактов, равна ik(t) = Щ - и уравнение эволюции эпидемии для каждого подмножества записывается: = А [1 - ik(t)] Єк(і) (4.3)

В данной модели, произведение \kQk{t) есть вероятность заражения субъекта, имеющего к контактов. Вероятность 0&(і) того, что произвольный контакт из к, является контактом с зараженным субъектом можно записать в виде: вкю = щ52к,р(к ) ) (4-4) т.е. суммой вероятностей k P(k )ik {t) того, что контакт произошел с зараженным субъектом, имеющим в свою очередь к контактов.

Данная модель не учитывает эффектов излечения субъектов, приобретения иммунитета, потери иммунитета и иммунизации.

Для учета излечения после заражения в модель вводится дополнительный пуассоновский поток событий выздоровления с постоянной интенсивностью //. Зараженный субъект с вероятностью р, выздоравливает, но не приобретает иммунитет, т.е. проходит цикл уязвимый— зараженный— уязвимый (SIS). Ш = Х(к)[1-і(і)]і(Ь)- (і) (4.5) Эволюцию числа зараженных субъектов во времени можно записать: Ш\ - о(А (А:) - l)eW- ) [) А (к) - 1 + Л (к) «„(eW )"1) - 1) К }

Согласно решению существует эпидемиологический порог Лс = щ. Эпидемия растет и достигает постоянного максимума при і — оо при превышении порога Л Лс или экспоненциально затухает в обратном случае.

У субъектов после излечения от ряда биологических вирусов (SARS) вырабатывается иммунитет, который сохраняется пожизненно, либо они погибают. Данное явление описывается моделью уязвимый зараженный вылеченный (SIR) /32, 3 , 31, 49/. Модель SIR расширяет модель SI добавлением потока событий выздоровления с постоянной интенсивностью /и, т.о. в уравнении эволюции числа зараженных субъектов добавляется затухающий член —fii{t). Система дифференциальных уравнений SIR, записывается в следующем виде:

Модель эволюции эпидемий SIR (Kermack-McKendrick 1927, Anderson-May 1979 /32, 33/), учитывающая приобретение постоянного иммунитета после выздоровления

В условие нормировки, которое можно использовать вместо любого из уравнений системы добавляется новое состояние с плотностью r(t) вылеченных субъектов в момент времени t: s(t)+i(t)+r(t) = (4.10)

У субъектов после излечения от ряда биологических вирусов (вирус гриппа, HCV) иммунитет сохраняется только временно, после чего они с вероятностью Р снова становятся уязвимыми.

Явление потери иммунитета учитывается моделью уязвимый— зараженный— вылеченный— уязвимый (SIRS) / 18, 50/. Учет потери иммунитета спустя определенное время после выздоровления объясняет рекурентное развитие эпидемий. Плотности зараженных, уязвимых и вылеченных субъектов показаны на Рис. 4.1.5 (согласно работе/48/).

Однако, она не учитывает возможность иммунизации вакциной субъекта на стадии уязвимости, после чего он на время становится неподверженным заражению. Работа /65/ посвящена вакцинации уязвимых компьютеров. В диссертации иммунизация учетена введением дополнительного состояния: p{t) = l-{s{t) + i{t)+r{t)), (4.11) в которое субъект переводится из состояния s(t) с вероятностью а. Изсостоя-ния иммунизации субъект может перейти только обратно в состояние уязвимости с вероятностью р. Состояние r(t) остается, но является состоянием смерти от болезни /59/. Зараженные субъекты гибнут с вероятностью fi либо вылечиваются и приобретают временный иммунитет с вероятностью 1 — р.

Время заражения списка уязвимой популяции

В начале данной главы упоминалось, что на распространение эпидемий компьютерных вирусов влияет качество предварительно составленных списков уязвимой популяции. Составленные списки, как правило, не совершенны, т.е. частично состоят из неуязвимых узлов (например, обновленных уже после составления списка). Во время заражения очередного узла экземпляр вируса несет только 1/к часть от списка на предыдущем шаге заражения. Если узел оказался уже иммунизированным, то все поддерево данного узла останется незаражен-ным (Рис. 5.5).

Если а - доля неуязвимых узлов в списке (доля несовершенности списка), то вероятность ТІ того, что узел на уровне г не будет достигнут равна: 1 - п = (1 - of (5.9) Общая доля узлов, которые останутся незараженными в результате несовершенности списка равно: 1 D H E f1" (!-") ] (5.10)

Т.о. из уравнения видно, что доля узлов, оставшихся незараженными после эпидемии, растет как степень L доли несовершенности списка уязвимой популяции г = 0{aL), где L - глубина дерева распространения и следовательно существенно выше у кустистых деревьев большой глубины. Это следствие того, что весь куст остается недостигнутым эпидемией, если корневая вершина куста в действительности неуязвима и незаражена компьютерным вирусом во время эпидемии.

В работе/72/ показано, что чем кустистее дерево, тем больше число неза-раженных узлов останется после эпидемии. Например, рассмотрено дерево, со-тоящее всего из 2-х уровней, каждый узел которого из 9620 узлов первого уровня заражает по 107 узлов второго уровня. Даже в случае распространения по такому дереву, при уровне несовершенности списка а « 0.9 все уязвимые узлы останутся недостигнутыми заражением. И практически все уязвимые узлы останутся незараженными всего лишь при доли несовершенности списка а « 0.2, если заражение осуществляется по двоичному дереву глубиной 20 уровней, т.е. состоящей из 1000000 узлов (Рис. 5.6(a)).

Дублирование заражения

S. Staniford и др. в работе /72/ также предложили метод дублирования заражения, который заключается в том, что каждый узел дерева дублирует заражение всех подузлов соседнего узла. В данном методе у распространяющегося компьютерного вируса есть два пути заражения уязвимого узла следующего уровня — заражение самим узлом и заражение соседним узлом. При использовании дублирования, узел останется незараженным только, если неуязвимы одновременно его родительский узел и узел, соседний родительскому.

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

Рис. 5.6. Доля узлов, оставшихся незараженными, в двоичном дереве, с 20 уровнями вложенности (согласно работе / /): (а) уже при о = 0.2 доля узлов, оставшихся незараженными т(а) и 1; (Ь) при использовании метода дублирования заражения т(а) и 1 при cr = 0.4.

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

Очевидно, что метод полного дублирования заражения дает существенно "лучшую" картину доли уязвимых узлов, оставшихся незараженными в результате эпидемии, которая достигает « 1 только при 80% неуязвимых узлов в списке уязвимой популяции а « 0.8. Несмотря на такой достаточно "удовлетворительный" результат, существенным недостатком метода повышения живучести эпидемии является усложнение логики заражения и деления списка уязвимой популяции. А также увеличение размера компьютерного вируса за счет увеличения среднего размера передаваемого списка уязвимой популяции от вируса к вирусу, о котором упоминалось в предыдущем разделе. И наконец, даннй метод также не устраняет полностью влияние несовершенных списков на распространения эпидемии.

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

Это означает, что дерево распространения детерминировано — все выбираемые во время распространения уязвимые узлы однозначно определяют вершины дерева распространения. Если узел был выбран первым из экземпляра уязвимого списка определенного узла г-го уровня дерева распространения, то именно он является первым подузлом (г — 1)-го уровня данного узла г-го уровня.

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

Т.о. случайно выбранный узел становится узлом дерева распространения только, если он действительно уязвим (что определяется пробой уязвимости), тем самым дерево распространения формируется только из уязвимых узлов, поэтому в работе названо полностью уязвимое дерево распространения.

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

Появление "быстрых" компьютерных вирусов (сетевых червей) может представлять угрозу инфраструктуре сети Интернет и ее конечным пользователям, а также мобильным сетям поколения 3G+. В данной главе диссертационной работы представлены результаты, позволяющие системам предотвращения распространения эпидемий компьютерных вирусов оценивать нижнюю границу времени, требуемого сетевым червям для заражения уязвимой популяции, при распространении по предварительно составленному списку. Нельзя недооценивать способность распространения подобных сетевых червей и технологии предотвращения эпидемий компьютерных вирусов должны принимать во внимание полученные временные оценки, если способность распространения существенна для предотвращения эпидемий.

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

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