Програми детектори і доктори
Серед ОСОБЛИВОСТЕЙ АЛГОРИТМУ РОБОТИ вірусів виділяються наступні пункти:
•резидентність;
•використання стелс-алгоритмів;
•самошифрування і поліморфічность;
•використання нестандартних прийомів.
РЕЗИДЕНТНИЙ вірус при інфікуванні комп'ютера залишає в оперативній пам'яті свою резидентну частину, що потім перехоплює звертання операційної системи до об'єктів зараження і впроваджується в них. віруси знаходяться в пам'яті і є активними аж до вимикання чи комп'ютера перезавантаження операційної системи. Нерезидентные віруси не заражають пам'ять комп'ютера і зберігають активність обмежений час. Деякі віруси залишають в оперативній пам'яті невеликі резидентні програми, що не поширюють вірус. Такі віруси вважаються нерезидентними.
Резидентними можна вважати макро-віруси, оскільки вони постійно присутні в пам'яті комп'ютера на увесь час роботи зараженого редактора. При цьому роль операційної системи бере на себе редактор, а поняття «перезавантаження операційної системи» трактується як вихід з редактора.У багатозадачних операційних системах час «життя» резидентного DOS-вірусу також може бути обмежено моментом закриття зараженого DOS-вікна, а активність завантажувальних вірусів у деяких операційних системах обмежується моментом інсталяції дискових драйверів OC.
Використання Стелс-алгоритмів дозволяє вірусам чи цілком частково сховати себе в системі. Найбільш розповсюдженим стелс-алгоритмом є перехоплення запитів OC на читання/запис заражених об'єктів. Стелс-віруси при цьому або тимчасово лікують їх, або «підставляють» замість себе незаражені ділянки інформації. У випадку макро-вірусов найбільш популярний спосіб — заборона викликів меню перегляду макросів. Один з перших файлових стелс-вірусов — вірус «Frodo», перший завантажувальний стелс-вірус — «Brain».
САМОШИФРУВАННЯ і ПОЛіМОРФіЧНіСТЬ використовуються практично всіма типами вірусів для того, щоб максимально ускладнити процедуру виявлення вірусу. Полиморфик-віруси (polymorphic) - це досить важковиявлені віруси, що не мають сигнатур, тобто не утримуючі жодного постійної ділянки коду. У більшості випадків два зразки того самого поліморфік-віруса не будуть мати жодного збігу. Це досягається шифруванням основного тіла вірусу і модифікаціями програми-розшифровувача.
Різні НЕСТАНДАРТНІ ПРИЙОМИ часто використовуються у вірусах для того, щоб якнайглибше сховати себе в ядрі OC (як це робить вірус «3APA3A»), захистити від виявлення свою резидентну копію (віруси «TPVO», «Trout2»), утруднити лікування від вірусу (наприклад, помістивши свою копію в Flash-BIOS) і т.д.
По ДЕСТРУКТИВНИХ МОЖЛИВОСТЯХ віруси можна розділити на:
•нешкідливі, тобто ніяк що не впливають на роботу комп'ютера (крім зменшення вільної пам'яті на диску в результаті свого поширення);
•безпечні, вплив яких обмежується зменшенням вільної пам'яті на диску і графічними, звуковими й ін. ефектами;
•небезпечні віруси, що можуть привести до серйозних збоїв у роботі комп'ютера;
•дуже небезпечні, в алгоритм роботи яких свідомо закладені процедури, що можуть привести до втрати програм, знищити дані, стерти необхідну для роботи комп'ютера інформацію, записану в системних областях пам'яті, і навіть, як говорить одна з неперевірених комп'ютерних легенд, сприяти швидкому зносу частин механізмів, що рухаються - вводити в резонанс і руйнувати голівки деяких типів вінчестерів.
Але навіть якщо в алгоритмі вірусу не знайдено галузей, що наносять збиток системі, цей вірус не можна з повною впевненістю назвати нешкідливим, тому що проникнення його в комп'ютер може викликати непередбачені і часом катастрофічні наслідки. Адже вірус, як і всяка програма, має помилки, у результаті яких можуть бути зіпсовані як файли, так і сектора дисків (наприклад, цілком необразливий на перший погляд вірус «DenZuk» досить коректно працює з 360K дискетами, але може знищити інформацію на дискетах більшого обсягу). Дотепер потрапляються віруси, що визначають «COM чи EXE» не по внутрішньому форматі файлу, а по його розширенню. Природно, що при розбіжності формату і розширення імені файл після зараження виявляється непрацездатним. Можливо також «заклинювання» резидентного вірусу і системи при використанні нових версій DOS, при роботі в Windows чи з іншими могутніми програмними системами. І так далі.