Осторожно компьютерные вирусы

       

Просмотр таблицы FAT


Для просмотра таблицы размещения файлов FAT мы воспользуемся программой DISKEDIT.EXE. Из меню Object выберите строку Drive и укажите интересующий вас диск. Если файловая система находится в более или менее исправном состоянии, вы сможете выбрать нужный вам логический диск.

Затем из меню Object выберите одну из двух строк - 1st FAT или 2nd FAT. На экране появится, соответственно, содержимое первой или второй копии таблицы FAT в отформатированном виде (рис. 6.23).

Рис. 6.23. Просмотр первой копии таблицы размещения FAT в отформатированном виде

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

BadSectors.3422, 3428

Опасные резидентные вирусы.

Перехватывают прерывания INT 8h, INT 16h, INT 21h, INT 25h, INT 26h.

Иногда  отмечают кластеры диска как плохие посредством манипуляций с таблицами размещения файлов FAT. Не заражают  антивирусную программу  SCAN.

Содержат текстовые строки:

COMEXE

SCAN

BadSectors.3422:  BadSectors 1.1



BadSectors.3428:  BadSectors 1.2

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

Поясним это на примере.

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

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



Рис. 6.24. Просмотр сектора логического диска по его последовательному номеру

Заметьте, что в этой диалоговой панели в рамке, озаглавленной Sector Usage, показано распределение секторов. Пользуясь этим распределением, вы легко сможете определить последовательный номер сектора загрузочной записи, начало и границы обеих копий FAT, а также начало и границы корневого каталога и области данных, содержащих файлы и другие каталоги.

С помощью меню View вы можете просмотреть содержимое таблицы FAT в виде дампа (рис. 6.25).



Рис. 6.25. Просмотр первой копии таблицы размещения файлов FAT в виде дампа

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

Вслед за первой копией таблицы FAT должна находиться вторая копия FAT (рис. 6.26).



Рис. 6.26. Вторая копия таблицы FAT должна располагаться сразу вслед за первой копией этой таблицы

Размер таблицы FAT вы можете определить, зная содержимое поля блока параметров BIOS BPB со смещением 0Bh (количество секторов, занимаемых одной копией FAT).

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

Некоторые вирусы пользуются тем фактом, что конец цепочки кластеров может отмечаться любым значением в диапазоне 0FFF8h - 0FFFFh (для 16-разрядной таблицы FAT). Операционная система MS-DOS использует значение 0FFFFh. Вирус может выделять для себя зараженные файлы (чтобы избежать повторного заражения), отмечая последний распределенный этим файлам кластер любым другим значением, например, 0FFF9h. При этом операционная система будет продолжать работать нормально, как будто ничего не произошло.

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


Содержание раздела