Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - 16.3. Комп'ютерні віруси і інші шкідливі програми
Перші дослідження штучних конструкцій, які здатні до відтворення самих себе, проводились в середині минулого століття відомими вченими-математиками Джоном фон Нейманом і Норбертом Вінером. Звісно, в колишньому СРСР цьому питанню також приділялось достатньо уваги - вивчались самовідтворювальні кінцеві автомати.
Термін "комп'ютерний вірус" з'явився значно пізніше - офіційно вважається, що його вперше вжив співробітник Лехайського університету (США) Фред Коен у 1984 році на конференції. За означенням Коена,
Комп'ютерний вірус - це програма, що володіє здатністю заражати інші програми, шляхом додавання до них своєї, можливо зміненої, копії
Як бачимо, означення доволі неоднозначне. І чіткого формального визначення, що ж таке цей вірус, до сих пір немає.
Комп'ютерний вірус - одне з найцікавіших явищ, які можна спостерігати в результаті розвитку комп'ютерної техніки. Програми (які є лише послідовністю символів) набувають властивостей, що притаманні живим організмам - народжуються, розмножуються та вмирають.
Головна умова існування вірусів - універсальна інтерпретація інформації в обчислювальних системах. Один і той самий вірус у процесі зараження програми може сприймати її як дані, а в процесі виконання - вже як виконавчий код. Цей принцип було покладено в основу всіх сучасних комп'ютерних систем, які використовують архітектуру фон Неймана. Принципова відмінність вірусу від троянської програми полягає в тому, що вірус після попадання (з носієм) в комп'ютерну систему існує автономно і в процесі свого функціонування заражає (інфікує) програми.
Фізична структура вірусу є доволі простою. Він складається з голови та тіла (хвоста). Голова - це та частина коду вірусу, що виконується першою. Код тіла розміщується окремо від голови в коді зараженої програми. Якщо вірус складається лише з голови, то він називається несегментованим, з голови та тіла - сегментованим.
Для зараження файлів віруси використовують три основних способи (рис.16.2): запис з перекриттям (overwriting), запис на початку (prepending) та запис в кінці файлу (appending).
В першому випадку файл виявляється повністю зіпсованим, оскільки частину даних було затерто вірусом. Такі віруси зустрічаються вкрай рідко. При спробі відкрити заражений файл відбувається зараження ще одного файлу. Коли вірус записує себе на початку файлу, при його відкритті першим запускається код вірусу, а потім програма-оригінал. Віруси, розміщені після основного коду, переміщають початок програми (рис.16.2) в кінець файлу, а на його місці ставлять команду переходу на початок завантаження (jmp). Тобто керування одразу передається вірусу, що переносить початок програми назад і дозволяє програмі запуститись.
З поняттям "комп'ютерний вірус" тісно пов'язане таке поняття, як сигнатура. Сигнатура - це фрагмент коду, який є у всіх копіях вірусу і тільки в них. Тобто, це є підписом вірусу, що однозначно визначає його присутність або відсутність у програмі.
Рис.16.2. Варіанти розміщення вірусу у коді програми
Наприкінці минулого століття з'явилось багато дискусій та публікацій про те, чи може людина заразитись комп'ютерним вірусом? І знаходились такі, що відверто в це вірили, ототожнюючи комп'ютерний вірус з, скажімо, вірусом грипу. Та доки людина є живим організмом, комп'ютерні віруси будуть загрожувати лише інформації на її комп'ютері, програмному чи апаратному забезпеченню, але ніяк не здоров'ю.
Звісно, людину можна заразити аналогом комп'ютерного вірусу, ввівши йому в підсвідомість певну шкідливу ідею, але це вже буде предметом вивчення для галузі нейролінгвістичного програмування (програмування людини на низькому рівні).
Типи вірусів. Ефекти. Для виявлення та видалення вірусу насамперед необхідно його однозначно класифікувати за обмеженим набором простих і вірних ознак, які не потребують глибокого аналізу заражених програм і елементів ОС. Існує неофіційна класифікація, в якій назва вірусу відображає ту чи іншу його властивість:
1) за місцем виявлення або розробки вірусу
(Jerusalem - зниження швидкодії комп'ютера, додає 1813 байтів до com-файлів та багатократно заражає exe-файли. Vienna - зациклювання при завантаженні);
2) за змістом текстових рядків у коді вірусу (Vacsine - змінює розширення файлу);
3) за ефектом дії вірусу (Cascade - "випадання" букв на нижню стрічку екрану)
4) за довжиною вірусу або зростанням довжини файлу при зараженні, або за датою активації. (524, 648, 2000)
Зазначимо, що така класифікація є суто практичною і не може використовуватись антивірусними засобами для ідентифікації вірусу. Оскільки той самий вірус, наприклад Cascade також може мати іншу назву - 1701, бо додає 1701 байтів до com-файлів. Вірус CIH, відомий також як Чорнобиль, тому що вірус активувався 26 квітня - день катастрофи на
Чорнобильській АБС. А от вірус Frodo (розміщує в сектор завантаження день народження хоббіта Фродо з "Володаря перснів" Толкієна) має дуже багато назв:
O 4096 або 4К - за кількістю доданих байтів до com - та exe-файлів;
O 100-річний, оскільки додає 100 років до дати створення зараженого файлу;
O Stealth - бо при наявності вірусу в пам'яті, зміна довжини файлів при зараженні не відображається.
Отже, лише за такими властивостями вірусів віднести їх до певного типу буде дуже складно. Як вирішили цю проблему розробники антивірусної продукції? Вони почали використовувати для класифікації три основні елементи:
O класифікаційний код вірусу;
O дескриптор вірусу - формалізований список основних властивостей;
O сигнатуру вірусу.
Класифікаційний код вірусу складається із літерного префіксу, кількісної характеристики та літерного суфіксу. Префікс вказує на місце розміщення голови вірусу і складається із літер та цифр. Відповідно до цього розрізняють такі типи вірусів:
O файлові - голова розміщується у com - та exe-файлах (бувають резидентними та нерезидентними, за аналогією із програмними закладками, див. р.15). Символи C та E використовуються в префіксі;
O бутові (від "boot"- початкове завантаження) - голова вірусу розміщується в секторі завантаження або у блоці MBR. Символи B, R або M у префіксі;
O пакетні - голова вірусу представляє собою рядок чи програму на мові керування завданнями ОС. Префікс J;
O гібридні - володіють властивостями декількох типів.
Характеристика вірусу - це кількісно вимірювальна властивість, яка допускає просте визначення і розрізняється для більшості типів вірусів. Наприклад, для файлових вірусів як характеристика може використовуватись величина приросту довжини файлу про зараженні.
Суфікс використовується у разі, якщо два різних віруси мають однаковий префікс та характеристику.
Наприклад, вірус з кодовим позначенням RCE-1813 є бутовим, що інфікує com - та exe-файли, додаючи до них 1813 байт.
В процесі реалізації вірус викликає в комп'ютерній системі ряд ефектів, які однозначно стверджують про його присутність:
O спотворення інформації у файлах або таблиці розміщення файлів (FAT);
O імітація порушень в роботі апаратного забезпечення;
O створення звукових і візуальних ефектів, наприклад, сигнали точного часу через кожну годину або віконечко з написом "Комп'ютер створено не для ігор!!!"
O повідомлення неправдивого змісту про стан системи, що ускладнюють роботу користувача;
O ініціювання помилок в програмах або ОС;
O зчитування з пам'яті і переміщення в інше місце інформації.
Хробаки та рекламні системи Adware. Хробак - це програма, яка розповсюджується через комп'ютерну мережу і не залишає своєї копії на магнітному носії. Хробак використовує механізм підтримки мережі для визначення вузла, який може бути заражений. Потім за допомогою тих самих механізмів передає своє тіло або його частину на цей вузол і активізується, або чекає сприятливих умов. Найсприятливішим середовищем для розповсюдження хробака є мережа, де користувачі довіряють один одному. Найкращім способом захисту від програм-хробаків є створення умов для неможливості несанкціонованого доступу до мережі.
У вірусу і хробака є спільною здатність до відтворення самих себе. Хробак копіює себе при першій нагоді. На відміну від вірусу, хробаку не потрібен носій.
Хробак може поширювати себе за допомогою пошти, ICQ чи інших засобів комунікації. Автори вірусів останнім часом почали все частіше використовувати програми, які самі по собі не є шкідливими, але залишають в системі троянську програму або завантажують її з Інтернету. Такі програми часто застосовують і для встановлення без відома користувача так званих Adware та Pornware програм, які не є вірусами, проте збирають інформацію про користувача. Adware - це програми, що відображають рекламу, іноді банери, без відома та згоди користувача. Pornware - програми, що з'єднуються із платними сайтами "для дорослих" також без відома та згоди користувача.
Жадібні програми (greedy programs). Вони намагаються монополізувати який-небудь ресурс, не даючи іншим програмам можливості використати його. Безпосередній атаці в більшості випадків піддаються такі об'єкти системи, як процесор, оперативна пам'ять, пристрої вводу-виводу.
Критична ситуація може виникнути тоді, коли "жадібна" програма виконує нескінчений цикл. Оскільки в багатьох ОС час використання процесора для однієї програми є обмеженим і контролюється системою, то "жадібна" програма може перехоплювати асинхронне до основної програми повідомлення про закінчення операцій вводу-виводу і посилати запит на новий ввід. Так можна досягти зациклення без можливості втручання ОС. Такі атаки називають також асинхронними.
Інший варіант "жадібної" програми - захоплення дуже великої ділянки оперативної пам'яті. Це є можливим, наприклад, при послідовному розміщенні в ОП великого обсягу даних, що надходять з зовнішнього носія (забивання пам'яті).
У галузі вірусів необхідно відзначити, що в 2004 році вперше з'явились загрози безпеці мобільних пристроїв. В червні був створений перший вірус для мобільних телефонів Саbir. Він представляв собою першу спробу - чи можливо взагалі заразити ПЗ мобільного телефону? Виявилось, що так. Тоді в липні з'явились вірус Duts та троянська програма Вrador, орієнтовані на платформу РоcketРС. Оскільки засоби захисту мобільних пристроїв є досить слабкими, то в недалекому майбутньому конфіденційній інформації на них буде загрожувати істотна небезпека.
Схожі статті
-
Програмні закладки виконують принаймні одну з наступних дій: O вносять довільні спотворення в коди програм, що є в оперативній пам'яті комп'ютера...
-
Переходимо до розгляду проблеми та методів захисту інформації на окремому ПК. В кожного користувача є на улюбленій домашній машині і інформаційні...
-
Переходимо до розгляду проблеми та методів захисту інформації на окремому ПК. В кожного користувача є на улюбленій домашній машині і інформаційні...
-
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - Спотворення
Програмні закладки виконують принаймні одну з наступних дій: O вносять довільні спотворення в коди програм, що є в оперативній пам'яті комп'ютера...
-
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - Перехоплення
Програмні закладки виконують принаймні одну з наступних дій: O вносять довільні спотворення в коди програм, що є в оперативній пам'яті комп'ютера...
-
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - Імітатори
При зберіганні даних на зовнішніх носіях прямого доступу використовується декілька рівнів ієрархії: сектори, кластери і файли. Сектор - одиниця...
-
При зберіганні даних на зовнішніх носіях прямого доступу використовується декілька рівнів ієрархії: сектори, кластери і файли. Сектор - одиниця...
-
При зберіганні даних на зовнішніх носіях прямого доступу використовується декілька рівнів ієрархії: сектори, кластери і файли. Сектор - одиниця...
-
10.1. Комп'ютерні мережі. Види мереж На початку створення комп'ютерні мережі призначались та використовувались винятково як середовище передачі файлів і...
-
На сьогоднішній день ІС середніх і великих підприємств в більшості випадків на практиці реалізуються на основі персональних комп'ютерів, об'єднаних у...
-
10.1. Комп'ютерні мережі. Види мереж На початку створення комп'ютерні мережі призначались та використовувались винятково як середовище передачі файлів і...
-
13.1. World Wide Web та Hyper Text Markup Language World Wide Web (WWW) - найвідоміший та найпопулярніший сервіс Інтернет. Ця глобальна, розподілена по...
-
13.1. World Wide Web та Hyper Text Markup Language World Wide Web (WWW) - найвідоміший та найпопулярніший сервіс Інтернет. Ця глобальна, розподілена по...
-
13.1. World Wide Web та Hyper Text Markup Language World Wide Web (WWW) - найвідоміший та найпопулярніший сервіс Інтернет. Ця глобальна, розподілена по...
-
Коли обсяги Інтернет почали перевищувати декілька десятків сайтів, виникла задача пошуку потрібних даних без перегляду всієї наявної інформації. Почалися...
-
Практично всі сервіси мережі Інтернет побудовані на технології клієнт-сервер. Для роботи в мережі необхідно: O фізично приєднати комп'ютер до одного з...
-
Для web-сторінок існує чітко обумовлений набір шрифтів та кольорів. Це пояснюється тим, що створену сторінку можуть переглядати на будь-якому броузері,...
-
За означенням, доступність - це властивість інформації при її обробці технічними засобами, що забезпечує безперешкодний доступ до неї для проведення...
-
16.1. Складові безпеки. Поняття загрози і атаки За даними європейських Узгоджених Критеріїв Оцінки Безпеки Інформаційних Технологій (Information...
-
16.1. Складові безпеки. Поняття загрози і атаки За даними європейських Узгоджених Критеріїв Оцінки Безпеки Інформаційних Технологій (Information...
-
Технології, що реалізують модель процесу з розподіленими ресурсами, дають змогу всім користувачам мережі спільно використовувати дані та пристрої:...
-
5.1. Структура сховища даних та оптимізація його обсягів Методи інтелектуального аналізу інформації часто розглядають як природний розвиток концепції...
-
6.1. Інформаційні системи і технології в сучасному суспільстві В наш час відбувається глобальний перехід від індустріального суспільства до...
-
12.1. Розвиток електронної комерції Галузь електронної комерції виникла з появою механізмів здійснення безготівкових операцій з віддаленим доступом до...
-
12.1. Розвиток електронної комерції Галузь електронної комерції виникла з появою механізмів здійснення безготівкових операцій з віддаленим доступом до...
-
5.1. Структура сховища даних та оптимізація його обсягів Методи інтелектуального аналізу інформації часто розглядають як природний розвиток концепції...
-
Окрім вибору системи шифрування, яка оптимально відповідає характеру інформації, що обробляється, зберігається та передається в інформаційній системі,...
-
6.1. Інформаційні системи і технології в сучасному суспільстві В наш час відбувається глобальний перехід від індустріального суспільства до...
-
15.1. Законодавство і кіберзлочинці Насамперед розглянемо історичні підвалини появи програмного продукту. Спочатку комп'ютерні програми будь-якої...
-
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - Замінники
Ці програмні шпигуни збирають усі дані, що вводяться користувачем з клавіатури. Найпримітивніші фільтри записують все перехоплене в один файл на ЖД або в...
Інформаційні технології та моделювання бізнес-процесів - Томашевський О. М. - 16.3. Комп'ютерні віруси і інші шкідливі програми