Нужен ли антивирус на самом деле?
Зачем пользователю ПК антивирус? На первый взгляд, ответ будет очевидным –
обеспечить пользователю полную безопасность его компьютера от вирусов, троянов,
червей, adware и т.д. А теперь я скажу, что все это возможно и несложно
реализуется средствами самой ОС Windows, без дополнительных программ, конфликтов
ПО и замедления работы. Но все по порядку.
Классические вирусы, которые заражают все подряд исполняемые файлы, сейчас
практически не встречаются. Это заметно, требует большого количества ресурсов и
не имеет практической выгоды. Запрет записи данных в исполняемый файл легко
реализуется средствами Windows. Лечить зараженные файлы бессмысленно – проще
скачать инсталлятор с сети и переустановить программу. Сейчас такие вирусы
эволюционировали в троянских коней (malware). Посторонние файлы они не заражают,
системе не вредят и действуют незаметно. Задача таких программ – украсть
конкретный пароль, сертификат, документ и удалиться с места происшествия. Как
исключение, заражается конкретный системный файл и от его имени вредоносная
программа продолжает свою деятельность. К сожалению, ничего оригинального для
постоянной защиты компьютера антивирусники не придумали. Алгоритм один – КАЖДЫЙ
исполняемый файл проверяется перед запуском и если он вредоносный, антивирус
блокирует доступ к нему и спрашивает действие у пользователя. Также на лету
проверяются все файлы, из любого каталога, что открывает пользователь. Для
контроля над исполняемыми файлами, антивирус, на уровне драйверов, подменяет
системные функции для просмотра каталогов, записи в реестр и запуска приложений,
своими. То есть, сначала вызывается функция антивируса, он выполняет свою работу
и только потом передает управление ОС. Можете только представить, как это
замедляет работу системы… Процесс подмены системных API-функций – процедура
сложная и без конфликтов ПО и BSOD-ов часто не обходится. Да и возможности
самого антивируса ограничены – он обнаружит зловредную программу только при
наличии её в базе. Эвристические анализаторы зачастую никогда не годятся и могут
обнаружить только «пионерские» модификации известных вирусов. Существует масса
протекторов и упаковщиков, которая позволяют этим самым «пионерам» с легкостью
создавать недетектируемые версии троянов. Справиться с ними антивирус может
только при наличии в базе распаковщика для протектора. Но и тут незадача – стоит
слегка изменить исходный код самого протектора (при желании исходники многих
протекторов можно найти в Интернете) – и антивирус ничего не видит! Можно
возразить – ведь есть системы проактивной защиты, которые контролируют
подозрительные действия в системе (запись в реестр, системные папки, передачу
данных в сеть) и спрашивают пользователя, что делать в конкретном случае. Но
если предоставить решать пользователю – где гарантия, что он не спутает заразу с
дефрагментатором? Предоставить решать антивирусу – будет большое количество
ложных срабатываний. Дело в том, что те же подозрительные действия могут
совершать легальные программы в мирных целях – драйверы клавиатур, мышей,
оптимизаторы дисков, программы для экономии трафика. Самое страшное, что для
антивируса принципиальных отличий этих программ от вирусов не существует.
Единственный выход для него – запрещать все что можно, контролировать множество
системных функций, вплоть до модификации ядра системы. Это сильно усложняет
обход таких систем защиты, но стабильность и производительность ОС падает до
безобразия. А способы обхода появляются каждый день, и антивирус невольно
заставляет пользователя тратить сетевой трафик на бесконечные обновления.
1 | 2