Методы обнаружения
Для защиты от вредных программ и компьютерного мошенничества существуют и применяются различные методы борьбы с ними. Это методы юридические (полицейские), образовательные и технические.
Во всех компьютеризированных странах приняты законы, запрещающие создание и распространение вирусов и прочих типов вредоносных программ. К тому же часто действия интернет-преступников попадают под совершенно некомпьютерные статьи уголовных кодексов — например, мошенничество, вымогательство, неправомерный доступ к конфиденциальной информации и т.д. Данные законы регулярно применяются на практике. Так, за 2004-2006 годы за совершение преступлений с применением компьютерных технологий во всем мире было арестовано несколько сот человек. Однако следует признать, что часто подобные преступления совершаются техническими грамотными специалистами, и это достаточно серьёзно затрудняет расследование преступления. Плюс к тому большинство криминальных атак остаются вне поля зрения полиции — по причине их относительной незначительности. По этим причинам исключительно юридическими методами можно снизить общий уровень компьютерной преступности — но полностью победить нельзя.
Вторым важным методом защиты от компьютерных злоумышленников является образование пользователей, уяснение и строгое следование основным правилам поведения в сети. Всего есть три основных правила, которые верны как для домашних, так и для корпоративных пользователей:
- Обязательное использование антивирусной защиты. Если вы не являетесь экспертом по компьютерной безопасности, то лучше всего вас защитит надёжная антивирусная защита и защита от сетевых атак (сетевой экран) — доверьте свою безопасность профессионалам. Большинство современных антивирусных программ защищают от самых разнообразных компьютерных угроз — от вирусов, червей, троянских программ и рекламных систем. Интегрированные решения по безопасности также ставят фильтр против спама, сетевых атак, посещения нежелательных и опасных интернет-ресурсов и т.д.
- Не следует доверять всей поступающей на компьютер информации — электронным письмам, ссылкам на веб-сайты, сообщениям на интернет-пейджеры. Категорически не следует открывать файлы и ссылки, приходящие из неизвестного источника. Даже если сообщение получено из источника известного (от знакомого или коллеги по работе), но присланный файл или ссылка приходит для вас неожиданно, — лучше переспросить о подлинности сообщения, поскольку обратный адрес в электронной почте легко подделывается. Интернет — достаточно опасное место, где следует вести себя осторожно.
Риск заражения снижается также при помощи «организационных мер». К таким мерам относятся различные ограничения в работе пользователей (как индивидуальных, так и корпоративных), например:
- запрет на использование интернет-пейджеров;
- доступ только к ограниченному числу веб-страниц;
- физическое отключение внутренней сети предприятия от интернета и использование для выхода в интернет выделенных компьютеров;
- и так далее.
К сожалению, жёсткие ограничительные меры могут конфликтовать с пожеланиями каждого конкретного пользователя или с бизнес-процессами предприятия, — в таких случаях надо искать баланс, причём в каждом отдельно взятом случае этот баланс может быть различным.
- Следует обращать достаточно внимания на информацию от антивирусных компаний и от экспертов по компьютерной безопасности. Обычно они своевременно сообщают о новых видах интернет-мошенничества, новых вирусных угрозах, эпидемиях и т.п. — уделяйте больше внимания подобной информации.
Примером успешного отражения злоумышленных атак является история с почтовым червём LoveLetter и многочисленными его клонами. Сразу после эпидемии червя практически всеми антивирусными компаниями были опубликованы рекомендации по защите от почтовых червей подобного типа — просто не открывать вложения с расширением имени файла VBS (именно так распространялся этот червь). В результате, несмотря на многочисленные клоны этого червя и другие вариации на тему VBS-червей, ни один из них не вызвал эпидемии, сравнимой по масштабу с LoveLetter.
Однако бывают случаи, что сообщения о новых вирусных инцидентах не вполне соответствует реальному уровню угрозы. Часто тривиальные почтовые черви маскируются под горячие новости о каком-либо заметном событии, например, про чемпионаты по футболу, природные или технологические катастрофы, «террорист №1 арестован» и тому подобное. Некоторые антивирусные компании иногда преподносят это как главную тему дня и раздувают вокруг незначительного события рекламную шумиху. Увы, если в этот момент нет более «горячих» новостей, то подобные сообщения попадают в газеты и новостные программы и фактически дезинформируют пользователей. К подобным сообщениям следует относиться достаточно критически. Примером подобной рекламной шумихи является история, случившаяся в конце 1999г. Неизвестные хакеры сообщили о том, что в Новый Год планируют запустить в сеть сотни тысяч новых вирусов. Мнение антивирусных компаний и экспертов было неоднозначно. Часть из них помогали раздувать сенсацию, остальные — успокаивали пользователей, утверждая, что нет никаких предпосылок для интернет-катастрофы (которой так и не произошло).
Коротко приведённые выше три правила компьютерной гигиены можно перечислить так: обязательно защищаться, никому не верить, но антивирусным компаниям — можно (с оговорками). И про антивирусную защиту — подробнее.
Исследователи объяснили, что быстрое, точное и массовое обнаружение вируса — это важная мера для борьбы с инфекционными заболеваниями, такими как коронавирус. Новая стратегия диагностики вирусов с использованием реактивных двухцепочечных РНК может служить как предварительный скрининг с повышенной чувствительностью для широкого круга вирусов.
Его разработали в Корейском институте передовых технологий. Исследовательская группа под руководством профессора Шэн Ли и профессора Юсика Кима с кафедры химической и биомолекулярной инженерии создала универсальную платформу обнаружения вирусов, используя отличительные особенности ее зернистой поверхности.
Основная идея платформы — использование особенности гранулированных полимеров, которые мобилизируют функциональные группы молекул. Поскольку двухцепочечные РНК являются обычными побочными продуктами транскрипции и репликации вирусов, эти поверхности могут помочь обнаружить вирусы без изучения их геномных последовательностей.
Для повышения чувствительности к вирусам группа исследователей разработала аналог двухступенчатого процесса обнаружения иммуносорбентного анализа. При этом связанные двухцепочечные РНК визуализируются с помощью флуоресцентно-меченых антител.
С помощью разработанной платформы длинные двухцепочечные РНК могут быть обнаружены и визуализированы из смеси РНК, а также из тотальных лизатов клеток, которые содержат смесь различных веществ, таких как ДНК и белки. С помощью этого инструмента команда исследователей успешно обнаружила повышенные уровни вирусов гепатита С и А.
Методы лабораторной диагностики вирусных инфекций подразделяются на несколько больших групп.
— Прямые методы, состоящие в выявлении непосредственно в биологическом материале самого вируса или антител к нему.
— Непрямые методы-заключаются в искусственной наработке вируса в значительных количествах, и его дальнейшем анализе.
К наиболее актуальным в повседневной практике методам диагностики относятся:
Серологические методы диагностики — выявление в сыворотке крови пациента определенных антител или антигенов в результате реакции антиген-антитело(АГ-АТ). То есть, при поиске у пациента определенного антигена используется соответствующее искусственно синтезированное антитело, и, соответственно, наоборот-при выявлении антител используют синтезированные антигены.
Реакция иммунофлуоресценции (РИФ)
Основана на использовании меченых красителями антител. При наличии вирусного антигена он связывается с мечеными антителами, и под микроскопом наблюдается специфическая окраска, которая говорит о положительном результате. При этом методе, к сожалению, невозможна количественная интерпретация результата, а только лишь качественная.
Возможность количественного определения дает иммуноферментный анализ(ИФА). Он похож на РИФ, однако в качестве маркеров используют не красители, а ферменты, превращающие бесцветные субстраты в окрашенные продукты, что и дает возможность количественной оценки содержания как антигенов, так и антител.
— Отмывают не связавшиеся антитела и антигены.
— Добавляют бесцветный субстрат, и в лунках с антигеном, который мы определяем, произойдет окрашивание, т.к. там будет связанный с антигеном фермент, после чего на специальном приборе оценивают интенсивность свечения окрашенного продукта.
По похожей схеме происходит и выявление антител.
Реакция непрямой(пассивной) гемаглютинации (РПГА).
Метод основан на способности вирусов связывать эритроциты. В норме эритроциты падают на дно планшета, образуя так называемую пуговку. Однако если в исследуемом биологическом материале находится вирус, он свяжет эритроциты в так называемый зонтик, который не упадет на дно лунки.
Если стоит задача выявления антител, то сделать это возможно при помощи реакции торможения гемагглютинации (РТГА). В лунку с вирусом и эритроцитами закапывают различные пробы. При наличии антител они свяжут вирус, и эритроциты упадут на дно с образованием «пуговки».
Теперь остановимся на методах диагностики непосредственно нуклеиновых кислот исследуемых вирусов, и прежде всего о ПЦР ( Полимеразная Цепная Реакция) .
Суть этого метода заключается в обнаружении специфического фрагмента ДНК или РНК вируса путём его многократного копирования в искусственных условиях. ПЦР можно проводить только с ДНК, то есть для РНК-вирусов предварительно необходимо произвести реакцию обратной транскрипции.
Непосредственно ПЦР проводят в специальном приборе, под названием амплификатор, или термоциклер, который поддерживает необходимый температурный режим. ПЦР-смесь состоит из добавленной ДНК, которая содержит интересующий нас фрагмент, праймеров (короткий фрагмент нуклеиновой кислоты, комплиментарный ДНК-мишени, служит затравкой для синтеза комплиментарной цепи), ДНК-полимеразы и нуклеотидов.
Стадии цикла ПЦР:
— Деннатурация-первая стадия. Температура повышается до 95 градусов, цепочки ДНК расходятся друг относительно друга.
— Отжиг праймеров. Температуру понижают до 50-60 градусов. Праймеры находят комплиментарный участок цепи и связываются с ним.
— Синтез. Температуру вновь повышают до 72, это рабочая температура для ДНК-полимеразы, которая, отталкиваясь от праймеров, строит дочерние цепи.
Цикл многократно повторяется. Через 40 циклов из одной молекулы ДНК получается 10*12 степени копий копий искомого фрагмента.
При проведении ПЦР в режиме реального времени синтезируемые копии фрагмента ДНК метятся красителем. Прибор регистрирует интенсивность свечения и по ходу реакции строит графики накопления искомого фрагмента.
Современные методы лабораторной диагностики с высокой достоверностью позволяют выявить присутствие вируса — возбудителя в организме, нередко, задолго до появления первых симптомов заболевания.
В загрузочных секторах дисков расположены, как правило, небольшие программы, назначение которых состоит в определении размеров и границ логических дисков (для MBR винчестера) или загрузке операционной системы (для boot-сектора).
В начале следует прочитать содержимое сектора, подозрительного на наличие вируса. Для этой цели удобно использовать DISKEDIT из «Нортоновских утилит». Некоторые загрузочные вирусы практически сразу можно обнаружить по наличию различных текстовых строк выводимых на экран при активизации вируса. Другие вирусы, поражающие boot-секторы дисков, наоборот, определяются по отсутствию строк, которые обязательно должны присутствовать в boot-секторе. К таким строкам относятся имена системных файлов и строки сообщений об ошибках. Отсутствие или изменение строки-заголовка boot-сектора (строка, название фирмы-производителя программного обеспечения) также может служить сигналом о заражении вирусом.
Однако существуют вирусы, которые внедряются в загрузчик без изменения его текстовых строк и с минимальными изменениями кода загрузчика. Для того чтобы обнаружить такой вирус, в большинстве случаев достаточно отформатировать дискету на заведомо незараженном компьютере, сохранить в виде файла ее boot-сектор, затем некоторое время использовать ее на зараженном компьютере (записать/прочитать несколько файлов), а после этого на незараженном компьютере сравнить ее boot-сектор с оригинальным. Если в коде загрузочного сектора произошли изменения – вирус обнаружен.
Обнаружение резидентного вируса
Если в компьютере обнаружены следы деятельности вируса, но видимых изменений в файлах и системных секторах дисков не наблюдается, то вполне возможно, что компьютер поражен одним из «стелс»-вирусов.
Обнаружение резидентного Windows-вируса является крайне сложной задачей. Вирус, находясь в среде Windows как приложение или VxD-двайвер, практически невидим, поскольку одновременно активны несколько десятков приложений и VxD, и вирус по внешним признакам от них ничем не отличается. Для того чтобы обнаружить программу-вирус в списках активных приложений и VxD, необходимо разбираться во всех тонкостях Windows и иметь полное представление о драйверах и приложениях, установленных на данном компьютере, поэтому приемлемый способ обнаружить резидентный Windows-вирус – загрузить DOS и проверить запускаемые файлы Windows.
Лекция
доцента кафедры ИВТ Гродненского госуниверситета
канд. техн. наук Ливак Елены Николаевны
Методы И СРЕДСТВА
обнаружения компьютерных вирусов
Методы, которые используют антивирусные средства
В настоящее время существует множество антивирусных программных средств, но их можно разделить на группы по методам поиска вирусов, которые они реализовывают.
Рассмотрим эти методы.
1. Сканирование.
Это самый простой метод поиска вируса. Он основан на последовательном просмотре памяти компьютера, загрузочных секторов и проверяемых файлов в поиске так называемых сигнатур (масок) известных вирусов.
Сигнатура вируса — это уникальная последовательность байтов, принадлежащая вирусу и не встречающаяся в других программах.
Определение сигнатуры вируса ¾ очень сложная задача. Необходимо тщательно изучить принцип работы вируса и сравнить программы, зараженные данным вирусом, и незараженные. Кроме того, сигнатура не должна содержаться в других программах, иначе возможны ложные срабатывания.
Надежность принципа поиска по маске ограниченной длины не очень высока. Вирус легко модифицировать, чем и занимаются многие авторы вирусов. Достаточно изменить строковую константу, текст выдаваемого сообщения или одну из первых команд, чтобы вирус стал совсем новым.
Надежность увеличивается при приведении вируса к каноническому виду: то есть обнулении всех байтов, приходящихся на переменные и константы.
Хранение сигнатур канонических форм всех известных вирусов (вспомните, что на сегодняшний день их число огромно) требует неоправданно много памяти. Достаточно хранить только контрольную сумму сигнатур вирусов.
При подозрении на вирус необходимо привести подозреваемый код к каноническому виду, подсчитать контрольную сумму и сравнить с эталоном.
Часто в качестве сигнатуры берется характерный для этого вируса фрагмент кода, например, фрагмент обработчика прерывания. Не все вирусы имеют сигнатуры в виде строк байт, для некоторых удается в качестве сигнатур использовать регулярные выражения, а некоторые вирусы могут вообще не иметь сигнатур, например, полиморфные.
2. Обнаружение изменений, или контроль целостности.
Контроль целостности основан на выполнении двух процедур:
· постановка на учет;
· контроль поставленного на учет.
При внедрении вируса в компьютерную систему обязательно происходят изменения в системе (которые некоторые вирусы успешно маскируют). Это и изменение объема доступной оперативной памяти, и изменение загрузочных секторов дисков, и изменения самих файлов.
Достаточно запомнить характеристики, которые подвергаются изменениям в результате внедрения вируса, а затем периодически сравнивать эти эталонные характеристики с действующими.
3. Эвристический анализ.
Метод, который стал использоваться для обнаружения вирусов сравнительно недавно. Он предназначен для обнаружения новых неизвестных вирусов. Программы, реализующие этот метод, тоже проверяют загрузочные секторы дисков и файлы, только уже пытаются обнаружить в них код, характерный для вирусов. Например, таким может быть код, устанавливающий резидентный модуль в памяти и т.п.
4. Метод резидентного сторожа.
Этот метод направлен на выявление «подозрительных» действий пользовательских программ, например, таких, как запись на диск по абсолютному адресу, форматирование диска, изменение загрузочного сектора, изменение или переименование выполняемых программ, появление новых резидентных программ, изменение системных областей DOS и других. При обнаружении «подозрительного» действия необходимо «спросить разрешение» у пользователя на выполнение такого действия.
5. Вакцинирование программ.
Этот метод заключается в дописывании к исполняемому файлу дополнительной подпрограммы, которая первой получает управление при запуске файла, выполняет проверку целостности программы. Проверяться могут любые изменения, например, контрольная сумма файла или другие характеристики.
Ложные тревоги
Задача любого антивирусного средства — обнаружить вирус в системе с максимальной степенью надежности, то есть не вызывая при этом ложные тревоги.
Ложные тревоги делят на два типа:
· ложная позитивная (положительная);
· ложная негативная (отрицательная).
Ложная позитивная тревога — это когда антивирусное средство сообщает о наличии вируса, а на самом деле его нет.
Ложная негативная тревога — это когда антивирусное средство говорит, что вируса нет, а на самом деле он есть.
Некоторые специалисты ложные тревоги называют ошибками антивирусов, причем ложные негативные тревоги (несрабатывания) называются ошибками первого рода, а ложные позитивные тревоги — ошибками второго рода.
В идеале антивирус должен обнаруживать все возможные вирусы и не должен вызывать ложных тревог.
Типы антивирусных средств
1. Программы-детекторы, или программы-сканеры.
Это наиболее известный и наиболее распространенный вид антивирусных программ. Они осуществляют поиск известных версий вирусов методом сканирования, т.е. поиском сигнатур вирусов. Поэтому программы-сканеры могут обнаружить только уже известные вирусы, которые были предварительно изучены, и для которых была определена сигнатура.
Использование программ-сканеров не защищает компьютер от новых вирусов. Кроме того, такие программы не могут обнаружить большинство полиморфных вирусов, так как для таких вирусов невозможно определить сигнатуру.
Для эффективного использования программ-детекторов, реализующих метод простого сканирования, рекомендуется постоянно обновлять их, получая самые последние версии, так как в них уже будут включены новые типы вирусов.
В последнее время программы-детекторы поставляются со специальными базами данных — сигнатурами вирусов, которые может пополнять сам пользователь. Некоторые сканеры позволяют подключать к своей базе данных внешние файлы — дополнения, содержащие сведения о новых вирусах. В таких случаях достаточно приобретать новые файлы-дополнения к базе для обновления антивирусной программы.
Для компьютеров, подключенных к Internet, существует возможность автоматического пополнения базы сигнатур вирусов новыми сигнатурами, конечно же, при использовании соответствующих антивирусных программ.
Программы-сканеры практически не вызывают ложные позитивные тревоги. Если программа сообщила о заражении, то можно быть уверенным, что это действительно так. (Ранние версии иногда ошибались, например, объявляли зараженными файлы других антивирусных программ, находя в них сигнатуры вирусов.)
Но если сканер не обнаружил вирусы в системе, это означает только то, что в системе нет вирусов, на которые он рассчитан.
Антивирусные программы-сканеры, которые могут удалить обнаруженный вирус, называются полифагами.
В последнее время распространяются полифаги, которые кроме простого сканирования в поисках сигнатур вирусов, содержащихся в их вирусной базе, используют еще и эвристический анализ проверяемых объектов на наличие неизвестных вирусов. Они изучают код проверяемых файлов и содержимое загрузочных секторов и пытаются обнаружить в них участки, выполняющие характерные для вирусов действия. Сканеры, использующие эвристический поиск, уже способны обнаружить многие полиморфные и автоматические вирусы, а также некоторые новые неизвестные вирусы (неизвестные самому антивирусу).
2. Программы-мониторы, или резидентные сторожа.
Это целый класс антивирусов, которые постоянно находятся в оперативной памяти компьютера и отслеживают все подозрительные действия, выполняемые другими программами. С помощью монитора можно остановить распостранение вируса на самой ранней стадии.
Их цель — не пропустить вирус на компьютер. И поэтому они контролируют обращение к дискам. При обнаружении «подозрительного» действия программа-монитор либо блокирует выполнение такого действия до специального разрешения пользователя, либо просто выдаёт на экран предупреждающее сообщение, либо совершает другие специальные действия.
Рассмотрим наиболее опасные из «подозрительных» действий:
· низкоуровневое форматирование диска
Это очень опасная операция. Вызывает потерю всех данных на диске. Если монитор обнаружит попытку выполнения такой операции, то пользователю необходимо отменить её и проверить компьютер на наличие вирусов;
· запись данных в загрузочные секторы жёсткого диска
Если пользователь не форматировал диски, не изменял метку диска и не устанавливал новую версию ОС, то необходимо отменить операцию и проверить компьютер на наличие вирусов;
· запись данных в загрузочный сектор дискеты
Если пользователь не форматировал дискету, не изменял её метку (команда LABEL), не записывал на дискету ОС (командой SYS или другим способом), необходимо отменить операцию и проверить компьютер на наличие вирусов;
· запись данных в исполняемый файл
В случае, когда монитор сообщает о такой попытке, необходимо обратить внимание на файл, в который выполняется запись. Если это неизменяемый файл, и пользователь уверен в этом, то необходимо отменить операцию и проверить компьютер на наличие вирусов. Но некоторые программы действительно могут записывать в свой выполнимый файл различную информацию, например, свою конфигурацию.
!!!! Пользователь должен быть знаком с программным обеспечением своего компьютера.
· Изменение атрибута файла
Скорее всего, это действие вируса. В этом случае пользователь должен проанализировать ситуацию.
Невысокая популярность программ-мониторов объясняется психологическим фактором. Многие программы могут выполнять действия, на которые реагируют мониторы. Большое число запросов мешает пользователю работать. Монитор может «замучить» пользователя, и он его отключит. Мониторы отнимают время на проверку программ во время их запуска, и процесс загрузки программы замедлится. Ещё одним недостатком программ-мониторов является то, что они уменьшают объём памяти, доступной программам пользователей, ведь вирус должен резидентно находиться в памяти.
Поэтому мониторы необходимо применять в следующих случаях:
· запуск новых программ неизвестного происхождения;
· во время подозрения на вирус;
· некоторое время после удаления вируса для исключения его появления вновь.
В настоящее время фирмы-производители антивирусных средств поставляют, как правило, целые антивирусные комплексы, а не отдельные программы. В состав многих таких комплексов входят резидентные мониторы. Например, вместе с антивирусным пакетом Antiviral Toolkid Pro (AVP), созданным фирмой КАМИ (Е. Касперский) поставляется резидентрый монитор Antiviral Monitor. Он позволяет обнаружить и сообщить обо всех проявлениях, которые могут быть вызваны компьютерными вирусами. В комплект Microsoft Anti-Virus входит резидентный монитор Vsafe, позволяющий постоянно контролировать работу компьютера. В состав комплекта Norton AntiVirus входит приложение Norton AntiVirus Auto-Protect. Кроме проверки запускаемых файлов Norton AntiVirus Auto-Protect выполняет все функции обычного резидентного монитора, позволяя при этом пользователям сделать установки случаев, в которых необходимо сообщать о подозрительном действии.
Большинство распространённых ныне мониторов предназначены для контроля за подключаемыми к компьютеру дисками. Такие мониторы освобождают пользователя от необходимости помнить об обязательном сканировании каждого нового диска или дискеты. Монитор открывает доступ к диску, лишь убедившись в его «чистоте». Так работает, например, монитор McAfee VShield (щит от вирусов) пакета McAfee VirusScan. Он также выполняет контроль исполняемых программ и копируемых файлов.
В пакет антивирусной защиты Dr Solomon’s AntiVirus Toolkit входит монитор WinGuard, в обязанности которого входит контроль подключения внешних дисков, выполнением операций с файлами и поведением исполняемых файлов (сканирование файлов при записи).
2. Программы — ревизоры.
Программы-ревизоры первоначально запоминают в специальных файлах образы главной загрузочной записи, загрузочных секторов логических дисков, параметры всех контролируемых файлов (иногда только контрольную сумму файлов), информацию о структуре каталогов, номера плохих кластеров диска, иногда — объем установленной оперативной памяти, количество подключенных к компьютеру дисков, их параметры и многое другое.
Для определения наличия вируса в системе программы-ревизоры проверяют созданные ими образы и производят сравнение с текущим состоянием. Если обнаружено изменение — вполне вероятно, что эти изменения произведены вирусом.
Ревизоры могут обнаружить любые вирусы, даже ранее неизвестные. Но для этого необходимо «поставить на учет” заведомо чистые от вирусов возможные объекты нападения. Кроме этого, ревизор не обнаружит вирус, который попал с новым зараженным уже файлом, так как он «не знает” параметров этого файла до заражения вирусом. Вот когда новый вирус уже заразит другие файлы или загрузочный сектор, он будет обнаружен ревизором. Не сможет ревизор обнаружить вирус, заражающий файлы только при копировании, опять же не имея возможности сравнить параметры файлов. Ревизоры неэффективно использовать для обнаружения вирусов в файлах документов, так как эти файлы очень часто изменяются. Кроме того, следует учитывать, что ревизоры только обнаруживают изменения, но не все изменения связаны с внедрением вируса. Загрузочная запись может измениться при обновлении версии операционной системы, могут измениться командные файлы, некоторые программы могут записывать в свои исполняемые файлы данные, что тоже приводит к изменению файлов, в конце концов, пользователь может просто перекомпилировать свою программу.
В этих случаях у ревизоров один общий недостаток с программами-мониторами: пользователь должен хорошо разбираться во всех таких случаях и сам принимать решения — является ли изменение результатом действия вируса или нет. То есть программы-ревизоры не предназначены для рядового пользователя.
Правда, в последнее время ревизоры дополняются базами сигнатур вирусов, и при подозрении на вирус ревизор тут же осуществляет сканирование в поисках вирусов. Такие ревизоры уже более пригодны для использования рядовыми пользователями.
Простейшая программа-ревизор Microsoft Anti-Virus (MSAV) входит в состав операционной системы MS-DOS (!). Более известна программа-ревизор Advanced Dikinfoscope (Adinf), созданная Дмитрием Юрьевичем Мостовым.
3. Перспективные средства защиты.
К перспективным средствам защиты стоит отнести адаптивные, cамообучающиеся и интеллектуальные средства.
Адаптивные средства развиваются уже сейчас. Это средства, которые содержат постоянно пополняемые базы вирусов.
Cамообучающееся средство должно при обнаружении неизвестного ему вируса автоматически его проанализировать и добавить к списку вирусов, с которыми может успешно бороться.
Интеллектуальные средства защиты основаны на определении алгоритма и спецификации программы по ее коду, и, следовательно, возможности выявления программ, осуществляющих несанкционированные действия. Известны попытки создания интеллектуальных программ-мониторов, которые пытаются различать ложные тревоги, но пока, к сожалению, это приводит к снижению их надежности.
Как показывает теория и подтверждает практика, создание универсальных средств, которые способны противостоять абсолютно всем вирусам, невозможно.
Практически известно, что для любого вируса можно создать антивирус, но не для любого антивируса можно создать вирус, обходящий его. Теоретически это подтвердил Л. Адлеман (кстати, учитель известного Фредерика Коэна). Он доказал, что множество всех вирусов неперечислимо.
Но это означает только то, что невозможно создать программу, однозначно решающую, есть ли в предъявленном ей файле вирус или нет.