Існує розподіл поліморфік-вірусів на рівні в залежності від складності коду, який зустрічається в розшифровщик цих вірусів. Такий поділ вперше запропонував д-р. Алан Соломон, через деякий час Весселін Бончев розширив його.
Рівень 1: віруси, які мають певний набір розшифровувачів з постійним кодом і при зараженні вибирають один з них. Такі віруси є "напів-Полиморфик" і носять також назву "олігоморфік" (oligomorphic). Приклади: "Cheeba", "Slovakia", "Whale".
Рівень 2: розшифровщик вірусу містить одну або кілька постійних інструкцій, основна ж його частина непостійна.
Рівень 3: розшифровщик містить невикористовувані інструкції - "сміття" типу NOP, CLI, STI і т.д.
Рівень 4: в розшифровувача використовуються взаємозамінні інструкції і зміна порядку проходження (перемішування) інструкцій. Алгоритм розшифрування при цьому не змінюється.
Рівень 5: використовуються всі перераховані вище прийоми, алгоритм розшифрування непостійний, можливе повторне шифрування коду вірусу і навіть часткове шифрування самого коду расшифровщика.
Рівень 6: permutating-віруси. Зміні підлягає основний код вірусу - він ділиться на блоки, які при зараженні переставляються в довільному порядку. Вірус при цьому залишається працездатним. Подібні віруси можуть бути незашифрованому.
Наведене вище поділ не вільно від недоліків, оскільки проводиться за єдиним критерієм - можливість детектувати вірус за кодом расшифровщика за допомогою стандартного прийому вірусних масок:
Рівень 1: для виявлення вірусу досить мати кілька масок
Рівень 2: детектування по масці з використанням "wildcards"
Рівень 3: детектування по масці після видалення інструкцій- "сміття"
Рівень 4: маска містить кілька варіантів можливого коду, тобто
Рівень 5: неможливість виявлення вірусу по масці
Недостатність такого поділу продемонстрована у вірусі 3-го рівня поліморфічность, який так і називається - "Level3". Цей вірус, будучи одним з найбільш складних поліморфік-вірусів, за наведеним вище поділу потрапляє в Рівень 3, оскільки має постійний алгоритм расшафровкі, перед яким стоїть велика кількість команд- "сміття". Однак в цьому вірусі алгоритм генерування "сміття" доведений до досконалості: в коді расшифровщика можуть зустрітися практично всі інструкції процесора i8086.
Якщо зробити розподіл на рівні з точки зору антивірусів, що використовують системи автоматичної розшифровки коду вірусу (емулятори), то розподіл на рівні буде залежати від складності емуляції коду вірусу. Можливо детектування вірусу і іншими прийомами, наприклад, розшифрування за допомогою елементарних математичних законів і т.д.
Тому мені здається більш об'єктивним розподіл, в якому крім критерію вірусних масок беруть участь і інші параметри.
1. Ступінь складності поліморфік-коду (відсоток від усіх інструкцій процесора, які можуть зустрітися в коді расшифровщика)
2. Використання анти-емуляторние прийомів
3. Сталість алгоритму расшифровщика
4. Сталість довжини расшифровщика
Мені не хотілося б викладати ці пункти докладніше, оскільки в результаті це однозначно підштовхне вірусів до створення подібного роду монстрів.
Всі теми даного розділу:
Алгоритм роботи завантажувального вірусу
Практично всі завантажувальні віруси резидентні. Вони впроваджуються в пам'ять комп'ютера при завантаженні з інфікованого диска. При цьому системний завантажувач зчитує вміст першого сектора диска, з ко
файлові віруси
1. Способи зараження 2. Інші зауваження
Способи зараження -> Overwriting
Даний метод зараження є найбільш простим: вірус записує свій код замість коду заражає файли, знищуючи його вміст. Природно, що при цьому файл перестає працювати і не восстанав
Способи зараження -> Віруси без точки входу
Окремо слід відзначити досить незначну групу вірусів, що не мають "точки входу" (EPO-віруси - Entry Point Obscuring viruses). До них відносяться віруси, що не записують команд пров
Способи зараження -> Файлові черви
Файлові черви (worms) є, в деякому сенсі, різновидом компаньйон-вірусів, але при цьому жодним чином не пов'язують свою присутність з яким-небудь виконуваним файлом. При розмноженні вони
Способи зараження -> Link-віруси
Link-віруси, як і компаньйони-віруси не змінюють фізичного вмісту файлів, проте при запуску зараженого файлу "змушують" ОС виконати свій код. Цій меті вони досягають модифікацією
Способи зараження -> OBJ-, LIB-віруси і віруси у вихідних текстах
Віруси, що заражають бібліотеки компіляторів, об'єктні модулі і вихідні тексти програм, досить екзотичні і практично не поширені. Всього їх близько десятка. Віруси, що заражають OBJ- і LIB-
Впровадження вірусу в DOS COM- і EXE-файли
Що Їх виконавчі файли DOS мають формати COM або EXE, що розрізняються заголовком і способом запуску програм на виконання. Розширення імені файлу ( ".COM" або ".EXE") не завжди
примітивна маскування
При інфікуванні файлу вірус може виробляти ряд дій, що маскують і прискорюють його поширення. До подібних дій можна віднести обробку атрибута read-only, зняття його перед заражений
швидкість поширення
Говорячи про файлові віруси, необхідно відзначити таку їх рису, як швидкість поширення. Чим швидше поширюється вірус, тим імовірний виникнення епідемії цього вірусу. Чим повільніше рас
Алгоритм роботи файлового вірусу
Отримавши управління, вірус робить такі дії (наведено список найбільш загальних дій вірусу при його виконанні; для конкретного вірусу список може бути доповнений, пункти можуть помінятися
Макро-віруси -> Word / Excel / Office97-віруси. Принципи роботи
При роботі з документом Word версій 6 і 7 виконує різні дії: відкриває документ, зберігає, друкує, закриває і т.д. При цьому Word шукає і виконує відповідні "вбудовані мак
Макро-віруси -> Алгоритм роботи Word макро-вірусів
Більшість відомих Word-вірусів (версій 6, 7 і Word97) при запуску переносять свій код (макроси) в область глобальних макросів документа ( "загальні" макроси), для цього вони використовують кома
Макро-віруси -> Алгоритм роботи вірусів для Access
Оскільки Access є частиною пакета Office97 Pro, то віруси для Access є такі ж макроси на мові Visual Basic, як і інші віруси, що заражають додатки Office97. Однак в д
Полиморфик-віруси -> Поліморфні розшифровувача
Найпростішим прикладом частково поліморфного розшифровувача є наступний набір команд, в результаті застосування якого жоден байт коду самого вірусу і його расшифровщика не є постійним
Полиморфик-віруси -> Зміна виконуваного коду
Найбільш часто подібний спосіб поліморфізму використовується макро-вірусами, які при створенні своїх нових копій випадковим чином змінюють імена своїх змінних, вставляють порожні рядки або змінюють з
Стелс-віруси -> Завантажувальні віруси
Завантажувальні стелс-віруси для приховування свого коду використовують два основних способи. Перший з них полягає в тому, що вірус перехоплює команди читання зараженого сектора (INT 13h) і підставляє
Стелс-віруси -> Файлові віруси
Большінcтво файлових стелс вірусів використовує ті ж прийоми, що наведені вище: вони або перехоплюють DOS-виклики звернення до файлів (INT 21h) або тимчасово лікують файл при його відкритті і заражають п
Стелс-віруси -> Макро-віруси
Реалізація стелс-алгоритмів в макро-віруси є, напевно, найбільш простим завданням - досить усього лише заборонити виклик меню File / Templates або Tools / Macro. Досягається це або видаленням
Резидентні віруси -> DOS-віруси
DOS передбачає два легальних способу створення резидентних модулів: драйверами, що вказуються в CONFIG.SYS, і за допомогою функції KEEP (INT 21h, AH = 31h або INT 27h). Багато файлові віруси для ма
Резидентні віруси -> Windows-віруси
Для того, щоб залишити виконуваний код в пам'яті Windows, існує три способи, причому всі три способи (за винятком Windows NT) вже застосовувалися різними вірусами. Найпростіший спо
Інші "шкідливі програми" -> Intended-віруси
До таких вірусів належать програми, які на перший погляд є стовідсотковими вірусами, але не спроможні розмножуватися через помилки. Наприклад, вірус, який при зараженні "забуває
Інші "шкідливі програми" -> Конструктори вірусів
Конструктор вірусів - це утиліта, призначена для виготовлення нових комп'ютерних вірусів. Відомі конструктори вірусів для DOS, Windows і макро-вірусів. Вони дозволяють генерувати вихідні т
Інші "шкідливі програми" -> Поліморфні генератори
Полиморфик-генератори, як і конструктори вірусів, не є вірусами в буквальному значенні цього слова, оскільки в їхній алгоритм не закладаються функції розмноження, тобто відкриття, закриття та записи в
IRC-черв'яки -> IRC-клієнти
На комп'ютерах з MS Windows найпоширенішими клієнтами є mIRC і PIRCH. Це не дуже об'ємні, але досить складні програмні продукти, які крім надання основних послуг IR
IRC-черв'яки -> Скрипт-хробаки
Як виявилося, потужна і розгалужена система команд IRC-клієнтів дозволяє на основі їх скриптів створювати комп'ютерні віруси, передають свій код на комп'ютери користувачів мереж IRC, так звані
IRC-черв'яки -> Win95.Fono
Небезпечний резидентний файлово-завантажувальний поліморфік-вірус. Використовує mIRC як один із способів свого поширення: перехоплює системні події Windows і при запуску файлу MIRC32.EXE актівізі
IRC-черв'яки -> pIRCH.Events
Перший відомий PIRCH-черв'як. Розсилає себе кожному приєднався до каналу користувачеві. За ключовими словами виконує різні дії, наприклад: по команді ".query"
Мережеві віруси
До мережевих відносяться віруси, які для свого поширення активно використовують протоколи і можливості локальних і глобальних мереж. Основним принципом роботи мережного вірусу є возможност