Фигурнов В.Э. IBM PC для пользователя. Книга содержит подробное и доступное для начинающих описание возмож
Скачать 5.4 Mb.
|
Глава 36. Защита от вирусов при работе в DOS Внимание! Изменился эагруэочный сектор! Изменение системных областей может быть вызвано как действиями вируса, так и законными действиями ряда программ. Например, изменение может произойти при установке новой версии операционной системы. Вы мо- жете восстановить прежнее состояние, сохраненное в таблице ADinf, или продолжить просмотр изменений. Если Вы не уверены, надо ли восстанавливать загру- эочныЙ сектор, остановите работу на компьютере и обратитесь к специалисту. Восстановить Продолжить Вы можете выбрать одну из трех возможно- стей: Продолжить Ч если Вы не хотите восста- навливать с помощью ADinf содержи- мое измененного сектора; Восстановить Ч чтобы восстановить с помощью ADinf содержимое изменен- ного сектора; Подробнее Ч чтобы посмотреть таблицу с информацией в старом и новом секто- ре. После просмотра ADinf снова выве- дет запрос о действиях, показанный выше. М/ ^ Сообщение об активном степс-вирусе При выборе ответа Восстановить ADinf спросит еще раз, уверены ли Вы в том, что хотите сделать. Если Вы упорствуете в своих намерениях, программа запросит имя файла, в который следует записать измененный (возможно, зараженный вирусом) за- грузочный сектор или главный загрузочный сектор. Можно ответить ГЕзсП, и тогда про- грамма не будет сохранять измененный сектор, однако это неразумнсГ{см. ниже). По- сле записи измененного сектора программа запросит разрешение на перезагрузку ком- пьютера. Рекомендую без малейшего промедления согласиться на это предложение, поскольку вирус (если изменение вызвано вирусом) остается активным в оперативной памяти и может повторно заразить восстановленный ADint сектор. Вообще говоря, сразу восстанавливать с помощью ADinf загрузочный сектор или глав- ный загрузочный сектор я бы не советовал: правильное лечение от последствий зара- жения многими видами загрузочных вирусов отнюдь не исчерпывается восстановлени- ем загрузочного сектора или главного загрузочного сектора. Например, если Вам "повезло" подхватить вирус, шифрующий содержимое жесткого диска, то надо еще и расшифровать зашифрованные им данные. Но как раз своим вмешательством Вы унич- тожите симптомы "болезни" и сделаете лечение с помощью антивирусных программ- детекторов (Aidstest, Dr.Web и др.) невозможным Ч они просто не поймут, что компь- ютер был заражен загрузочным вирусом. Поэтому я бы посоветовал при появлении сообщения об изменении загрузочного сек- тора или главного загрузочного сектора (если Вы перед этим не переразбивали жест- кий диск, не устанавливали новую версию операционной системы и т.д., в результате чего данные сектора могли измениться), не восстанавливать сразу эти сектора с помо- щью ADinf, а перезагрузить компьютер с чистой системной дискеты (разумеется, "правильно", как это описано в главе II), и запустить антивирусные программы- детекторы. И лишь если они не опознают заразивший компьютер вирус, то можно вос- пользоваться данной возможностью ADinf, запустив его с дискеты. Для новых и измененных файлов ADinf сравнивает длины и контрольные суммы фай- лов, получаемые посредством запросов к DOS, с фактическими, получаемыми путем непосредственного чтения секторов диска. Если ADinf обнаруживает несовпадение, то сразу же прекращает проверку диска и выдает сообщение, например: Внимание ! Для файла C:\EXE\HIEW. ЕХЕ длина, сообщаемая DOS, не совпадает с фактической! DOS сообщает: 25396, фактически: 21380, разница: 4016. Возможно, в памяти активный стелс-вирус! Продолжить Просмотр Перезагрузка Продолжение проверок может привести к дальнейшему заражению файлов, сканируемых ревизором! Рекомендую прекратить проверки, вставить в дисковод А: защищенную от записи системную дискету и, выбрав строку ПЕРЕЗАГРУЗКА, загрузить чистую операционную систему. При дальнейших исследованиях не запускайте исполняе- мых файлов с зараженного диска! Лучше всего не отвечать на этот запрос вообще, а вставить в дисковод А: защищенную от записи загрузочную дискету, нажать на кнопку "Reset" и правильно, как это было Часть 7. DOS для опытного пользователя Появление новых дефектных кластеров Изменения в файлах \i/ ^ Прочие предупреждения ADinf описано в главе II, перезагрузить компьютер, после чего начать его лечение с помо- щью антивирусных программ-детекторов типа Aidstest, Dr.Web и др. Новые дефектные (сбойные) кластеры на диске могут образоваться, если Вы запускали программу типа Norton Disk Doctor для проверки диска и она забраковала некоторые кластеры, пометив их как дефектные (см. главу 35). В этом случае сообщение ADinf о появлении новых дефектных кластеров следует игнорировать. Но если Вы не проверя- ли поверхность диска с помощью Norton Disk Doctor или аналогичной программы, то появление новых дефектных кластеров, как правило, свидетельствует о появлении вируса на Вашем компьютере. Внимательно проанализируйте изменения на диске, по- скольку вирус должен не только пометить какие-то кластеры как дефектные, но и из- менить либо файлы, либо загрузочный сектор, либо главный загрузочный сектор (иначе тело вируса, записанное в псевдодефектных кластерах, никогда не получит управление). По окончании проверки диска перезагрузите компьютер с чистой систем- ной дискеты ("правильно", как это описано в главе II) и попробуйте вылечить компь- ютер с помощью антивирусных программ-детекторов. ADinf считает изменения в файлах "подозрительными" в следующих случаях: Х если дата и время модификации файла не изменились, а размер файла увеличился или остался прежним, Х если дата или время модификации файла стали необычными: число больше 31, ме- сяц больше 12, год больше текущего, минут больше 59, часов больше 23 или секунд больше 58, Х если имя файла указано в списке неизменяемых файлов программы ADinf. Стоит обратить внимание на то, что ADinf относит к числу подозрительных далеко не все изменения на диске, делаемые вирусом, а лишь те, которые характерны для виру- сов и нехарактерны для остальных программ. Например, если вирус изменит исполни- мый файл, поменяв хотя бы на две секунды его дату и время последней модификации (а эти секунды не отображаются большинством программ), то программа ADinf не со- чтет изменение подозрительным Ч ведь при установке новой версии какой-либо про- граммы, ее перекомпиляции и т.д., также меняется содержимое исполнимых файлов и время их модификации. Аналогично, если вирус изменит файл, уменьшив его размер (за счет сжатия содержимого), то это изменение также не будет сочтено подозритель- ным Ч ведь точно так же поступают программы-упаковщики исполнимых файлов типа Diet, PKLITE, ЕХЕРАСК и т.д. Поэтому при получении сообщения об измененных файлах не поленитесь Ч посмотри- те, что это за файлы, и знаете ли Вы, почему они изменились. Особенно осторожным надо быть, если на диске изменилось много файлов (это типично для некоторых виру- сов). Если Вы не знаете причину происшедших изменений, выведите протокол измене- ний на принтер и проверьте компьютер на наличие вирусов программами-детекторами типа Aidstest и Dr.Web. В случае сомнений проконсультируйтесь с более опытными пользователями. Замечание. Чтобы понапрасну не тратить время на отслеживание изменений файлов в тех каталогах, в которых Вы часто меняете файлы, например создаете программы, целесообраз- но сообщить ADinf имена таких рабочих каталогов. Это делается с помощью команды меню Параметры \ Настройки \ Что контролировать \ Рабочие кат. (здесь символом 1 отделены пункты меню, которые надо последовательно выбирать). Для рабочих каталогов ADinf сообщает только о подозрительных с его точки зрения изменениях. Программа ADinf выявляет также следующие ситуации: Х изменение самой программы ADinf; Х изменение обработчика Int 13h, то есть прерывания низкоуровневого ввода-вывода, в BIOS (при организации так называемой теневой BIOS в оперативной памяти это вполне возможно); Х попытку отобрать у ADinf обработку прерывания 76h (прерывания, с помощью ко- торого контроллер жестких дисков типа IDE сообщает о завершении операций вво- да-вывода с диском). В подобных случаях перезагрузите компьютер с чистой системной дискеты ("правильно", как это описано в главе II) и попробуйте вылечить компьютер с помо- щью антивирусных программ-детекторов. Глава 36. Защита от вирусов при работе в DOS LU 36.6. Специальные режимы работы программы ADinf Поиск степс-вирусов Пример Построение таблиц Пример Режим Fast Режим Info Задав при запуске программы параметр -SS или запустив ее в диалоговом режиме, выбрав проверяемые диски в группе меню Диски и затем пункт меню Поиск стеле в группе меню Работа, Вы можете выполнить проверку дисков на наличие стелс- вирусов, то есть невидимых, маскирующих свое присутствие на компьютере вирусов (см. главу II). При этой проверке ADinf сравнивает длины и контрольные суммы фай- лов на дисках, получаемые посредством запросов к DOS, с фактическими, получаемы- ми путем непосредственного чтения секторов диска. Если ADinf обнаруживает несов- падение, то сразу же прекращает проверку и выдает сообщение об активном стеле- вирусе (см. п. 36.5). По умолчанию программа ADinf выполняет поиск стелс-вирусов только в новых и измененных файлах, да и эту проверку можно отключить. ADINF С: D: Е: -SS Ч поиск стелс-вирусов на дисках С:, D: и Е:. При подключении новых дисков на них следует создать таблицы программы ADinf Ч только после этого программа сможет проверять эти диски. Для создания таблиц надо либо указать при запуске программы ADinf параметр -W, либо запустить программу в диалоговом режиме, выбрать в группе меню Диски те диски, на которых должны быть созданы таблицы, и затем Ч пункт меню Создать таблицы в группе меню Работа. ADINF Е: F:-WЧ создание таблиц программы ADinf на дисках Е: и F:. Если включить так называемый "режим P'ast" с помощью параметра -F или команды меню Параметры \ Режимы работы \ Режим fast включен, то программа не будет проверять контрольные суммы файлов. При этом скорость проверки слегка повысится, но ценность ее результатов значительно снизится: Вы сможете получить только ин- формацию о новых, стертых файлах и каталогах, а также о файлах, у которых измени- лась длина. Кроме того, в этом режиме таблицы с информацией о диске не обновляют- ся. Поэтому не рекомендую включать этот "режим Fast" (на месте автора я бы вообще его выкинул, чтобы не смущать людей). Если при запуске программы задать параметр -i или задать с помощью меню режим Параметры \ Режимы, работы \ Режим info включен, то программа после проверки дисков не будет производить обновление таблиц. Этот режим может быть полезен, если Вы не хотите записывать какую-либо информацию на диск (скажем, при лечении от вируса). LU 36.7. Настройка программы ADinf Метод доступа к дискам Доступ через Int 13h В этом параграфе мы дадим некоторые рекомендации по настройке программы ADinf. При этом мы будем отделять вертикальной чертой 1 пункты меню программы, которые надо последовательно выбирать. Программа ADinf может работать с дисками, не используя услуги DOS, а обращаясь непосредственно в BIOS компьютера. Однако это возможно не для всех дисков, поэто- му ADinf может использовать и другие методы доступа к дискам: Х через использование прерывания Int 13h (прерывания низкоуровневого ввода- вывода с дисками), Х через использование прерываний Int 25h и Int 26h Ч прерываний дискового ввода и вывода DOS. Чем выше уровень доступа к дискам, тем более уязвима программа ADinf по отноше- нию к вирусам. Ведь вирус может встроиться в любое промежуточное звено между ADinf и диском и начать обманывать ADinf, скрывая от нее истинное положение дел на диске. Поэтому лучше всего использовать доступ к дискам через BIOS, хуже Ч через прерывание Int 13h, еще хуже Ч'через прерывание Int 25h/26h. Доступ через прерывание Int 13h необходимо использовать для жестких дисков, доступ к которым осуществляется через драйвер, например: Х для дисков, разбитых нестандартными средствами типа Disk Manager, ADM и др.; Х для IDE-дисков емкостью более 528 Мбайт при наличии контроллера IDE (а не EIDE), Часть 7. DOS для опытного пользователя Доступ через Int 25h Установка способа доступа Общие или личные таблицы Установка рабочих каталогов Контролируемые файлы Контролируемые расширения, программы просмотра и редактирования * для некоторых старых дисков с более чем 1024 цилиндрами, если эти диски не снабжены средствами логической переадресации, Х для дисков, подключенных к некоторым устаревшим SCSI-контроллерам. Вообще я бы не рекомендовал применять такие диски или контроллеры Ч жесткий диск с протезом в виде драйвера Ч малонадежное сочетание. зцмецацця. 1- Практически для всех современных SCSI-контроллеров для доступа к жест- ким ^ЙГ-дискам драйверы но требуются Ч все необходимые для этого программы находят- ся в расширении ljlOS на плате SCSI-контроллера. Если драйверы и используются, то не для доступа к жестким дискам, а для организации ASPI-интерфейса (интерфейса с другими SCSI-устройствами), поддержки особенностей компакт-дисков, съемных дисков и т.д. 2. При работе программы ADiiif под диспетчером памяти QEMM с использованием стелс- режима QEMM (то есть параметров ST:F или ST:M драйвера QEMM386.SYS) доступ ко всем дискам необходимо осуществлять через 1п1 1311. Дело в том, что в этом режиме QEMM может отводить некоторые адреса BIOS для программ, в результате чего обработчик Int 13h окажется недоступен. Не рекомендую использовать стелс-режим QEMM Ч несколько лиш- них Кбайт редко настолько существенны, чтобы ради них стоило рисковать устойчивостью компьютера. Доступ через прерывания Int 25h и Int 26h необходим для псевдодисков, управляемых специальным драйвером, например, для сжатых дисков, созданных программами DriveSpace, DoubleSpace, Stacker и т.д., для секретных дисков, созданных программой DiskReet и др. Как правило, программа ADinf автоматически распознает такие диски и сама устанавливает доступ к ним через прерывания Int 25h/26h. Чтобы установить способ доступа к дискам, следует выбрать команду меню Парамет- ры \ Настройки \ Обращение к дискам. В выведенном списке можно менять мето- ды доступа к дискам, щелкая пункты списка мышью или выделяя их и нажимая [ТпТе^). Как правило, для всех логических дисков, расположенных на жестком диске, в списке должен быть указан метод доступа "BIOS", а для сжатых, секретных и иных дисков, созданных специальными драйверами Ч "Int 25h". Однако если Вы точно знаете, что с жестким диском без драйвера работать нельзя, установите для всех логических дис- ков, расположенных на этом жестком диске, метод доступа "Int 13h". Программа ADinf специально для пользователей "персональных компьютеров коллек- тивного пользования" обеспечивает так называемый режим личных таблиц, в котором каждый пользователь компьютера может контролировать свои файлы. Мы не будем здесь рассматривать этот режим, столь же удобный, как коммунальная кухня, а будем предполагать, что установлен режим общих таблиц (режим Таблицы общие в группе меню Параметры). Чтобы не тратить время на отслеживание изменений файлов в тех каталогах, в кото- рых Вы создаете программы и часто меняете иные контролируемые файлы, следует сообщить ADinf имена таких рабочих каталогов. Для рабочих каталогов ADinf будет сообщать только о подозрительных с его точки зрения изменениях. Установка рабочих каталогов выполняется с помощью команды меню Параметры \ Настройки \ Что контролировать \ Рабочие кат. В выведенном списке надо вы- брать диск, а затем в окне с деревом каталогов на диске отметить нажатием клавиши r^nteT) или щелчком левой кнопки мыши рабочие каталоги (они выделяются красным цветом). По окончании выбора нажмите клавишу CES^T) или правую кнопку мыши. ^ямрчянир По умолчанию программа ADinf считает рабочими каталоги с именами ТМР, ТЁМР TEMPO, CACHE, SPOOL, DESKTOP, FAVORI-I. PIF, RECENT, HISTORY и RECY- CLED, а также все подкаталоги этих каталогов. Программа ADinf может контролировать все файлы на дисках, но обычно это неудобно, так как в ходе обычной работы на диске меняется много файлов, и информация о воз- действии вирусов может просто затеряться среди сведений о многочисленных измене- ниях в файлах документов, баз данных и т.д. Поэтому обычно ADinf настраивается на обработку только файлов с некоторыми определенными расширениями (режим Пара- метры 1 Настройки \ Что контролировать \ Расширения \ По списку). Для определения списка контролируемых программой расширений выберите команду меню Параметры \ Настройки \ Список расширений \ Расширения. В выведенном списке Вы можете добавить или удалить расширения, а также назначить для каждого из них программу просмотра (столбец Viewer) и программу редактирования (столбец Editor). Эти программы будут вызываться при просмотре списков новых, измененных, переименованных или перемещенных файлов при нажатии (Тз^ и CFT) (см. п. 36.4 вы- ше). А для того, чтобы программа ADinf могла найти указанные Вами программы про- |