Антивирусное программное обеспечение методы работы антивирусов
Антивирусная программа (антивирус) — изначально компьютерным вирусом, а также для предотвращения заражения файла вирусом (например, с помощью вакцинации).
Принцип работы антивируса
Так или иначе, обычно современные антивирусные приложения обладают следующим набором функциональных модулей:
Из чего состоит антивирусное ПО?
Принцип работы современных антивирусов заключается в комплексном подходе к вопросам кибербезопасности. У всех компаний разный состав модулей антивирусного ПО. Вот несколько основных:
Сканер. Ищет вредоносное ПО в оперативной памяти, загрузочных записях при включении, на локальных и внешних дисках, а также в системных файлах ОС. Может выполняться по расписанию, по запросу пользователя или при обращении к данным. Что делает антивирус, если находит угрозу в каком-то файле? Предоставляет пользователю несколько вариантов на выбор:
попытаться вылечить, удалив вредоносный код;
поместить в карантин, чтобы вылечить позже или удалить;
удалить, если вылечить не удалось;
получить отчёт, но больше ничего не делать;
Монитор. Отслеживает все манипуляции с файлами в режиме реального времени. Находит и обезвреживает вредоносное ПО до того, как оно успевает инфицировать систему.
Проактивная защита или HIPS. Анализирует в реальном времени поведение всех запущенных программ и файлов в системе. Выявляет нежелательную активность и вредоносные программы, включая эксплойты.
Файервол. Контролирует входящий трафик для защиты устройства от несанкционированного вторжения из локальной сети или интернета. Фильтрует подозрительный исходящий трафик. Этот модуль может выпускаться как отдельное ПО. Помните, что автоматический режим работы файервола не является оптимальным, поэтому лучше настраивать правила для программ и серверов.
Интернет. Мониторит весь веб-трафик пользователя, блокирует опасные и фишинговые страницы. Фильтрует спам, а также проверяет вложения и ссылки в электронной почте на наличие вредоносных программ и фишинга. Использует отдельный зашифрованный браузер с защитой от клавиатурных шпионов для безопасных онлайн-платежей. Позволяет настроить ограничения доступа к нежелательным категориям сайтов.
Принцип действия современной антивирусной программы подразумевает использование машинного обучения. Алгоритмы обнаружения вредоносного ПО быстро совершенствуются. С каждым годом появляется всё больше дополнительных инструментов кибербезопасности, которые оставляют всё меньше лазеек злоумышленникам.
Антивирусные программы различных производителей включают в себя разное число компонентов, и даже более того, одна и та же компания может выпускать несколько версий антивируса, включающих определенный набор модулей и ориентированных на различные сегменты рынка. Например, некоторые антивирусы располагают компонентом родительского контроля, позволяющего ограничивать доступ несовершеннолетних пользователей компьютера к сайтам определенных категорий или регулировать время их работы в системе, а некоторые — нет.
Другие методы обнаружения вирусов [ ]
Ряд других методов предлагается в исследованиях и используется в антивирусных программах (см. также эвристическое сканирование).
Антиотладка
Большинство современных вредоносных программ оснащены мощными механизмами антиотладки, препятствующими их исследованию. Ряд вирусов и троянов в момент начала работы проверяют, не пытаются ли их запустить в изолированной среде («песочнице»), под отладчиком или в виртуальной машине. Реализовано это разными методами — например, вредонос пытается получить имена работающих процессов (и сравнить их с заданным списком), ищет характерные строки в заголовках открытых окон. Если вредоносное приложение определяет попытку запуска в виртуальной среде или под отладчиком, оно завершает свою работу.
Для обхода песочницы некоторые вирусы или трояны имеют специальные «механизмы замедления», которые «притормаживают» вредоносную функциональность приложения или «усыпляют» ее на некоторый срок, активизируя деструктивные функции по истечении определенного времени. Это позволяет усыпить бдительность защитной программы, которая, запустив приложение в песочнице и убедившись в его безопасности, дает ему «зеленый свет». Например, один из современных троянцев использует такой механизм обхода автоматизированных систем анализа: создает во временной папке файл, в которой миллион раз записывает по одному байту, а потом миллион раз читает из него также по одному байту. В результате таких безобидный длительных циклических действий процедура поведенческого анализа завершается раньше, чем троянец начинает реализовывать свои основные функции.
Сигнатурное детектирование
Современные антивирусные программы используют несколько методик обнаружения вредоносных программ в различных их сочетаниях. Основная из них — это сигнатурное детектирование угроз.
Данный метод детектирования малвари основывается на создании так называемых сигнатур — уникальных цифровых идентификаторов файла, представляющих собой специальный набор байтов и получаемых на основе содержимого исследуемого файла. Фактически сигнатура — это своего рода «отпечаток пальцев» файла: с помощью сигнатуры можно однозначно идентифицировать тот или иной файл или приложение. Схожим образом устроены хеши файлов, например SHA-1 или SHA-256, — при этом под хешированием в данном случае понимается преобразование содержимого файла с использованием однонаправленной математической функции (алгоритма криптографического хеширования), в результате которого получается уникальный набор шестнадцатеричных символов. Однонаправленной такая функция называется потому, что получить из файла хеш очень просто, а вот восстановить из хеша исходный файл уже невозможно. Вирусная сигнатура устроена несколько сложнее: помимо хеша, она содержит еще целый ряд уникальных признаков файла.
Сигнатуры собираются в блок данных, называемый вирусными базами. Вирусные базы антивирусных программ периодически обновляются, чтобы добавить в них сигнатуры новых угроз, исследованных за истекшее с момента последнего обновления время.
Антивирусная программа исследует хранящиеся на дисках (или загружаемые из интернета) файлы и сравнивает результаты исследования с сигнатурами, записанными в антивирусной базе. В случае совпадения такой файл считается вредоносным. Данная методика сама по себе имеет значительный изъян: злоумышленнику достаточно изменить структуру файла на несколько байтов, и его сигнатура изменится. До тех пор пока новый образец вредоноса не попадет в вирусную лабораторию и его сигнатура не будет добавлена в базы, антивирус не сможет распознать и ликвидировать данную угрозу.
Важные замечания [ ]
- Распространение вирусов по шифрования и упаковки вредоносных программ делают даже известные вирусы не обнаруживаемыми антивирусным программным обеспечением. Для обнаружения этих «замаскированных» вирусов требуется мощный механизм распаковки, который может дешифровать файлы перед их проверкой. К несчастью, во многих антивирусных программах эта возможность отсутствует и, в связи с этим, часто невозможно обнаружить зашифрованные вирусы.
- Постоянное появление новых вирусов даёт разработчикам антивирусного программного обеспечения хорошую финансовую перспективу.
- Некоторые антивирусные программы могут значительно понизить быстродействие. Пользователи могут запретить антивирусную защиту, чтобы предотвратить потерю быстродействия, в свою очередь, увеличивая риск заражения вирусами. Для максимальной защищённости антивирусное программное обеспечение должно быть подключено всегда, несмотря на потерю быстродействия. Некоторые антивирусные программы (как AVG for Windows) не очень сильно влияют на быстродействие.
- Иногда приходится отключать антивирусную защиту при установке обновлений программ, таких, например, как Windows Service Packs. Антивирусная программа, работающая во время установки обновлений, может стать причиной неправильной установки модификаций или полной отмене установки модификаций. Перед обновлением Классификация антивирусов [ ]
[1] использовал следующую классификацию антивирусов в зависимости от их принципа действия (определяющего функциональность):
Сканеры (устаревший вариант «полифаги») Определяют наличие вируса по БД [2] , хранящей сигнатуры (или их контрольные суммы) вирусов. Их эффективность определяется актуальностью вирусной базы и наличием эвристического анализатора (см. Эвристическое сканирование).
- ↑ Касперский Е. «Компьютерные вирусы в MS-DOS». Москва, «Эдель», 1992
- ↑ несмотря на название до сей поры автору правки не известны антивирусы, хранящие антивирусную базу во внешней СУБД — используется внутренняя
Заключение
Алгоритмы детектирования вредоносного ПО, так же как и методы борьбы с антивирусами, совершенствуются с каждым днем. Однако уникальные алгоритмы обхода антивирусной защиты появляются крайне редко — как правило, вирмейкеры используют стандартные и давно проверенные на практике методики. Разработчики защитных программ, хорошо знающие все эти методики, часто оказываются на полшага впереди вирусописателей. Именно поэтому антивирусная защита все еще остается довольно эффективным методом борьбы с вредоносными и потенциально опасными программами — особенно для неопытных пользователей.
Антивирусные компании и программы [ ]
- AOL® Virus Protection в составе ActiveVirusShield от AOL (на базе KAV 6, бесплатная)
- ALWIL Software (avast!) из Чехии (бесплатная и платная версии)
- AVZ из России (бесплатная)
- Avira из Германии (есть бесплатная версия Classic)
- BitDefender из Румынии
- ClamWin — Dr.Web из России
- NOD32 из Словакии
- Fortinet
- Frisk Software из Исландии
- F-Secure из Финляндии
- GeCAD из Румынии (Microsoft купил компанию в 2003)
- AVG) из Чехии (бесплатная и платная версии)
- Hauri
- H+BEDV из Германии из России
- MicroWorld Technologies из Индии
- [1]
- Panda Software из Испании
- Quick Heal AntiVirus из Индии
- ROSE SWE из России
- Spyware Doctor
- Symantec из США или Великобритания
- Trend Micro из Японии (номинально Тайвань-США) [2]
- Украинский Национальный Антивирус из Украины [3] (VBA32) из Беларуси [4]
- VirusBuster из Венгрии
- См. также [ ]
Ссылки [ ]
cs:Antivirový program cy:Gwrth-firws da:Antivirus-program de:Antivirenprogramm eo:Kontraŭvirusilo ko:바이러스 검사 소프트웨어 lt:Antivirusinė programa nl:Antivirussoftware pl:Program antywirusowy pt:Antivírus sk:Antivírusový softvér
Антивирус – программа, ищущая вирусы, трояны, червей, бэкдоры и прочее нежелательное ПО на компьютере пользователя. Как правило антивирусы разрабатываются для семейства ОС Windows, что как бы намекает на следующие особенности этой операционки: а) большую распространенность, б) большую уязвимость к атакам, в) большую перспективность рынка антивирусов из-за высокой коммерциализации, г) увы, малую компьютерную грамотность её пользователей.
Антивирусы бывают платные и бесплатные. Подробно о плюсах и минусах обоих категорий мы говорить здесь не будем, замечу только лишь, что все не так однозначно, как может показаться на первый взгляд.
Если посмотреть со стороны на работу антивируса, его самого можно легко принять за вирус, но только со знаком плюс. Методы работы антивируса – слежение за сетевым трафиком, прослушивание портов, контроль служб, модификация и удаление файлов, сбор статистики и отправка данных разработчику ПО, изрядное потребление вычислительных мощностей… Разве что вывода из строя оборудования не хватает! Разумеется, все это направлено во благо пользователя и во имя сохранения его данных, но общая картина по меньшей мере любопытна. Кстати, именно из-за этой особенности крайне не рекомендуется устанавливать на одну машину сразу два антивируса. Мало того, что это без танцев с бубном редко кому удастся, так и последствия их совместной «работы» могут быть самыми причудливыми, вплоть до летальных для ОС.
В массовом сознании накрепко засел миф, что многие вирусы созданы самими антивирусными компаниями, точки над «i» в этом вопросе расставит неплохая статья здесь.
Разные антивирусы по-разному борются с вредоносным ПО. Все антивирусы могут обнаруживать вирусы, но, к сожалению, не все эффективно лечить. В состав антивируса могут входить несколько модулей, в зависимости от релиза и того, на что способна контора-разработчик антивируса. Модули могут быть следующие: модуль поиска нежелательного ПО, модуль анализа подозрительного поведения программ (эвристический модуль), карантинный модуль для изоляции подозрительных файлов, модуль обновлений – для поддержания актуальности новым угрозам, модуль «исцеления» зараженных файлов, брандмауэр, он же файрвол, и некоторые другие.
Антивирус не является панацеей! Это один из множества «бойцов», брошенных в бой с угрозами безопасности в бесконечной войне за информацию, причем не самый сильный. Никакой антивирус не дает 100% защиты в силу особенностей его функционирования.
К сожалению, большая часть работы антивируса направлена на устранение последствий «негигиеничной» рискованной, а иногда, увы, попросту неграмотной работы пользователя в Интернете, с внешними носителями данных и неизвестными приложениями.
Обфускация
Обфускация (от англ. obfuscate — «запутывать», «сбивать с толку») — сознательное запутывание, усложнение кода вредоносной программы с сохранением ее функциональности в целях затруднить ее исследование и анализ. В целях обфускации вирусописатели иногда добавляют в приложение «мусорный» код, ненужные инструкции, множественные переходы и многократные вызовы различных функций. Существуют специальные утилиты, созданные для запутывания кода приложений, — обфускаторы.
Обфускация приложений затрудняет реверс-инжиниринг, то есть декомпиляцию вредоносной программы и изучение ее функциональных возможностей на уровне кода, однако одновременно с этим усложняет вирусописателям отладку приложения, а в некоторых случаях — увеличивает его размер и снижает быстродействие.
Как антивирусные компании пополняют базы?
Применительно к современным антивирусным технологиям само понятие «антивирус» — это скорее дань моде, нежели термин, правильно отражающий суть вещей. Классические файловые вирусы, то есть вредоносные программы, способные заражать исполняемые файлы или динамические библиотеки и распространяться без участия пользователя, сегодня очень большая редкость. Подавляющее большинство встречающихся сейчас в «дикой природе» вредоносов — это трояны, не способные ни к заражению файловых объектов, ни к саморепликации. Чуть реже в руки аналитиков попадаются черви: эти программы могут создавать свои копии на съемных носителях или сетевых дисках, «расползаться» по сети или каналам электронной почты, но файлы заражать не умеют. Все остальные традиционные категории вредоносного ПО отличаются друг от друга лишь базовым набором функций, но по своей архитектуре могут быть сведены к этим трем группам.
Как образцы вредоносов попадают в вирусные лаборатории? Каналов поступления новых семплов у антивирусных компаний традиционно несколько. Прежде всего, это онлайн-сервисы вроде VirusTotal, то есть серверы, на которых любой анонимный пользователь может проверить детектирование произвольного файла сразу десятком самых популярных антивирусных движков. Каждый загруженный образец вне зависимости от результатов проверки автоматически отправляется вендорам для более детального исследования.
Очевидно, что с подобных ресурсов в вирусные лаборатории прилетает огромный поток мусора, включая совершенно безобидные текстовые файлы и картинки, поэтому на входе он фильтруется специально обученными роботами и только после этого передается по конвейеру дальше. Этими же сервисами успешно пользуются небольшие компании, желающие сэкономить на содержании собственных вирусных лабораторий. Они тупо копируют в свои базы чужие детекты, из-за чего регулярно испытывают эпические фейлы, когда какой-нибудь вендор в шутку или по недоразумению поставит вердикт infected на тот или иной компонент такого антивируса, после чего тот радостно переносит в карантин собственную библиотеку и с грохотом валится, вызывая баттхерт у пользователей и истерический хохот у конкурентов.
Второй канал — «самотек», подозрительные файлы, которые пользователи передают в вирлаб через сайт антивирусной компании, по запросу службы поддержки или выгружают из карантина. Третий канал — ханипоты, специальные приманки для вирмейкеров в виде виртуальных серверов с открытыми наружу портами и логинами-паролями вроде root/root, куда некоторые ботоводы радостно заливают свои творения, дивясь криворукости админов. Наконец, четвертый путь — обмен базами между самими вендорами, но в последние годы в силу обострившейся конкуренции на рынке и сузившейся кормовой базы кооперация между антивирусными компаниями практически сошла на нет.
После того как семпл попадает в вирусную лабораторию, он сортируется по типу файла и исследуется автоматическими средствами аналитики, которые могут установить вердикт по формальным или техническим признакам — например, по упаковщику. И только если роботам раскусить вредоноса не удалось, он передается вирусным аналитикам для проведения инструментального или ручного анализа.
Эвристический анализ
Эвристический анализ — разновидность вероятностного анализа вредоносных программ, основанная на логических алгоритмах, позволяющих выявить и обезвредить потенциально опасное приложение. Эвристический анализ приходит пользователям на помощь в тех случаях, когда угрозу не удается обнаружить с помощью сигнатурного детектирования.
Упрощая, основной принцип эвристического анализа можно описать следующим образом. Каждой функции, которую может реализовывать программа в операционной системе, назначается некий условный «рейтинг опасности». Какие-то действия приложения могут считаться менее опасными, другие — более. Если по совокупности выполняемых приложением действий оно превышает некий условный «порог безопасности», оно признается потенциально вредоносным.
Например, если программа работает в фоновом режиме, не имеет графического интерфейса, последовательно опрашивает удаленные серверы, а потом пытается скачать с них и запустить в системе какое-то приложение, оно с высокой долей вероятности может оказаться троянцем-загрузчиком. Или утилитой обновления браузера Google Chrome. В этом, очевидно, и кроется основная ахиллесова пята эвристического метода анализа вирусных угроз — большая вероятность «фолс-позитива», ложного срабатывания.
Другой метод эвристического анализа — эмуляция исполнения программы. Антивирус загружает подозрительное приложение в собственную буферную память, выполняет разбор кода на инструкции и выполняет их по очереди, проверяя результат.
Эвристический анализ применяется с целью выявить и обезвредить угрозы, еще неизвестные антивирусу — то есть те, сигнатуры которых на текущий момент отсутствуют в вирусных базах. Отсюда логически вытекает еще один недостаток эвристических алгоритмов — даже если неизвестную ранее угрозу удается обнаружить, ее далеко не всегда получается сразу «вылечить». Во многих случаях пользователю приходится ожидать появления очередного обновления вирусных баз, содержащего алгоритмы лечения конкретно для этой вредоносной программы.
Цифровая вакцина
Как работает антивирусная программа и почему она уже не только антивирусная.
В последние пару лет людям довелось лишний раз убедиться в своей явной уязвимости перед вирусами. Несмотря на все научно-технические достижения, полностью обезопасить себя от маленьких коварных врагов пока не удаётся. Единственным спасением остаются вакцины. Все эти утверждения справедливы и для цифрового мира. О принципах действия антивирусных программ — в нашей новой статье.
Метод соответствия определению вирусов в словаре [ ]
Это метод, когда антивирусная программа, просматривая файл, обращается к антивирусным базам, которые составлены производителем программы-антивируса. В случае соответствия какого либо участка кода просматриваемой программы известному коду (сигнатуре) вируса в базах, программа антивирус может по запросу выполнить одно из следующих действий:
Для того, чтобы такая антивирусная программа успешно работала на протяжении долгого времени, в словарь вирусов нужно периодически загружать (обычно, через Интернет) обновленные данные. Если бдительные и имеющие склонность к технике пользователи определят вирус по горячим следам, они могут послать зараженные файлы разработчикам антивирусной программы, а они затем добавят информацию о новых вирусах в свой словарь.
Для многих антивирусных программ со словарем характерна проверка файлов в тот момент, когда операционная система создает, открывает, закрывает или посылает их по почте. Таким образом, программа может обнаружить известный вирус сразу после его получения. Заметьте, также, что системный администратор может установить в антивирусной программе расписание для регулярной проверки (сканирования) всех файлов на жестком диске компьютера.
Хотя антивирусные программы, созданные на основе поиска соответствия определению вируса в словаре, при обычных обстоятельствах, могут достаточно эффективно препятствовать вспышкам заражения компьютеров, авторы вирусов стараются держаться на полшага впереди таких программ-антивирусов, создавая «олигоморфические», «полиморфические» и, самые новые, « Метод обнаружения странного поведения программ [ ]
Антивирусы, использующие метод обнаружения подозрительного поведения программ не пытаются идентифицировать известные вирусы, вместо этого они прослеживают поведение всех программ. Если программа пытается записать какие-то данные в Метод обнаружения при помощи эмуляции [ ]
Некоторые программы-антивирусы пытаются имитировать начало выполнения кода каждой новой вызываемой на исполнение программы перед тем как передать ей управление. Если программа использует Метод «Белого списка» [ ]
Общая технология по борьбе с вредоносными программами — это «белый список». Вместо того, чтобы искать только известные вредоносные программы, это технология предотвращает выполнение всех компьютерных кодов за исключением тех, которые были ранее обозначены системным администратором как безопасные. Выбрав этот параметр отказа по умолчанию, можно избежать ограничений, характерных для обновления сигнатур вирусов. К тому же, те приложения на компьютере, которые системный администратор не хочет устанавливать, не выполняются, так как их нет в «белом списке». Так как у современных предприятий есть множество надежных приложений, ответственность за ограничения в использовании этой технологии возлагается на системных администраторов и соответствующим образом составленные ими «белые списки» надежных приложений. Работа антивирусных программ с такой технологией включает инструменты для автоматизации перечня и эксплуатации действий с «белым списком».
Антивирусы на SIM, флэш-картах и USB устройствах [ ]
Выпускаемые сегодня мобильные телефоны обладают широким спектром интерфейсов и возможностями передачи данных. Потребителям следует тщательно изучить методы защиты прежде, чем подсоединять какие-либо небольшие устройства.
Такие методы защиты, как аппаратные, возможно, антивирусы на USB устройствах или на SIM, больше подойдут потребителям мобильных телефонов. Техническая оценка и обзор того, как установить антивирусную программу на сотовый мобильный телефон, должны рассматриваться, как процесс сканирования, который может повлиять на другие легальные приложения на этом телефоне.
Антивирусные программы на SIM с антивирусом, встроенном в зону памяти небольшой емкости, обеспечивают борьбу с вредоносным ПО/вирусами, защищая PIM и информацию пользователя телефона. Антивирусы на флэш-картах дают пользователю возможность обмениваться информацией и использовать эти продукты с различными аппаратными устройствами.
Брандмауэр или файрвол
Брандмауэр предназначен для защиты от сетевых угроз – из локальной сети и Интернета.
Этот модуль далеко не всегда входит в стандартный набор антивируса, зачастую брандмауэр разрабатывается, поставляется и продается как отдельная программа.
Многие программы для соединения с удаленными компьютерами или серверами могут использовать небезопасные методы, оставляя «дырки» и уязвимости для проникновения извне.
Суть работы брандмауэра в контроле как входящего, так и исходящего трафика путем ограничения возможности устанавливать соединения с определенными удаленными ресурсами. Самый наглядный метод защиты – белые и черные списки сетевых ресурсов.
«Черный» список сетевых ресурсов – это список, например, сайтов, куда заходить нельзя, а «белый» список – это список ресурсов, куда только и можно заходить. Как нетрудно заметить, метод белого списка значительно более безопасен, но и сильно ограничивает возможности пользователя и программ.
Дискуссии о том, нужны ли антивирусы, или они совершенно бесполезны, не утихают с момента появления самих антивирусных приложений. Примерно столько же длится непрекращающаяся борьба между вирмейкерами и производителями защитного ПО: одни постоянно изобретают все новые и новые алгоритмы детектирования, другие стремятся во что бы то ни стало их обойти.
Как работают современные антивирусные программы и какие методы используют злоумышленники для борьбы с ними? Об этом — сегодняшняя статья.
Поведенческий анализ
Помимо сигнатурного детектирования, большинство современных антивирусных программ используют те или иные механизмы поведенческого анализа. Поведенческий анализ можно отнести к разновидности вероятностного анализа — как это и следует из названия данного метода, антивирусная программа следит за поведением приложений и, если оно кажется ей подозрительным, блокирует работу потенциально опасной программы.
Один из безопасных методов исследовать поведение приложения — запустить его в так называемой песочнице (sandbox) — защищенном изолированном виртуальном контейнере, из которого приложение не может получить доступ к компонентам ОС и файловой системе. Если поведение программы вызывает у антивируса подозрения, например она выполняет инжект, модифицирует загрузочную запись или изменяет структуру исполняемого файла, она может быть признана потенциально опасной или вредоносной.
Как работает антивирус: принцип работы антивирусных программ
На чём основано действие антивирусной программы?
Для эффективной защиты от различных типов вредоносного ПО, антивирус использует несколько методов их обнаружения.
Сигнатурный метод или реактивная защита. Базовый и проверенный временем механизм. В его основе лежит сигнатура — набор уникальных характеристик вируса или семейства однотипных вирусов. Сигнатуры создаются вирусными аналитиками на основе анализа уже известных вредоносных программ и формируются в постоянно обновляемую антивирусную базу. Антивирусное ПО автоматически загружает свежие базы и сравнивает содержимое локальных и внешних файлов с данными из сигнатур. Принцип работы антивируса с сигнатурами позволят точно определить тип угрозы и понять как с ней бороться. Недостаток сигнатурного метода в том, что он бессилен против неизвестных и модифицированных вирусов, а также не способен анализировать подозрительную активность приложений.
Эвристический анализ или проактивная защита. Используется для предупреждения потенциальных угроз и решения задач, с которыми сигнатурный метод не справляется. Возможностей много:
- анализ работы программ на предмет подозрительных действий. Например, программе для скачивания видео с видеохостингов явно не нужно без вашего согласия прописываться в ветке автозагрузки системного реестра, произвольно открывать порты и обмениваться данными с неизвестными серверами. Если таких подозрительных активностей становится слишком много, антивирус сигнализирует об этом. Конечно то, как работают антивирусы с эвристическим анализом пока нельзя назвать совершенством. Случаются ложные срабатывания на доверенные программы. Впрочем, это решается настройкой;
- безопасный запуск и поведенческий анализ подозрительных программ в «песочнице» — эмуляторе ОС;
- обнаружение (но не лечение) незнакомого вредоносного ПО, на основе похожих сигнатур и по косвенным признакам.
Антивирусы, мобильные устройства и инновационные решения [ ]
Никого не удивит, когда вирусы, которые заражают персональные и портативные компьютеры, перейдут и на мобильные устройства. Все больше разработчиков этой области предлагают антивирусные программы для борьбы с вирусами и защиты мобильных телефонов. В мобильных устройствах есть следующие виды борьбы с вирусами:
- ограничения процессора
- ограничение памяти
- определение и обновление сигнатур этих мобильных устройств
Содержание
Анатомия антивируса
Антивирусные программы различных производителей включают в себя разное число компонентов, и даже более того, одна и та же компания может выпускать несколько версий антивируса, включающих определенный набор модулей и ориентированных на различные сегменты рынка. Например, некоторые антивирусы располагают компонентом родительского контроля, позволяющего ограничивать доступ несовершеннолетних пользователей компьютера к сайтам определенных категорий или регулировать время их работы в системе, а некоторые — нет. Так или иначе, обычно современные антивирусные приложения обладают следующим набором функциональных модулей:
В зависимости от версии и назначения антивирусной программы, она может включать в себя и другие функциональные модули, например компоненты для централизованного администрирования, удаленного управления.
Продолжение доступно только участникам
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Сигнатурное детектирование
Современные антивирусные программы используют несколько методик обнаружения вредоносных программ в различных их сочетаниях. Основная из них — это сигнатурное детектирование угроз.
Данный метод детектирования малвари основывается на создании так называемых сигнатур — уникальных цифровых идентификаторов файла, представляющих собой специальный набор байтов и получаемых на основе содержимого исследуемого файла. Фактически сигнатура — это своего рода «отпечаток пальцев» файла: с помощью сигнатуры можно однозначно идентифицировать тот или иной файл или приложение. Схожим образом устроены хеши файлов, например SHA-1 или SHA-256, — при этом под хешированием в данном случае понимается преобразование содержимого файла с использованием однонаправленной математической функции (алгоритма криптографического хеширования), в результате которого получается уникальный набор шестнадцатеричных символов. Однонаправленной такая функция называется потому, что получить из файла хеш очень просто, а вот восстановить из хеша исходный файл уже невозможно. Вирусная сигнатура устроена несколько сложнее: помимо хеша, она содержит еще целый ряд уникальных признаков файла.
Сигнатуры собираются в блок данных, называемый вирусными базами. Вирусные базы антивирусных программ периодически обновляются, чтобы добавить в них сигнатуры новых угроз, исследованных за истекшее с момента последнего обновления время.
Антивирусная программа исследует хранящиеся на дисках (или загружаемые из интернета) файлы и сравнивает результаты исследования с сигнатурами, записанными в антивирусной базе. В случае совпадения такой файл считается вредоносным. Данная методика сама по себе имеет значительный недостаток: злоумышленнику достаточно изменить структуру файла на несколько байтов, и его сигнатура изменится. До тех пор пока новый образец вредоноса не попадет в вирусную лабораторию и его сигнатура не будет добавлена в базы, антивирус не сможет распознать и ликвидировать данную угрозу.
Переупаковка
Самый распространенный и популярный метод, активно применяемый вирусописателями для обхода сигнатурного детекта. Как я уже говорил, сигнатуру можно назвать своего рода аналогом отпечатков пальцев каждого конкретного файла, при этом она уникальна для файлового объекта. Соответственно, если в файл будут внесены даже незначительные изменения, антивирус не сможет «опознать» его с помощью сигнатуры, и такой файл не будет детектироваться антивирусом до тех пор, пока не попадет в исследовательскую лабораторию.
Наиболее простой способ изменить структуру файла, не меняя его функциональных возможностей, — это «накрыть» его программным упаковщиком. Программные упаковщики сжимают содержимое файла приложения и дописывают к нему код, необходимый для распаковки и выполнения программы. Некоторые из них к тому же включают различные функции шифрования, затрудняющие анализ и исследование подобного приложения. Этим и пользуются злоумышленники.
При каждой повторной упаковке файла его сигнатура меняется, и он становится «невидимым» для системы сигнатурного детектирования антивируса. Некоторые вирусописатели, чтобы затруднить исследование вируса или трояна, упаковывают и шифруют свои творения в «несколько слоев» — тогда под одним упаковщиком прячется другой сжатый и зашифрованный объект, под ним — еще один, и вся конструкция напоминает в итоге эдакую логическую матрешку, добраться до «сердцевины» которой бывает весьма непросто.
Иногда киберпреступники применяют и иной метод: на сервере, с которого жертвам раздается вредоносное ПО, устанавливается специальный сценарий. При активизации этого сценария (например, при переходе пользователя по ссылке) он извлекает из соответствующей директории сервера бинарный файл вредоноса, упаковывает его на лету и только после этого «отдает» его пользователю. Таким образом каждая жертва получает свой собственный, уникальный экземпляр вредоносной программы, гарантированно не детектируемой по сигнатуре.
Методы обнаружения вирусов [ ]
Антивирусное программное обеспечение обычно использует два отличных друг от друга метода для выполнения своих задач:
- Сканирование файлов для поиска известных вирусов, соответствующих определению в антивирусных базах
- Обнаружение подозрительного поведения любой из программ, похожего на поведение заражённой программы.
Сигнатурный метод обнаружения
Достоинства этого метода:
- Отработанная надежность. Метод применяется давно и с успехом, можно сказать что это основной метод обнаружения вируса.
- Высокое быстродействие.
Недостатки:
Методики противодействия антивирусам
К сожалению, борьба вирусописателей и производителей антивирусных программ носит перманентный характер: первые непрерывно изобретают всё новые и новые способы обхода антивирусной защиты, вторые — стараются совершенствовать алгоритмы поиска и обнаружения вредоносного ПО. Давай перечислим основные методики, которыми пользуются вирмейкеры.
Что такое современный антивирус?
Антивирус в традиционном понимании — это программа для обнаружения, идентификации и устранения вирусов с компьютера или другого устройства.
Эволюция компьютерных вирусов происходила в том же направлении и с теми же темпами, что и развитие технологий обмена информацией. Большая часть вирусов написана под Microsoft Windows — самую популярную операционную систему в мире. Вслед за распространением интернета и мобильных устройств, киберпреступники ринулись в эти сферы и ожидаемо получили массу новых возможностей для атак, слежки и кражи личных данных пользователей. Но, как известно, на любое действие найдётся противодействие. Принцип работы антивирусных программ претерпел значительные изменения с момента их появления в конце 80-х годов. А борьба с вирусописателями вышла на новый уровень.
Строго говоря, классических вирусов, заражающих исполняемые файлы ОС и создающих свои копии в разных отделах диска, уже нет. Зато есть много других вредоносных программ (malware): трояны, черви, руткиты, эксплойты, шпионы, ботнеты, бэкдоры, рекламные приложения (один из самых распространенных видов) и другие.
Получается, что слово «антивирус» тоже не совсем корректное. Сегодня антивирусные программы работают не просто как сканеры, ищущие вирусы на диске. Теперь это многофункциональное комплексное решения для защиты от киберугроз на всех уровнях.
Эвристические методы обнаружения
Многие антивирусные программы содержат в себе модуль так называемого эвристического поиска вредоносных программ. Суть метода в анализе поведения всех запускаемых программ. Если в процессе работы системы вдруг обнаруживается «подозрительное» поведение приложения, то есть программа вдруг начинает делать то, что раньше не делала, то срабатывает тревога и эвристический модуль сообщает пользователю о потенциальной угрозе.
Достоинства метода:
- Весьма перспективное направление, в будущем возможности эвристического модуля возрастут и компьютер и информация будут лучше защищены от неожиданных и новейших угроз.
- Эвристический модуль может реагировать на угрозы, информации о которых нет в базе сигнатур.
Недостатки метода:
- Ложное срабатывание на безопасные события. В итоге пользователь может в раздражении отключить эвристический модуль, уменьшив защиту.
- Из-за особенностей работы эвристического модуля есть проблема излишнего потребления вычислительных мощностей. Попросту говоря, антивирус сжирает всю память и процессор, в итоге не то что в игры не поиграешь, в Word`е толком не поработаешь. Итог тот же – отключение модуля и уменьшение защиты.
Основные методы борьбы с вирусами
Проактивная защита (HIPS)
Проактивную антивирусную защиту (HIPS — Host-based Intrusion Prevention System, англ. «система предотвращения вторжений») также можно отнести к разновидности антивирусной защиты на основе поведенческого анализа. Антивирус следит за запущенными приложениями и информирует пользователя о тех или иных действиях программы. Решения о том, позволить или запретить программе выполнять какое-либо действие, принимает пользователь. Это классический вариант реализации HIPS. Существует еще так называемый экспертный вариант, при котором антивирус самостоятельно блокирует действия тех или иных приложений на основе набора заложенных в него правил и разрешений. Пользователь может при необходимости добавить какую-либо программу в список исключений, разрешив ей выполнение любых или только выбранных действий в защищаемой системе.
Читайте также: