Чи загрожує СНІД комп'ютеру?

Матеріал з Черкащина
Перейти до: навігація, пошук

Історія та суть проблеми

Історія свідчить, що ідею створення комп'ютерних вірусів окреслив письменник-фантаст Т. Дж. Райн, котрий в одній із своїх книжок, написаній в США в 1977 р., описав епідемію, що за короткий час охопила біля 7000 комп'ютерів. Причиною епідемії став комп'ютерний вірус, котрий передавався від одного комп'ютера до другого, пробирався в їх операційні системи і виводив комп'ютери з-під контролю людини. В 70-х роках, коли вийшла книжка Т.Дж. Райна, описані в ній факти здавалися фантастикою, і мало хто міг передбачати, що вже в кінці 80-х років проблема комп'ютерних вірусів стане великою дійсністю, хоч і не смертельною для людства в єдиноборстві з комп'ютером, але призвівшою до деяких соціальних і матеріальних втрат. Під час досліджень, проведених, однією з американських асоціацій по боротьбі з комп'ютерними вірусами, за сім місяців 1988 р. комп'ютери, які належали фірмам-членам асоціації, піддавались дії 300 масових вірусних атак, які знищили близько 300 тис. комп'ютерних систем, на відтворення яких було затрачено багато часу і матеріальних затрат. В кінці 1989 р. в пресі з'явилося повідомлення про знаходження в Японії нового, надзвичайно підступного і руйнівного віруса (його назвали хробаком), за короткий час він знищив дані на великій кількості машин, під'єднаних до комунікаційних ліній. Переповзаючи від комп'ютера до комп'ютера, через з'єднуючі комунікації, «черв'як» знищував вміст пам'яті, не залишаючи ніяких надій на відновлення даних. Надзвичайна схожість між логікою роботи біологічних та комп'ютерних вірусів дає підставу прогнозувати наявність епідемій, використання карантинів, як запобіжних засобів та навіть, існування таких "хвороб" на кшталт СНІДу. Отже, спробуємо проаналізувати різні типи вірусів, сценарії їх функціонування (перебіг хвороби), способи враження комп'ютерів та їх виведення з ладу (симптоматика).

Класифікація

Всі віруси можна поділити на групи :

  1. Завантажувальні віруси — Заражають завантажувальні сектори жорстких дисків (вінчестерів) і дискет.
  2. Файлові віруси — Заражають файли. Ця група в свою чергу поділяється на віруси, які заражають виконувальні файли (сом-, ехе-віруси); файли даних (макровіруси); віруси — супутники, які використовують імена інших програм; віруси сімейства dir, які використовують інформацію про файлову структуру. Причому два останніх типи зовсім не модифікують файли на диску.
  3. Завантажувально-файлові віруси — спроможні вражати, як код завантажувальних секторів, так і код файла. Віруси поділяються на 

резидентні та нерезидентні. Перші при отриманні керування, завантажуються в пам'ять і можуть діяти на відміну від нерезидентних не тільки під час роботи зараженого файла.

  4. Stealth-віруси — фальсифікують інформацію, читаючи з диску так, що активна програма отримує невірні дані. Вірус перехоплює вектор призупинення INT 13h і поставляє зчитувальній програмі іншу інформацію, яка показує, що на диску «все в нормі». Ця технологія використовується як в файлових, так і в завантажувальних вірусах.
  5. Ретровіруси — звичайні файлові віруси, котрі заражають антивірусні програми, знищують їх або роблять їх непрацездатними. Тому практично всі антивіруси, в першу чергу перевіряють свій розмір і контрольну суму файлів.
  6. Multipartition—віруси — можуть вражати одночасно exe, com, boot-сектор, mother boot record, FAT і директорії. Якщо вони до того ж володіють поліморфними властивостями і елементами невидимості, то стає зрозуміло, що такі віруси — одні з найбільш небезпечних.
  7. Троянські програми (англ. Trojans) — проводять шкідливі дії замість оголошених легальних функцій або наряду з ними. Вони не спроможні на самовідтворення і передаються тільки при копіюванні користувачем.

Методи знаходження вірусів

Антивірусне програмне забезпечення звичайно використовує два різних методи для виконання своїх задач:

   * Перегляд (сканування) файлів для пошуку відомих вірусів, що відповідають визначенню в словнику вірусів.
   * Знаходження підозрілої поведінки будь-якої з програм, що схожа на поведінку зараженої програми.
Відповідність визначенню вірусів в словнику

Цей метод, коли антивірусна програма під час перегляду файлу, звертається до словника з відомими вірусами, що складений авторами програми-антивірусу. У випадку відповідності якоїсь ділянки кода програми, що проглядається, відомому коду(сигнатурі) вірусу в словнику, програма антивірус може виконувати одну з наступних дій:

   * Видалити інфікований файл
   * Відправити файл в карантин (тобто зробити його недоступним для виконання, з метою недопущення подальшого розповсюдження вірусу).
   * Намагатися відтворити файл, видаливши сам вірус з тіла файлу.

Хоча антивірусні програми, створенні на основі пошуку відповідності визначенню вірусу в словнику, за звичайних обставин, можуть досить ефективно перешкоджати збільшенню випадків зараження комп'ютерів, автори вірусів намагаються триматися на півкроку попереду таких програм-антивірусів, створюючи «олігоморфні», «поліморфні» і, найновіші, «метаморфічні» віруси, у яких деякі частини шифруються або спотворюються так, щоб неможливо було знайти спільне з визначенням в словнику вірусів. Підозріла поведінка програм

Антивіруси, що використовують метод знаходження підозрілої поведінки програм, не намагаються ідентифікувати відомі віруси, замість цього вони слідкують за поведінкою всіх програм. Якщо програма намагається записати якісь данні в файл, що виконується(exe - файл), програма-антивірус може зробити помітку цього файлу, попередити користувача і спитати, що треба зробити.


На відміну від методу відповідності визначенню вірусів в словнику, метод знаходження підозрілої поведінки дає захист від абсолютно нових вірусів, яких ще немає в жодному словнику вірусів. Однак треба враховувати, що програми, побудовані на цьому методі, видають також велику кількість помилкових попереджень. Програми класу Firewall давно мали в своєму складі модуль знаходження підозрілої поведінки програм. Емуляція

Деякі програми-антивіруси намагаються імітувати початок виконання кода кожної нової програми, що викликається для виконання, перед тим, як передати їй керування. Якщо програма використовує код, що змінюється самостійно, або проявляє себе як вірус (тобто починає шукати інші exe-файли, наприклад),- така програма буде вважатися шкідливою (здатною нашкодити іншим файлам). Однак цей метод також має велику кількість помилкових попереджень. Сьогодні створено дуже багато антивірусних програм та ще більше вірусів, тому ефективіність, а відповідно і популірність антивірусних засобів не є абсолютною та постійно змінюється залежно від активності певного класу вірусів та готовності антивіруса боротися з конкретними вірусами.