Компьютерные вирусы и антивирусы
изменяют длину зараженных файлов. Более надежная проверка - прочесть весь
файл и вычислить его контрольную сумму. Изменить файл так, чтобы его
контрольная сумма осталась прежней, практически невозможно.
В последнее время появились очень полезные гибриды ревизоров и
докторов, т.е. ДОКТОРА-РЕВИЗОРЫ,- программы, которые не только обнаруживают
изменения в файлах и системных областях дисков, но и могут в случае
изменений автоматически вернуть их в исходное состояние. Такие программы
могут быть гораздо более универсальными, чем программы-доктора, поскольку
при лечении они используют заранее сохраненную информацию о состоянии
файлов и областей дисков. Это позволяет им вылечивать файлы даже от тех
вирусов, которые не были созданы на момент написания программы.
Но они могут лечить не от всех вирусов, а только от тех, которые
используют "стандартные", известные на момент написания программы,
механизмы заражения файлов.
Существуют также ПРОГРАММЫ-ФИЛЬТРЫ, которые располагаются резидентно в
оперативной памяти компьютера и перехватывают те обращения к операционной
системе, которые используются вирусами для размножения и нанесения
вреда, и сообщают о них пользователя. Пользователь может разрешить или
запретить выполнение соответствующей операции.
Некоторые программы-фильтры не "ловят" подозрительные действия, а
проверяют вызываемые на выполнение программы, на наличие вирусов. Это
вызывает замедление работы компьютера.
Однако преимущества использования программ-фильтров весьма значительны
– они позволяют обнаружить многие вирусы на самой ранней стадии, когда
вирус еще не успел размножиться и что-либо испортить. Тем самым можно
свести убытки от вируса к минимуму.
ПРОГРАММЫ-ВАКЦИНЫ, или ИММУНИЗАТОРЫ, модифицируют программы и диски
таким образом, что это не отражается на работе программ, но тот вирус,
от которого производится вакцинация, считает эти программы или диски уже
зараженными. Эти программы крайне неэффективны.
Антивирусные программы
Итак, что же такое антивирус? Сразу же развеем одну часто возникающую
иллюзию. Почему-то многие считают, что антивирус может обнаружить любой
вирус, то есть, запустив антивирусную программу или монитор, можно быть
абсолютно уверенным в их надежности. Такая точка зрения не совсем верна.
Дело в том, что антивирус - это тоже программа, конечно, написанная
профессионалом. Но эти программы способны распознавать и уничтожать только
известные вирусы. То есть антивирус против конкретного вируса может быть
написан только в том случае, когда у программиста есть в наличии хотя бы
один экземпляр этого вируса. Вот и идет эта бесконечная война между
авторами вирусов и антивирусов, правда, первых в нашей стране почему-то
всегда больше, чем вторых. Но и у создателей антивирусов есть преимущество!
Дело в том, что существует большое количество вирусов, алгоритм которых
практически скопирован с алгоритма других вирусов. Как правило, такие
вариации создают непрофессиональные программисты, которые по каким-то
причинам решили написать вирус. Для борьбы с такими "копиями" придумано
новое оружие - эвристические анализаторы. С их помощью антивирус способен
находить подобные аналоги известных вирусов, сообщая пользователю, что у
него, похоже, завелся вирус. Естественно, надежность эвристического
анализатора не 100%, но все же его коэффициент полезного действия больше
0,5. Таким образом, в этой информационной войне, как, впрочем, и в любой
другой, остаются сильнейшие. Вирусы, которые не распознаются антивирусными
детекторами, способны написать только наиболее опытные и квалифицированные
программисты.
Таким образом, на 100% защититься от вирусов практически невозможно
(подразумевается, что пользователь меняется дискетами с друзьями и играет в
игры, а также получает информацию из других источников, например из сетей).
Если же не вносить информацию в компьютер извне, заразиться вирусом
невозможно - сам он не родится.
AIDSTEST
В нашей стране, как уже было сказано выше, особую популярность
приобрели антивирусные программы, совмещающие в себе функции детекторов и
докторов. Самой известной из них является программа AIDSTEST Д.Н.
Лозинского. В Украине практически на каждом IBM-совместимом персональном
компьютере есть одна из версий этой программы. Одна из последних версия
обнаруживает более 8000 вирусов.
Aidstest для своего нормального функционирования требует, чтобы в
памяти не было резидентных антивирусов, блокирующих запись в программные
файлы, поэтому их следует выгрузить, либо, указав опцию выгрузки самой
резидентной программе, либо воспользоваться соответствующей утилитой.
При запуске Aidstest проверяет себя оперативную память на наличие
известных ему вирусов и обезвреживает их. При этом парализуются только
функции вируса, связанные с размножением, а другие побочные эффекты могут
оставаться. Поэтому программа после окончания обезвреживания вируса в
памяти выдает запрос о перезагрузке. Следует обязательно последовать этому
совету, если оператор ПЭВМ не является системным программистом,
занимающимся изучением свойств вирусов. При чем следует перезагрузиться
кнопкой RESET, так как при "теплой перезагрузке" некоторые вирусы могут
сохраняться. Вдобавок, лучше запустить машину и Aidstest с
защищённой от записи дискеты, так как при запуске с зараженного диска
вирус может записаться в память резидентом и препятствовать лечению.
Aidstest тестирует свое тело на наличие известных вирусов, а также по
искажениям в своем коде судит о своем заражении неизвестным вирусом. При
этом возможны случаи ложной тревоги, например при сжатии антивируса
упаковщиком. Программа не имеет графического интерфейса, и режимы ее
работы задаются с помощью ключей. Указав путь, можно проверить не весь
диск, а отдельный подкаталог.
Как показала практика, самый оптимальный режим для ежедневной работы
задается ключами /g (проверка всех файлов, а не только с расширением
EXE,COM,SYS) и /s (медленная проверка). Увеличение времени при таких опциях
практически не ощутимо, зато вероятность обнаружения на порядок выше.
При обычном тестировании не следует ставить ключ /f (исправление
зараженных программ и стирание не подлежащих восстановлению), даже с
ключом /q (выдавать запрос об удалении файла), поскольку любая программа, в
том числе и антивирусная, не застрахована от ошибок. Ключ /f следует
использовать тогда, когда Aidstest, а также другие антивирусы указывают
на наличие вируса в каком-либо файле. При этом следует перезапустить
компьютер с защищённой от записи дискеты, так как система может быть
заражена резидентным вирусом, и тогда лечение будет неэффективным, а то и
просто опасным. При обнаружении вируса в ценном файле следует переписать
его на дискету, а ещё лучше - на электронный, диск и там попытаться
вылечить с помощью указания Aidstest-у опции /f. Если попытка не увенчается
успехом, то надо удалить все зараженные копии файла и проверить диск снова.
Если в файле содержится важная информация, которую стирать жалко, то можно
заархивировать файл и подождать выхода новой версии Aidstest или другого
антивируса, способной лечить этот тип вируса. Для ускорения процесса
можно направить зараженный файл в качестве образца Лозинскому.
Для создания в файле протокола работы программы Aidstest служит ключ
/p. Протокол оказывается нужным, когда пользователь не успевает
просмотреть имена зараженных файлов. Для поддержки антивирусного программно
- аппаратного комплекса Sheriff (далее будет рассмотрен подробнее), служит
ключ /z.
DOCTOR WEB
В последнее время стремительно растет популярность другой антивирусной
программы - Doctor Web. Dr.Web так же, как и Aidstest относится к классу
детекторов - докторов, но в отличие от последнего, имеет так называемый
"эвристический анализатор" - алгоритм, позволяющий обнаруживать
неизвестные вирусы. "Лечебная паутина", как переводится с английского
название программы, стала ответом отечественных программистов на нашествие
самомодифицирующихся вирусов-мутантов. Последние при размножении
модифицируют свое тело так, что не остается ни одной характерной цепочки
байт, присутствовавшей в исходной версии вируса. Dr.Web можно назвать
антивирусом нового поколения по сравнению с Aidstest и его аналогами.
Управление режимами также как и в Aidstest осуществляется с помощью
ключей. Пользователь может указать программе, тестировать как весь диск,
так и отдельные подкаталоги или группы файлов, либо же отказаться от
проверки дисков и тестировать только оперативную память. В свою очередь
можно тестировать либо только базовую память, либо, вдобавок, ещё и
расширенную (указывается с помощью ключа /H). Как и Aidstest Doctor Web
может создавать отчет о работе (ключ /P), загружать знакогенератор
Кириллицы (ключ /R), поддерживает работу с программно-аппаратным
комплексом Sheriff (ключ /Z).
Но, конечно, главной особенностью "Лечебной паутины" является наличие
эвристического анализатора, который подключается ключом /S. Баланса между
скоростью и качеством можно добиться, указав ключу уровень эвристического
анализа: 0 - минимальный, 1 - оптимальный, 2 - максимальный; при этом,
естественно, скорость уменьшается пропорционально увеличению качества. К
тому же Dr.Web позволяет тестировать файлы, вакцинированные CPAV, а также
упакованные LZEXE, PKLITE, DIET. Для этого следует указать ключ /U (при
этом распаковка файлов будет произведена на текущем устройстве) или /U
диск: (где диск: - устройство, на котором будет производиться
распаковка), если дискета, с которой запущен Doctor Web защищена от записи.
Многие программы упакованы таким способом, хотя пользователь может и не
подозревать об этом. Если ключ /U не установлен, то Doctor Web может
пропустить вирус, забравшийся в запакованную программу.
Важной функцией является контроль заражения тестируемых файлов
резидентным вирусом (ключ /V). При сканировании памяти нет стопроцентной
гарантии, что "Лечебная паутина" обнаружит все вирусы, находящиеся там.
Так вот, при задании функции /V Dr.Web пытается воспрепятствовать
оставшимся резидентным вирусам, заразить тестируемые файлы.
Тестирование винчестера Dr.Web-ом занимает на много больше времени, чем
Aidstest-ом, поэтому не каждый пользователь может себе позволить тратить
столько времени на ежедневную проверку всего жесткого диска. Таким
пользователям можно посоветовать более тщательно (с опцией /S2) проверять
принесенные извне дискеты. Если информация на дискете находится в архиве
(а в последнее время программы и данные переносятся с машины на машину
только в таком виде; даже фирмы-производители программного обеспечения,
например Borland, пакуют свою продукцию), следует распаковать его в
отдельный каталог на жестком диске и сразу же, не откладывая, запустить
Dr.Web, задав ему в качестве параметра вместо имени диска полный путь к
этому подкаталогу. И все же нужно хотя бы раз в две недели производить
полную проверку "винчестера" на вирусы с заданием максимального уровня
эвристического анализа.
Так же как и в случае с Aidstest при начальном тестировании не стоит
разрешать программе лечить файлы, в которых она обнаружит вирус, так как
нельзя исключить, что последовательность байт, принятая в антивирусе за
шаблон может встретиться в здоровой программе. Если по завершении
тестирования Dr.Web выдаст сообщения о том, что нашел вирусы, нужно
запустить его с опцией /P (если эта опция не была указана) для того, чтобы
посмотреть, какой файл заражен. После этого нужно скопировать файл на
дискету или на электронный диск и попытаться удалить, указав "Лечебной
паутине" ключ /F. При неудачном лечении следует поступить так же, как в
аналогичной ситуации, описанной выше для программы Aidstest.
MICROSOFT ANTIVIRUS
В состав современных версий MS-DOS (например, 7.10) входит
антивирусная программа Microsoft Antivirus (MSAV). Этот антивирус может
работать в режимах детектора-доктора и ревизора.
MSAV имеет дружественный интерфейс в стиле MS-Windows, естественно,
поддерживается мышь. Хорошо реализована контекстная помощь: подсказка
есть практически к любому пункту меню, к любой ситуации. Универсально
реализован доступ к пунктам меню: для этого можно использовать клавиши
управления курсором, ключевые клавиши (F1-F9), клавиши, соответствующие
одной из букв названия пункта, а также мышь. Флажки установок в пункте
меню Options можно устанавливать как клавишей ПРОБЕЛ, так и клавишей
ENTER. Серьёзным неудобством при использовании программы является то, что
она сохраняет таблицы с данными о файлах не в одном файле, а разбрасывает
их по всем директориям.
При запуске программа загружает собственный знакогенератор и читает
дерево каталогов текущего диска, после чего выходит в главное меню. Не
понятно, зачем читать дерево каталогов сразу при запуске: ведь пользователь
может и не захотеть проверять текущий диск. В главном меню можно сменить
диск (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 выдает отчет в виде таблицы, в
которой сообщается о количестве проверенных жестких дисков и гибких дисков,
о количестве проверенных, инфицированных и вылеченных файлов. Кроме того,
выводится время сканирования.
В меню Options можно сконфигурировать программу по собственному
желанию. Здесь можно установить режим поиска вирусов-невидимок (Anti-
Stealth), проверки всех (а не только исполнимых) файлов (Check All
Files), а также разрешить или запретить создавать таблицы CHKLIST.MS
(Create New Checksums). К тому же можно задать режим сохранения отчета о
проделанной работе в файле. Если установить опцию Create Backup, то перед
удалением вируса из зараженного файла его копия будет сохранена с
расширением *.VIR
Находясь в основном меню, можно просмотреть список вирусов,
известных программе MSAV, нажав клавишу F9. При этом выведется окно с
названиями вирусов. Чтобы посмотреть более подробную информацию о вирусе,
нужно подвести курсор к его имени и нажать ENTER. Можно быстро перейти
к интересующему вирусу, набрав первые буквы его имени. Информацию о
вирусе можно вывести на принтер, выбрав соответствующий пункт меню.
ADINF
(Advanced Diskinfoscope)
ADinf относится к классу программ-ревизоров. Антивирус имеет высокую
скорость работы, способен с успехом противостоять вирусам, находящимся в
памяти. Он позволяет контролировать диск, читая его по секторам через BIOS
и не используя системные прерывания DOS, которые может перехватить вирус.
Программа ADinf получила первый приз на Втором Всесоюзном конкурсе
антивирусных программ в 1990 году, а также второй приз на конкурсе
Borland Contest'93. ADinf был единственным антивирусом, который летом 1991
года обнаружил вирус DIR, построенный на принципиально новом способе
заражения и маскировки.
Для лечения заражённых файлов применяется модуль ADinf Cure Module,
не входящий в пакет ADinf и поставляющийся отдельно. Принцип работы
модуля - сохранение небольшой базы данных, описывающей контролируемые
файлы. Работая совместно, эти программы позволяют обнаружить и удалить
около 97% файловых вирусов и 100% вирусов в загрузочном секторе. К
примеру, нашумевший вирус SatanBug был легко обнаружен, и заражённые им
файлы автоматически восстановлены. Причем, даже те пользователи, которые
приобрели ADinf и ADinf Cure Module за несколько месяцев до появления
этого вируса, смогли без труда от него избавиться.
В отличие от других антивирусов Advansed Diskinfoscope не требует
загрузки с эталонной, защищённой от записи дискеты. При загрузке с
винчестера надежность защиты не уменьшается.
ADinf имеет хорошо выполненный дружественный интерфейс, который
реализован в графическом режиме. Программа работает непосредственно с
видеопамятью, минуя BIOS, при этом поддерживаются все графические
адаптеры. Наличие большого количества ключей позволяет пользователю
создать максимально удобную для него конфигурацию системы. Можно
установить, что именно нужно контролировать: файлы с заданными
расширениями, загрузочные сектора, наличие сбойных кластеров, новые файлы
на наличие Stealth-вирусов, файлы из списка неизменяемых и т.д. По своему
желанию пользователь может запретить проверять некоторые каталоги (это
нужно, если каталоги являются рабочими и в них всё время происходят
изменения). Имеется возможность изменять способ доступа к диску (BIOS,
Int13h или Int25h/26h), редактировать список расширений проверяемых файлов,
а также назначить каждому расширению собственный вьюер, с помощью
которого будут просматриваться файлы с этим расширением. В традициях
современного программного обеспечения реализована работа с мышью. Как и
вся продукция фирмы "ДиалогНаука", ADinf поддерживает программно-
аппаратный комплекс Sheriff.
При инсталляции ADinf в систему имеется возможность изменить имя
основного файла ADINF.EXE и имя таблиц, при этом пользователь может
задать любое имя. Это очень полезная функция, так как в последнее время
появилось множество вирусов, "охотящихся" за антивирусами (например,
есть вирус, который изменяет программу Aidstest так, что она вместо
заставки фирмы "ДиалогНаука" пишет: "Лозинский - пень"), в том числе и за
ADinf.
Полезной функцией является возможность работы с DOS, не выходя из
программы. Это бывает полезно, когда нужно запустить внешний антивирус
для лечения файла, если у пользователя нет лечащего блока ADinf Cure
Module.
Ещё одна интересная функция - запрещение работы с системой при
обнаружении изменений на диске. Эта функция полезна, когда за
терминалами работают пользователи, не имеющие ещё большого опыта в общении
с компьютером. Такие пользователи, по незнанию или по халатности, могут
проигнорировать сообщение ADinf и продолжить работу, как ни в чём не
бывало, что может привести к тяжёлым последствиям.
Если же установлен ключ -Stop в строке вызова Adinf AUTOEXEC.BAT,
то при обнаружении изменений на диске программа потребует позвать
системного программиста, обслуживающего данный терминал, а если
пользователь нажмет ESC или ENTER, то система перезагрузится и все
повторится снова.
Принцип работы ADinf основан на сохранении в таблице копии MASTER-
BOOT и BOOT секторов, список номеров сбойных кластеров, схему дерева
каталогов и информацию обо всех контролируемых файлах. Кроме того,
программа запоминает и при каждом запуске проверяет, не изменился ли
доступный DOS объем оперативной памяти (что бывает при заражении
большинством загрузочных вирусов), количество установленных винчестеров,
таблицы параметров винчестера в области переменных BIOS.
При первом запуске программа запоминает объем оперативной памяти,
находит и запоминает адрес обработчика прерывания Int 13h в BIOS, который
будет использоваться при всех последующих проверках, и строит таблицы для
проверяемых дисков. При этом проверяется, показывал ли вектор прерывания
13h в BIOS перед загрузкой DOS.
При последующих запусках ADinf проверяет объем оперативной памяти,
доступной DOS, переменные BIOS, загрузочные сектора, список номеров
сбойных кластеров (так как некоторые вирусы, записавшись в кластер,
помечают его, как сбойный, чтобы их не затёрли другие данные, а также не
обнаружили примитивные антивирусы). К тому же антивирус ищет вновь
созданные и уничтоженные подкаталоги, новые, удаленные, переименованные,
перемещённые и изменившиеся файлы (проверяется изменение длины и
контрольной суммы). Если ADinf обнаружит, что, изменился файл из списка
неизменяемых, либо в файле произошли изменения без изменения даты и
времени, а также наличие у файла странной даты (число больше 31,
месяц больше 12 или год больше текущего) или времени (минут больше 59,
часов больше 23 или секунд больше 59), то он выдаст предупреждение о том,
что возможно заражение вирусом.
Если обнаружены изменения BOOT-секторов, то можно в режиме диалога
сравнить системные таблицы, которые были до и после изменения, и по желанию
восстановить прежний сектор. После восстановления измененный сектор
сохраняется в файле на диске для последующего анализа. Новые сбойные
кластеры (вернее информация о них в FAT) могут появиться после запуска
какой-либо утилиты, лечащей диск (например, NDD) или благодаря действиям
вируса. Если Adinf выдал сообщение, а пользователь не запускал никаких
подобных утилит, то, скорее всего в компьютер забрался вирус. При
получении такого сообщения следует продолжить проверку, внимательно следя
за всеми сообщениями об изменениях файлов и загрузочных секторов. Если в
системе действительно вирус, то такие сообщения не заставят себя долго
ждать (ведь если все тело вируса будет находиться в "сбойном" кластере, ему
никогда не передастся управление).
После проверки ADinf выдаёт сводную таблицу, сообщающую об
изменениях на диске. По таблице можно перемещаться стрелками и
просматривать подробную информацию, нажав ENTER на интересующем пункте.
Существует возможность перехода к любому пункту с помощью "быстрых"
клавиш. Изменившиеся файлы можно просмотреть в классическом режиме
(шестнадцатеричный дамп / ASCII-коды) с помощью встроенного вьюера,
который читает диск через BIOS. Можно также воспользоваться внешним
вьюером, предварительно указав к нему путь. Подключив внешний редактор,
можно отредактировать изменившийся файл.
Не совсем привычно выглядит форма, в которой ADinf сообщает об
обнаруженных подозрительных изменениях: вместо выдачи сообщения о
конкретных изменениях он выводит красное окно со списком всех возможных
и помечает галочкой пункты, соответствующие изменениям, произошедшим в
настоящий момент. Если после получения такого сообщения нажать ESC, то
программа запросит о дальнейших действиях: обновить информацию о диске,
не обновлять её, лечить (при наличии лечащего модуля ADinf Cure Module)
или записать протокол. Для лечения можно воспользоваться внешним
антивирусом, загрузив его из окна работы с DOS, которое вызывается
комбинацией клавиш ALT+V.
Если изменения не относятся к разряду подозрительных, то после выдачи
таблицы изменений можно нажать ESC. При этом программа спросит, нужно ли
обновлять данные о диске в таблицах или не нужно, а также нужно ли
создавать файл в отчете о проделанной работе. После выбора одного из
пунктов программа выполняет затребованное действие и завершает свою
работу.
Заключение
Ни один тип антивирусных программ по отдельности не дает полной
защиты от вирусов. Лучшей стратегией защиты от вирусов является
многоуровневая, "эшелонированная" оборона. Средствам разведки в "обороне"
от вирусов соответствуют программы-детекторы, позволяющие проверять
вновь полученное программное обеспечение на наличие вирусов. На
переднем крае обороны находятся программы-фильтры. Эти программы могут
первыми сообщить о работе вируса и предотвратить заражение программ и
дисков. Второй эшелон обороны составляют программы-ревизоры, программы-
доктора и доктора-ревизоры. Самый глубокий эшелон обороны - это средства
разграничения доступа. Они не позволяют вирусам и неверно работающим
программам, даже если они проникли в компьютер, испортить важные данные.
Что будет завтра?
Чего ожидать от компьютерного андеграунда в последующие годы? Скорее
всего основными проблемами останутся: 1) полиморфик-DOS-вирусы, к которым
добавятся проблемы полиморфизма в макро-вирусах и вирусах для Windows и
OS/2; 2) макро-вирусы, которые будут находить все новые и новые приемы
заражения и скрытия своего кода в системе; 3) сетевые вирусы, использующие
для своего распространения протоколы и команды компьютерных сетей.
Пункт 3) находится пока только на самой ранней стадии - вирусы делают
первые робкие попытки самостоятельно распространять свой код по MS Mail и
пользуясь ftp, однако все еще впереди.
Не исключено, что появятся и другие проблемы, которые принесут немало
неприятностей пользователям и достаточное количество неурочной работы
разработчикам антивирусных программ. Однако я смотрю на будущее с
оптимизмом: все проблемы, когда-либо встававшие в истории развития вирусов,
были довольно успешно решены. Скорее всего так же успешно будут решаться и
будущие проблемы, пока еще только витающие идеями в воспаленном разуме
вирусописателей.
Что будет послезавтра?
Что будет послезавтра и как долго вообще будут существовать вирусы?
Для того чтобы ответить на этот вопрос следует определить, где и при каких
условиях водятся вирусы.
Основная питательная среда для массового распространения вируса в ЭВМ,
на мой взгляд, обязана содержать следующие необходимые компоненты:
незащищенность операционной системы (ОС);
наличие разнообразной и довольно полной документации по OC и «железу»;
широкое распространение этой ОС и этого «железа».
Следует отметить, что понятие операционной системы достаточно
растяжимое. Например, для макро-вирусов операционной системой являются
редакторы Word и Excel, поскольку именно редакторы, а не Windows
предоставляют макро-вирусам (т.е. программам на Бейсике) необходимые
ресурсы и функции.
Если в операционной системе присутствуют элементы защиты информации,
как это сделано практически во всех ОС, вирусу будет крайне трудно поразить
объекты своего нападения, так как для этого потребуется (как минимум)
взломать систему паролей и привилегий. В результате работа, необходимая для
написания вируса, окажется по силам только профессионалам высокого уровня
(вирус Морриса для VAX - пример этому). А у профессионалов, на мой взгляд,
уровень порядочности все-таки намного выше, чем в среде потребителей их
продукции, и, следовательно, число созданных и запущенных в большую жизнь
вирусов еще более сократится.
Для массового производства вирусов также необходимо и достаточное
количество информации о среде их обитания. Какой процент от числа системных
программистов, работающих на мини-ЭВМ в операционках UNIX, VMS и т.д. знает
систему управления процессами в оперативной памяти, полные форматы
выполняемых файлов и загрузочных записей на диске? (т.е. информацию,
необходимую для создания вируса). И следовательно, какой процент от их
числа в состоянии вырастить настоящего полноценного зверя? Другой пример -
операционная система Novell NetWare, достаточно популярная, но крайне слабо
документированная. В результате мне пока не известно ни одного вируса,
поразившего выполняемые файлы Novell NetWare, несмотря на многочисленные
обещания вирусописателей выпустить такой вирус в ближайшее время.
Ну а по поводу широкого распространения ОС как необходимого условия
для вирусного нашествия и говорить надоело: на 1000 программистов только
100 способны написать вирус, на эту сотню приходится один, который эту идею
доведет до завершения. Теперь полученную пропорцию умножаем на число тысяч
программистов - и получаем результат: с одной стороны 15.000 или даже
20.000 полностью IBM-совместимых вирусов, с другой - несколько сот вирусов
для Apple-Macintosh. Такое же несоответствие пропорций наблюдается и в
сравнении общего количества вирусов для Windows (несколько десятков) и для
OS/2 (несколько штук).
Приведенным выше трем условиям «расцвета» компьютерных вирусов
удовлетворяют сразу несколько OS (включая редакторы), производимых фирмой
Microsoft (DOS, Windows, Win95/NT и Word, Excel, Office97), что дает
благодатную почву для существования самых разнообразных файловых и макро-
вирусов. Удовлетворяют приведенным условиям также и стандарты разбиения
жестких дисков. Результат - разнообразные варианты загрузочных вирусов,
поражающих систему в момент ее загрузки.
Для того, чтобы прикинуть продолжительность нашествия компьютерных
вирусов в какой-либо OC, надо оценить время сосуществования приведенных
выше необходимых условий.
Довольно очевидно, что в обозримом будущем фирмы IBM и Apple не
собираются уступать массовый рынок своим конкурентам (на радость Apple- и
IBM-программистам), даже если для этого этим фирмам придется объединить
усилия. Не представляется возможным и усечение потока информации по
наиболее распространенным системам, так как это ударит по числу приложений
для них, а следовательно, и по их «продаваемости». Остается только одно -
защита ОС. Однако, защищенность ОС требует исполнения некоторых правил
(паролей и т.п.), что приводит к ряду неудобств. Поэтому мне кажется
маловероятным, что такие ОС станут популярными в среде обычных
пользователей - секретарш, бухгалтеров, на домашних компьютерах, и т.д., и
т.п., либо функции защиты будут отключаться пользователем еще при установке
ОС.
Исходя из вышесказанного можно сделать единственный вывод: вирусы
успешно внедрились в повседневную компьютерную жизнь и покидать ее в
обозримом будущем не собираются.
Литература
1. Ф.Файтс, П.Джонстон, М.Кратц "Компьютерный вирус: проблемы и прогноз",
Москва, "Мир", 1993 г.
2. Н.Н.Безруков "Классификация компьютерных вирусов MS-DOS и методы защиты
от них", Москва, СП "ICE", 1990 г.
3. Безруков Н.Н. "Компьютерные вирусы", Москва, Наука, 1991.
4. Мостовой Д.Ю. "Современные технологии борьбы с вирусами" // Мир ПК. -
№8. - 1993.
5. Денисов Т.В. "Антивирусная защита"//Мой Компьютер-№4-1999г.
6. http://www.symantec.ru/region/ru/product/navbrochure/index.htm
7. http://www.symantec.ru
8. http://www.dials.ru/
9. http://www.avp.ru/
10. http://www2.dialognauka.ru/
11. http://www.apl.ru/isvwsolaris.htm
12. http://www.act.ru/av/Solomon/DrSolom_report.asp
Страницы: 1, 2
|