- •6.1. Класифікація шкідливого програмного забезпечення
- •6.2. Програмні закладки
- •6.2.1. Функції програмних закладок
- •6.2.2. Шпигунські програми
- •6.2.3. «Логічні бомби»
- •6.2.4. Люки — утиліти віддаленого адміністрування
- •6.2.5. Несанкціонована робота з мережею
- •6.2.6. Інші програмні закладки
- •6.3. Комп'ютерні віруси
- •6.3.1. Файлові віруси
- •6.3.2. Завантажувальні віруси
- •6.3.3. Макровіруси
- •6.3.4. Скриптові віруси
- •6.3.5. Захист від комп'ютерних вірусів
- •6.4. Мережні хробаки
- •6.4.1. Класифікація мережних хробаків
- •6.4.2. Хробак Морріса
- •6.4.3. Сучасні мережні хробаки
- •6.5. «Троянські коні»
- •6.5.1. Соціальна інженерія
- •3DNow!(tm) mobile emulator for *games* .
- •Internet Accelerator
- •Internet accelerator, ssl security update #7. Internet Cracker
- •Virtual sex mobile engine from Russian hackers!
- •6.5.2. Класифікація «троянських коней»
- •6.5.3. Шпигунські троянські програми
- •6.5.4. Троянські інсталятори
- •6.5.5. «Троянські бомби»
- •6.6. Спеціальні хакерські утиліти
- •6.6.1. Засоби здійснення віддалених атак
- •6.6.2. Засоби створення шкідливого програмного забезпечення
- •6.6.3. Створення засобів атак
6.3.4. Скриптові віруси
Програмний код можна впроваджувати і в документи інших видів, наприклад в HTML-сторінки, що завантажуються з мережі чи локально та відображаються на екрані за допомогою браузера. Наразі автоматично виконується програмний код сценаріїв, які ще називають скриптами (англ. script — сценарій) та інших елементів (ActiveX, Java). Програмний код сценаріїв може існувати й окремо, у спеціальних файлах. Деякі дуже розвинені мови сценаріїв можна вважати повноцінними мовами програмування. Наприклад, в операційних системах UNIX і Linux сценарії використовують як системні команди на рівних правах з бінарними виконуваними файлами. Далеко не всі користувачі знають, що вони запускають — скомпільовану програму чи сценарій. Сценарії можуть також мати встановлений атрибут SUID.
Скриптові віруси розглядають як підгрупу файлових вірусів. Такі віруси пишуть різними мовами сценаріїв (VBS, JS, ВАТ, РНР тощо). Вони можуть заражати інші програми-сценарії (командні та службові файли Windows або UNIX), бути компонентами багатокомпонентних вірусів, заражати файли інших форматів (наприклад, згаданий вище HTML), якщо вони підтрушують виконання сценаріїв.
Наприкінці 1998 року «Лабораторія Касперського» випустила детальний огляд потенційно небезпечних вірусів, що заражають сценарії Visual Basic (VBS-файли), які активно застосовують під час розроблення веб-сторщок [61]. Тоді цей огляд сприйняли як безпідставне роздмухування вірусної істерії серед користувачів. Але вже у травні 2000 року спалахнула глобальна епідемія скриптового вірусу LoveLetter, і в наступні роки саме віруси цього типу посіли перше місце у списку найпоширеніших і найнебезпечніших вірусів.
Іноді як окрему групу подають так звані поштові віруси, що розповсюджують* ся електронною поштою. Справді, у наш час переважну більшість небезпечних руйнівних програмних засобів надсилають саме через мережу, зокрема електронною поштою. Однак майже всі ці програми не мають ознак специфічних поштових вірусів. Переважно це звичайні віруси, якими заражені файли, що пересилають електронною поштою у вигляді вкладень, а частіше — типові «троянські коні», В окремих випадках, і тут слід зауважити, що такі випадки є найнебезпечнішими, це мережні хробаки.
6.3.5. Захист від комп'ютерних вірусів
Найбільш поширені методи виявлення вірусів (та інших шкідливих програмних засобів) — це;
пошук сигнатур;
евристичний аналіз;
контроль незмінності об'єктів.
Одним із основних методів виявлення вірусів був і залишається пошук характерних ознак відомих вірусів (сигнатур) у файлах і оперативній пам'яті комп'ютера. Деякий час великі надії покладали на евристичний аналіз, коли впровадження шкідливого коду виявлялося за наявністю підозрілихіфперацій (наприклад, відкриття для модифікації виконуваних файлів, перехоплення переривань тощо). Деякі засоби контролювали незмінність файлів, здебільшого виконуваних, що унеможливлювало впровадження в них коду вірусу. Сучасні антивірусні засоби поєднують у собі всі ці можливості, причому для виявлення відомих вірусів (а також хробаків, «троянських коней» та інших небезпечних програмних засобів) найефективнішим залишається саме пошук їхніх сигнатур.
За режимом дії антивірусні засоби поділяють на:
антивірусні сканери;
антивірусні монітори;
антивірусні фільтри.
Антивірусні сканери час від часу або за запитом здійснюють повне сканування файлової системи комп'ютера або вибіркове сканування заданих файлів чи каталогів. Обсяг файлової системи сучасних комп'ютерів і кількість сигнатур у базі сучасних антивірусних засобів такий, що повне сканування комп'ютера з рутинної операції перетворилося на авральну процедуру, яка на кілька годин паралізує будь-яку діяльність на комп'ютері. Тому, незважаючи на переконливі вимоги антивірусних засобів провести повне сканування файлової системи, на практиці таке сканування проводять дуже рідко (повне сканування можна проводити вночі, саме так роблять у корпоративних мережах).
Антивірусні монітори працюють безперервно, але вони здійснюють лише вибіркову перевірку і тому, як правило, не дуже уповільнюють роботу комп'ютера. Обов'язково перевіряються ті файли, над якими здійснюються будь-які операції (відкривання, читання, записування, переміщення файлу, запуск на виконання), а якщо таких операцій небагато, відбуваєтеся повільне вибіркове сканування файлової системи. Слід зазначити, що у момент відкривання файлу (особливо великих файлів і архівів) перевірка займає чималий проміжок часу, тому антивірус-ний монітор справді помітно уповільнює виконання деяких операцій, а саме; запуск великих програм, відкривання великих документів (особливо архівів, що містять документи), а також пакетні операції оброблення великої кількості файлів (наприклад, переміщення великого каталогу з файлами).
Антивірусні фільтри призначені для роботи здебільшого з тими потоками даних, що надходять із мережі. Вони ефективні для перевірки повідомлень, які надходять електронною поштою чи з каналів IRC, Р2Р-мереж та інших. Також вони ефективні для використання проти так званих безтілесних хробаків, які не пов'язані з жодними файлами.
Віруси (а також хробаки і «троянські коні»), зі свого боку, протидіють анти-вірусним засобам у різні, часто досить вибагливі, способи.
Головним засобом проти пошуку сигнатур став так званий поліморфізм — модифікація коду вірусу від екземпляра до екземпляра. Для реалізації поліморфізму здійснюється переважно зашифровування коду з використанням різних ключів, а першим компонентом вірусу, який отримує керування, є розшифрувальник.
Деякі віруси досить ефективно приховують себе від програм, які контролюють розмір файлів (наприклад, на системний запит видають невірну інформацію про довжину файлу, дату його модифікації тощо). Подібні технології дістали назву стеле (Stealth).
Досить неприємним для антивірусних засобів є розсилання заархівованого коду вірусу (антивірусні засоби для виявлення сигнатури мають підтримувати всі необхідні формати архівів, щоб мати змогу їх розархівовувати). Ситуація ще більш ускладнилася, коли заархівовані віруси почали захищати паролями (пароль надсилається окремо, наприклад; вірус — у приєднаному до електронного листа файлі, а пароль — у самому листі).
Віруси можуть також мати механізми захисту від дослідження, протидії запуску в режимі налагодження, а також «логічні бомби», які спрацьовують під час спроби видалення компонентів вірусу.
