Вирусы в Internet. Сказки и реальность
Как мы уже говорили, с компьютерными вирусами вообще связано много разнообразных легенд. Впрочем, иногда легенды эти, после творческой переработки вирусописаками, превращаются в серьезную опасность. История с вирусами, заражающими документы, √ тому подтверждение. Так представляет ли сегодня Internet реальную опасность?
Безусловно √ да. Миллионы людей бродят по сети, "перехватывая" то тут, то там разнообразные программы. После чего эти программы немедленно "опробуются в деле", ну а дальше... как повезет. В сети лежат гигабайты информации и сколько в ней вирусов (случайно попавших или намеренно "подсаженных") неизвестно. И при этом приходится только удивляться беспечности тех, кто тщательно проверяет все "внешние" дискеты, но даже "и в голову не берет", что вирус может притаится в программе, полученной из сети. Или в документе, полученном из сети.
Вместе с этим, в различных электронных конференциях периодически появляются "ужастики" о вирусах, заражающих сообщения электронной почты или "прыгающих" на компьютер, при просмотре WWW-страниц. На сегодняшний день можно уверенно утверждать, что таких вирусов нет. Есть вирус (кстати, macro-вирус), который запускает программу Microsoft Mail и отправляет текстовые сообщения с пометкой "Срочно!" по нескольким случайным адресам из адресной книги. Обратим внимание, что это √ именно внешнее проявление вируса, а не средство его размножения. Разумеется, ничто не мешает вирусу вместо текстовых сообщений рассылать свою копию, но данный конкретный этого не делает. А если бы и делал, то получателю сообщения все равно требуется запустить полученную копию вируса. Впрочем, учитывая возможность распространения вирусов в документах и беспечность некоторых пользователей, это не представляется столь уж невероятным. Всегда ли вы проверяете приаттаченные DOC-файлы перед тем, как посмотреть, что в них?
Отдельная тема √ вирусы, якобы написанные на Java. На сегодняшний день нет ни одного вируса на Java и считается, что текущая версия языка принципиально не позволяет вирусам размножатся. Другое дело, что известны многочисленные примеры апплетов, которые можно назвать деструктивными, но их разрушительные возможности невелики и вирусами они не являются. По всей видимости сейчас, когда с появлением macro-вирусов разработчики систем стали несколько внимательнее относится к вопросам безопасности, можно быть более или менее спокойным, используя Java. Чего не скажешь, об объектах ActivX, но практически во всех программах просмотра имеются возможность запретить работу этих объектов.
Антивирусные средства
Антивирусных средств довольно много. В каждом конкретном случае (об этом говорилось в уже упомянутой статье Е. Судова) надо выбирать антивирусный комплект, исходя из общей концепции информационной безопасности организации и нужд конкретного пользователя. Ниже кратко описаны основные типы антивирусных средств.
Детекторы (scanner). Назначение детектора ≈ обнаружить вирус. Бороться с ним предстоит либо другой антивирусной программе, либо системному программисту. Несколько лет назад детекторы практически уступили позиции полифагам (см. ниже), но любопытно, что они вновь возвращаются на компьютерный рынок по мере его развития. Если вы используете лицензионное программное обеспечение, то для вас может быть даже проще восстановить зараженную программу с дистрибутива (вот он, на полке, руку протянул и все), чем тратить время на лечение файлов. У нас другие традиции, и чистые детекторы (сканеры) еще не скоро будут в состоянии конкурировать с фагами (см. ниже).
Фаги (полифаги) (scanner/cleaner, scaner/remover). Фаг ≈ программа, способная уничтожить вирус (полифаг способен уничтожить много вирусов). Aidstest, к примеру, сегодня обнаруживает и обезвреживает около 2000 вирусов. Основной принцип работы традиционного фага описан выше. Он совсем прост и секретом не является. Кратко повторим основные моменты. Для каждого вируса путем анализа его кода, способов заражения файлов и т.д. выделяется некоторая характерная только для него последовательность байт. Эта последовательность называется сигнатурой данного вируса. Поиск вирусов в простейшем случае сводится к поиску их сигнатур. Современные фаги используют другие методы поиска вирусов. После обнаружения вируса в теле программы (или загрузочного сектора, который тоже, впрочем, содержит программу начальной загрузки) фаг обезвреживает его. Для этого разработчики антивирусных средств тщательно изучают работу каждого конкретного вируса: что он портит, как он портит, где он прячет то, что испортит (если прячет, конечно). В большинстве случаев фаг способен благополучно удалить вирус и восстановить работоспособность испорченных программ. Но необходимо хорошо понимать, что это возможно далеко не всегда (о причинах еще будет сказано ниже).
Ревизоры. Вирусы не всесильны. Мы уже говорили о том, что изобретательность авторов этой мерзости ограничена некоторыми рамками того, что в принципе возможно. Рамки возможного известны, и если взять под контроль все мыслимые направления вирусной атаки на ваш компьютер, то вы будете практически в полной безопасности. Имеются программы, в функции которых входит контроль возможных путей распространения инфекции. Из программ-ревизоров, которые можно приобрести в России, следует обратить внимание на уже упомянутую выше программу ADinf.
Сторожа. Сторож ≈ небольшая резидентная программа, постоянно находящаяся в памяти компьютера и контролирующая операции, которые она считает подозрительными. В качестве примера сторожа можно привести VSAFE, входивший в поставку некоторых версий MS-DOS. На наш взгляд, для обычного пользователя программные сторожа довольно бесполезны. Одни и те же операции выполняют и вирусы, и обычные программы. Невозможно даже выделить класс исключительно "вирусных" операций. Вследствие этого сторож либо вынужден ничего не контролировать и пассивно наблюдать за происходящим, либо "звенеть" при каждой подозрительной операции. При этом он так вам надоест, что вы просто отключите его, чтобы не мешал работать. Если уж использовать сторож, то на самом минимальном уровне контроля (например, отслеживая изменение загрузочных секторов). Кстати, такие сторожевые функции имеют некоторые современные BIOS, хотя и с этим все не так просто. Эта функция BIOS может конфликтовать с некоторыми операционными системами, а в некоторых случаях может вообще не работать.
Не так давно был популярен еще один класс антивирусных средств ≈ специальные вакцины, которые использовались для обработки файлов и загрузочных секторов. Вакцины бывают пассивными (пример такой вакцины описан ниже) и активными. Активная вакцина, "заражая" файл, подобно вирусу, предохраняет его от любого изменения и в ряде случаев способна не только обнаружить сам факт заражения, но и вылечить файл. Пассивные вакцины использовались (теперь это уже большая редкость) для предотвращения заражения файлов некоторыми вирусами, использующими простые признаки их зараженности ≈ "странные" время или дата создания, определенные символьные строки и пр. В настоящее время вакцинирование широко не применяется. Бездумное вакцинирование всего и вся способно вызвать целые эпидемии несуществующих вирусных болезней. Так, в течение нескольких лет на территории бывшего СССР свирепствовала страшная эпидемия ужасного вируса TIME. Жертвой этого вируса стали сотни абсолютно здоровых программ, "зарезанных на операционном столе" хирургом ANTI-KOTом. История эта вкратце такова. Имеется довольно много вирусов, предотвращающих повторное заражение файлов некоторой "черной меткой", которую они "навешивают" на программу. Имеются, к примеру, вирусы, выставляющие в поле секунд времени создания файла значение 62. Уже довольно давно появился вирус, который ко всем зараженным файлам дописывал в конец пять байт ≈ "MsDos". Нормальных файлов, содержащих в конце такую символьную строку, не бывает, поэтому вирус и использовал этот признак как индикатор заражения файла. Вакцинирование файлов против этого вируса совсем не сложно. Достаточно дописать в конец вышеупомянутую символьную строку ≈ и вирус вам не страшен. Страшно другое ≈ имеются (точнее, имелись) антивирусные программы (к примеру, ANTI-KOT), которые обманываются так же легко, как и сам вирус. Видя в конце файла злополучную строчку, они немедленно лечат его и умывают руки. Шансов на то, что такой инвалид будет нормально работать, практически никаких. С этим же вирусом (и с этим же антивирусом) связана еще одна история. До сих пор не вышел из употребления другой "мощный" антивирус ≈ ANTITIME. В отличие от ANTI-KOTа, он не калечит программ, но и не лечит их тоже. Видя в конце файла все ту же строчку, он отрезает ее (сообщая при этом, что в файле найден "страшный TIME", ≈ утверждение само по себе довольно корректно, поскольку вирусом он его явно не называет). Программа эта, написанная, по всей видимости, как антивакцина, периодически пытается участвовать в конкурсе на лучший антивирус, ибо она также видит "страшный TIME" там, где никакая из нормальных антивирусных программ его не видит.
Аппаратные средства защиты. Имеются специальные дополнительные устройства, обеспечивающие достаточно надежную (в некотором смысле ≈ абсолютную) защиту. В отличие от всех рассмотренных выше антивирусных средств, Sheriff способен предотвратить нападение вируса. К сожалению, автору известны случаи, когда пользователи, установившие на компьютере плату Sheriff, были настолько уверены в своей полной неуязвимости, что совершенно теряли всякую осторожность. Так, они не обращали внимания на области жесткого диска, не защищенные Sheriff (а такие области есть практически всегда ≈ если вы защитите винчестер целиком, то как вы будете работать?). Необходимо помнить, что антивирусные средства должны применяться комплексно и только такая комплексная защита с использованием надежного ревизора (ADinf), фагов Doctor Web и Aidstest, а при необходимости и платы Sheriff способна обеспечить максимальную безопасность.
Билет №23