Метод виявлення за допомогою емуляції

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

Метод "Білого списку"

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

Евристичний аналіз

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

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

HIPS

HIPS - система моніторингу усіх застосувань, що працюють в системі, з чітким розподілом прав для різних застосувань. Таким чином HIPS може запобігти деструктивній діяльності вірусу, не надавши йому необхідних прав. Додатки діляться на групи, починаючи від "Довірених", права яких не обмежені, закінчуючи "Заблокованими", яким HIPS не надасть прав навіть на запуск.

Структура антивірусних програм

Модуль оновлення

В першу чергу, кожен антивірус повинен містити модуль оновлення. Це пов'язано з тим, що основним методом виявлення вірусів сьогодні є сигнатурний аналіз, який покладається на використання антивірусної бази. Для того, щоб сигнатурний аналіз ефективно справлявся з найостаннішими вірусами, антивірусні експерти постійно аналізують зразки нових вірусів і випускають для них сигнатури. Після цього головною проблемою стає доставка сигнатур на комп'ютери всіх користувачів, що використовують відповідну антивірусну програму. Саме це завдання і вирішує модуль оновлення. Після того, як експерти створюють нові сигнатури, файли з сигнатурами розміщуються на серверах компанії - виробника антивіруса і стають доступними для завантаження. Модуль оновлення звертається до цих серверів, визначає наявність нових файлів, завантажує їх на комп'ютер користувача і дає команду антивірусним модулям використовувати нові файли сигнатур. Модулі оновлення різних антивірусів вельми схожі один на одного і відрізняються типами серверів, з яких вони можуть завантажувати файли оновлень, а точніше, типами протоколів, які вони можуть використовувати при завантаженні, - HTTP, FTP, протоколи локальних Windows-мереж. Деякі антивірусні компанії створюють спеціальні протоколи для завантаження своїх оновлень антивірусної бази. У такому разі модуль оновлення може використовувати і цей спеціальний протокол. Друге, в чому можуть відрізнятися модулі оновлення - це настройка дій, на випадок, якщо джерело оновлень недоступне. Наприклад, в деяких модулях оновлення можна вказати не одну адресу сервера з оновленнями, а адреси декількох серверів, і модуль оновлення звертатиметься до них по черзі, поки не виявить працюючий сервер. Або ж в модулі оновлення може бути настройка - повторювати спроби оновлення із заданим інтервалом певну кількість разів або ж до тих пір, поки сервер не стане доступним. Ці дві настройки можуть бути присутніми і одночасно.

Модуль планування

Другий важливий допоміжний модуль - це модуль планування. Існує ряд дій, які антивірус повинен виконувати регулярно,зокрема: перевіряти ваш комп'ютер на наявність вірусів і оновлювати антивірусну базу. Модуль оновлення якраз і дозволяє набудувати періодичність виконання цих дій. Для оновлення антивірусної бази рекомендується використовувати невеликий інтервал - одну годину або три години, залежно від можливостей каналу доступу в Інтернет. В даний час нові модифікації шкідливих програм виявляються постійно, що вимушує антивірусні компанії випускати нові файли сигнатур буквально кожну годину. Якщо користувач комп'ютера багато часу проводить в Інтернеті, він піддає свій комп'ютер великому ризику і тому повинен оновлювати антивірусну базу якомога частіше. Повну перевірку комп'ютера потрібно проводити хоч би тому, що спочатку з'являються нові шкідливі програми, а тільки потім сигнатури до них, а значить завжди є можливість завантажити на комп'ютер шкідливу програму раніше, ніж оновлення антивірусних баз. Щоб виявити ці шкідливі програми, комп'ютер потрібно періодично перепровіряти. Розумним розкладом для перевірки комп'ютера можна вважати перевірку раз в тиждень. Виходячи з сказаного, основне завдання модуля планування - давати можливість вибрати для кожної дії розклад, який більше всього підходить саме для цього типу дії. Отже модуль оновлення повинен підтримувати багато різних варіантів розкладу з яких можна було б вибирати.

Модуль управління

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

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

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

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

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

Карантин

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