УДК 004.056
МНОГОФАКТОРНАЯ ОПТИМИЗАЦИЯ ЗАДАЧИ АНТИВИРУСНОЙ ЗАЩИТЫ А.Ю. Петров
В работе рассматривается задача оптимального управления функционированием нескольких антивирусных сканеров. Доказана теорема, позволяющая определить оптимальные значения параметров антивирусного сканера из заданного множества. Приведенные результаты экспериментов указывают границы применения предлагаемого подхода и обнаруживают более эффективную стратегию защиты информации
Ключевые слова: защита данных, частота запуска антивирусного сканера, размер сигнатурной базы, время сканирования, время восстановления инфицированных файлов
1. Введение
Развитие индустрии антивирусного программного обеспечения происходило и
продолжается по сей день параллельно и
неотрывно от эволюции вредоносного программного обеспечения: чем сложнее и
изощреннее компьютерные вредители, тем
искуснее и быстрее становились антивирусные системы. Вместе с тем любая антивирусная система содержит в составе основных компонент
антивирусный сканер.
Это наиболее очевидный класс антивирусных средств достаточно распространен и основан на сканировании памяти, файлов на внешних
носителях, загрузочных записей и других объектов, могущих получить управление (чтобы вирус имел возможность исполняться), с целью обнаружения известных и изученных разработчиками антивирусного программного обеспечения типов вредоносных объектов [1].
Основная задача всех антивирусных средств -обнаружить (или не дать возможность реализовать некоторый деструктивный алгоритм и предотвратить дальнейшее распространение) вредоносный объект в системе с максимальной степенью надежности, то есть избежать ошибок первого и второго рода [2]. Ошибки первого рода квалифицируют необнаружением вредоносного кода, в случаях, когда на самом деле он присутствует; к ошибкам второго рода относят так называемые "ложные тревоги" - обнаружение вредоносного кода там, где фактически его нет.
Алгоритм работы антивирусного сканера строится на основе сравнения с эталоном - часто такие алгоритмы называют сигнатурными. Каждому вирусу ставится в соответствие некоторая сигнатура, или маска. Здесь имеется известная бифуркация. С одной стороны, маска должна быть небольшого размера, чтобы база данных всех подобных масок не принимала необоснованно
Петров Андрей Юрьевич - СКГМИ (ГТУ), аспирант, тел. 8-919-427-90-95
Работа выполнена в рамках реализации и при финансовой поддержке ФЦП «Научные и научнопедагогические кадры инновационной России», контракт П485.
угрожающие объемы. С другой стороны, чем больше размер сигнатуры, тем ниже вероятность события, возникающего когда достоверно не зараженный файл определяется антивирусной системой как инфицированный, т. е. ложного срабатывания блокировки антивирусного сканера. На практике разработчики антивирусных программ используют маску длиной 10-30 байт [3 - 5].
Антивирусные системы способны распознавать детерминированные сигнатурные образы, а, следовательно, находить и лечить определенное количество вредоносных объектов. Если при сканировании подозрительного файла антивирусный сканер обнаруживает участок кода, соответствующий маске, то исследуемый файл признается инфицированным. Все сигнатуры размещены в антивирусной базе — специальном хранилище, в котором антивирусная система хранит маски вредоносных программ. С течением времени, получив новый вредоносный объект, разработчики анализируют его код, составляют уникальную маску, которая добавляется в базу данных сигнатур вредоносных объектов, а само обновление распространяется через
дистрибьюторскую сеть [6, 7]. Таким образом, размер базы сигнатур вредоносных объектов увеличивается, что вызывает увеличение затрат времени на проверку и восстановление инфицированных объектов информационного массива постоянной длины.
2. Задача выбора оптимальных параметров функционирования антивирусного сканера
2.1. Содержательная постановка
задачи
Каждая антивирусная система, включающая в состав основных компонент антивирусный сканер или монитор, содержит базу сигнатур вредоносного кода фиксированного размера. Каждый
производитель стремиться минимизировать общий объем сигнатурной базы за счет сокращения размера единичного эталонного образа сигнатуры [8].
Эффективность сигнатурного поиска напрямую зависит от объема антивирусной базы и от частоты ее пополнения. Именно поэтому сегодня разработчики антивирусных программ выпускают
обновления для своих баз минимум раз в сутки (к примеру, Лаборатория Касперского выпускает новые обновления антивирусных баз каждый час, размещая архив на сервере общего доступа [9]). В результате размер базы данных сигнатур вредоносных объектов динамически изменяется, оказывая влияние на временные затраты и ход процесса сканирования некоторого массива файлов.
Экспериментально было установлено, что любой отдельно взятый антивирусный программный продукт не может содержать в базе сигнатур вредоносных объектов всех известных к настоящему времени последовательностей байт вредоносного кода. Поэтому, для гарантированного обеспечения безопасности информации некоторой компьютерной системы, как правило, формируется блокирующее множество, включающее в себя более одного антивирусного программного продукта. В результате общее количество известных сигнатур вредоносных объектов, в рамках подобным образом организованной информационной системы, определяется объединением множеств масок сигнатурных баз данных всех антивирусных систем блокирующего множества. При этом многие маски (составляющие типовой набор модуля сканирования) сигнатурной базы антивирусной системы некоторого производителя могут быть продублированы сигнатурной базой одного или нескольких сторонних производителей антивирусного ПО. Таким образом, в рамках указанных предпочтений очевидна задача выбора оптимального размера базы сигнатур вредоносных объектов для каждой антивирусной системы блокирующего множества.
Целью предлагаемого подхода является определение оптимальных значений частоты запуска антивирусного сканера и размера базы сигнатур вредоносных объектов антивирусной системы, минимизирующих суммарные затраты времени на обеспечение информационной безопасности системы.
При этом предполагается, что для защиты данных используется определенное,
зафиксированное количество одновременно работающих антивирусных систем.
2.2. Принятые обозначения,
определения и допущения
В процессе формализации поставленной задачи были введены следующие обозначения, определения и допущения.
Определения:
Сигнатура вредоносного объекта -регулярное выражение, фрагмент программного кода (последовательность байтов) для которого справедливо следующее:
а) содержится во всех копиях данного типа вредоносного объекта,
б) не встречается в каких-либо других программных файлах.
Целевая ЭВМ - единственная физическая или виртуальная ЭВМ, в пределах которой
обеспечивается антивирусная защита.
Блок антивирусных систем (блокирующее множество) - множество установленных в целевой ЭВМ антивирусных систем различных производителей.
Обозначения:
0 - множество файлов,
расположенных на информационном носителе целевой ЭВМ, подлежащих проверке и, в случае обнаружения сигнатуры вредоносного объекта,
восстановлению средствами
антивирусного сканера;
1 - множество файлов,
расположенных на информационном носителе целевой ЭВМ, выделенных .-ым антивирусным сканером как содержащие вредоносный код; I. с О
Q - множество известных к настоящему моменту времени функционирования системы сигнатур вредоносных объектов; п - количество координируемых антивирусных систем, установленных в целевой ЭВМ;
VV - частота запуска сканера і-й
антивирусной системы;
хі - объем (размер) базы данных
сигнатур вредоносных объектов, используемой сканером і-й антивирусной системы;
Хі - множество сигнатур вредоносных
объектов, принадлежащих базе данных
і-ой антивирусной системы;
кі (хі) - функция, отражающая
изменение суммарных затрат времени на проверку множества файлов О в зависимости от величины объема базы сигнатур вредоносных объектов і-го антивирусного сканера;
Чі ( Хі ) - функция, отражающая
зависимость общих затрат времени на восстановление множества
инфицированных файлов I. с О детектированных і-м антивирусным сканером от величины объема хі его сигнатурной базы данных;
Функции кі (хі) и чі (хі) могут быть
представлены в виде многочлена т-й степени вида:
т ___
Уі: Е агі • хі; 1 1 п;
3=0
С, - коэффициент, учитывающий
имманентные статистические
характеристики алгоритма
восстановления инфицированных объектов, реализованного сканером 1-й антивирусной системы;
(X,) -У, - время проверки
множества файлов О сканером 1-й антивирусной системы, иными словами, время «чистого
сканирования»;
, 2 _ д,(х,)
I1 _-------- - время восстановления
V + С,
(очистки) множества инфицированных файлов I. с О детектированных
сканером ,-й антивирусной системы.
Допущения:
1. Каждая ,-я антивирусная система
выполняет хранение сигнатур в базе данных с использованием какого-либо алгоритма
шифрования, т.е. реализует кодирование сигнатур. Это
допущение исключает
возможность обнаружения
сканером .-й антивирусной системы сигнатур, принадлежащих базе данных ]-й антивирусной системы, , Ф ] .
2. Время, затрачиваемое на
обеспечение информационной безопасности целевой ЭВМ в течение фиксированного
интервала времени ее работы, складывается из двух компонент: время проверки множества файлов О и время восстановления (очистки) множества
инфицированных файлов:
л
а. время I, , затрачиваемое
сканером .-ой
антивирусной системы на проверку множества
файлов О в первом приближении прямо
пропорционально размеру базы сигнатур
вредоносных объектов X,
запуска
антивирусного сканера;
Ь. время I,2, затрачиваемое
на восстановление
множества
инфицированных файлов Ii с О детектированных
3.
4.
сканером і-ой
антивирусной системы в первом приближении прямо пропорционально размеру базы сигнатур вредоносных объектов х і
и обратно
пропорционально частоте
Vі запуска сканера.
Результатом использования блока антивирусных систем, вне
зависимости от частоты их запуска и объема баз данных сигнатур вредоносных объектов, всегда является обнаружение всех вредоносных программных кодов и восстановление всех
инфицированных файлов.
Общее количество уникальных сигнатур вредоносных объектов, составленное из следов
вредоносных объектов,
содержащихся в базе данных каждой антивирусной системы, исключая дубликаты, должно совпадать с мощностью множества известных на настоящий момент
времени сигнатур Q:
и Хі
= їй.
2.3. Формальная постановка задачи Ниже приводится формальная постановка задачи выбора оптимальных значений частоты запуска процесса сканирования и размера базы сигнатур вредоносных объектов антивирусной системы. Подразумевается, что для каждой і-ой антивирусной системы будут найдены частные, значения величин хі и Vі.
Формально сказанное может быть описано моделью следующего вида:
ЕМ Хі) ■^+±^(х) ^ ШІП.
і=1
п
Е х, > й;
і=1
У і: vі > 0,
=1 Vг + Сі
(1)
Хі > 0, целое; і = 1, п.
Целевая функция данной математической модели критерием оптимизации устанавливает минимизацию суммарных затрат времени на поиск и восстановление инфицированных файлов. Для сканера каждой ,-й антивирусной системы в качестве класса зависимости, аппроксимирующей функции к. (X.) и Ц, (X,) , в первом приближении, может использоваться линейное уравнение:
Vi: к, (х,) = а,0 + алхг; V/: дг (х,) = Ьго + Ь;1 х,.
(2)
С учетом (2) формальная постановка (1) может быть записана в виде:
^ 0 + Ь пх .
Xа о + а,1х, )• V +Х— ^ т1п;
=1 V + с /
Xх/ - &; =1
V/: V — 0,
(3)
х і — 0, целое; і — 1, и.
Полагая в (3), что размер базы сигнатур
вредоносных объектов х/ может выражаться
вещественным числом задачу можно отнести к классу моделей нелинейного программирования с непрерывно меняющимися переменными. Свойства составленной модели исследуются ниже.
3. Свойства модели оптимизирующей работу блока антивирусных систем Ниже приводится теорема, определяющая свойства модели (3), оптимизирующей работу блока антивирусных систем, составленной с учетом выражения (2).
Теорема 1. Оптимальные значения
переменных х, и V системы (3) определяются выражениями:
хі 1,2
1
где у/1,2 - 2
Ь/0 — а/ 0 у і 1,2 а/1 ' У і 1,2 — Ь/1 Ґ
а,
V 1,2 =
Ь,0 + Ь, х, 1,2
аг0 + а, ,2 х1
с,
(4)
(5)
(6)
Доказательство. Для получения решения системы (3) был выбран метод множителей Лагранжа [10, 11]; ограничение-неравенство
системы было преобразовано в равенство
введением дополнительной неизвестной ^ . Таким образом, система (3) была преобразована к виду:
^ Ь/0 + Ьп х,
Xа 0+а,1х, Ууі+£- г
,-1 ,-1
^: х, = & -£;
V,: V — 0,
х, — 0; , — 1, и.
-> тіп;
(3')
Функция Лагранжа для системы (3') имеет
вид:
ь(х,, V, Л)=Х(а
\а,0 + а,,х, -V,
+ Х Ь.° + Ь,!х, +
К+ с,
■ ло-є,- х,)
Приравнивая к нулю частные производные функции ф,, V Л), отыскивается
аналитическое решение системы (3):
Vi( — 1, и):
(7)
— — а^ +—--------Л — 0
дх, V + С
— = аг 0 + а „ х,-О+Щ — 0
дV ( + С , )2
— — -Л — 0; Л — 0
— — б-£.- хг — 0 дЛ
Выражение для частоты запуска сканера /-ой антивирусной системы имеет вид:
V —
V
Ь, 0 + Ь,1 х - с
а,0 + ап х,
а,0 + а,1 х,
определяются корни квадратного уравнения, в приведенной форме:
Ь ,1
У 2 - с, • У, +^ — 0
а,
У, 1,2
с, ± с2 - 4
Ь,1
Ьг0 - а0У, 1,:
х, !>2 2 т "
а,1 У, 1,2 - Ь,1
откуда следует справедливость теоремы.
4. Постановка и результаты экспериментального исследования Для проверки принятых выше допущений был проведен ряд экспериментов, цель которых -изучение характера изменения суммарных затрат времени на обеспечение информационной безопасности системы блоком антивирусных систем при различных значениях размера
сигнатурной базы данных х, и частоты запуска V
для сканера , -ой антивирусной системы.
В ходе эксперимента была использована ЭВМ, имеющая следующие характеристики аппаратного обеспечения: центральный процессор АМБ ЛШІоп 64 Х2 4200 двуядерный, тактовая
,—1
, —1
,—1
1
2
а
1
частота ядра 2,21 ГГц; объем оперативной памяти 1 ГГц. Управление аппаратной части осуществлялось ОС Microsoft Windows XP Pro SP2.
Экспериментальное исследование
проводилось со свободно распространяемым антивирусным программным обеспечением: «ClamWin» лицензии GNU General Public License; «A-SQUARED Free» компании «EMSI software», предоставляющим открытый доступ к файлам базы данных сигнатур вредоносных объектов.
Для исключения побочного влияния на результаты эксперимента последствий
программных операций, совершенных в ходе предыдущих испытаний, весь ряд спланированных экспериментов был проведен в виртуальной среде, создаваемой программным обеспечением «VM VirtualBox» компании Oracle. Данный программный продукт позволяет восстановить программную конфигурацию виртуальной машины к любому из множества предварительно
сохраненных образов состояний с полным воспроизведением настроек пользователя.
В среду виртуальной машины были
установлены антивирусные программные продукты различных производителей, составляющие
множество антивирусных систем. Оптимальные значения параметров сканера i-ой антивирусной системы блокирующего множества определялись по следующему алгоритму.
Алгоритм 1.
Шаг 1. Повторный экспериментальный запуск сканера в режиме проверки файлов (флаг «scan only») при различных значениях размера сигнатурной базы данных xi и
сбор статистической информации: значения времени, затрачиваемого антивирусным сканером, при соответствующей величине xi .
Шаг 2. Аппроксимация эмпирических данных полиномом первой степени и составление функции
ki(x) = at о + ап x
найденных
при
значениях
коэффициентов atj ( = 0,l).
Шаг 3. Повторный экспериментальный запуск сканера в режиме восстановления обнаруженных инфицированных файлов (флаг «scan & clean») при различных значениях размера сигнатурной
базы данных x i и сбор
статистической информации:
значения времени, затрачиваемого антивирусным сканером, при соответствующей величине xi .
Шаг 4. Аппроксимация полученных
экспериментальных данных
полиномом первой степени и установление коэффициентов
Ь.. (. — 0,1) функции
Ч , (х, ) — Ь,0 + Ь,1х, •
Шаг 5.Вычисление двух экстремальных
значений {х, 1; х, 2} размера базы
сигнатур вредоносных объектов по
формуле (4) и запись в вектор X положительных значений
х„ > 0 О —1,2).
Шаг 6.Вычисление значений \^і по
формуле (6) для всех значений размеров сигнатурной базы
данных вектора X. Если
X — 2, что указывает на
неотрицательность обоих
экстремальных значений
{х, х; х, 2 }, то из найденных пар
решения
К, — {х 1; Vх);(х2; V 2)}
выбирают с наименьшей частотой запуска, т.е.
Шаг 7 К, — {х,р; V р } V р — тіп°у ) и — 1,2).
Если
- 1, что указывает на
указывает на положительных
существование одного
неотрицательного значения x , то решение однозначно:
R, - {x,; v } . Если X - 0, что
отсутствие экстремальных
значений xi размеров сигнатурной
базы данных, то Rt - {0; 0} и
запуск сканера i-ой антивирусной системы блокирующего множества не выполняется.
Шаг S. Конец алгоритма.
Применяя описанный алгоритм к программному продукту «A-SQUARED Free» (порядковый номер в блоке антивирусных систем равен 1) были получены следующие значения коэффициентов: a10 - 88,878; a11 - 0,000З8З.
График зависимости суммарных затрат времени
t'Z на проверку множества файлов D от объема
базы сигнатур вредоносных объектов xi
антивирусного сканера «A-SQUARED Free» (рис.1) содержит также аппроксимированную зависимость
к1 (х1) = 88,878 + 0,000382- х1, изображенную
пунктирной линией (имеет подпись « расчетное» в области условных обозначений нижней части диаграммы).
Рис. 1. График зависимости времени
работы сканера №1 в режиме проверки файлов от размера сигнатурной базы
Аналогичным образом были получены
значения коэффициентов:
b10 — 4,З46; b11 — 0,00018З. График зависимости
суммарных затрат времени ^ на восстановление множества инфицированных файлов I\ D, детектированных сканером, от объема базы
сигнатур вредоносных объектов xi антивирусной
системы «A-SQUARED Free», изображенный на рисунке ниже, имеет несколько иную динамику роста.
t
эксперимент
Рис. 2. График зависимости времени
работы сканера №1 в режиме
восстановления файлов от размера
сигнатурной базы
Аппроксимированная функция
q1(x1) = 4,346 + 0,000183 • x1 (обозначенная на рис.2 как t расчетное) имеет меньший угол наклона к оси абсцисс сравнительно с k1 (x1) . Отсюда можно заключить, что с увеличением размера базы
сигнатур вредоносных объектов xi антивирусной
системы «A-SQUARED Free» время, затрачиваемое на восстановление множества инфицированных файлов, возрастает медленнее времени,
затрачиваемого на проверку множества файлов
D
Используя
коэффициентов
зависимостей,
найденные значения
аппроксимированных
задавшись C1 -были
вычислены экстремальные значения размеров сигнатурной базы данных:
у11 = 1,082; х11 =-377261,69 у12 = 0,442; х12 = 120847,77
Так как х11 < 0, то в вектор оптимальных значений размеров сигнатурной базы данных
включается только х12 и Х1 = {I20847,77}.
Оптимальная частота запуска сканера определяется с помощью выражения (6).
Следующий этап экспериментального
исследования был проведен с антивирусным программным обеспечением «ClamWin» в
последовательности шагов алгоритма 1.
Порядковый номер данного программного продукта в блоке антивирусных систем равен 2. Графики аппроксимированных функций близки к зависимостям, полученных для антивирусного сканера №1 (рис. 1, рис. 2).
В ходе анализа результатов эксперимента было установлено:
1. Для сканера каждой /-й
антивирусной системы равенство (4) при заданных значениях коэффициентов
аппроксимированных функций
кг (х ) и Ч/ (х/ ) позволяет
получить два экстремальных значения, одно из которых удовлетворяет условию
неторицательности неизвестной
х/.
2. Равенство (6) при заданных
значениях коэффициентов и положительном численном
выражении
x
задает
В продолжение исследования были вычислены функции кі (хі) и ч. (хі) для сканеров
нескольких антивирусных систем различных производителей. Была составлена новая аддитивная функция для сканера каждой і-ой антивирусной системы как сумма зависимостей:
Хі (х,) — кі (х,) + Чі (х,) . Графики отражающие изменение общих затрат времени (х,) на
обеспечение информационной безопасности в зависимости от объема базы сигнатур ,-ой антивирусной системы построены в единой системе координат (рис. 3).
Рис. 3. График зависимостей общих затрат времени на защиту данных от объема сигнатурной базы различных антивирусных систем
Из чертежа видно, что на практике отсутствует необходимость контролировать одновременную работу нескольких антивирусных систем: для обеспечения эффективного
использования ресурсов целевой ЭВМ требуется запускать некоторый антивирусный сканер при оптимальном для него значении размера базы сигнатур вредоносных объектов. Таким образом, определяясь функционально-алгоритмическими характеристиками антивирусного программного продукта, существует фиксированный диапазон
Ш'і значений размера сигнатурной базы х,,
отвечающий минимальным затратам времени работы сканера каждой і-ой антивирусной системы среди остальных антивирусных систем, размер сигнатурных баз которых принадлежит выделенному диапазону: V/,/ Ф і: х. є Ш'і; / — 1,и
Стратегия, обеспечивающая пользователю максимальный объем свободных ресурсов ЭВМ, изображена на рис. 3 линией удвоенной толщины (точки кривой маркированы символом ‘X’).
В ходе работ в данном направлении исследований была сформулирована задач поиска оптимальных значений частоты запуска и размера базы сигнатур вредоносных объектов антивирусного сканера; построена математическая модель многофакторной оптимизации. Также, было найдено аналитическое решение, тождественное ответу, полученному с помощью символьного процессора математического пакета МаШСАБ.
Экспериментально была выявлена
невозможность использования аналитического решения для получения глобально оптимального решения: при вычислении значения частоты
запуска антивирусного сканера для значения размера базы сигнатур вредоносных объектов, удовлетворяющее условию неотрицательности переменной по модели, было получено отрицательное число. Математический анализ исходной системы приводит к выводу о невозможности получения положительного
значения для У/.
В результате анализа аддитивной функции, представленной в виде суммы
аппроксимированных зависимостей
Zi (хг) = к; (хг) + Ч (хг) , составленной для
нескольких антивирусных систем, было обнаружено отсутствие необходимости
контролировать одновременную работу нескольких антивирусных сканеров. Каждому диапазону
значений размера сигнатурной базы
соответствует единственная антивирусная система, обеспечивающая минимальное значение времени работы сканера и максимальный объем свободных ресурсов ЭВМ. Указанная стратегия справедлива также для класса антивирусных сканеров, работающих с использованием структурных сигнатур: выполняется не анализ фрагментов кода на появление некоторого регулярного выражения, а проверка способа имплантации вредоносного объекта в фиксированную область памяти.
Литература
1. Петров А. Ю. Эффективные стратегии защиты ЭВМ от вирусных атак // Информатизация образования и науки, 2010, № 4(8), С. 66-76.
2. Cohen F.B. Computer viruses: theory and
experiments. // Computers and Security , 1987, Volume 6 Issue 1, pp. 22-35.
3. Groppen V. O. Smart computing. - Vladikavkaz: Terek, 2004.
4. Гультяев А. К. Восстановление данных. - СПб: Издательский Дом “Питер”, 2006.
5. Александров Г. А. Антивирусные программы // Компьютер бизнес маркет, 2004, № 5.
6. Никишин А. Эволюция вирусов и антивирусов. // Средства защиты информации и бизнеса, 2006, № 2, C. 30-38.
S. Заключение
7. Основы проактивной защиты. Технические заметки Лgnitum• Адрес в Интернете: http://www.agnitum.com
8. Прохоров А. Антивирусы — санитары компьютерных систем. // КомпьютерПресс, 2005, № 4, С. 62-68
9. Лаборатория Касперского. Адрес в Интернете: http://www.kaspersky.ru/
10. Баранов А.П., Борисенко Н.П., Зегжда П.Д., Корт С.С., Ростовцев А.Г. Математические основы информационной безопасности. - Орел: ВИПС, 1997.
11. Будаева А. А., Гроппен В. О. Принятие решений: теория, технология, приложения. Учебное пособие. - Владикавказ: «Фламинго», 2010.
Северо-Кавказский горно-металлургический интситут (Государственный технологический университет)
MULTIPLE-FACTOR OPTIMIZATION OF ANTIVIRUS PROTECTION TASK A.Yu. Petrov
Discussed an optimal control task of antivirus scanner’ set functioning. Proved theorem allows to determine values of optimal antivirus scanner parameters. Experimental results specify proposed approach confines and reveal more effective information security strategy
Key words: data protection, antivirus scanner, launch frequency, virus signature database size, scan time, infected files restoration time