Як ви думаєте, скільки сьогодні у світі налічується відомих вірусних загроз? Відповісти на це питання неможливо навіть приблизно, оскільки з моменту їх виникнення все нові й нові різновиди небезпечного ПЗ з’являються дуже швидко, і навіть багато що професійно займаються цією проблемою організації і розробники всіляких захисних засобів просто не встигають реагувати на їх поширення. Якщо можна так висловитися, сьогодні віруси ростуть як гриби після дощу. Але які ж методи боротьби з комп’ютерними вірусами застосовуються для захисту? Щоб розібратися в цьому непростому питанні, спочатку необхідно зрозуміти, що собою представляють такі загрози, якими вони бувають і як впливають на комп’ютери або зберігаються на них дані.
Що таке комп’ютерні віруси?
Для початку давайте з’ясуємо, як розглядає віруси і боротьбу з ними інформатика. Під вірусом зазвичай прийнято вважати невелику по розмірах програму, націлену на виконання певних дій з метою завдання шкоди операційній системі, файлів, що зберігаються на жорсткому диску, або навіть деяким «залізним» пристроїв. Так-так! Ви не помилилися. На обладнання віруси можуть впливати шляхом перехоплення управління у драйверів пристроїв або супутніх керуючих додатків. В якості найпростішого прикладу можна навести програмний аплет, який у свій час фокусував максимум освітленості на застарілих вже моніторів з електронно-променевими трубками в одній точці екрану, що призводило або до його вигорання, або до повного зіпсуття самого монітора. Але такі погрози можна назвати великою рідкістю, а основні типи вірусів більше впливають саме на файлові об’єкти, виводячи з ладу і операційні системи і програми.
А ось серед відносно нових загроз особливо небезпечними можна назвати ті, що займаються шпигунством і крадіжкою конфіденційної або особистої інформації. Адже Не секрет, що гроші з банківських карток найчастіше і зникають з-за впливу таких програмних аплетів і необережності або неуважність самих власників.
Але і самі віруси можуть бути виконані або у вигляді самостійного програмного аплету, або працюють за принципом впровадження у вже наявні файли власних шкідливих кодів, після чого такі об’єкти стають «зараженими».
Загальна класифікація відомих вірусних загроз
Щоб розібратися в що застосовуються способи боротьби з комп’ютерними вірусами, необхідно зрозуміти, які саме типи загроз можна зустріти в сучасному комп’ютерному світі. Як кажуть, ворога треба знати в обличчя. Незважаючи на те, що віруси можуть різнитися між собою, деякі з них можна об’єднати в групи, використовуючи для цього загальні ознаки. Сучасні комп’ютерні загрози прийнято класифікувати за такими ознаками:
- середовище проживання;
- операційні системи, на які впливають загрози;
- алгоритми функціонування самих вірусів;
- ступінь впливу на комп’ютерні системи (деструктивність).
Середовище існування
У цьому підрозділі можна виділити чотири основні групи відомих загроз:
- файлові;
- завантажувальні;
- мережеві;
- макровіруси.
Але це тільки основний поділ, адже багато відомих загрози на сучасному етапі розвитку комп’ютерних технологій явно трансформувалися, причому так, що віднести їх до якоїсь однієї групи неможливо. Так, наприклад, нерідко можна зустріти мережеві макровіруси або файлового-завантажувальні загрози.
Файлові загрози належать до найбільш поширених і отримали свою назву з тієї причини, що впроваджуються саме файли (найчастіше виконуються) або створюють їх заражені копії, підміняючи оригінали, з-за чого встановлені програми перестають працювати або працюють некоректно.
Завантажувальні об’єкти використовують дещо інші принципи і здебільшого прописують власні шкідливі коди або в завантажувальних секторах, або головною завантажувальної записи жорсткого диска (Master Boot Record). Відповідно, при зміні таких записів операційна система може перестати завантажуватися або стане працювати неправильно, оскільки вірус за допомогою створеної запису стартує разом з зараженої ОС.
Мережеві загрози, як вже зрозуміло, в основному націлені на те, щоб самостійно передаватися від одного комп’ютера до іншого, використовуючи для цього лазівки в організації мережевих структур або потрапляючи в систему через електронну пошту (найчастіше через неуважність самого користувача, який відкриває вкладення сумнівного типу і змісту без попередньої перевірки антивірусним ПЗ).
Нарешті, макровіруси в основному націлені на офісні документи і працюють на основі спеціальних скриптів, які спрацьовують у момент відкриття файлів у відповідних редакторах (наприклад, написані на Visual Basic).
Операційні системи
Говорячи про комп’ютерні віруси і боротьбі з ними, наївно буде вважати, що сучасні загрози вибірково впливали і впливають виключно на Windows або застарілі DOS-системи. А скільки вже було виявлено загроз в тому ж сховище Google Play, які завдавали непоправної шкоди Android-систем? Чомусь вважається, що всі UNIX-подібні ОС, до яких можна віднести і Linux, і побудовані за його образом і подобою Android-модифікації, впливу вірусних погроз не піддаються, оскільки в них відсутній системний реєстр як такої. Але ж знижувати продуктивність пристроїв, навантажуючи системні ресурси, віруси теж можуть. І це вже мова не йде про різноманітних шпигунських програм, що стежать за діями користувачів кейлоггерах, вымогателях або аплетах, що крадуть особисту інформацію. До деяких пір і «яблучні» системи вважалися невразливими.
Але подивіться, скільки останнім часом виявилося публікацій про те, що ті ж «Айфони» виводяться з ладу абсолютно елементарно шляхом пересилання на пристрій повідомлення, що містить якийсь текст, який і шкідливим кодом назвати важко. Так, набір символів. Але факт залишається фактом. При відкритті такого меседжу девайс «вмирає».
Алгоритми роботи вірусів
Розглядаючи комп’ютерні віруси і боротьбу з ними, окремо варто сказати кілька слів про те, які саме принципи роботи використовують сучасні загрози. Серед загальних ознак, за якими проводиться класифікація в цьому напрямку, зазвичай виділяють такі:
- резидентність;
- наявність або відсутність стелс-маскування;
- самошифрування;
- поліморфізм;
- застосування нестандартних прийомів.
Зрозуміти поділ вірусів за резидентному ознакою дуже просто. На відміну від нерезидентного вірусу, резидентний загроза при впливі на систему як би залишає частину виконуваного коду безпосередньо в оперативній пам’яті, то є якась її частина постійно присутня у вигляді завантажуваних і виконуваних в ОЗП компонентів. За великим рахунком, ті ж макровіруси в певному сенсі теж можна назвати резидентними, але вони активні лише в період роботи певного редактора, в якому відбувається відкриття зіставлених йому документів.
Технології стелс, думається, пояснювати не потрібно. Стосовно до вірусів це та ж сама маскування, призначена для того, щоб сховатися в системі, підміняючи себе іншими об’єктами у вигляді нібито незаражених ділянок інформації. Дуже часто це проявляється ще й у перехоплення запитів операційної системи на читання, запис і перезапис заражених об’єктів. Наприклад, ті ж макровіруси використовують популярну методику встановлення заборон на відключення макросів або на виклик меню їх перегляду.
Певною мірою самошифрування, прямо пов’язане з поліморфізмом, теж можна віднести до маскувальним атрибутів, тільки застосовувана методика полягає в тому, щоб максимально ускладнити розпізнавання загрози захисними засобами за рахунок шифрування тіла оригінального шкідливого коду з створенням його поліморфної (модифікованої) копії таким чином, що всі наступні клони можуть бути абсолютно несхожі на вихідний об’єкт.
До нестандартних методів можна віднести дещо відмінні від загальноприйнятих принципи максимально глибокого проникнення в ядро системи з метою утруднення їх детекції. Особливо яскравими прикладами можна назвати відому загрозу «ЗАРАЗА» і деякі різновиди вірусу «ТРУО».
Вплив на систему
За своїм деструктивним можливостям і ступеня впливу на ОС або дані загрози поділяють наступним чином:
- нешкідливі (не надають особливо впливу на роботу комп’ютерної системи, за винятком зменшення вільного простору на диску або об’єму оперативної пам’яті);
- безпечні (які мають ті ж ознаки впливу, що і перша група, але з супроводом впливу різного роду візуальними або звуковими ефектами);
- небезпечні (дія яких може призводити до серйозних збоїв у роботі операційної системи і встановлених у її середовищі програм);
- дуже небезпечні приводять до фарбую системи, псування або видалення важливих даних, викрадення інформації, шифрування файлів і т. д.).
Але якщо говорити про боротьбі з вірусами, кожен користувач повинен чітко розуміти, що навіть якщо в самому шкідливий код або його якійсь гілці принцип деструктивного впливу на систему виявлено не буде, вважати загрозу безпечної все одно не можна. Основна проблема полягає в тому, через, здавалося б, нешкідливі віруси-жарти в комп’ютерну систему запросто можуть проникнути і більш небезпечні загрози, які, якщо їх не виявити вчасно, можуть завдати системі дуже серйозний збиток, а наслідки стануть незворотними.
Методи виявлення комп’ютерних вірусів та боротьба з ними
З основними поняттями і класифікацією вірусних загроз ясність більш або менш внесена. Нарешті, перейдемо до визначення можливих засобів боротьби з комп’ютерними вірусами всіх представлених вище типів. Сучасні розробники антивірусного програмного забезпечення використовують кілька основних принципів, що дозволяють вчасно виявити загрозу, нейтралізувати її вилікувати заражений об’єкт) або безболісно видалити з системи, якщо лікування виявляється неможливим. Серед усього різноманіття методів боротьби з вірусами особливо можна виділити наступні:
- сканування (сигнатурний аналіз);
- евристичний (поведінковий) аналіз;
- метод резидентного моніторингу і відстеження змін програм;
- вакцинація додатків;
- використання програмно-апаратних засобів.
Сканування шляхом порівняння сигнатур є найпримітивнішим і досить неефективним методом, оскільки в процесі перевірки системи проводиться порівняння тільки з уже відомими сигнатурами, що зберігаються у великих базах даних. Як вже зрозуміло, виявити нові загрози, яких у таких базах немає, буде вкрай важко.
Для боротьби з вірусами в такій ситуації застосовуються більш просунуті методи. Евристичний аналіз отримав широке поширення відносно недавно. Цей принцип заснований на тому, що захисне ПО перевіряє роботу всіх програм, виявляючи можливі відхилення та наявність ознак створення копій, приміщення резидентних команд в оперативну пам’ять, створення записів в завантажувальних секторах і т. д. Іншими словами, перевіряється можлива приналежність якогось неправильно працює аплету до погроз саме на основі їх нестандартного поведінки. Така методика здебільшого виявляється максимально ефективною при виявленні нових невідомих вірусів.
В якості одного з найбільш потужних засобів боротьби з вірусами досить часто застосовуються спеціальні резидентні монітори, які відстежують підозрілі дії додатків, як це було показано в описі евристичного аналізу. Але такі методи мають вузьку спрямованість.
Під вакцинацією програм розуміють перевірку цілісності додатків на основі порівняння контрольних сум файлів. При виявленні розбіжностей може видаватися попередження або запускатися якась лікуюча утиліта. Але ось стелс-погрози такими методами виявити неможливо.
Нарешті, найбільш ефективними засобами боротьби з вірусами вважаються спеціальні програмно-апаратні модулі, що встановлюються в роз’ємах із загальним доступом до шини і дозволяють контролювати абсолютно всі що протікають в системі процеси. Вони являють собою спеціальні контролери, які відстежують будь-які зміни. Їх програмна частина запам’ятовується в спеціальних областях жорсткого диска. Саме тому внести зміни в завантажувальні запису і сектори, файли конфігурації або виконувані аплети вірус вже не зможе.
Перші ознаки зараження
Що ж стосується способів боротьби з вірусами, які користувач може застосовувати самостійно, іноді присутність загроз в системі можна виявити за деякими типовими ознаками:
- система починає працювати повільніше, зависає, мимоволі перезавантажується або не завантажується взагалі;
- без видимої причини зростає навантаження на центральний процесор, оперативну пам’ять, жорсткий диск або мережа;
- зникають, перейменовувати або пошкоджуються деякі файли;
- вільне місце на диску катастрофічно зменшується;
- на екран виводяться незрозумілі або провокаційні повідомлення та реклама;
- з’являються сторонні візуальні ефекти, або видаються звукові сигнали;
- встановлені програми працюють некоректно або перестають працювати взагалі;
- файли виявляються зіпсованими (або зашифрованими) і не відкриваються;
- система повністю блокується і т. д.
Основні напрямки в нейтралізації загроз
Тепер давайте подивимося, які методи можна застосовувати для успішного протистояння можливим загрозам. Для боротьби з вірусами всіх відомих і невідомих типів зазвичай використовується спеціальне програмне забезпечення, в загальному випадку зване антивірусами. У свою чергу, такі програмні продукти можна поділити за деякими загальними ознаками. В основному використовуються наступні типи програм:
- антивіруси-фільтри і сторожа;
- антивірусні детектори і ревізори, деякі з яких поєднують у собі ще й можливості докторів;
- додатки-вакцинаторы.
Перший тип захисних засобів націлений на перешкоджання проникненню в систему загроз будь-якого типу, що впливає саме на програмне середовище комп’ютера. Але такі утиліти виявляються неспроможними запобігти вторгненню при зверненні вірусу до BIOS. Друга категорія призначена для відстеження наявності вірусів у вже заражених системах на основі вищеописаних алгоритмів. А ось третій тип ПО-своєму виглядає дуже незвично. Такі інструменти здатні дописувати в тіло програм дані про можливу поразку вірусами, за рахунок чого присікаються будь-які спроби їх зміни.
Програми для боротьби з вірусами у вже заражених системах
Якщо система піддалася вірусній атаці, вилікувати її (якщо тільки вплив на досягло критичних масштабів) в більшості випадків можна досить просто.
Як правило, для боротьби з вірусами і «захворюваннями» системи застосовуються спеціальні портативні сканери, не вимагають установки на жорсткий диск (наприклад, KVRT або Dr. Web CureIt!), або дискові програми, на основі яких можна створювати завантажувальні носії і перевіряти систему ще до завантаження ОС (наприклад, Kaspersky Rescue Disk).
Деякі методи ручного видалення загроз
В деяких випадках користувачі можуть протистояти загрозам і самостійно. Здебільшого такі способи боротьби з вірусами можна віднести до нейтралізації рекламних загроз, які можуть встановлювати у вигляді окремих додатків, впроваджуватися браузери як розширення (доповнення) або панелі.
Для видалення загроз, які відносяться до класів Malware і Hijackers, зазвичай застосовується деінсталяція аплетів, розширень і панелей, видалення залишкових записів з системного реєстру і файлів на жорсткому диску, повернення стартової сторінки з відновленням пошукової системи в браузерах, а також видалення всіх можливих приписок, які можуть міститися в полі типу об’єкта у властивостях ярлика браузера (вказаний шлях до виконуваного файлу повинен закінчуватися назвою файлу старту браузера і його розширенням).
Запобіжні заходи
Але в цілому можна відзначити, що боротьба з вірусами – справа досить серйозна і клопітка. На практиці більшість відомих вірусних загроз проникає в систему з вини самого користувача, який не дотримується рекомендовані заходи безпеки. Щоб убезпечити себе від можливого вторгнення загроз, нічого особливо складно робити не потрібно. Досить звертати увагу на такі моменти:
- завантажувати та встановлювати програми тільки з офіційних або заслуговуючих довіри джерел;
- звертати особливу увагу на сумнівні пропозиції щодо встановлення партнерських програмних продуктів;
- не відвідувати сумнівні ресурси в інтернеті, ігноруючи попередження антивірусних програм;
- перевіряти перед використанням зовнішні носії підключаються (особливо це стосується флешок та карт пам’яті);
- перед переглядом або скачуванням сканувати вкладення електронної пошти;
- обмежувати доступ до комп’ютера, дисків та інформації, що на них зберігається, шляхом встановлення паролів або шифрування вмісту;
- застосовувати заходи боротьби з вірусами, пов’язані з періодичною перевіркою системи на предмет їх можливо наявності на комп’ютері;
- своєчасно створювати архівні або резервні копії важливих даних;
- при реєстрації на одному терміналі декількох користувачів обов’язково перезавантажувати комп’ютер, коли здійснюється зміна юзера;
- використовувати найбільш потужні штатні антивіруси;
- проводити постійне оновлення антивірусних баз, якщо в автоматичному режимі такі операції не передбачені, або їх неможливо виконати через відсутність виходу в інтернет.