Що таке антивіруси

Антивірус – програмний засіб, призначений для боротьби з вірусами.

Як треба з визначення, основними завданнями антивірусу є:

  • Перешкоджання проникненню вірусів у комп’ютерну систему
  • Виявлення наявності вірусів у комп’ютерній системі
  • Усунення вірусів з комп’ютерної системи без нанесення ушкоджень іншим об’єктам системи
  • Мінімізація збитку від дій вірусів

Технології виявлення вірусів

Технології, застосовувані в антивірусах, можна розбити на дві групи –

  • Технології сигнатурного аналізу
  • Технології імовірнісного аналізу

Сигнатурний аналіз – метод виявлення вірусів, що полягає в перевірці наявності у файлах сигнатур вірусів.

Сигнатурний аналіз є найбільш відомим методом виявлення вірусів і використається практично у всіх сучасних антивірусах. Для проведення перевірки антивірусу необхідний набір вірусних сигнатур, що зберігається в антивірусній базі.

Антивірусна база – база даних, у якій зберігаються сигнатури вірусів.

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

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

Грамотна реалізація вірусної сигнатури дозволяє виявляти відомі віруси зі стовідсотковою ймовірністю.

Технології імовірнісного аналізу у свою чергу підрозділяються на три категорії:

  • Евристичний аналіз
  • Поведінковий аналіз
  • Аналіз контрольних сум

Евристичний аналіз – технологія, заснована на імовірнісних алгоритмах, результатом роботи яких є виявлення підозрілих об’єктів.

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

Евристичний аналіз застосовується для виявлення невідомих вірусів, і, як наслідок, не припускає лікування.

Дана технологія не здатна на 100% визначити вірус перед нею чи ні, і як будь-який імовірнісний алгоритм грішить помилковими спрацьовуваннями.

Поведінковий аналіз – технологія, у якій рішення про характер об’єкта, що перевіряє, приймається на основі аналізу виконуваних їм операцій.

Поведінковий аналіз досить вузько застосуємо на практиці, тому що більшість дій, характерних для вірусів, можуть виконуватися й звичайними додатками. Найбільшу популярність одержали поведінкові аналізатори скріптів і макросів, оскільки відповідні віруси практично завжди виконують ряд однотипних дій. Наприклад, для впровадження в систему, майже кожен макровірус використає той самий алгоритм: у який-небудь стандартний макрос, що запускається автоматично середовищем Microsoft Office при виконанні стандартних команд (наприклад, “Save”, “Save As”, “Open”, і т.д.), записується код, що заражає основний файл шаблонів normal.dot і кожен документ, що відкриває знову.

Засоби захисту, що вшивають в BIOS, також можна віднести до поведінкових аналізаторів. При спробі внести зміни в MBR комп’ютера, аналізатор блокує дія й виводить відповідне повідомлення користувачеві.

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

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

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

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

Аналізатори контрольних сум (також використається назва “ревізори змін”) як і поведінкові аналізатори не використають у роботі додаткові об’єкти й видають вердикт про наявність вірусу в системі винятково методом експертної оцінки. Більша популярність аналізу контрольних сум пов’язана зі спогадами про однозадачні операційні системи, коли кількість вірусів бути відносно невеликим, файлів було небагато й мінялися вони рідко. Сьогодні ревізори змін втратили свої позиції й використаються в антивірусах досить рідко. Частіше подібні технології застосовуються в сканерах при доступі – при першій перевірці з файлу знімається контрольна сума й міститься в кеші, перед наступною перевіркою того ж файлу сума знімається ще раз, рівняється, і у випадку відсутності змін файл уважається незараженим.

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

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

Попередня стаття
Наступна стаття