Компьютерная безопасность, антивирусы

Какие же могут быть проблемы у антивирусных программ, за исключением обычного маркетингового противоборства? Есть вирусы — и есть антивирусы, которые их ловят. И на первый взгляд, антивирус давно стал обычным потребительским товаром, который практически ничем не отличается от конкурирующих продуктов и который покупают либо за более красивый дизайн, либо потому, что данный продукт был удачно разрекламирован, или по какой-то еще совсем не понятной причине. Т.е. антивирус вроде как давно должен стать тем самым «commodity», продуктом массового потребления, как стиральных порошков, зубной щетки или автомобилей.

Основной вопрос, от каких именно компьютерных угроз защищает данное решение и насколько качественна предоставляемая защита.
Антивирус должен защищать от всех видов вредоносных программ, и чем он лучше это делает, тем спокойнее живет его пользователь и дольше и крепче спит системный администратор.

И кто этого не понимает, очень скоро осознает всю проблемы — когда вдруг куда-то начинают утекать деньги с банковского счета, компьютер сам по себе начинает звонить по каким-то совершенно «левым» телефонным номерам, внезапно и по непонятной причине резко увеличивается исходящий трафик. Ведь если антивирусный продукт X ловит, предположим, 50% всех современных вирусов, которые в данный момент активны в сети, продукт Y — 90%, а продукт Z — 99,9%, то нетрудно подсчитать вероятность того, в каком случае в результате N атак компьютер останется целым и невредимым или, наоборот, в нем поселится какая-нибудь очередная зараза.

Если компьютер был атакован 10 раз, то вероятность «залета» для продукта X практически гарантирована (99,9%). Для Y более чем вероятна (65%), а для Z весьма незначительна — всего 1%. Увы, далеко не все антивирусные продукты, которые можно обнаружить на полках магазинов или в сети, дают защиту, близкую к 100%. Большинство продуктов не гарантирует даже 90%-ный уровень защиты! В этом и заключается основная проблема антивирусных компаний на сегодняшний день.

Ситуация №1

Разнообразие и количество вредоносных программ неуклонно растет год за годом. В итоги многие антивирусные компании просто не в состоянии уследить за этим потоком, они проигрывают в вирусной «гонке», а пользователи этих программ оказываются, защищены не от всех современных компьютерных угроз. К сожалению, продукты не всех компаний можно назвать действительно антивирусными.

При этом лет пять или десять назад можно было сказать, что защищать от всех новых вирусов и троянских программ не надо — ведь большинство из них так никогда и не попадают в компьютеры пользователей. Поскольку были написаны подростками-хулиганами с целью самоутверждения либо просто из любопытства, и защищать надо только от тех немногих вирусов (ITW—in-the-wild), которые все же добрались до компьютеров. Сейчас же это не так. Подавляющее большинство (более 75%) вредоносных программ сейчас создаются компьютерным криминальным андеграундом с целью заражения необходимого количества компьютеров в сети, а число новых вирусов и троянских программ исчисляется сотнями, ежедневно в вирусную лабораторию попадают 200-300 новых образцов.

Вирусные образцы поподают в лабораторию из нескольких источников:

  • от автоматических «липучек» (honeypots — специально разработанных комплексов сбора вредоносных файлов в сети);
  • от зараженных пользователей;
  • от администраторов локальных сетей;
  • от Интернет-провайдеров и от других антивирусных компаний.

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

Ситуация №2

Распространения современных вредоносных программ заставляет антивирусные компании выпускать защитные «пилюли» как можно чаще — чтобы максимально быстро прикрыть своих пользователей от новоявленного компьютерного «зверя». Увы, далеко не все антивирусные компании достаточно расторопны. Часто обновления от таких компаний доставляются пользователям слишком поздно.

Предположим, что злобный вирус, несмотря на все установленные защиты, пробрался в систему и поселился в ней, а установленный не очень бдительный страж-антивирус не заметил ничего подозрительного (или антивирус у ленивого пользователя, не спешащего скачать и установить очередные обновления базы данных). Рано или поздно апдейты доставляются, и вирус обнаружен — но не побежден, для окончательной победы необходимо аккуратно удалить зараженные файлы из системы, «аккуратно», и в этом кроется проблема антивирусных программ.

Ситуация №3

Часто вирусы и троянские программы предпринимают специальные действия, чтобы скрыть факт своего присутствия в системе, или встраиваются в нее так глубоко, что задача «выковыривания клеща» становится достаточно нетривиальной. Увы — иногда антивирусные программы не в состоянии благополучно и без всяких побочных последствий удалить вирус и восстановить программу.

Продолжим, любое программное обеспечение потребляет ресурсы компьютера. Для того чтобы осуществить компьютерную безопасность, антивирусным программам требуется производить некоторые действия: открывать файлы, читать из них информацию, раскрывать архивы для их проверки и т.п. И чем тщательнее проверяются файлы, тем больше отъедается ресурсов компьютера (это как железная дверь: чем она толще, тем лучше защищает, однако открывать-закрывать ее становится тем сложнее, чем больше тонн металла в нее заложено). В результате появляется проблема баланса: полноценная защита или скорость работы.

Ситуация №4

