Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
НавчПос_ЗОС.doc
Скачиваний:
90
Добавлен:
16.05.2015
Размер:
7.05 Mб
Скачать

3.7 Стелс-віруси

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

Відомі стелс-віруси всіх типів – завантажувальні віруси, файлові DOS-віруси і навіть макро-віруси.

3.7.1 Завантажувальні стелс-віруси

Завантажувальні стелс-віруси для приховання свого коду вико­ри­стовують два основних способи.

Перший спосібполягає в тому, що вірус перехоплює ко­ман­ди читання зараженого сектора (INT 13h) і підставляє замість нього незаражений оригінал. Цей спосіб робить вірус невидимим для будь-якої DOS-програми, вклю­чаючи антивіруси, нездатні "лікувати" оперативну пам'ять комп'ютера. Можливе перехоплення команд читання секторів на рівні більш низькому, чим INT 13h.

Другий спосібспрямований проти антивірусів, що підтримують ко­манди прямого читання секторів через порти контролера диска. Такі віруси при запуску будь-якої програми (включаючи антивірус) віднов­люють зара­жені сектори, а після закінчення її роботи знову заражають диск. Оскільки для цього вірусу приходиться перехоплювати запуск і закінчення роботи програм, то він повиненперехоплювати також DOS-переривання INT 21h.

З деяким застереженням стелс-вірусами можна назвати віруси, що вносять мінімальні зміни в сектор, що заражається (наприклад, при зара­женні MBRзмінюютьтільки активнуадресузавантажувального сектора–зміні підлягають тільки 3 байти), або маскуються під код стандартного завантажника.

3.7.2 Файлові стелс-віруси

Більшість файлових стелс-вірусів використовує ті самі прийоми, що при­­ведено вище: вони або перехоплюють DOS-виклики звертання до фай­лів (INT 21h), або тимчасово лікують файл при його відкритті і заражають при закритті. Так само, як і для boot-вірусів, існують файлові віруси, що використовують для своїх стелс-функцій перехоплення переривань більш низького рівня – виклики драйверів DOS, INT 25h і навіть INT 13h.

Повноцінні файлові стелс-віруси, що використовують перший спосіб при­хо­ван­ня свого коду, здебільшого досить громіздкі, оскільки їм прихо­дитися пере­хоп­лювати велику кількість DOS-функцій роботи з файлами: відкриття/закриття, читання/записування, пошук, запуск, перейменування і т.д., причому необхідно підтри­му­вати обидва варіанти деяких викликів (FCB/ASCII), а після появи Windows 95/NT їм стало необхідно також обробляти третій варіант – функції роботи з довгими іменами файлів.

Деякі віруси використовують частинуфункцій повноцінного стелс-віруса. Найчастіше вони перехоплюють функції DOS FindFirst і FindNext (INT 21h, AH=11h, 12h, 4Eh, 4Fh) і зменшують розмір заражених файлів. Такий вірус неможливо визначити по зміні розмірів файлів, якщо, звичайно, він резидентно знаходиться в пам'яті.

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

3.7.3 Макро-стелс-віруси

Реалізація стелс-алгоритмів у макро-вірусах є, напевно, найбільш прос­тою задачею–досить усього лише заборонити виклик менюFile/ TemplatesабоTools/Macro. Досягається це або видаленням цих пунктів меню зі списку, або їхньою підміною на макросиFileTemplatesіToolsMacro.

Частково стелс-вірусами можна назвати невелику групу макро-віру­сів, що зберігають свій основний код не в самому макросі, а в інших областях документа–у йогозмінних чи в Auto-text.