Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Компьютерные вирусы.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
136.19 Кб
Скачать

Методы внедрения вирусов

 

Как вирус внедряется в загрузочный сектор?

Загрузочный вирус записывает себя в первый сектор диска, а его содержимое переписывает в другой сектор, или, другими словами, оригинальный загрузочный сектор диска вирус переносит в какой-либо другой сектор диска, а себя записывает на его место.

   Если длина вируса больше длины одного сектора, то в первый сектор помещается начало вируса, а его продолжение - в другие секторы диска.

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

Существует несколько способов размещения на диске первоначального загрузочного сектора и продолжения вируса:

1) в секторы свободных кластеров логического диска;

2) в неиспользуемые или редко используемые секторы;

3) в секторы, расположенные за пределами диска.

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

Неиспользуемым или редко используемым сектором на винчестере является один из секторов (если такие есть), расположенных между MBR и первым Boot-сектором.

На дискете неиспользуемый или редко используемый сектор выбирается из последних секторов корневого каталога.

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

 

Какие повреждения могут вызывать загрузочные вирусы?

Вкратце рассмотрим повреждения, не связанные с деструктивными функциями загрузочных вирусов, а связанные с внедрением такого вируса. Эти повреждения могут произойти в результате ошибок вируса.

Заражая MBR, который, напомним, состоит из программы начальной загрузки и таблицы разделов диска (Disk Partition Table), загрузочные вирусы часто записывают свое тело вместо программы начальной загрузки. Поэтому любая ошибка вируса может привести к потере этой программы. Очевидно, что без правильной программы первоначальной загрузки невозможно произвести загрузку компьютера.

При повреждении таблицы разделов диска некоторые или все логические диски будут недоступны.

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

Ошибка вируса при внедрении в загрузочный сектор дискеты чаще приводит к недоступности информации, записанной на данной дискете.

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

Какие файлы заражают вирусы?

Файловые вирусы - это самая большая группа вирусов. Они заражают любые исполняемые файлы.

1. Командные файлы. Это файлы, содержащие последовательность команд операционной системы. (С другой стороны, это обычные текстовые файлы.)

2. Исполняемые файлы в формате COM. СОМ-формат - это один из основных форматов исполняемых файлов. Размер СОМ-файла должен занимать не более 64 Кб. Они состоят из команд центрального процессора, то есть содержат машинные инструкции.

3. Исполняемые файлы в формате EXE. Такие файлы имеют расширение имени EXE. Они имеют более сложную структуру и размер больший 64 Кб. Кроме процессорных команд и данных эти файлы содержат специальный заголовок, который находится в самом начале файла. Заголовок EXE-файла начинается специальной двухбайтовой меткой (“MZ” или, реже “ZM”). По этой метке загрузчик и определяет файл как EXE-файл, независимо от расширения имени.

EXE-программы содержат несколько сегментов: сегмент кода, сегмент данных и сегмент стека. Поэтому в заголовке EXE-файла также хранится таблица настройки, которую использует загрузчик для инициализации программы. Обычно заголовок имеет размер 512 байт, и значительная его часть не используется (содержит нули).

4. Исполняемые файлы в формате PE (Potable Executable). Такие файлы также имеют расширение имени EXE, однако внутренняя структура файла отлична от формата EXE. Все исполняемые файлы Windows имеют такой формат.

5. Системные драйверы.

6. Также могут быть инфицированы и файлы оверлеев, и динамически загружаемых библиотек. Это файлы, содержащие исполняемые двоичные коды, используемые основной программой по мере необходимости.

 

Внедрение вирусов в исполняемые файлы

 

Файловые вирусы записывают свой код в исполняемый файл и изменяют его так, чтобы после запуска первым получил управление код вируса. Очевидно, что вирус может записать свой код в начало, середину или конец файла. Вирус может также разделить свой код на несколько частей и разместить их в разных местах заражаемого файла.

Внедрение вируса в начало файла.

Известны три способа внедрения вируса в начало файла.

1. Запись с перекрытием (overwriting). При заражении вирус записывает свои коды в начало файла, не сохраняя старого содержимого начала файла. Естественно, что при этом программа перестает работать и не восстанавливается. При запуске такой программы ничего не происходит, кроме того, что вирус заражает другой файл. Такие вирусы легко обнаруживаются и, следовательно, медленно распространяются.

2. Запись в начало программы.

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

3. Вирус переписывает начало заражаемого файла в его конец, а сам копируется в освободившееся место. Начало заражаемого файла вирус может переписать и в любое другое место.

В подавляющем большинстве случаев внедрение вируса в начало файла происходит при заражении СОМ - файлов.

Внедрение вируса в середину файла

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

1) Вирус может быть скопирован в таблицу настройки адресов EXE-файла.

2) Вирус внедряется в область стека файла.

3) Вирус как бы “раздвигает” файл для себя.

4) По аналогии с внедрением вируса в начало файла, при котором переписывается содержимое начала файла в конец, возможен вариант, когда вирус записывается в середину файла, сохраняя при этом часть файла в его конец.

5) Достаточно сложный алгоритм компрессирования (сжатия) некоторых участков файлов. В результате при заражении не увеличивается длина файла.

Внедрение вируса в конец файла

Наиболее распространенный случай (до 95%) - внедрение вируса в файл дописыванием в конец этого файла (appending). При этом вирус обязательно изменяет начало файла таким образом, чтобы управление сразу передавалось на тело вируса.

У COM-файла вирус изменяет первые три байта (иногда больше)

а) либо на коды инструкции “Jmp адрес вируса” (это команда перехода на тело вируса);

б) либо на коды программы, передающей управление на тело вируса.

Оригинальные три байта начала файла вирус обязательно считывает и сохраняет.

У EXE-файла

а) модифицируется его заголовок. В заголовке изменяются

      значение стартового адреса

      значение длины выполняемого файла

      регистры - указатели на стек ( редко )

      контрольная сумма файла ( редко );

б) иногда EXE-файл переводится в формат COM и затем заражается как COM-файл.

 

Способ, при котором вирус дописывается в конец файла и изменяет у COM-файла первые несколько байт, а у EXE-файла - несколько полей заголовка, часто называется стандартным способом заражения файлов.