Топ новостей


РЕКЛАМА



Календарь

Про класифікацію засобів антивірусного захисту

  1. Про класифікацію засобів антивірусного захисту

Про класифікацію засобів антивірусного захисту

Валерій КОНЯВСКІЙ, директор ВНІІПВТІ, доктор технічних наук

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

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

Так що мови - навіть в межах однієї мови будова фраз може носити явно виражені ознаки синкретизму ( "мчить"), аналитизма ( "у мене у подруги у сестри у дитини ...") або Синтетизм ( "у дитини сестри моєї подруги .. . ")!

Класифікація

З синкретичність розуміння рукотворних речей раніше нам стикатися не доводилося. Неправильно це. Ми знаємо, для того щоб колеса крутилися, має бути двигун. Двигуни бувають електричні, а бувають внутрішнього згоряння. І так далі. Окрема людина цілком може їздити на машині, не маючи уявлення про те, що у неї всередині. Але тільки окрема людина, а не людство в цілому!

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

Науковий підхід заснований на аналізі не тільки статики, а й динаміки (не тільки об'єктів, але і процесів). Природно, науковий підхід виявляється продуктивним і в аналізі стану антивірусного захисту 1 . Яких тільки класифікацій засобів захисту не доводиться бачити! Як правило, з наукової точки зору ні одну з них класифікацією назвати не можна, так як виконуються вони за різними підставами. Що ж є причиною? До уваги не береться динамічний етап існування інформаційних технологій. В результаті класифікації переглядаються кожного разу з появою нових антивірусних програм, а віднесення антивірусної програми до того чи іншого виду носить волюнтаристський характер, не кажучи вже про те, що невірні класифікації незастосовні для прогнозу розвитку і планування робіт.

У той же час побудувати правильну класифікацію нескладно, якщо виходити з того факту, що діяльність з виявлення комп'ютерних вірусів пов'язана з обробкою інформації, і якщо розглядати дві форми побутування інформації - статичну (дані) і динамічну (процеси), тобто класифікувати за ознакою змінності в часі 2 .

аналіз даних

У повній відповідності з цим антивірусні засоби можна розділити на дві великі групи - аналізують дані і аналізують процеси.

До аналізу даних відносяться "ревізори" і "полифаги".

"Ревізори" аналізують наслідки від діяльності комп'ютерних вірусів і інших шкідливих програм. Наслідки проявляються в зміні даних, які змінюватися не повинні. Саме факт зміни даних є ознакою діяльності шкідливих програм з точки зору "ревізора". Іншими словами, "ревізори" контролюють цілісність даних і за фактом порушення цілісності приймають рішення про наявність в комп'ютерному середовищі шкідливих програм.

"Поліфагія" діють по-іншому. Вони на основі аналізу даних виділяють фрагменти шкідливого коду (наприклад, по його сигнатурі) і на цій основі роблять висновок про наявність шкідливих програм. Видалення або "лікування" уражених вірусом даних дозволяє попередити негативні наслідки виконання шкідливих програм. Таким чином, на основі аналізу "в статиці" попереджаються наслідки, що виникають "в динаміці".

Схема роботи і "ревізорів", і "полифагов" практично однакова - порівняти дані (або їх контрольну суму) з одним або декількома еталонними зразками. Дані порівнюються з даними.

Таким чином, для того щоб знайти вірус у своєму комп'ютері, потрібно, щоб він уже "спрацював", щоб з'явилися наслідки його діяльності. Цим способом можна знайти тільки відомі віруси, для яких заздалегідь описані фрагменти коду і / або сигнатури. Навряд чи такий захист можна назвати надійною.

аналіз процесів

Дещо по-іншому працюють антивірусні засоби, засновані на аналізі процесів.

"Евристичні аналізатори", так само як і вищеописані, аналізують дані (на диску, в каналі, в пам'яті і т.п.). Принципова відмінність полягає в тому, що аналіз проводиться в припущенні, що аналізований код - це не дані, а команди. Ще раз нагадаємо, що в комп'ютерах з фон-неймановской архітектурою дані і команди невиразні, в зв'язку з цим при аналізі і доводиться висувати ту чи іншу припущення.

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

Іншим видом антивірусних засобів, заснованих на аналізі процесів, є "поведінковіблокатори". В цьому випадку підозрілий код виконується поетапно до тих пір, поки сукупність ініційованих кодом дій не буде оцінена як "небезпечне" (або "безпечне") поведінка. Код при цьому виконується частково, так як завершення шкідливого коду можна буде виявити більш простими методами аналізу даних.

Підведемо підсумок

Аналізу можна піддавати дані і процеси. Дані в нашому випадку можна характеризувати за допомогою поняття "цілісність". Факт порушення цілісності встановлюють "ревізори". Конкретний впроваджений код, зміст модифікації виявляють "полифаги". Інших варіантів немає, і, отже, розвиток даного напрямку буде йти по шляху вдосконалення вже використовуваних механізмів.

Процеси, що розвиваються у часі, слід і аналізувати "в часі", тобто в процесі виконання. У типових випадках можна аналізувати без виконання ( "евристичні аналізатори"), на основі поведінки, що виявляється при частковому виконанні коду ( "поведінковіблокатори"). Цим і вичерпуються застосовуються сьогодні методи. Тепер очевидно, що не реалізований ще один (і найбільш достовірне) метод - на основі повного виконання коду.

Звичайно, сповнившись, вірус зруйнує об'єкт, що захищається, але це говорить лише про те, що виконувати вірус треба в ізольованому середовищі, що забезпечує безпеку спрацьовування шкідливої ​​програми. Технічна основа для таких розробок вже створена, а значить, чекати залишилося недовго.

1 Конявскій В.А., Лопаткін СВ. Комп'ютерна злочинність. У 2-х томах. Т. 1. - М .: РФК-Імідж Лаб, 2006. -560 с.

2 Конявскій В.А., Гадасін В.А. Основи розуміння феномену електронного обміну інформацією. - Мн .: Бел-Літфонд, 2004. - 282 с. (Бібліотека журналу "УЗД"; Кн. 2.)

Що ж є причиною?

Реклама



Новости