Что называется сигнатурой вируса

Принципы работы антивируса

Антивирус – программа, ищущая вирусы, трояны, червей, бэкдоры и прочее нежелательное ПО на компьютере пользователя. Как правило антивирусы разрабатываются для семейства ОС Windows, что как бы намекает на следующие особенности этой операционки: а) большую распространенность, б) большую уязвимость к атакам, в) большую перспективность рынка антивирусов из-за высокой коммерциализации, г) увы, малую компьютерную грамотность её пользователей.

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

Если посмотреть со стороны на работу антивируса, его самого можно легко принять за вирус, но только со знаком плюс. Методы работы антивируса – слежение за сетевым трафиком, прослушивание портов, контроль служб, модификация и удаление файлов, сбор статистики и отправка данных разработчику ПО, изрядное потребление вычислительных мощностей… Разве что вывода из строя оборудования не хватает! Разумеется, все это направлено во благо пользователя и во имя сохранения его данных, но общая картина по меньшей мере любопытна. Кстати, именно из-за этой особенности крайне не рекомендуется устанавливать на одну машину сразу два антивируса. Мало того, что это без танцев с бубном редко кому удастся, так и последствия их совместной «работы» могут быть самыми причудливыми, вплоть до летальных для ОС.

В массовом сознании накрепко засел миф, что многие вирусы созданы самими антивирусными компаниями, точки над «i» в этом вопросе расставит неплохая статья здесь.

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

Что называется сигнатурой вируса

Антивирус не является панацеей! Это один из множества «бойцов», брошенных в бой с угрозами безопасности в бесконечной войне за информацию, причем не самый сильный. Никакой антивирус не дает 100% защиты в силу особенностей его функционирования.

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

Основные методы борьбы с вирусами

Сигнатурный метод обнаружения

Наверняка вы встречались с сообщениями антивируса, например, Антивируса Касперского, о том, что антивирусные базы устарели и их необходимо обновить. О каких базах идет речь?

Антивирусная лаборатория – разработчик антивируса – выявляет вирус, анализирует его, и выявляет так называемую сигнатуру. Сигнатура вируса (сигнатура атаки) – особый цифровой признак вредоносной программы, по которому её можно «узнать» и однозначно определить. Эти сигнатуры вносятся в базу данных, чье обновление регулярно скачивает пользователь вручную или по расписанию. Сообщение от антивируса об устаревании базы вирусов сигнализирует об ослаблении защиты и повышении вероятности подхватить какой-нибудь «свежак».

Достоинства этого метода:

Недостатки:

Эвристические методы обнаружения

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

Достоинства метода:

Недостатки метода:

Брандмауэр или файрвол

Брандмауэр предназначен для защиты от сетевых угроз – из локальной сети и Интернета.

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

Многие программы для соединения с удаленными компьютерами или серверами могут использовать небезопасные методы, оставляя «дырки» и уязвимости для проникновения извне.

Что называется сигнатурой вируса

Суть работы брандмауэра в контроле как входящего, так и исходящего трафика путем ограничения возможности устанавливать соединения с определенными удаленными ресурсами. Самый наглядный метод защиты – белые и черные списки сетевых ресурсов.

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

Достоинства брандмауэра:

Недостатки брандмауэра:

Источник

Сигнатура

Что называется сигнатурой вируса

Сигнатура (лат. «signature» – «указывать») — в сфере безопасности компьютерных систем обозначает фрагмент кода или функцию, характерные для определенного типа вирусов. Соответственно, метод обнаружения вредоносного ПО при помощи проверки сигнатур называется «сигнатурным методом».

Что называется сигнатурой вирусаБольшинство современных антивирусов используют именно сигнатурный метод поиска вирусов. На то есть ряд причин. Во-первых, проверка сигнатуры происходит намного быстрее, чем, например, побайтное сканирование, но позволяет с высокой долей вероятности выявить вирус. Во-вторых, файлы баз данных сигнатур занимают не очень много места и могут быть легко обновлены при помощи Интернет-подключения.

Сигнатуры могут быть двух типов. Первый тип основан, как уже было сказано в определении, на характерных фрагментах кода вредоносных программ. Он может содержаться как в теле вируса, так, например, и в его цифровой подписи. Второй же тип сигнатур основывается на типичном поведении «зловреда». В данном случае сигнатура являет собой описание для антивируса цикла атаки и не содержит непосредственно элементов кода.

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

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

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

Источник

Основы работы антивирусных программ

Общие сведения

