- •Глава 1 Все о нем и немного о.
- •1.1. Феномен компьютерных вирусов
- •1.2. Что такое компьютерный вирус
- •1.2.1. Объяснение для домохозяйки
- •1.2.2. Попытка дать "нормальное" определение
- •Обязательное (необходимое) свойство компьютерного вируса —
- •1.3. Кто и почему пишет вирусы?
- •1.4. История компьютерных вирусов — от древности до наших дней
- •1.4.1. Самое начало. Немного археологии
- •1.4.2. Начало пути
- •1.4.3. Полиморфизм — мутация вирусов
- •1.4.4. Автоматизация производства и конструкторы вирусов
- •1.4.5. За пределы dos
- •1.4.6. Эпидемия макровируса
- •1.4.7. Хронология событий
- •1.5. Перспективы: что будет завтра и послезавтра
- •Глава 2. Классификация компьютерных вирусов
- •2.1. Файловые вирусы
- •2.1.1. Overwriting-вирусы
- •2.1.2. Parasitic-вирусы
- •2.1.3. Companion-вирусы
- •2.1.4. Link-вирусы
- •2.1.5. Файловые черви
- •2.1.7. Алгоритм работы файлового вируса
- •2.1.8. Особые случаи
- •2. 2. Загрузочные вирусы
- •2.3 Макровирусы
- •2.3.1. Word-, Excel-, Office 97-вирусы
- •2.3.2. Алгоритм работы Word-макровирусов
- •2.3.3. Алгоритм работы Excel-макровирусов
- •2.3.4. AmiPro-вирусы
- •2.4. Сетевые вирусы
- •2.5. Прочие вредные программы
- •2.5.1. "Троянские кони" (логические бомбы)
- •2.5.2. Intended-вирусы
- •2.5.3. Конструкторы вирусов
- •2.5.4. Полиморфные генераторы
- •2.6. Резидентные вирусы
- •2.6.2. Загрузочные вирусы
- •2.6.3. Windows-вирусы
- •2.6.4. Макровирусы
- •2.7. "Стелс"-вирусы
- •2.7.1. Загрузочные вирусы
- •2.7.2. Файловые вирусы
- •2.7.3. Макровирусы
- •2.8. Полиморфик-вирусы
- •2.8.1. Полиморфные расшифровщики
- •2.8.2. Уровни полиморфизма
- •2.8.3. Изменение выполняемого кода
- •Глава 3 Методы обнаружения и удаления компьютерных вирусов
- •3.1 Профилактика заражения компьютера
- •3.2. Откуда берутся вирусы
- •3.2.1. Глобальные сети — электронная почта
- •3.2.2. Электронные конференции, файл-серверы ftp и bbs
- •3.2.3. Локальные сети
- •3.2.4. Пиратское программное обеспечение
- •3.2.5. Персональные компьютеры общего пользования
- •3.2.6. Ремонтные службы
- •3.3. Основные правила защиты
- •3.4.2. Типы антивирусов
- •3.4.3. Антивирусные программы, наиболее известные в России
- •Virusafe
- •3.4.4. Методика использования антивирусных программ
- •3.5. Обнаружение неизвестного вируса
- •3.6. Обнаружение загрузочного вируса
- •3.7. Обнаружение файлового вируса
- •3.8. Обнаружение макровируса
- •3.9. Обнаружение резидентного вируса
- •3.9.2. Windows-вирусы
- •3.10. Анализ алгоритма вируса
- •3.11. Восстановление пораженных объектов
- •3.11.1. Восстановление файлов-документов и таблиц
- •3.11.2. Восстановление загрузочных секторов
- •3.11.3. Восстановление файлов
- •3.11.4. Дезактивация оперативной памяти
- •Глава 4. Описание вирусов
- •4.1 Файловые вирусы
1.4.3. Полиморфизм — мутация вирусов
Первый полиморфик-вирус появился в начале 90-х годов. Это был Chameleon. Но по-настоящему серьезной проблема полиморфик-вирусов стала лишь год спустя — в апреле 1991-го, когда практически весь мир был охвачен эпидемией полиморфик-вируса Tequila (насколько мне известно, эта эпидемия практически не затронула Россию, а первая российская эпидемия, вызванная полиморфик-вирусом, нагрянула три года спустя — в 1994 г., это был вирус Phantom 1).
Популярность идеи самошифрующихся полиморфик-вирусов вылилась в появление генераторов полиморфик-кода. В начале 1992 г. появляется знаменитый вирус Dedicated, базирующийся на первом известном полиморфик-ге-нераторе MtE и открывший серию MtE-вирусов, а через довольно короткое время появляется и сам полиморфик-генератор. Представляет он из себя объектный модуль (OBJ-файл), и теперь для того, чтобы из самого обычного нешифрованного вируса получить полиморфик-мутанта, достаточно лишь скомпоновать их объектные модули — OBJ-файл полиморфик-генератора с OBJ-файлом вируса. Автору вируса, если он пожелает создать настоящий полиморфик-вирус, уже не надо корпеть над кодами собственного зашифровщи-ка/расшифровщика. При желании он может подключить к своему вирусу полиморфик-генератор и вызывать его из кодов вируса.
К счастью, первый MtE-вирус не попал в "живую природу" и не вызвал эпидемии, а разработчики антивирусных программ соответственно имели некоторый запас времени для подготовки к отражению новой напасти.
Всего год спустя изготовление полиморфик-вирусов становится уже ремеслом, и в 1993 г. произошел их "обвал". В поступающих в коллекцию вирусах удельный вес самошифрующихся полиморфик-вирусов становится все больше и больше. Создается впечатление, что одним из основных направлений в трудном деле создания вирусов становится разработка и отладка поли-морфик-механизма, а конкуренция среди авторов вирусов сводится не к тому, кто из них напишет самый крутой вирус, а чей полиморфик-механизм окажется круче всех.
Вот далеко не полный список тех из них, которые можно назвать стопроцентно полиморфными (на конец 1993 г.): Bootache, CivilWar (четыре версии), Crusher, Dudley, Fly, Freddy, Ginger, Grog, Haifa, Moctezuma (две версии), MVF, Necros, Nukehard, PcFly (три версии), Predator, Satanbug, Sandra, Shoker, Todor, Tremor, Trigger, Uruguay (восемь версий).
Для обнаружения этих вирусов приходится использовать специальные методы, к которым можно отнести эмуляцию выполнения кода вируса, математические алгоритмы восстановления участков кода и данных в вирусе и т. д. К нестопроцентным полиморфикам (т. е. вирусам, которые шифруют себя, но в дешифраторе вируса всегда существуют постоянные байты) можно отнести еще десяток новых вирусов: Basilisk, Daemaen, Invisible (две версии), Mirea (несколько версий), Rasek (три версии), Sarov, Scoundrel, Seat, Silly, Simulation.
Однако и они требуют расшифровки кода для их обнаружения и восстановления пораженных объектов, поскольку длина постоянного кода в дешифраторе этих вирусов слишком мала.
Параллельно с полиморфик-вирусами развиваются полиморфик-генера-торы, появляется несколько новых, использующих более сложные методы генерации полиморфик-кода, они распространяются по станциям BBS в виде архивов, содержащих объектные модули, документацию и примеры использования. В конце 1993 г. было известно уже семь генераторов полиморфик-кода. Это: МТЕ 0.90 (Mutation Engine), четыре различные версии ТРЕ (Trident Polymorphic Engine), NED (Nuke Encryption Device), DAME (Dark Angel's Multiple Encryptor).
С тех пор новые полиморфные генераторы появлялись по нескольку штук в год, и приводить их полный список вряд ли имеет смысл.