Вирусы в BAT-файлах Среди огромного количества файловых вирусов, заражающих выполнимые файлы в формате COM и EXE, существует несколько вирусов, способных заражать пакетные файлы. Для этого используется весьма изощренный способ. Мы рассмотрим его на примере вируса BAT.Batman. При заражении пакетного файла в его начало вставляется текст следующего вида: @ECHO OFF REM [...] copy %0 b.com>nul b.com del b.com rem [...] В квадратных скобках [...] схематично показано расположение байт, которые являются ассемблерными инструкциями или данными вируса. Команда @ECHO OFF отключает вывод на экран названий выполняемых команд. Строка, начинающаяся с команды REM, является комментарием и никак не интерпретируется. Команда copy %0 b.com>nul копирует зараженный командный файл в файл B.COM. Затем этот файл запускается и удаляется с диска командой del b.com. Самое интересное, что выполнимый файл B.COM, созданный вирусом, до единого байта совпадает с зараженным командным файлом. Но командный файл состоит из команд операционной системы, а выполнимый COM-файл - из команд центрального процессора. Как же работает такая программа? Если переименовать любой текстовый файл в выполнимый, просто заменив его расширение на COM, он, конечно же, не будет работать. В лучшем случае компьютер просто зависнет. Оказывается, что если интерпретировать первые две строки зараженного BAT-файла как программу, она будет состоять из команд центрального процессора, которые фактически ничего не делают.
|