Методы и принципы защиты теоретически не имеют особого значения, главное чтобы они были направлены на борьбу с вредоносными программами. Но на практике дело обстоит несколько иначе: практически любая антивирусная программа объединяет в разных пропорциях все технологии и методы защиты от вирусов, созданные к сегодняшнему дню.

Из всех методов антивирусной защиты можно выделить две основные группы:

Сигнатурный анализ

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

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

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

Эвристический анализ

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

Поиск вирусов, похожих на известные

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

Положительным эффектом от использования этого метода является возможность обнаружить новые вирусы еще до того, как для них будут выделены сигнатуры. Отрицательные стороны:

Поиск вирусов, выполняющих подозрительные действия

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

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

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

Источник

Сканер вирусов изнутри

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

Локации вирусного ПО

Виды сканирования.

Сканирование делится на два основных вида: сигнатурный и эвристический.

Сканирование на основе сигнатур.

Другое название — хэш-скан (hash scan). Сканер проверяет файлы путем сравнения сигнатур файлов со словарем.
Обычно сигнатурой антивируса является MD5-хэш (16 байт) сгенерированный на основе тела известного вируса.
Таким образом, файл считается зараженным, если его хэш найден в базе сигнатур. Для локализации выявления вредоноса, хэш может вычисляться только для exe-файлов на основе PE-заголовка.
Такой вид сканирования позволяет определить вид атаки с высокой долей вероятности, без ложных срабатываний (чем грешит эвристическое сканирование).
К недостаткам хэш-скана относят неспособность выявить новые вирусы, которые отсутствуют в базе. А также беззащитность перед полиморфными или шифрующимися вирусами, в связи с чем требуются регулярные обновления базы сигнатур.
Также слабым местом хэш-скана является скорость проверки. Если бы не закон Мура, ни один современный компьютер уже не смог бы закончить сканирование с такой массой сигнатур в разумное время.

Эвристическое сканирование

Метод, в основе которого положено выявление вируса на основе заранее известных характеристик (эвристик). Например, для выявления загрузочного вируса прописавшегося в MBR, антивирус может считать загрузочную запись двумя путями: функцией WinAPI ReadFile, и с использованием драйвера прямого доступа к диску (direct disk access — DDA driver). А затем сравнить оба буфера. Если буферы различны, то с высокой долей вероятности
можно сказать, что мало того что вирус загрузочный, он еще и подменяет вызовы WinAPI.
Что для руткитов — обычная практика.
Другим примером эвристического скана, может быть поиск следов вируса в реестре и системных директориях. Как правило вирусы создают определенный набор файлов, и/или записей в реестре, по которым можно их выявить.
Перечисленные выше типы локаций вредоносного ПО, а именно сканирование следов, сканирование cookies и проверка загрузочных записей диска, также подпадают под вид эвристического сканирования.

Компоненты и вспомогательные модули сканера

Драйвер прямого доступа к диску

Необходим для обхода руткитов. В зараженной системе, руткиты используются
для заметания следов своего присутствия. Лучшим способом для этого является подмена вызовов API-функций.
В частности для работы с файлами: CreateFile, ReadFile итд. Когда антивирусная программа сканирует систему,
вызывая эти функции, то руткит может возвращать FALSE, когда такой вызов относится к нему. Чтобы обойти это,
сканер содержит в себе модуль непосредственного посекторного считывания с диска, без использования WinAPI.

Черно-Белые списки

Служат для фильтрации обнаружений, которые на самом деле не являются зловредами. Таким образом, антивирус не предупреждает об опасности, в случае ложного срабатывания.
Современные антивирусы, хранят базу в среднем от 5 млн. сигнатур. Причем довольно часто, для одного вируса, может существовать с десяток сигнатур. Возможная ситуация, что из нескольких тысяч системных файлов, найдется подходящий под сигнатуру файл. А это грозит тем, что антивирус удалит его, или переместит в карантин, что может привести к отказу системы вовсе.
Минимизировать ложные срабатывания — главный приоритет любой антивирусной компании.
Чтобы пройти самый престижный антивирусный тест — virus bulletin, антивирус должен показать 100% результат обнаружения, при этом не выдав единого ложного срабатывания.
Белый список — содержит список файлов, которые не вредят системе, но так или иначе обнаруживаются сканером.
Черный список — содержит список вирусов, которым мы доверяем (также не наносят вреда системе).

Распаковщики, дешифровшики

