Первый мегабайт зараженной памяти


Обнаружить такие вирусы очень просто — достаточно узнать емкость оперативной памяти и сравнить ее с реальной Если вместо 640 Кб (на неко торых старых ПК 512 Кб) система сообщит меньшее значение, то следует просмотреть дизассемблером "отрезанный" участок памяти Если на этом участке будут обнаружены коды какой-то программы, то, скорее всего, вирус найден.

Внимание! Емкость оперативной памяти может уменьшиться на один или несколько килобайтов и в результате использования расширенной памяти или некоторых типов контроллеров. При этом типичной является следующая картина: в "отрезанном" участке содержимое большинства байтов нулевое.

5. Вирус может встраиваться в конкретные, заведомо резидентные программы или "приклеиваться" к уже имеющимся блокам памяти.

Возможно инфицирование вирусом файлов DOS, которые являются резидентными (например, IO.SYS, MSDOS.SYS, COMMAND.COM), загружаемых драйверов (ANSY.SYS, COUNTRY.SYS, RAMDRIVE.SYS) и др. Обнаружить такой вирус гораздо сложнее вследствие малой скорости его распространения, но, однако, вероятность атаки подобного вируса значительно меньше. Все чаще стали встречаться "хитрые" вирусы, которые корректируют заголовки блоков памяти или "обманывают" DOS, представляя блок с кодами вируса одним целым с предыдущим блоком памяти.

В этом случае обнаружить вирус гораздо сложнее, необходимо знать реальную длину программ, размещенных в памяти, и список прерываний, которые они перехватывают. Но этот способ не очень удобен и иногда не срабатывает. Поэтому рекомендуется использовать другой метод, который может облегчить выявление вируса в подобной ситуации. Он основан на следующем свойстве: подавляющее большинство вирусов для обнаружения незараженных файлов или секторов дисков перехватывает прерывания 13h или 21h, встраиваясь в обработчик прерывания. В таком случае для обнаружения вируса достаточно просмотреть текст (команды ассемблера) обработчиков указанных прерываний (например, при помощи программы AVPUTIL.COM). Правда, для того чтобы отличить вирус от обычных программ, требуется достаточный опыт работы с вирусами и некоторое представление о структуре обработчика на незараженном компьютере. К тому же надо быть осторожным:

существует несколько вирусов, которые "завешивают" систему при попытке трассировки их кодов.

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

Конечно, существуют и другие, достаточно экзотические, способы ин-фицирования памяти вирусом, например внедрение вируса в видеопамять, в High Memory Area (HMA) или в расширенную память (EMS, XMS), но подобные вирусы встречаются достаточно редко, и они всегда проявлялись хотя бы одним из перечисленных выше признаков. Существуют также монстры, использующие защищенный режим процессоров i386 и выше. К счастью, известные вирусы такого типа либо "не живут" вместе с современными ОС и поэтому слишком заметны, либо не используют "стелс"-приемов. Однако появление полноценного "стелс"-вируса, для DOS работающего в защищенном режиме, вполне реально. Такой вирус будет невидим для DOS-задач, и обнаружить его будет возможно, только либо перенеся зараженные файлы на незараженный компьютер, либо после перезагрузки DOS с чистой дискеты.