Віруси-невидимки або stealth-віруси - інтернет - рубрики - каталог статей - підключити інтернет
Віруси-невидимки або Stealth-віруси
В основі роботи Stealth-вірусів лежить той факт, що операційна система при зверненні до периферійних пристроїв (в тому числі і до жорстких дисків) використовує механізм переривань. При виникненні переривання управління передається спеціальній програмі - оброблювачу переривання. Ця програма відповідає за введення і виведення інформації в / з периферійного пристрою.
У такій системі спочатку прихована і вразливість: керуючи оброблювачем переривань, можна управляти потоком інформації від периферійного пристрою до користувача. Stealth-віруси, зокрема, використовують механізм перехоплення управління при виникненні переривання. Замінюючи оригінальний обробник переривання своїм кодом, stealth-віруси контролюють читання даних з диска.
У разі, якщо з диска Новомосковскется заражена програма, вірус "викусивает" власний код (зазвичай код не буквально "викусивать", а відбувається підміна номера Новомосковскемого сектора диска). В результаті користувач отримує для читання "чистий" код. Таким чином, до тих пір поки вектор обробника переривань змінений вірусним кодом, сам вірус активний в пам'яті комп'ютера, виявити його простим читанням диска засобами операційної системи неможливо. Схожий механізм маскування використовується і завантажувальними вірусами.
Відомі стелс-віруси всіх типів - завантажувальні віруси, файлові DOS-віруси і навіть макро-віруси.
Завантажувальні стелс-віруси для приховування свого коду використовують два основних способи. Перший з них полягає в тому, що вірус перехоплює команди читання зараженого сектора (INT 13h) і підставляє замість нього незаражений оригінал. Цей спосіб робить вірус невидимим для будь-якої DOS-програми, включаючи антивіруси, нездатні "лікувати" оперативну пам'ять комп'ютера. Основна ідея полягає в тому, що незважаючи на те, що файл заражений, в оперативну пам'ять передаються дані незараженої файлу (попередньо вилікуваного самим вірусом).
Большінcтво файлових стелс вірусів використовує ті ж прийоми, що наведені вище: вони або перехоплюють DOS-виклики звернення до файлів (INT 21h) або тимчасово лікують файл при його відкритті і заражають при закритті. Також як і для завантажувальних вірусів, існують файлові віруси, що використовують для своїх стелс-функцій перехоплення переривань більш низького рівня - виклики драйверів DOS, INT 25h і навіть INT 13h.
Реалізація стелс-алгоритмів в макро-віруси є, напевно, найбільш простим завданням - досить усього лише заборонити виклик меню File / Templates або Tools / Macro. Досягається це або видаленням цих пунктів меню зі списку, або їх підміною на макроси FileTemplates і ToolsMacro. Частково стелс-вірусами можна назвати невелику групу макро-вірусів, які зберігають свій основний код не в самому макросі, а в інших областях документа - у його змінних або в Auto-text.
До найбільш відомих Stealth-вірусів можна віднести такі віруси, як Exploit.Macro.Stealth, Exploit.MSWord.Stealth, Virus.DOS.Stealth.551.
Способи боротьби з Stealth-вірусами
З метою боротьби зі stealth-вірусами раніше рекомендувалося (і, в принципі, рекомендується і зараз) здійснювати альтернативну завантаження системи з гнучкого диска і тільки після цього проводити пошук і видалення вірусних програм. В даний час завантаження з гнучкого диска може виявитися проблематичною (для випадку з win32 антивірусними програмами запустити їх не вдасться).
З огляду на все вищесказане, антивіруси-полифаги виявляються максимально ефективними тільки при боротьбі з уже відомими вірусами, тобто з такими, чиї сигнатури і методи поведінки знайомі розробникам. Тільки в цьому випадку вірус зі 100-відсотковою точністю буде виявлений і вилучений з пам'яті комп'ютера, а потім - і з усіх перевірених файлів. Якщо ж вірус невідомий, то він може досить успішно протистояти спробам його виявлення і лікування. Тому головне при користуванні будь-яким поліфагом - якомога частіше оновлювати версії програми і вірусні бази. Для зручності користувачів бази винесені в окремий модуль, і, наприклад, користувачі AVP можуть оновлювати ці бази щодня за допомогою Інтернету.