Классификация компьютерных вирусов. — страница 13

  • Просмотров 9260
  • Скачиваний 450
  • Размер файла 43
    Кб

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

примеры полиморфизма - DOS-вирус "Bomber", например, не зашифрован, однако последовательность команд, которая передает управление коду вируса, является полностью полиморфной. Полиморфизм различной степени сложности встречается в вирусах всех типов - от загрузочных и файловых DOS-вирусов до Windows-вирусов и даже макро-вирусов. 7.1 Полиморфные расшифровщики Простейшим примером частично полиморфного расшифровщика является

следующий набор команд, в результате применения которого ни один байт кода самого вируса и его расшифровщика не является постоянным при заражении различных файлов: MOV reg_1, count ; reg_1, reg_2, reg_3 выбираются из MOV reg_2, key ; AX,BX,CX,DX,SI,DI,BP MOV reg_3, _offset ; count, key, _offset также могут меняться_LOOP: xxx byte ptr [reg_3], reg_2 ; xor, add или sub DEC reg_1 Jxx _loop; ja или jnc; дальше следуют зашифрованные код и данные вируса Более сложные полиморфик-вирусы используют значительно более

сложные алгоритмы для генерации кода своих расшифровщиков: приведенные выше инструкции (или их эквиваленты) переставляются местами от заражения к заражению, разбавляются ничего не меняющими командами типа NOP, STI, CLI, STC, CLC, DEC неиспользуемый регистр, XCHG неиспользуемые регистры и т.д. Полноценные же полиморфик-вирусы используют еще более сложные алгоритмы, в результате работы которых в расшифровщике вируса могут встретиться

операции SUB, ADD, XOR, ROR, ROL и другие в произвольном количестве и порядке. Загрузка и изменение ключей и других параметров шифровки производится также произвольным набором операций, в котором могут встретиться практически все инструкции процессора Intel (ADD, SUB, TEST, XOR, OR, SHR, SHL, ROR, MOV, XCHG, JNZ, PUSH, POP ...) со всеми возможными режимами адресации. 8. IRC-черви IRC (Internet Relay Chat) — это специальный протокол, разработанный для коммуникации пользователей

Интернет в реальном времени. Этот протокол предоставлят возможность Итрернет-"разговора" при помощи специально разработанного программного обеспечения. Существует довольно большое количество IRC-команд, при помощи которых пользователь может получить информацию о других пользователях и каналах, изменять некоторые установки IRC-клиента и прочее. Сущетсвует также возможность передавать и принимать файлы - именно на этой