Моделювання поведінки вірусів з метою вибору оптимальної стратегії реагування

 Олег Лєсов

Національний гірничий університет, 49027, Дніпропетровськ, пр. К.Маркса 19.

 

Анотація: Розроблений алгоритм аналізу вірусу, сформована вибірка і проведено експериментальне дослідження виконуваних вірусів. На його базі проведена декомпозиція, побудована системна модель складу вірусу, структурні моделі вірусів і функціональна класифікація виконуваних вірусів. Досліджені сучасні антивірусні методи. Сформовані вимоги до теоретичної моделі вірусів.

Вступ

Щорік в Україні промислові і фінансові підприємства піддаються серйозним погрозам у зв'язку з постійними атаками комп'ютерних вірусів - найкрупнішого класу сучасного зловмисного програмного забезпеченя. Атаки приводять до витоку конфіденційної інформації, економічних збитків та переривання контролю над виробничими процесами з можливими катастрофічними наслідками. Це є ризиком для людських життів і навколишнього середовища. Кількість вірусних атак різко зростає, все більше підприємств зв'язують свої  системи із внутрішніми комп'ютерними мережами і глобальною мережею Інтернет.

Нові види мережених вірусів ще небезпечніші – вони використовують локальні мережі та мережу Інтернет для свого розповсюдження та існування.

Існуючі засоби боротьби з вірусами - сучасні антивірусні системи - мають низку недоліків. Найсерйозніший з них - це малий відсоток розпізнавання вірусів, які не були досліджені фахівцями-вірусологами антивірусної компанії, – розробника антивірусного засобу. Дослідження програмного об'єкту, зараженого вірусом, виконується за допомогою статичного і динамічного методів аналізу програмного забезпечення. Після дослідження вірусу, його ознаки додають в базу даних антивіруса, яку необхідно періодично оновлювати. Таким чином, новий вірус може безперешкодно працювати до виходу оновлення. Недоліки антивірусних засобів пов'язані з відсутністю системних досліджень вірусів і величезним розривом між теорією і практикою комп'ютерної вірусології. Тому актуальною задачею є вибір ефективної стратегії антивірусного захисту в автоматизованих системах, з метою підвищення рівня інформаційної безпеки, на основі системного аналізу комп'ютерних вірусів та моделювання динаміки їх розповсюдження.

Основні особливості і обмеження існуючих рішень

Технології розробки вірусів і антивірусних програм розвиваються паралельно. Разом із ускладненням вірусів антивірусне ПЗ стає все складнішим. Можна виділити чотири покоління антивірусних програм: (1) звичайні сканери, що використовують для ідентифікації комп’ютерних вірусів характерні для них сигнатури; (2) евристичні аналізатори; (3) антивірусні монітори; (4) повнофункціональні системи захисту.

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

Рис. 1 Узагальнена структура програмного комплексу засобів антивірусного захисту

На рис.1 показано узагальнену структуру програмного комплексу засобів антивірусного захисту (АВЗ). У складі комплексу виділяються чотири підсистеми: підсистема сканування, підсистема поповнення антивірусних баз, підсистема виявлення вірусної активності і підсистема управління.

До складу антивірусного сканера, що створює підсистему сканування, входять: сигнатурний аналізатор; евристичний аналізатор; бази вірусних сигнатур і евристичних ознак. Основне призначення антивірусного сканера - виявлення комп’ютерних вірусів до отримання ними управління. Антивірусний сканер відноситься до класу антивірусних засобів, які запускаються на вимогу користувача або програми. Сигнатурний аналізатор у взаємодії з базою сигнатур виявляє відомі комп’ютерні віруси по характерних для них ділянках коду - масках або сигнатурах. Сигнатурний аналізатор реалізує стратегію антивірусного захисту, суть якого  реагування на методи, які автори вірусів вже розробили, інакше кажучи, протистояння певним комп’ютерним вірусам, які відомі і які були детально проаналізовані. Сигнатурний аналізатор виконує функцію поліфага, тобто може лікувати заражені файли (окрім тих випадків, коли останні були необоротно спотворені комп’ютерним вірусом). Евристичний аналізатор у взаємодії з базою евристичних ознак виявляє відомі і невідомі віруси по характерних для них наборах ознак. Евристична ознака з повною підставою можна інакше називати структурною сигнатурою. Саме такий заміна термінів має місце, наприклад, в системах виявлення атак, де набір ознак, характерних для певного типа мережевої атаки, називається сигнатурою атаки. Евристичний аналізатор реалізує обидві існуючі стратегії антивірусного захисту: (1) передбачення методів, які використовуватимуться авторами вірусів в майбутньому; (2) реагування на методи, які автори вірусів вже розробили, тобто протистояння КВ, які відомі і які були детально проаналізовані. У антивірусному сканері виділено антивірусне ядро, здатне працювати самостійно у складі інших програмних засобів, яким потрібні функції АВЗ.

