Вирусные сигнатуры устарели что значит

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


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

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

Из названия понятно, что движок используется для сканирования всех возможных локаций вредоносного ПО, а именно:

  • Сканирование произвольных файлов и папок, вплоть до целых дисков.
  • Сканирование памяти. Сканируются все загруженные в память процессы и их dll.
  • Сканирование загрузочных записей дисков (Master Boot Records — MBR).
  • Сканирование системы на предмет следов вредоносного ПО. Проверка системных папок вроде %APPDATA%, %WINDIR% на предмет определенных файлов и папок. Сканирование реестра, также на предмет следов в автозагрузке и настройках.

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

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

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

Другое название — хэш-скан (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

Антивирусное ПО использует движок не только при полном сканировании системы, но и в таких случаях:

  • Интернет защита. А именно сканирование cookies’ов браузеров и Flash Player’a.
    Например Chrome хранит кукисы в папке %localappdata%\\Google\\Chrome\\User Data\\Default\\, Firefox в %appdata%\\Mozilla\\Firefox\\Profiles.
    Для Internet Explorer в %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Cookies.
    Таким образом извлекая доменные имена из sql-базы кукис для Firefox и Chrome, либо из 3-ей строки каждого кукис-файла для IE,
    сканер сравнивает его с базой вредносных сайтов.
  • Email защита. Сканер цепляется к модулю антивируса, отвечающим за почтовую защиту. Это может быть плагин для Outlook, Thunderbird,
    основой которого явлется проверка аттачей на предмет вирусов.
  • Контекстный скан файла/папки. Когда юзер выбирает в контекстом меню «Проверить файл. », щелкая правой кнопкой мыши на папке или файле, антивирус также обращается к движку.

Источник

Как работает антивирус — Сигнатурный метод

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

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

Например, возьмите вот эту строку ниже, сохраните ее в текстовый файл и запустите антивирусную проверку. Любой нормальный антивирус определит, что это вирус EICAR.

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

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

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

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

— вредоносная программа уже должна быть известна производителю антивируса и исследована в специальной лаборатории;

— лаборатория должна сформировать сигнатуры, характерные признаки вредоносной программы;

— эти сигнатуры должны попасть на антивирус, установленный на нашем компьютере.

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

Качество антивируса определяется в том числе тем, насколько обширна его база сигнатур и насколько оперативно она пополняется.

Это главный недостаток метода: он не поможет против нового неизвестного вредоноса. То есть вредоносная программа может гулять свободно до тех пор, пока не попадется на глаза антивирусной лаборатории. Могла бы, если бы не существовало других способов их обнаружения. О них поговорим в следующих статьях.

Источник

List of available regions

Main regions
АМЕРИКА
ЕВРОПА, БЛИЖНИЙ ВОСТОК и АФРИКА
АЗИАТСКО-ТИХООКЕАНСКИЙ РЕГИОН

Обновление программы Avast Antivirus

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

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

Обновление вирусных сигнатур вручную

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

  1. Нажмите правой кнопкой мыши значок Avast в области уведомлений Windows на панели задач и выберите пункт ОбновитьМодуль сканирования и вирусные сигнатуры.
  2. Если Avast Antivirus не начинает проверку обновлений автоматически, нажмите кнопку Поиск обновлений.
  3. Подождите, пока программа Avast Antivirus проверит наличие обновлений вирусных сигнатур и установит их.
  4. Когда обновление будет завершено, отобразится следующий статус: Вирусные сигнатуры обновлены.
  5. Чтобы завершить обновление, может потребоваться перезагрузить ПК. При появлении диалогового окна нажмите Перезагрузить сейчас, чтобы сразу перезагрузить компьютер.

Обновление приложения вручную

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

  1. Нажмите правой кнопкой мыши значок Avast в области уведомлений Windows на панели задач и выберите пункт ОбновитьПрограмма.
  2. Если Avast Antivirus не начинает проверку обновлений автоматически, нажмите кнопку Поиск обновлений.
  3. Подождите, пока Avast Antivirus проверит наличие обновлений программы и установит их.
  4. Когда обновление будет завершено, отобразится следующее сообщение: Приложение обновлено.
  5. Чтобы завершить обновление, может потребоваться перезагрузить ПК. При появлении диалогового окна нажмите Перезагрузить сейчас, чтобы сразу перезагрузить компьютер.

Изменение настроек обновления вирусных сигнатур

  1. Откройте программу Avast Antivirus и перейдите в раздел ☰ МенюНастройки.
  2. Выберите ОбщееОбновить.
  3. В разделе вирусных сигнатур нажмите Другие параметры.
  4. Выберите нужный вариант.
    • Обновлять автоматически (по умолчанию активировано): регулярное автоматическое скачивание и установка обновлений. Чтобы завершить обновление, может потребоваться перезагрузить ПК. При появлении диалогового окна нажмите Перезагрузить сейчас, чтобы сразу перезагрузить компьютер.
    • Спрашивать при наличии обновления: уведомления о новых доступных обновлениях вирусных сигнатур. Для установки обновления требуется ваше подтверждение.
    • Обновлять вручную (не рекомендуется): обновления не устанавливаются автоматически, уведомления о новых доступных вирусных сигнатурах не отображаются.
    • Включить стриминг обновлений (по умолчанию активировано): постоянное скачивание микрообновлений при обнаружении нового вредоносного ПО.

Изменение настроек обновлений для приложения

  1. Откройте программу Avast Antivirus и перейдите в раздел ☰ МенюНастройки.
  2. Выберите ОбщееОбновить.
  3. В разделе приложения нажмите Другие параметры.
  4. Выберите нужный вариант.
    • Обновлять автоматически (включено по умолчанию): обновления регулярно загружаются и устанавливаются. Чтобы завершить обновление, может потребоваться перезагрузить ПК. При появлении диалогового окна нажмите Перезагрузить сейчас, чтобы сразу перезагрузить компьютер.
    • Спрашивать после загрузки обновления: уведомление о загрузке обновлений для приложения. Для установки обновления требуется ваше подтверждение.
    • Спрашивать при наличии обновления: уведомление о доступном обновлении для приложения (перед загрузкой). Чтобы получить обновление, потребуется запустить скачивание и установку вручную.
    • Обновлять вручную (не рекомендуется): обновления не устанавливаются автоматически, уведомления о новых доступных обновлениях не отображаются.

Настройка параметров прокси-сервера

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

Чтобы настроить параметры прокси-сервера для обновления приложения, выполните действия, указанные ниже.

  1. Откройте программу Avast Antivirus и перейдите в раздел ☰ МенюНастройки.
  2. Выберите ОбщееОбновить.
  3. В разделе приложения нажмите Другие параметры.
  4. Установите флажок рядом с пунктом Использовать указанный прокси-сервер и введите сведения о прокси-сервере в соответствующих текстовых полях.
    • Тип: нажмите стрелку раскрывающегося списка и выберите HTTP или SOCKS v4.
    • Адрес: введите адрес своего прокси-сервера.
    • Тип аутентификации: если прокси-сервер запрашивает проверку подлинности, укажите ее тип и введите Имя пользователя и Пароль.

Источник

Оцените статью