Чтобы достичь приемлемого уровня обнаружения вируса, сканер должен отрабатывать exe-шники, зашифрованные exe-пакером (Например UPX). Тогда перед вычислением хэша, сканер обнаруживает, что файл зашифрован и сначала обращается к дешифровщику, а затем уже на этой основе, вычисляется хэш и сравнивает с имеющимся в базе.
Второй вид архивов — это всем известные zip, rar, 7z итд. Антивирус также должен уметь распаковывать эти архивы, и сканировать содержимое.
Третий вид — это распаковка NTFS ADS (NTFS Alternative Data Streams). В файловой системе NTFS, исполняемый файл может быть замаскирован под обычный, например текстовый. Альтернативный поток этого файла, будет ссылаться непосредственно на вирус.

Use-cases

Источник

Вирусы и как с ними бороться. Часть вторая

В первой части статьи Вирусы и как с ними бороться мы рассмотрели теоретические основы вирусостроения. Сегодня подбираемся ближе к практике.

Для чего нам нужен антивирус?

Каждый производитель выпускает антивирусы для различных платформ, например существуют версии того же самого AVP как для различных Windows платформ, так и для Unix/Linux систем, MacOS. Уже многие компании начали выпуск антивирусных пакетов для мобильных устройств на базе SymbianOS, PalmOS и клоны Windows CE (WM, Pocket, Smartphone и т.п.). Многие юзеры, конечно, и не подозревают о том, что уже существуют вирусы и под эти платформы, а некоторые уже знают о них, получив через Bluetooth вирус Duts для WM 2002/2003 или Cabir для Symbian.

Где взять антивирус

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

Как работает антивирус?

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

Начнем по порядку: с того, какие типы обнаружения вирусов существуют, а их всего три, это сигнатурный, эвристический и проактивный.

Сигнатурный метод обнаружения вирусов

Что называется сигнатурой вируса

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

Многих также интересовал вопрос, как же все таки тело вируса попадает в антивирусные лаборатории, и я постараюсь на него ответить. Ну, во-первых, у каждой компании есть специальный робот, который называется Honeypots (липучка), сканирующий Интернет в поисках вирусов посредством эвристического анализа и проактивных методов (о которых чуть ниже), также вирусы присылают «зараженные» пользователи, чей антивирус с помощью эвристического анализатора обнаружил вирус и поместил его в карантин (специальная директория, в которую помещается инфицированный файл до тех пор, пока антивирусная компания не выпустит сигнатуру с кодом этого вируса и антивирус не сможет «выкусить» этот участок вредоносного кода фагом, тем самым, вылечив файл, а до тех пор придется выкусить пользователю 🙂 Файлы из этой директории не могут быть запущены на выполнение).

В некоторых случаях сигнатуры новых вирусов отправляют друг другу и компании антивирусного ПО. Да-да, это не шутка. Несмотря на маркетинговую политику, такое происходит, это поведал один руководитель крупной российской антивирусной компании в онлайн-интервью. А вообще в антивирусные компании ежедневно поступают из всех помянутых источников 200-300 свеженьких образцов различных «зверушек», написанных как профи, так и не очень опытными вирусописателями, некоторым образцам так и не суждено заразить ни одной машины, а некоторым, таким как Win95.CIH (он же «Чернобыль»), Sasser, NetSky, MyDom удается произвести настоящий шум.

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

Что называется сигнатурой вируса

Иногда в неделю добавляется сигнатур объемом в 350-400 кб, и после того как сигнатуры добавлены, файлы, находившиеся в карантине, будут вылечены (т.е. если вирусы, которыми они заражены, найдутся в базе).

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

Эвристический метод обнаружения вирусов

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

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

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

Проактивный метод обнаружения вирусов (или поведенческий)

Этот метод обнаружения впервые появился в продукте «Антивирус Касперского 6.0» и произвел в некотором роде переворот в антивирусном ПО.

Что называется сигнатурой вируса

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

Полифаги и фаги

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

Также во время установки антивируса в систему он интегрируется в почтовые программы, такие как Outlook Express, Eudora, The Bat! и т.д.

Что называется сигнатурой вируса

Это очень важный аспект, поскольку во время получения почты нужно прямое сканирование трафика из протоколов POP3, SMTP, NNTP, IMAP и тому подобных, потому что многим типам червей, распространяющихся через эти протоколы, совершенно не нужно запуска, им главное попасть на ваш компьютер, дальше сработает механизм. Учтите это! Вам же не хочется, чтобы какой-нибудь червь с трояном отправили на все ваши адреса из почтовой программы ругательные письма. Представляете, что будет с вашим лицом через пару дней, когда до вас доберутся обиженные адресаты? 🙂

Что называется сигнатурой вируса

Что называется сигнатурой вируса

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *