Вирусы

Автор работы: Пользователь скрыл имя, 05 Августа 2009 в 17:34, Не определен

Описание работы

антивирусы, вирусы и их воздействие на ОС.

Файлы: 1 файл

вирусы.doc

— 132.50 Кб (Скачать файл)

      При комплексной проверке AVSP выводит  также  имена  файлов,  в которых  произошли изменения, а также  так называемую карту изменений. Если у большинства изменённых файлов она одинаковая, то, вероятнее всего, в систему "закрался" какой-то вирус. Чаще всего  в такой ситуации программа сама "заподозрит" неладное  и  предложит внести информацию о нём в библиотеку. При этом шаблон вируса  будет выбран автоматически.

      При автоматическом определении новых  вирусов AVSP  может  допустить множество ошибок. Как раз в те дни, когда я занимался написанием работы, со мной произошел  именно  такой  случай.  При проверке жесткого диска AVSP выдал сообщение "Найден  неизвестный вирус! " и выдал запрос о занесении шаблона вируса в  библиотеку. Взглянув на имя файла, я сразу понял, что наличие в нем вируса маловероятно, так как это был самораспаковывающийся  архив  RAR-а, который я создал за несколько минут до запуска антивируса,  перепаковав два файла, один из которых был также SFX-архивом с тем же именем, что и получившийся. Решив посмотреть, что будет дальше, я установил опцию создания отчета и повторно  запустил  комплексную проверку. Вот фрагмент этого отчета:

Директория 

C:TOOLSUTILIT

C:TOOLSUTILIT

SPEED200.EXE:

SPEED200.EXE: Новый

       TB.EXE:

       TB.EXE: Новый 

Директория 

C:USERMUSICROCK

C:USERMUSICROCK

   ROCK.EXE:

   ROCK.EXE: Новый

   PTTM.COM:

   PTTM.COM: Новый

   PSYCHO.EXE:

   PSYCHO.EXE: Новый 

Директория 

C:DISK_ARH

C:DISK_ARH

   DERIVE.EXE:

   DERIVE.EXE: Изменен

- Изменение  размера: 22053 (был 170496,стал 192549)

- Возможный  вирус: TP-940128 

      После ответа на запрос AVSP-а о занесении  вируса в библиотеку, программа вывела составленный ею шаблон на  экран. Дизассемблировав клавишей TAB код шаблона, я увидел  следующую  последовательность команд:

         push es

         push cs

         pop ds

         mov cx,[000ch]

         mov si, cx

         dec si

  Такая  последовательность команд, а особенно  две первые  (сохранение соответствующих  регистров) встречаются в начале многих  исполнимых программ. При  повторном  запуске  комплексной  проверки AVSP "находил" вирус в каждой второй EXE-программе: 

Директория 

C:ANTIVIR

C:ANTIVIR

AIDSTEST.EXE:

AIDSTEST.EXE: Заражен

- Вирус  ERU-37 

Директория 

C:ANTIVIRADINF

C:ANTIVIRADINF

    REVIS.EXE:

    REVIS.EXE: Заражен

- Вирус  ERU-37 

Директория 

C:DOS

C:DOS

MEMMAKER.EXE:

MEMMAKER.EXE: Заражен

- Вирус  ERU-37 

     MSAV.EXE:

     MSAV.EXE: Заражен

- Вирус  ERU-37 