Можна виділити наступні недоліки засобів захисту від комп’ютерних вірусів (в порядку зростання значущості).

1. Всі існуючі методи захисту мають принципові обмеження, інакше кажучи, кожен окремо узятий метод відносно легко «обдурити», тобто створити шкідливу програму (ШП), яка не буде виявлена.

2. У існуючих програмних системах захисту недостатньо уваги приділяється самозахисту від ШП, самоконтролю цілісності, відновленню після збоїв і забезпеченню гарантованості властивостей. 

3. Недостатньо уваги приділяється перевірці на предмет відсутності вразливостей типу «переповнювання буфера», «змагання при доступі до ресурсу» і ін. (всього біля 10) в коді програмного засобу захисту.

4. Як найістотніший недолік можна відзначити відсутність оперативної реакції з боку розробників засобів захисту від вірусів на появу принципово нових методик створення вірусів, що вимагають таких же принципово нових методів захисту.

Ефективна система захисту від комп’ютерних вірусів - це не фіксований набір методів і засобів захисту, це безперервний процес, який включає:

-       аналіз захищеності системи на всіх її рівнях

-       вибір оптимальної стратегії антивірусного захисту

-       випереджаюче вдосконалення методів і засобів захисту

-       превентивні дії в період епідемій.

.

Модель поведінки вірусу на базі технології віртуалізації

Розглянемо абстрактний пристрій - обчислювальну машину, що складається з обчислювача і пам'яті, розділеної на вічка і системи, що містить достаток (рис. 2). Область "Достаток обчислювача" містить його поточний достаток. Покажчик команд зберігає адреса поточного виконуваного символу (команди) і вказує всередину області "Програми і дані". При виконання команди обчислювач прочитує її і відповідно до неї змінює елементи пам'яті і значення покажчика команд.

Введемо операцію уточнення до реальних ЕОМ під час якої ми розділятимемо області пам'яті на іменовані частини з певними властивостями цих частин  і правилами звернення до них. Дана операція дозволить моделювати програмні об'єкти з будь-яким рівнем деталізації.

Структурна модель Win32 вірусу має вигляд (див. рис. 3).

Рис.3 – Структурна модель вірусу.

Для роботи вірусу, типу Win32 достатньо наявності цих шести обов'язкових підсистем.

На базі машини можна запропонувати модель обчислювальної машина з історією обчислень і переходів (див. рис. 4.).

Рис. 4 – структурна модель вірусу

Машина   містить стрічку з історією обчислень і стрічку з історією переходів. Після кожного такту  на стрічку з історією обчислень записується інформація про проведені дії. Після кожного переходу на стрічку з історією переходів записується інформація про даний перехід.

Умовні переходи, залежно від стану обчислювача передають управління або на наступну команду, або за адресою, заданою в команді умовного переходу. Програма для обчислювальної машини, що моделює виконання обчислювальної машини із стрічкою історії і стрічкою переходів, дозволяє розпізнавати віруси.

Метод розпізнавання Win32 вірусів заснований на висунутій гіпотезі і полягає в тому, що будується програма, що моделює роботу машини, при цьому в ролі машини виступає ЕОМ.

Розроблена система розпізнавання має структуру (рис. 5).

Рис 5 – Структура системи розпізнавання

Етапи функціонування системи розпізнавання приведені на рис. 6.

Рис 6 – Етапи функціонування системи розпізнавання

Емулятор процесора обчислює стани системи, не дозволяючи вірусу одержувати управління.

 

Висновки

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

 

Список використаних джерел

 

1.    Chenxi Wang, John Knight, and M. Elder. "On Computer Viral Infection

2.    Effect of Immunization." Technical Report UVA-CS-99-32, Department of Computer Science, University of Virginia, 1999.

3.    Jake Ferry. "A Study and Evaluation of Virus Protection Software Marketed to Average Computer Users." Dissertation ES200006, Department of Computer Science, University of Virginia, 2006.

4.    David Moore, Geoffrey Voelker, and Stefan Savage. "Infe rring Internet Denial-of- Serve Activity." Proceedings of the 10th USENIX Security Symposium, August 2008.

5.    Brian Utt. "Detection and Identification of Intruders in Network Systems." Dissertation CS990033, Department of Computer Science, University of Computer Science, 2009.