Итак, мы рассмотрели способ, позволяющий придать вновь создаваемой программе свойства самоконтроля. А как быть с СОМ—файлами или защитить громоздкую программу? Кроме того, существуют вирусы, которые поражают ^е файлы, а загрузочные секторы дисков. Для таких вирусов (их называют загрузочными) контроль PSP может оказаться неэффективным. Одним из возможных способов решения задачи является разработка специальной про¬граммы, которая проверяет первый сектор наиболее важных ЕХЕ и СОМ-файлов при каждом включении ПК. Эта же программа может проверить главный загрузочный сектор или даже все загрузочные секторы на всех дисках, чтобы убедиться в отсутств1Щ загрузочных вирусов, а при их обнаружении удалить их.
Мною разработана программа AntiVir (прил.П9.1), реализующая описанные функции. Эта программа создает и поддерживает архив загрузочных секторов и секторов PSP. Она может работать в двух режимах-автоматическом и диалоговом.
В автоматическом режиме AntiVir проверяет текущее состояние загрузочных секторов и первых секторов для заданных файлов и сравнивает их с эталон¬ными копиями, хранящимися в архиве. В случае обнаружения отличий про¬грамма сообщает пользователю об этом и предлагает восстановить эталонное состояние соответствующих секторов.
В диалоговом режиме программа предоставляет пользователю возможность просмотреть и скорректировать список проверяемых файлов. Диалоговая часть реализована с помощью объектно-ориентированной библиотеки Turbo Vision. Выбор нужного режима осуществляется автоматически: если программа вы¬зывается командой ДОС
ANTIVIR
она переходит к диалогу с пользователем, если командой
ANTIVIR /AUTO
реализуется режим автоматического контроля.
При контроле загрузочных секторов программа использует меры, позво¬ляющие ей обнаруживать так называемые вирусы—невидимки. Такие вирусы контролируют обращение к функциям и прерываниям ДОС, а также к пре¬рыванию $13 BIOS и при попытке чтения зараженного вирусом участка диска «подсовывают» программе сохраненную вирусом копию незараженного участ¬ка. Единственным способом обнаружения таких вирусов является непосред¬ственное обращение к контроллеру диска или прямой вызов прерывания $13в постоянной памяти BIOS. Поскольку BIOS обычно учитывает особенности конкретного контроллера диска, второй путь будет более простым, однако для его реализации необходимо каким-то образом определить начало в BIOS программы, обрабатывающей прерывание $13 (сразу после загрузки ДОС вектор $13 перехватывается программами 1ВМ10.СОМ и показывает на рези¬дентную в оперативной памяти часть ДОС). Для определения «чистого» вектора $13 в программе используется мультиплексное прерывание $2F, которое для подфункции $13 возвращает в регистрах DS'. DX требуемый адрес. Поскольку при этом прежнее содержимое регистров DS'. DX автоматически помещается в вектор $13, это прерывание необходимо вызывать дважды подряд с проме¬жуточным запоминанием регистров DS'. DX в стеке (см. процедуру BuildArch в программе ANTIVIR). В ходе контроля загрузочных секторов программа пе¬реназначает обычно пустующий вектор $62 так, чтобы он указывал на вход в обработчик $13, и использует затем этот вектор для скрытого от вируса чтения секторов жесткого диска. К сожалению, этот прием нельзя использовать для контроля архивных файлов, так как в последнее время широкое распростра¬нение получили программы динамического сжатия/раскрытия информации (самыми популярными из таких программ являются Double Space и Stacker). Контроль динамически сжатых дисков непосредственным чтением секторов невозможен, так как в этом случае отключается не только возможный вирус, но и резидентная программа—де архиватор. В результате не удается найти начальный сектор защищаемого файла и проверить PSP программы.
Статьи по теме:
Использование компьютеровПрограмное обеспечение для предприятий - добавлять эффективность к делуМаршрутизаторы NetGearВосьмибитные чипыОБЩАЯ ХАРАКТЕРИСТИКА ПРЕСТУПЛЕНИЙ В СФЕРЕ КОМПЬЮТЕРНОЙ ИНФОРМАЦИИCASE-средстваАгрегатный принцип построения ЭВМСтримерыУход За Домашним КомпьютеромИспользование загрузочных дискет MicrosoftИспользование команд контроллера НГМДРазвитие Железной Индустрии Или Кому Сейчас Нужны Многоядерные ПроцессорыЛучшие АнтивирусыВозможности стабилизаторов напряжения для защиты персонального компьютераОтражение и дублирование сервераЛинейная Магнитная Запись Dlt (Dlt-V/Sdlt/Dlt-S4)Рисование с помощью кисти Машинные элементы информации Темп развития CompactPCIОрганизация объектов сетиЗадача, решаемая с использованием систем управления базами данныхТехнические методы увеличения безопасности работы за компьютеромВаш подросток безопасно использует интернет?Анимация На Рабочем Столе Вашего КомпьютераАрхитектура модулей центральных CompactPCI-процессоров INOVAНарушение правил эксплуатации ЭВМ, системы ЭВМ или их сетиФизические аспекты работы с дискамиАвтоматизации планирования печатного издания под Apple (Mac)Экспорт проекта в файл Расследование нарушения правил эксплуатации ЭВМ: системы ЭВМ или их сетиСпрячьте ваши важные документы компьютера в секундахРисование произвольной линии Программа решения системы нелинейных уравнений методами Ньютона и простых итерацийАлее Софтвер Приглашает На Docflow 2008!Загрузочная записьОПЕРАЦИИ СОХРАНЕНИЯ ТЕКСТАПоддержка драйвера сжатых дисков в MS DOSGraycatsoft - Сайт Программного ОбеспеченияХищение компьютерной информацииHotMail своими руками, или Что может PHКомпании лидирующие на мировом рынке CompactPCI продукцииНормативно-техническая документацияСтруктура СКСРазновидности: Atree ADA, Janus ADA, Meridian ADAЗАЩИТА СУЩЕСТВУЮЩИХ ЕХЕ-ФАЙЛОВСброс дисковой системыТекстовый редактор Блокнот Технология Gigabit EthernetТестирование От А До Я. Часть 1 - Основополагающие Принципы И ПодходыИмпорт файлов в проект Склонность CompactPCI- продуктов к быстрому устареваниюКоммерческое использованиеОтличие ЭС от других программных продуктовОТОБРАЖЕНИЕ ПРОЦЕССА ПРОЕКТИРОВАНИЯ В ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ САПРМеждународный стандарт ISO/IEC 11801