<<<< Работа прервана (диск C:) >>>> 

      Так что при автоматическом определении  шаблона следует не  полениться проверить, действительно ли это  вирус и не будет ли этот шаблон встречаться в здоровых программах.

      Если  в процессе AVSP обнаружит известный  вирус,  то  следует предпринять  те же действия, как и при работе с Aidstest и Dr.Web: скопировать файл на диск, перезагрузиться с резервной дискеты и запустить AVSP. Желательно также, чтобы при этом в память был загружен драйвер AVSP.SYS, так как он помогает основной  программе лечить Stealth-вирусы. После этого нужно  выбрать  пункт  меню "Удаление вирусов". Если в библиотеке программы VIRUSES.INF  есть информация о том, как лечить данный вирус, то файл будет вылечен, и AVSP выдаст соответствующее сообщение. При отсутствии в библиотеке информации о способе лечения данного вируса программа  попытается автоматически восстановить  файл  при  помощи  информации, сохраненной в файлах данных DISKDATA.DTL. Если файл  вылечить  не удастся, то, возможно, это "вирус-невидимка". Узнать поподробнее о том, что же за вирус "залез" в систему можно в  режиме  просмотра сообщений. Для этого нужно подвести курсор на название  вируса  и нажать ENTER.

      Если  автоматически файл восстановить не удалось то  можно  либо, как  всегда, удалить его, либо попытаться  самостоятельно  обучить AVSP уничтожать вирус. Правда, для написания "лекарства"  даже на макроязыке AVSP-а нужно иметь опыт в системном программировании и знать хотя бы азы ассемблера. Ведь и в медицине  таблетки в неумелых руках  приносят  больше  вреда, чем пользы. Если у пользователя есть модем, то он может послать в сеть  "электронное объявление" с вопросом о способе лечения вируса. При этом следует выбирать достаточно известные  станции,  а  не  любительские BBS, в которые лазают только любители GIF-ов и анекдотов про  поручика Ржевского.

      Для внесения и редактирования  информации  о  вирусах  в  меню "Данные о  файлах и о вирусах" есть подменю "Изменение  информации о вирусах". При выборе этого пункта программа  выводит  на  экран список всех известных ей вирусов. По списку можно передвигаться с помощью стрелок. Чтобы получить более полную информацию о вирусе, нужно, подведя курсор к его имени, нажать ENTER. Вся эта информация находится в файле VIRUSES.INF, который можно редактировать не только с помощью AVSP в пункте "Изменение информации о  вирусах", но и как обычный текстовый файл. Чтобы внести информацию о  новом вирусе с помощью AVSP нужно нажать F2 , программа спросит об имени вируса, а когда пользователь введет это имя, программа  выдаст таблицу, аналогичную той, что выводится при автоматическом задании шаблона. В эту таблицу нужно занести все известные об этом вирусе данные. В AVSP существует возможность задавать  шаблон  не только обычных, но и самомодифицирующихся вирусов. Это осуществляется посредством заменителей символов в мнемонических командах, также составляющих макроязык антивируса. Опытные программисты могут внести также последовательность макрокоманд, задающую  способ лечения файла. В любой момент можно отказаться от редактирования, нажав ESC или записать информацию в библиотеку, нажав ENTER.

      Но, конечно, полностью все возможности  программы реализуются в руках  человека, знакомого с ассемблером  и системным  программированием. В AVSP имеется возможность просматривать  файлы  в  разных форматах. При  входе в режим просмотра на экран выводятся две  колонки: слева содержимое просматриваемого файла в виде  шестнадцатеричных кодов, а справа - в виде ASCII-кодов. Кроме  того,  выводится полезная системная информация, которая поможет при  написании процедуры удаления вируса. Передвигая курсор,  можно  перейти на любой адрес, есть также  функции  поиска  шаблонов,  сравнения файлов. Можно установить, в каком формате будет  просматриваться, например, заголовок: как у EXE-файла,  SYS-файла  или  в  формате загрузочного сектора. При этом хорошо реализован сам просмотр заголовка: его системные ячейки представлены в виде таблицы:  слева значение ячейки, справа - пояснение.

      Ещё одной полезной функцией является встроенный  дизассемблер. С его помощью можно  разобраться есть ли в файле вирус или при проверке диска произошло ложное  срабатывание  AVSP.  Кроме  того, можно попытаться выяснить способ заражения, принцип действия  вируса, а также место, куда он  "спрятал"  замещённые  байты  файла (если мы имеем дело с таким типом вируса). Все это позволит написать процедуру удаления вируса и восстановить запорченные  файлы. Для полного счастья не хватает только трассировщика, хотя в неумелых руках такая функция может привести к заражению  ещё  большего количества данных. В режиме дизассемблера  между  мнемоническими командами можно перемещаться, используя стрелки. Чтобы перейти по смещению, указанному в команде перехода, нужно нажать клавишу F7.

      Ещё одна полезная функция - выдача наглядной  карты  изменений. Особенно ясно я  это понял, когда у меня возникло подозрение в отношении одного из файлов (который не должен был,  вроде  бы,  меняться) в ревизоре ADinf, в котором нет такой функции. Карта  изменений позволяет оценить, соответствуют ли эти изменения  вирусу или нет, а также сузить область поиска тела вируса при  дизассемблировании. При её построении красный прямоугольник  используется для изображения изменённого блока, синий - неизменённого, а прозрачный - нового.

      Если  есть подозрение, что в  систему  забрался  Stealth-вирус, можно запустить AVSP с параметром /D с жесткого  диска,  а  затем загрузиться с чистой системной дискеты и запустить AVSP без параметров. Если результаты проверки контрольных  сумм  отличаются  в обоих случаях, то подозрения оправданы. В программе AVSP есть два алгоритма нейтрализации "невидимок" и оба они работают только при наличии активного вируса в памяти. То, что происходит при  реализации этих алгоритмов похоже на фильм ужасов или конец Света: все файлы копируются в файлы данных, а потом стираются. Спасаются только файлы с атрибутом  SYSTEM.  В  Adinf  процесс  удаления Stealth-ов  реализован  гораздо  проще.  Может,  конечно,  способ борьбы с "невидимками" в AVSP и надёжней, но как-то это не особо приятное развлечение - перепахивать весь "винт", да к тому же и небезопасное.

      Программа AVSP контролирует также и состояние  загрузочных секторов. Если заражен BOOT-сектор на дискете и антивирус  не  может его вылечить, то следует  стереть  загрузочный  код. Дискета  при этом станет несистемной, но данные при этом не потеряются. С "винчестером" так лихо поступать нельзя. При обнаружении  изменений в одном из BOOT-секторов жесткого диска  AVSP  предложит  его сохранить в некотором файле, а затем  попытается  удалить  вирус. Если это программе сделать не удастся, то она предложит восстановить прежнее состояние загрузочного сектора. Вообще, "винчестер" - вещь капризная, поэтому перед подобной  операцией желательно "скинуть" нужные данные на дискеты. Что уж говорить про операции с BOOT-секторами, если были случаи, когда  "винт"  "самоочищался" при участии Speed Disk-а и Disk Fix-а. Правда, тому, кто  лечил  с помощью AVSP Стелз-вирусы уже ничего не страшно. 
 

