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

       

Предоставление доступа к отдельным файлам


Программа FILER.EXE, расположенная в каталоге PUBLIC, позволяет системному администратору устанавливать права доступа к отдельным файлам (рис. 4.12).

Рис. 4.12. Просмотр и изменение атрибута файла

В частности, для защиты файла от нападения вирусов вы можете установить для него атрибут Read Only.

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

Было бы очень заманчиво использовать атрибут Execute Only для защиты файлов от нападения вирусов, однако мы должны отметить два момента.

Во-первых, атрибут Execute Only можно устанавливать только для программ DOS, не использующих оверлейную структуру и не выполняющих прямое чтение загрузочного файла. В то же время многие программы дописывают к концу exe-файла данные, которые они затем читают в процессе своей работы.

Kkyyzz.1413

При старте программы, имя которой заканчивается на LI.EXE, вирус Kkyyzz.1413 обращается к программному интерфейсу Novell Netware. Когда вводится слово "kkyyzz" с использованием буферизованного ввода (функция 0Ah прерывания Int 21h), вирус удаляет свой код из памяти.

Как следствие вы не можете защитить атрибутом Execute Only загрузочные файлы приложений и библиотек динамической компоновки операционных систем Microsoft Windows и OS/2. Эти файлы содержат специальные данные (ресурсы) которые читаются из файла при необходимости при выполнении приложений. Для доступа к ресурсам используются команды прямого чтения, которые не будут работать при установленном атрибуте Execute Only.

Используйте атрибут доступа Execute Only только вместе с атрибутом Read Only

Во-вторых, атрибут можно использовать только в паре с атрибутом Read Only, так как иначе вирус сможет “снять” атрибут Execute Only, просто уничтожив файл и записав на его место новый, но уже без атрибута Execute Only.

Вы можете спросить: как вирус запишет файл, ведь он не сможет его прочитать?

Дело в том, что вирусу не нужно читать программный файл. Во многих случаях он сможет восстановить этот файл, пользуясь, например, его образом в оперативной памяти. Когда операционная система DOS запускает файл с атрибутом Execute Only, она “читает” его в оперативную память. А там этот файл уже поджидает вирус. Сделав реконструкцию файла по образу в памяти, он может записать такой файл на место защищенного. Именно поэтому атрибуты Execute Only и Read Only необходимо использовать вместе.



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