Потребления ресурсов. Увы, проблема не решаемая — как показывает практика, все «молодые» антивирусы очень сильно «дырявы» и пропускают вирусы и троянские программы, как дуршлаг воду. Обратное неверно: далеко не все медленные антивирусы защищают вас достаточно хорошо.

Для того чтобы проверять файлы «на лету» и постоянно защищать подопечный компьютер, антивирусным программам приходится достаточно глубоко проникать в ядро системы, причем проникать приходится в одни и те же зоны. Говоря техническим языком, антивирусы должны устанавливать перехватчики системных событий глубоко внутри защищаемой системы и передавать результаты своей работы «движку» для проверки перехваченных файлов, сетевых пакетов и прочих потенциально опасных объектов.

Далеко не всегда в один разрез можно засунуть два скальпеля. И не всегда в необходимую зону ядра операционной системы можно установить два перехватчика. В результате — несовместимость постоянно работающих антивирусных «мониторов»; второму антивирусу либо не удается перехватить системные события, либо попытка дублирующего перехвата приводит к краху системы. В этом заключается очередная антивирусная проблема.

Ситуация №5

Несовместимость различных антивирусных программ между собой. В подавляющем большинстве случаев установить два различных антивируса на один компьютер (чтобы обеспечить двойную защиту) невозможно по техническим причинам, и они просто не уживаются друг с другом.

Многие говорят, что компании ведут себя как медведи в одной берлоге, что несовместимость различных антивирусов на одном компьютере является результатом недобросовестной конкуренции — специально спланированной акцией с целью вытеснения с рынка альтернативных решений. Это не так. Никакой недобросовестной конкуренции, хочу отметить, в этом вопросе нет — ею здесь и не пахло. Наоборот, разработчиками прилагаются все усилия для того, чтобы не возникало конфликтов с наиболее популярными программными продуктами.

Вот так, по моему мнению, и распределяются основные практические проблемы антивирусных программ.

Естественно, у производителей антивирусных программ периодически возникает желание придумать какую-нибудь совершенно новую технологию, которая разом решит все перечисленные выше проблемы — разработать этакую супер таблетку, которая будет защищать от всех компьютерных болезней раз и навсегда. Защищать проактивно, т.е. быть в состоянии определить вирус и удалить его еще до момента его создания и появления в сети — и так со всеми вновь появляющимися вредоносными программами.

Не получится. Универсальные средства годятся против тех напастей, которые действуют по каким-либо устоявшимся законам. Компьютерные вирусы же никаким законам не подчиняются, поскольку являются творением не природы, а изощренного хакерского ума. Т.е. законы, которым подчиняются вирусы, постоянно меняются в зависимости от целей и желаний компьютерного андеграунда.

Для примера рассмотрим поведенческий блокиратор как конкурент традиционным антивирусным решениям, основанным на вирусных сигнатурах. Это два разных, не исключающих друг друга подхода к проверке на вирусы. Сигнатура — это небольшой кусок вирусного кода, который прикладывается к файлам, и антивирус смотрит, подходит он или нет. Поведенческий блокиратор же следит за действиями программ при их запуске и прекращает работу программы в случае ее подозрительных или явно вредоносных действий (для этого у них есть специальный набор правил). У обоих методов есть и достоинства, и недостатки.

Достоинства сигнатурных сканеров — гарантированный отлов тех «зверей», которых они «знают в лицо». Недостаток — пропуск тех, которые им пока неизвестны. Также к минусам можно отнести большой объем антивирусных баз и ресурсоемкость.
Достоинство поведенческого блокиратора — детектирование даже неизвестных вредоносных программ. Недостаток — возможны ложные срабатывания, ведь поведение современных вирусов и троянских программ настолько разнообразно, что покрыть их всех единым набором правил просто нереально. Т.е. поведенческий блокиратор будет гарантированно пропускать что-то вредное и периодически блокировать работу чего-то весьма полезного.

Есть у поведенческого блокиратора и другой (врожденный) недостаток, а именно — неспособность бороться с принципиально новыми «зловредами». Представим себе, что какоето представительство X разработала поведенческий антивирус AVX, который ловит 100% современной компьютерной фауны. Что сделают хакеры? Правильно — придумают принципиально новые методы «зловредства». И антивирусу AVX срочно потребуются обновления поведенческих правил. Потом снова обновления, поскольку хакеры и вирусописатели не спят. И в результате мы придем к тому же сигнатурному сканеру, только сигнатуры будут «поведенческими», а не «кусками кода».

Это справедливо также и в отношении другого проактивного метода защиты — эвристического анализатора. Как только подобные противовирусные технологии начинают мешать хакерам, атаковать свои жертвы, так сразу появляются новые вирусные технологии, позволяющие «обходить» проактивные методы защиты. Как только продукт с «продвинутыми» эвристиками и/или поведенческим блокиратором становится достаточно популярным — тут же эти «продвинутые» технологии перестают работать. Поведенческий блокиратор или эвристический анализатор требует постоянных доработок и обновлений.

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

Это, конечно же, не означает, что проактивные методы защиты бесполезны, — нет. Они прекрасно справляются со своей частью работы и могут остановить некоторое количество компьютерной заразы, разработанной не шибко умелыми хакерами-программистами. И по этой причине они могут являться достойными дополнениями к традиционным сигнатурным сканерам — однако полагаться на них целиком и полностью нельзя.