Microsoft Antivirus

 
 

      В состав современных версий MS-DOS (например 7.10) входит  антивирусная программа Microsoft Antivirus (MSAV).  Этот  антивирус может работать в режимах детектора-доктора и ревизора.

      MSAV имеет дружественный интерфейс  в стиле MS-Windows, естественно, поддерживается  мышь. Хорошо реализована  контекстная   помощь: подсказка есть практически  к любому пункту меню, к любой ситуации. Универсально реализован доступ к пунктам меню: для этого можно использовать клавиши управления курсором, ключевые  клавиши (F1-F9), клавиши, соответствующие одной из букв названия  пункта, а также мышь. Флажки установок в пункте меню Options можно  устанавливать как клавишей ПРОБЕЛ, так и  клавишей  ENTER.  Серьёзным неудобством при использовании программы является то, что она сохраняет таблицы с данными о файлах не в одном файле,  а  разбрасывает их по всем директориям. Вот и кочуют файлики CHKLIST.MS  при обмене программами от пользователя к пользователю, захламляя  каталог и место на диске.

      При запуске программа загружает  собственный  знакогенератор  и  читает дерево каталогов текущего  диска,  после  чего  выходит  в главное меню. Не понятно, зачем читать дерево каталогов сразу при запуске: ведь пользователь может и не захотеть  проверять  текущий диск. В главном меню можно сменить диск (Select  new  drive), выбрать между проверкой без удаления вирусов (Detect) и с их удалением (Detect&Clean). При запуске проверки диска (как  в  режиме удаления, так и без него) программа сначала сканирует  память  на наличие известных ей вирусов. При этом выводится индикация проделанной работы в виде цветной полоски и процента выполненной работы. После сканирования памяти MSAV принимается за проверку непосредственно диска.

      При первой проверке MSAV создает в каждой директории, содержащей исполнимые файлы, файлы CHKLIST.MS, в которые записывает  информацию о  размере,  дате,  времени,  атрибутах,  а  также  контрольную сумму контролируемых файлов. При  последующих  проверках программа будет сравнивать файлы с информацией в  CHKLIST.MS-файлах. Если изменились размер и дата, то программа сообщит об  этом пользователю и запросит о дальнейших действиях: обновить информацию (Update), установить дату и время в соответствие с данными в CHKLIST.MS (Repair), продолжить, не обращая внимания  на  изменения в данном файле (Continue), прервать проверку (Stop). Если изменилась контрольная сумма, то MSAV выведет такое же окно, только вместо пункта Repair будет пункт Delete (удалить), так как программа не может восстановить содержимое файла. При обнаружении вируса в режиме Detect&Clean программа удалит этот вирус.  Проверку диска в обоих режимах можно приостановить, либо  полностью  прервать, нажав ESC (или F3)  и  ответив  на  соответствующий  вопрос программы. Во время сканирования  диска  выводится  информация о проделанной работе: процент обработанных каталогов и процент  обработанных файлов в текущем  каталоге.  Эта информация  выдается также наглядно, в виде цветной полоски, как и при проверке  памяти. В конце проверки MSAV выдает отчет в виде таблицы, в которой сообщается о количестве проверенных жестких дисков и гибких дисков, о количестве проверенных, инфицированных и вылеченных  файлов. Кроме того, выводится время сканирования.

Информация о работе Вирусы