Вирусы — штука для системы опасная. Все источники в качестве первой защиты предлагают ставить антивирус. Но всякий ли подойдет? Как антивирус понимает, какое приложение вредоносное, а какое — нормальное? Как антивирус лечит зараженное приложение?
Вирусы — какие бывают и чем опасны
Прежде чем понять, как работает антивирус, следует разобраться с тем, что же такое вирусы. Или, если смотреть шире, зловреды. Статьи в интернете могут запутать обилием терминов: черви, боты, malware, adware, трояны и шпионы. Попробуем разобраться.
По своему устройству все зловреды делятся на три группы:
Вирусы. Настоящие вирусы, как известно, не являются полноценными организмами — они существуют только за счет носителей. То же можно отнести и вирусам компьютерным — они не являются приложениями. Вирус — это кусок кода, способный встроиться в приложение. Когда зараженный вирусом участок кода приложения начинает выполняться, вирус пытается размножиться — он ищет подходящие файлы и пытается вставить в них свою копию.
Вирусы могут заражать не только приложения. Любой файл, содержащий исполняемый код, может быть целью атаки вируса. Сюда входят макросы в документах Microsoft Office, скрипты операционной системы и даже исходные коды программ.
Черви. Черви, в отличие от вирусов, являются полноценными приложениями. Для своего распространения они используют уязвимости сетей и операционных систем. С вирусом его роднит механизм саморепликации — работающий червь пытается распространить свои копии. Он создает их в разных каталогах локального диска или отправляет на найденные в сети уязвимые устройства.
Трояны. Троян — также полноценное приложение, но, в отличие от предыдущих зловредов, он притворяется безвредным и даже полезным. Иногда троян действительно делает то, что обещано. Правда, кроме этого, он выполняет и другие действия, которые бы точно не понравились пользователю, узнай он о них.
Например, крэкеры — программы для взлома платных приложений. Многие из них действительно позволяют бесплатно пользоваться платным приложением. Но очень часто хакеры встраивают в них трояны, заражающие устройство пользователя вирусом. Еще чаще троян только имитирует нужную пользователю деятельность. Большинство разнообразных приложений, обещающих подобрать пароль к Wi-Fi, «взломать» чужой телефон по номеру или дать всю информацию о человеке по IP — именно такие.
Обычно на устройство троян устанавливает сам пользователь, соблазненный рекламой приложения. Так же, как жители Трои, сами затащившие статую коня к себе в город.
Остальная классификация зловредов идет по тем действиям, которые они выполняют. Первые вирусы писались скорее из хулиганских побуждений. Часто они даже не наносили никакого вреда, а просто подшучивали над пользователем. Но с развитием IT и его проникновением во все сферы деятельности авторы вирусов научились извлекать из своих творений немалую прибыль.
Рекламные приложения (adware)
Относительно безопасный вид зловредов. Многие из них даже не являются зловредами, поскольку об отображении рекламы пользователь предупрежден, а сама она соответствует законодательству.
Но многие adware-приложения отображают агрессивную нежелательную рекламу, отправляют пользователя на рекламные и вредоносные сайты.
Шпионы
Этот вид зловредов собирает конфиденциальную информацию и передает ее хозяину шпиона. Предметом интереса шпиона могут быть логины и пароли, данные кредитных карт, сид-фразы к криптокошелькам и просто служебные документы. Также шпионы могут вести постоянное наблюдение за деятельностью пользователя, сохраняя в журнал все его действия — введенные с клавиатуры данные, запущенные приложения и посещенные сайты. Эта информация может использоваться злоумышленниками для шантажа, кражи ценной информации и просто денег со счета или криптокошелька.
Вымогатели
Этот вид зловредов требует заплатить за прекращение вредоносной деятельности. Вымогатели-локеры блокируют работу компьютера. Вымогатели-шифровальщики предварительно зашифровывают информацию на устройстве и предлагают перевести определенную сумму на криптокошелек для расшифровки.
Боты используют зараженное устройство для выполнения действий, нужных хозяину зловреда. Например, сети из множества зараженных ботами компьютеров — ботнеты — используются для DDoS-атак. Сюда же можно отнести майнеров — ботов, использующих зараженное устройство для майнинга криптовалюты.
Многие современные вирусы гибридные — они сочетают в себе разные способы и механизмы размножения и могут выполнять различные зловредные действия.
Как антивирус защищает от зловредов
Множество видов зловредов привело к появлению не меньшего разнообразия антивирусных программ. Так что какого-то универсального «антивируса» не существует. Практически все современные пакеты включают в себя несколько приложений различного назначения.
Информация актуальна для города «Москва»
Антивирусы бывают и в виде одного отдельного приложения — например, только сканер или только файрволл. Но полной защиты такие приложения не дают.
Сканеры
Эти приложения просматривают все файлы на диске и в памяти устройства в поисках зловредов.
Как сканер понимает, что он нашел зловред? По-разному.
Самый простой и распространенный способ — по сигнатуре. После появления нового зловреда его код анализируется, чтобы найти сочетание символов, однозначно его выделяющее. Результат анализа добавляется в антивирусную базу сканера. При каждом следующем запуске он будет пытаться найти в теле просматриваемого файла эту сигнатуру. Несмотря на эффективность, этот способ имеет множество недочетов:
В общем случае невозможно найти зловред, сигнатуры которого еще нет в базе. Только иногда по старой сигнатуре можно «поймать» нового похожего зловреда того же семейства.
Базы постоянно разрастаются, скорость сканирования падает, так как искать нужно все больше и больше сигнатур.
Нужно постоянно обновлять антивирусные базы, иначе устройство станет беззащитным перед новыми зловредами.
Хакеры знают об этом способе, поэтому многие зловреды способны к полиморфизму. При размножении они не копируют свой код «один к одному», а вносят в него случайные искажения. Это затрудняет выявление сигнатур.
Эвристический анализ. Сканер пытается проанализировать, что делает приложение, может распаковать сжатое приложение и эмулировать его работу. Каждое подозрительное действие, совершаемое приложением, увеличивает некий счетчик. При достижении заданного предела, сканер считает, что перед ним зловред. Этот способ теоретически позволяет определить новых зловредов, сигнатур которых еще нет в базе. Но у всех практических реализаций этого способа много недостатков:
Эвристический анализ занимает намного больше времени по сравнению с поиском сигнатур. Полное эвристическое сканирование просто может оказаться невозможным из-за чрезмерных затрат времени.
При высоком уровне «подозрительности» сканер относит к зловредам множество полезных безвредных приложений, например, дисковые и сетевые утилиты.
При низком уровне «подозрительности» и при приемлемой продолжительности сканирования эвристический анализ пропускает большинство зловредов.
Мониторы
Этот вид антивирусных приложений не «перебирает» все файлы на устройстве. Он следит только за работающими приложениями. В целом, монитор действует эффективнее сканера, так как ему не нужно тратить время на перебор всех возможностей приложения — он имеет дело с происходящими в данный момент действиями. Также монитор следит за открываемыми файлами и за записывающейся на диск информацией.
Если монитор видит подозрительную деятельность, он сообщает об этом пользователю. Например, если запущенное приложение пытается внести изменения в другое приложение на диске.
Так же, как и эвристический сканер, монитор способен выявить нового неизвестного зловреда, но и он не всегда определяет вредоносную активность. Нередки также ложные срабатывания, когда безобидная утилита принимается сканером за вредоносную.
Сетевые мониторы
Эти приложения блокируют популярный путь распространения червей и троянов через интернет-сайты и электронную почту. Если пользователь пытается перейти на неблагонадежный сайт или открыть подозрительное вложение в письме, приложение блокирует действие пользователя и выдает соответствующее предупреждение.
Чтобы понять, какие сайты «хорошие», а какие — «плохие», сканер пользуется обновляемой базой данных. Это похоже на базу сигнатур для сканера, и недостаток тут тот же — невозможно определить новый вредоносный сайт. Однако многие сетевые мониторы способны анализировать поведение сайтов, которые посещает пользователь. Если скрипты на сайте ведут себя подозрительно, монитор прекратит выполнение скрипта и оповестит об этом пользователя.
Файрволлы (Брэндмауэры)
Файрволл следит за всеми сетевыми соединениями и блокирует нежелательные. Поскольку деятельность большинства зловредов связана с передачей каких-то данных «хозяину», файрволл способен свести на нет весь вредоносный эффект трояна или вируса.
Это приложение входит в состав антивирусных пактов реже, но недооценивать его нельзя. Хорошо настроенный файрволл способен выявить зловреды, не определяемые никакими другими видами антивирусов. Правда, для эффективной работы файрволла нужно хотя бы немного разбираться в сетевых технологиях и грамотно его настроить.
Настройка файрволла заключается в организации списка правил, которые он будет применять к каждому входящему или исходящему соединению. Например, браузеру можно разрешить все исходящие соединения на порты 80 (используется протоколом http) и 433 (https). А многопользовательской игре следует разрешить соединения только с игровым сервером.
Большинство файрволлов имеют список правил для распространенных приложений. Но все существующие программы учесть невозможно, поэтому для многих ваших приложений правил у файрволла не будет, и их придется создавать самостоятельно. Как правило, это делается в режиме обучения — при каждой попытке установки соединения новым приложением файрволл будет об этом сообщать и предлагать создать правило для этого приложения.
В этот момент чаще всего и «попадаются» неизвестные зловреды. Зачем какому-нибудь калькулятору несколько раз в минуту пытаться связаться с непонятным адресом в сети?
Что антивирус делает с обнаруженной угрозой
Если дело идет о зловреде, обнаруженном на диске, антивирус может предложить три варианта действий:
Лечить. Для некоторых распространенных и хорошо известных вирусов специалисты разрабатывают алгоритмы лечения. При этом вредоносный код извлекается из файла, и последний становится безвредным, сохраняя весь полезный функционал. Это самый удачный вариант для зараженных вирусом файлов, но доступен он не всегда.
Удалить. Антивирус просто стирает зараженный или вредоносный файл с диска. Если этот файл был частью какого-то приложения, оно может стать неработосопосбным, и вам потребуется устанавливать его заново.
Поместить в карантин. Зараженный или вредоносный файл переносится в служебный каталог антивируса, где и хранится, уже не представляя опасности. Если вы не уверены, что найденный зловред действительно таковым является, перенесение в карантин может дать вам время на поиск информации о нем. Когда вы соберете всю информацию, вы можете вернуться к хранящемуся в карантине файлу и удалить его окончательно или, наоборот, восстановить. Можно также перенести в карантин зараженное вирусом приложение, для которого недоступна опция лечения. Зачастую алгоритмы лечения вируса добавляются в антивирусные базы позже, чем сигнатуры вирусов. Поэтому со временем опция лечения может стать доступна, и вы восстановите приложение обратно.
При попытке скачивания подозрительных файлов или посещения неблагонадежных сайтов антивирус заблокирует ваше действие. Однако в большинстве антивирусных пакетов эту блокировку можно обойти, иногда достаточно нажать кнопку «Все равно продолжить». Но делать это следует только в том случае, если вы абсолютно уверены, что ваши действия не причинят вреда. Даже если вы получили ссылку в ватсаппе от близкого друга или открываете файл из письма коллеги, это не гарантирует безопасности. В конце концов, ватсапп друга или почта коллеги могли быть взломаны хакерами.
Отдельно следует упомянуть действия файрволла. Обычно он ничего не говорит о вредоносности того или иного приложения. Вывод об этом вам следует сделать самим. Вы можете заблокировать все сетевые соединения приложения с подозрительной сетевой активностью, но большего вам файрволл не предложит. Само приложение при этом остается активным, и что оно там еще будет делать на устройстве — известно только его создателю. Если вы сочтете заблокированное приложение опасным, удалять его придется вам самому вручную.
Антивирусные программы — неотъемлемая часть мира компьютерных технологий. Они защищают устройства от вирусов, троянских программ, шпионского и вредоносного программного обеспечения. Однако полной защиты не предлагает никакой антивирус. Чтобы повысить эффективность антивируса, следует его правильно настроить и поддерживать антивирусную базу в актуальном состоянии, а самое главное — не забывать о здравом смысле и разумной осторожности.