Устранение ложных срабатываний антивирусных записей
ELIMINATION OF FALSE ACTIVATION OF ANTI-VIRUS RECORDS

Область техники
Изобретение относится к системам и способам управления антивирусными записями на множестве компьютеров пользователей.
Уровень техники
В настоящее время одной из задач антивирусной индустрии является поддержание антивирусных баз в актуальном состоянии. За то небольшое время, когда вредоносное приложение пока еще не обнаружено ведущими антивирусными экспертами и компаниями, оно может быть скачано сотни тысяч раз различными пользователям и сможет заразить большое количество компьютеров. Поэтому своевременное обновление антивирусных баз позволяет адекватно и быстро осуществлять борьбу с вредоносным программным обеспечением (ПО). Но стоит отметить, что количество программного обеспечения, в том числе и вредоносного, постоянно растет, в связи с чем необходимы проактивные методы (эвристический анализ, эмуляция кода, анализ поведения и пр.) обнаружения подобных приложений. Для борьбы с неизвестными вредоносными приложениями современные антивирусные компании используют методы эвристического обнаружения, методы исполнения неизвестных приложений в защищенной среде или песочнице (англ. sandbox, honeypot) с использованием виртуализации, а также различные способы ограничения функционала приложений на основе анализа их активности, например, использование системы предотвращения атак на уровне компьютера (англ. Host-based Intrusion Prevention System, HIPS).
Тем не менее, нельзя полностью полагаться на все вышеперечисленные методы, так как все они обладают определенными недостатками, связанными как с особенностью их работы, так и с их использованием в современных антивирусных приложениях, в которых пользователь вправе выставить настройки, которые не дадут использовать эти технологии в полной мере, так как они могут отнимать заметное количество процессорного времени и ресурсов компьютера в целом, например, при старте неизвестных приложений. До окончания проверки неизвестных приложений пользователь может отключить, например, их исполнение в защищенной среде (например, на виртуальной машине) или же уменьшить время, которое отводится на эмуляцию.
В связи с возможными рисками неэффективной работы проактивных технологий и ввиду постоянного роста количества вредоносных приложений все более популярными становятся так называемые «белые списки» (whitelist) - базы чистых файлов. «Белые списки» создаются для таких объектов, как файлы, приложения, ссылки, адресатов электронной почты, а также для учетных записей пользователей систем мгновенного обмена сообщениями, журналов обмена сообщениями, IP-адресов, имен хостов, имен доменов и так далее. Подобные списки можно составлять исходя из многих факторов: наличия электронной цифровой подписи или иных данных производителя, данных об источнике (откуда приложение было получено), данных о связях приложения (отношения родитель-ребенок), данных о версии приложения (например, приложение можно считать проверенным исходя из того, что прошлая версия также была в «белом списке»), данных о переменных окружения (операционная система, параметры запуска) и т.д.
Перед каждым выпуском обновлений сигнатур для антивирусных баз они должны быть проверены на предмет коллизий, например, с «белым списком» файлов. Стоит отметить, что большинство исследуемых неизвестных исполняемых файлов на данный момент являются так называемыми РЕ-файлами (англ. Portable Executable - переносимый исполняемый) и имеют РЕ-формат (для семейства операционных систем «Windows», под которые создается большая часть вредоносного программного обеспечения). РЕ-файл содержит заголовок, некоторое количество секций, которые составляют образ исполняемого приложения, и оверлея, являющегося сегментом приложения, подгружаемым при необходимости во время его выполнения.
В настоящий момент для того, чтобы создать сигнатуру файла, используют различные уникальные части файла. Чаще всего для этих целей используют участок некоторой секции кода. Однако нередки ситуации, когда эксперт ошибочно интерпретирует библиотечный или иной широко используемый код как часть вредоносного, так как данный фрагмент присутствует во вредоносном приложении. В этом случае создается сигнатура, которая ошибочно содержит фрагмент файла, который может присутствовать в большом множестве чистых файлов (например, фрагмент динамической библиотеки). Данная сигнатура будет успешно обнаружена во вредоносном приложении, однако все другие файлы, которые будут содержать данный фрагмент кода, но при этом являются чистыми, эта сигнатура также будет определять вредоносными. В этом случае говорят, что использование сигнатуры вызывает ложное срабатывание, т.к. она будет обнаружена в чистом файле.
Работа антивирусных приложений так или иначе связана с какими-либо антивирусными записями, например, правилами, шаблонами, списками, сигнатурами, в создании которых, как правило, принимает участие эксперт. Данные антивирусные записи позволяют обнаружить вредоносное ПО и удалить его. Но в данном процессе также не исключен человеческий фактор, и эксперт может допустить ошибку, сделав, например, сигнатуру, которая будет определять чистое ПО, информация о котором находится в «белом списке» файлов, как вредоносное. Следует также отметить, что не только эксперт может сделать ошибку. Существуют системы автоматического формирования антивирусных записей, которые, пытаясь обнаружить как можно больше вредоносного ПО, неизбежно охватывают и некоторые чистые приложения. При этом могут возникнуть ситуации, когда необходимое для работы пользователя специальное ПО, не являющееся вредоносным, блокируется антивирусным приложением, использующим сформированные антивирусные записи, и подобные ситуации могут существенно снижать лояльность пользователей к определенному антивирусному приложению в будущем.
Таким образом, задачи своевременного обнаружения ложных срабатываний и устранения ложных срабатываний являются важными и актуальными для антивирусной отрасли. На сегодняшний день известны различные подходы, позволяющие уменьшить количество ложных срабатываний.
В заявке WO 2007087141 А1 описывается метод для уменьшения количества ложных срабатываний. Суть его сводится к последовательной проверке сначала по списку вредоносных файлов, а затем по списку чистых файлов. Но описанный метод не позволяет находить ложные срабатывания антивирусных записей, которые не содержатся в списке вредоносных файлов или в списке чистых файлов.
Анализ предшествующего уровня техники позволяет сделать вывод о неэффективности и в некоторых случаях о невозможности применения предшествующих технологий, недостатки которых решаются настоящим изобретением, а именно системой и способом управления антивирусными записями на множестве компьютеров пользователей.
Раскрытие изобретения
Настоящее изобретение относится к системам и способам управления антивирусными записями на множестве компьютеров пользователей.
Технический результат заключается в сокращении количества антивирусных записей на компьютерах пользователей, использование которых антивирусным приложением вызывает ложные срабатывания.
Согласно варианту реализации используется способ управления антивирусными записями на множестве компьютеров пользователей, в котором: в течение заданного времени собирают с помощью средства обработки параметры антивирусной записи со статусом «рабочая», при ее срабатывании по меньшей мере на одном компьютере пользователя, при этом статус «рабочая» означает, что при срабатывании антивирусной записи на компьютере пользователя с использованием антивирусного приложения производятся действия по устранению вредоносного содержимого файла, на котором сработала антивирусная запись; собирают с помощью средства обработки статистику срабатывания антивирусной записи, которая содержит зависимость количества компьютеров пользователей, на которых сработала упомянутая антивирусная запись, от времени; определяют с помощью средства обработки общее количество компьютеров пользователей, на которых сработала упомянутая антивирусная запись; с помощью средства классификации с использованием параметров антивирусной записи и статистики срабатывания антивирусной записи определяют принадлежность антивирусной записи к классу антивирусных записей, использование которых вызывает ложное срабатывание, если определенное общее количество компьютеров пользователей превышает заданное пороговое значение; изменяют с помощью средства классификации статус упомянутой антивирусной записи с «рабочей» на «тестовую», при этом статус «тестовая» означает прекращение выполнения действий с помощью антивирусного приложения по устранению вредоносного содержимого файла, на котором сработала антивирусная запись; отправляют с помощью средства обработки антивирусному приложению, установленному на компьютерах пользователей измененный статус упомянутой антивирусной записи.
Согласно одному из частных вариантов реализации используют один из следующих алгоритмов классификации: метод опорных векторов, байесовский классификатор, нейронная сеть, логистическая регрессия; при этом объектом классификации является антивирусная запись, признаком объекта классификации является по меньшей мере один из параметров антивирусной записи, а алгоритм классификации определяет принадлежность упомянутого объекта к одному из двух классов: к первому классу относится антивирусная запись, содержащая ложное срабатывание, а ко второму классу относится антивирусная запись, которая определяет вредоносный файл.
Согласно другому частному варианту реализации к первому классу дополнительно относится антивирусная запись, с помощью которой определяют доверенный файл.
Согласно еще одному частному варианту реализации дополнительным признаком объекта классификации является по меньшей мере одна из статистических функций для выборки из числа пользователей, у которых сработала упомянутая антивирусная запись, при этом упомянутой статистической функцией является по меньшей мере одна из следующих: моменты, выборочные моменты, тренд, закон распределения, наличие компоненты сезонности и период компоненты сезонности.
Согласно одному из частных вариантов реализации алгоритм классификации построен с помощью средства классификации с использованием обучающей выборки, которая, в свою очередь, формируется с помощью средства обработки следующим образом: формируют обучающую выборку из антивирусных записей, для которых заранее известно разделение на два класса, при этом каждой антивирусной записи из обучающей выборки присваивают статус «тестовой»; отправляют антивирусному приложению, установленному по меньшей мере на двух компьютерах пользователей обучающую выборку антивирусных записей; в течение заданного времени после отправки, собирают параметры сработавших антивирусных записей из обучающей выборки и статистику срабатывания антивирусных записей, при этом упомянутая статистика для каждой антивирусной записи включает зависимость количества компьютеров пользователей, у которых сработала антивирусная запись, от времени; дополняют обучающую выборку собранными параметрами сработавших антивирусных записей, при этом исключают из обучающей выборки антивирусные записи, которые не сработали на предыдущем шаге.
Согласно другому частному варианту реализации к статистике срабатывания антивирусной записи применяют с помощью средства обработки по меньшей мере одно из следующих преобразований временного ряда: нормировка, удаление тренда, удаление шума.
Согласно еще одному частному варианту реализации к статистике срабатывания антивирусной записи применяют с помощью средства обработки по меньшей мере одно из преобразований: дискретное вейвлет-предобразование; дискретное преобразование Фурье; при этом дополнительными признаками классификации являются параметры выполненного преобразования.
Согласно одному из частных вариантов реализации изменяют с помощью средства обработки значение порога в зависимости от типа антивирусной записи.
Согласно другому частному варианту реализации параметрами антивирусной записи являются: дата и время срабатывания антивирусной записи; имя файла, для которого сработала антивирусная запись; путь к упомянутому файлу; хэш-сумма упомянутого файла; тип антивирусной записи; тип приложения пользователя; регион нахождения компьютера пользователя.
Согласно еще одному частному варианту реализации определяют с помощью средства обработки, что антивирусная запись сработала в течение заданного времени на таком количестве компьютеров пользователей, которое превышает заданное пороговое значение с использованием даты и времени срабатывания антивирусной записи, а также имени файла, пути к упомянутому файлу и хэш-суммы файла, которому соответствует упомянутая антивирусная запись.
Согласно одному из частных вариантов реализации время, в течение которого выбираются только те антивирусные записи, которые были выявлены у такого количества компьютеров пользователей, которое превышает заданное пороговое значение, отсчитывается с момента отправки соответствующей антивирусной записи по меньшей мере одному пользователю антивирусного приложения.
Согласно другому частному варианту реализации приложениям пользователя разных типов соответствует разный вес, который учитывается при подсчете числа пользователей выявленной антивирусной записи при сравнении упомянутого числа пользователей с заданным порогом.
Согласно еще одному частному варианту реализации дополнительным параметром антивирусной записи является регион нахождения компьютера пользователя.
Согласно одному из частных вариантов реализации изменяют с помощью средства обработки пороговое значение в зависимости от числа сработавших антивирусных записей.
Согласно другому частному варианту реализации при устранении вредоносного содержимого файла выполняется с помощью антивирусного приложения одно или несколько действий: удаление файла; перенос файла в каталог карантина; оповещение пользователя; изменение вредоносного участка кода файла.
Согласно варианту реализации используется система управления антивирусными записями на множестве компьютеров пользователей, содержащая: по меньшей мере один компьютер пользователя, содержащий антивирусное приложение, которое предназначено для: выполнения действий по устранению вредоносного содержимого файла, на котором сработала антивирусная запись со статусом «рабочая»; прекращения выполнения действий по устранению вредоносного содержимого файла, на котором сработала антивирусная запись, если ее статус был изменен с «рабочей» на «тестовую»; удаленный сервер, в свою очередь, содержащий: средство обработки, предназначенное для: сбора в течение заданного времени параметров антивирусной записи со статусом «рабочая», при ее срабатывании по меньшей мере на одном компьютере пользователя; сбора статистики срабатывания антивирусной записи, которая содержит зависимость количества компьютеров пользователей, на которых сработала упомянутая антивирусная запись, от времени; определения общего количества компьютеров пользователей, на которых сработала упомянутая антивирусная запись; отправки антивирусному приложению, установленному на компьютерах пользователей измененного средством классификации статуса упомянутой антивирусной записи; упомянутое средство классификации, связанное со средством обработки и предназначенное для: определения принадлежности антивирусной записи к классу антивирусных записей, содержащих ложное срабатывание, с помощью алгоритма классификации с использованием параметров антивирусной записи и статистики срабатывания антивирусной записи, если определенное общее количество компьютеров пользователей превышает заданное пороговое значение, изменения статуса упомянутой антивирусной записи с «рабочей» на «тестовую».
Согласно одному из частных вариантов реализации средство классификации использует один из следующих алгоритмов классификации: метод опорных векторов, байесовский классификатор, нейронная сеть, логистическая регрессия; при этом объектом классификации является антивирусная запись, признаком объекта классификации является по меньшей мере один из параметров антивирусной записи, а алгоритм классификации определяет принадлежность упомянутого объекта к одному из двух классов: к первому классу относится антивирусная запись, содержащая ложное срабатывание, а ко второму классу относится антивирусная запись, которая определяет вредоносный файл.
Согласно другому частному варианту реализации к первому классу дополнительно относится антивирусная запись, с помощью которой определяют доверенный файл.
Согласно еще одному частному варианту реализации дополнительным признаком объекта классификации является по меньшей мере одна из статистических функций для выборки из числа пользователей, у которых сработала упомянутая антивирусная запись, при этом упомянутой статистической функцией является по меньшей мере одна из следующих: моменты, выборочные моменты, тренд, закон распределения, наличие компоненты сезонности и период компоненты сезонности.
Согласно одному из частных вариантов реализации средство обработки дополнительно предназначено для: формирования обучающей выборки из антивирусных записей, для которых заранее известно разделение на два класса, при этом каждой антивирусной записи из обучающей выборки присваивают статус «тестовой»; отправки антивирусному приложению, установленному по меньшей мере на двух компьютерах пользователей обучающей выборки антивирусных записей; сбора параметров сработавших антивирусных записей из обучающей выборки и статистики срабатывания антивирусных записей в течение заданного времени после отправки, при этом упомянутая статистика для каждой антивирусной записи включает зависимость количества компьютеров пользователей, у которых сработала антивирусная запись, от времени; дополнения обучающей выборки собранными параметрами сработавших антивирусных записей с исключением из обучающей выборки антивирусных записей, которые не сработали на предыдущем шаге; средство классификации дополнительно предназначено для построения алгоритма классификации с использованием обучающей выборки.
Согласно другому частному варианту реализации средство обработки дополнительно предназначено для применения к статистике срабатывания антивирусной записи по меньшей мере одного из следующих преобразований временного ряда: нормировка, удаление тренда, удаление шума.
Согласно еще одному частному варианту реализации средство обработки дополнительно предназначено для преобразования статистики срабатывания антивирусной записи по меньшей мере одним из преобразований: дискретное вейвлет-предобразование; дискретное преобразование Фурье; при этом дополнительными признаками классификации являются параметры выполненного преобразования.
Согласно одному из частных вариантов реализации средство обработки предназначено для изменения значения порога в зависимости от типа антивирусной записи.
Согласно другому частному варианту реализации параметрами антивирусной записи являются: дата и время срабатывания антивирусной записи; имя файла, для которого сработала антивирусная запись; путь к упомянутому файлу; хэш-сумма файла; тип антивирусной записи; тип приложения пользователя; регион нахождения компьютера пользователя.
Согласно еще одному частному варианту реализации средство обработки предназначено для определения, что антивирусная запись сработала в течение заданного времени на таком количестве компьютеров пользователей, которое превышает заданное пороговое значение с использованием даты и времени срабатывания антивирусной записи, а также имени файла, пути к упомянутому файлу и хэш-суммы файла, которому соответствует упомянутая антивирусная запись.
Согласно одному из частных вариантов реализации время, в течение которого выбираются только те антивирусные записи, которые были выявлены у такого количества компьютеров пользователей, которое превышает заданное пороговое значение, отсчитывается с момента отправки соответствующей антивирусной записи по меньшей мере одному пользователю антивирусного приложения.
Согласно другому частному варианту реализации приложениям пользователя разных типов соответствует разный вес, который учитывается при подсчете числа компьютеров пользователей выявленной антивирусной записи при сравнении упомянутого числа пользователей с заданным порогом.
Согласно еще одному частному варианту реализации дополнительным параметром антивирусной записи является регион нахождения компьютера пользователя.
Согласно одному из частных вариантов реализации средство обработки предназначено для изменения значения порога в зависимости от числа сработавших антивирусных записей.
Согласно другому частному варианту реализации при устранении вредоносного содержимого файла антивирусное приложение предназначено для выполнения одного или несколько действий: удаления файла; переноса файла в каталог карантина; оповещения пользователя; изменения вредоносного участка кода файла.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
На Фиг. 1 изображен известный вариант схемы работы системы для обновления антивирусных баз.
На Фиг. 2 изображен механизм антивирусной проверки на компьютере.
На Фиг. 3 изображена система защиты от вредоносного ПО в соответствии с вариантом реализации.
На Фиг. 4 представлена система управления антивирусными записями на множестве компьютеров пользователей.
На Фиг. 5 представлен способ управления антивирусными записями на множестве компьютеров.
На Фиг. 6 представлен пример статистики срабатывания антивирусной записи.
На Фиг. 7 представлена динамика изменения во времени общего числа компьютеров, на которых сработала антивирусная запись.
Фиг. 8 иллюстрирует пример классификации антивирусных записей.
Фиг. 9 представляет пример компьютерной системы общего назначения.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспеченными для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
На Фиг. 1 изображен известный вариант схемы работы системы для обновления антивирусных баз. Как правило, обновления антивирусных баз направляются от сервера с обновлениями 110 через сеть Интернет 140 на компьютер 120 с установленным антивирусным приложением 170. На сервере с обновлениями 110 находится постоянно пополняемая антивирусная база данных 130, и антивирусная компания располагает средствами пополнения указанной антивирусной базы данных 130. Так, антивирусная компания постоянно выпускает новые антивирусные записи разного типа (например, сигнатуры, эвристики, средства родительского контроля и другие объекты), которые она может выпускать в двух статусах - как уже проверенные и рабочие антивирусные записи, так и тестовые антивирусные записи.
Соответственно, антивирусная база данных 130 содержит как проверенные рабочие записи, так и тестовые. Рабочие антивирусные записи (сигнатуры, эвристики и другие) отличаются от тестовых записей тем, что в случае срабатывания (обнаружения) рабочей записи произойдет оповещение пользователя об этом событии, или антивирусным приложением 170 будут выполнены действия по устранению вредоносного содержимого файла (например, удаление или лечение вредоносного файла). Если же запись была тестовой, то в этом случае пользователь не будет оповещен, и действия по устранению вредоносного содержимого файла не будут произведены. Таким образом, здесь и далее под рабочей записью подразумевается антивирусная запись со статусом «рабочая», а под тестовой записью подразумевается антивирусная запись со статусом «тестовая». Под срабатыванием антивирусной записи здесь и далее понимается определение файла вредоносным с помощью антивирусного приложения с использованием антивирусной записи. Например, в файле был найден участок секции кода, присутствующий в сигнатуре.
В частном примере реализации антивирусное приложение 170 выполняет действия по устранению вредоносного содержимого файла, на котором сработала антивирусная запись со статусом «рабочая». Такими действиями могут быть, например, одно или несколько действий: удаление файла, перенос файла в каталог карантина, оповещение пользователя, изменение вредоносного участка кода файла. В другом частном примере реализации, антивирусное приложение 170 прекращает выполнение действий по устранению вредоносного содержимого файла, на котором сработала антивирусная запись, если ее статус был изменен с «рабочей» на «тестовую». В еще одном частном варианте реализации, пользователь может сам задать список действий антивирусного приложения 170, которые будут выполняться при срабатывании рабочей и тестовой антивирусных записей. В настоящем изобретении под файлом понимается любая последовательность байтов, хранимая на диске компьютера пользователя 120, например: приложения, ссылки, сообщения электронной почты, а также учетные записи пользователей систем мгновенного обмена сообщениями, журналы обмена сообщениями, IP-адреса, имена хостов, имена доменов и так далее.
Следует отметить, что работа системы не ограничивается использованием антивирусных записей с указанными статусами, таких статусов может быть большее количество. Антивирусное приложение 170 периодически проверяет сервер с обновлениями 110 на предмет наличия обновлений антивирусных баз. Если базы были обновлены, то антивирусное приложение 170 получает новые антивирусные записи через сеть Интернет 140 от сервера с обновлениями 110. На компьютере 120 установлено антивирусное приложение 170, имеющее в своем составе средство обновления 150, которому передаются записи из антивирусной базы данных 130. Антивирусное приложение имеет собственную антивирусную базу 160, в которой находятся как рабочие записи, так и тестовые. Антивирусную базу 160 может использовать один из модулей защиты антивирусного приложения 170 - это может быть модуль сигнатурной проверки, эмулятор, средство эвристической проверки и другие. Новые записи из антивирусной базы данных 130, как со статусом «рабочие», так и со статусом «тестовые», передаются средством обновления 150 в антивирусную базу 160. Каждая запись, находящаяся в антивирусной базе 160, обладает уникальным идентификатором. Каждая антивирусная запись позволяет обнаружить один или несколько вредоносных файлов, имеющих рассчитанную хеш-сумму (например, SHA-3, SHA-2, SHA-1, MD5 и др.). Отношением между уникальным идентификатором антивирусной записи и хеш-суммой файлов является «многие ко многим». Например, одна запись с уникальным идентификатором может соответствовать нескольким хеш-суммам. В то же время одна хеш-сумма может соответствовать нескольким записям - это может произойти, например, если вначале на конкретную хеш-сумму была наложена отдельная запись с уникальным идентификатором, а потом была создана новая запись, которая позволяет обнаруживать целое семейство подобных вредоносных программ. Следует отметить, что процесс такого антивирусного обновления может происходить с заданным интервалом (например, раз в час). Если после антивирусного обновления в антивирусную базу 160 попадет, например, сигнатура, при использовании которой файл, не являющийся вредоносным, определяется антивирусным приложением как вредоносный, то подобное событие называется ложным срабатыванием и ведет к ложному оповещению пользователя или к ложному действию, выполняемому с обнаруженным файлом антивирусным приложением 170. В течение нескольких часов до следующего антивирусного обновления, когда такая ошибка может быть исправлена, на огромном количестве компьютеров 120 может произойти ложное срабатывание, и огромное количество пользователей будут оповещены об обнаружении чистого файла в качестве вредоносного. В то же время, анализ и исправление антивирусных записей может занять много времени. Поэтому необходим механизм, позволяющий провести оперативное выявление антивирусных записей с ложным срабатыванием и изменение их статуса с «рабочего» на «тестовый» до выпуска и распространения основного обновления антивирусных баз. В этом случае, пользователь не будет получать ложные оповещения, а антивирусное приложение 170 не будет выполнять действия по устранению вредоносного содержимого файла, который в действительности является чистым. Антивирусная компания при этом будет иметь достаточно времени для исправления обнаруженных антивирусных записей. Если использование антивирусной записи все же не вызывает ложного срабатывания, ее статус будет изменен обратно с «тестовой» на «рабочую».
На Фиг. 2 изображен механизм антивирусной проверки на компьютере. Антивирусное приложение 170, установленное на каком-либо компьютере 120, для осуществления антивирусных задач использует антивирусные базы 160. В антивирусной базе 160 находятся рабочие антивирусные записи 210, при срабатывании которых пользователь может быть проинформирован о данном событии, и тестовые антивирусные записи 220. Каждая антивирусная запись имеет свой уникальный идентификатор. При антивирусной проверке того или иного файла 200 антивирусное приложение 170 может использовать какую-либо запись с уникальным идентификатором из антивирусной базы данных 160. Каждая запись из антивирусной базы данных 160 отвечает за вердикт 230 по результатам проверки. На основании вердикта 230 будет принято решение отнести проверяемый файл 200 к вредоносным файлам 230а. Под сработавшей антивирусной записью здесь и далее подразумевается выявленная антивирусная запись, которой соответствует проверяемый файл 200. Но есть вероятность того, что данная запись и вердикт по ней не верны, так как, например, в ходе обновления антивирусных баз 160 на компьютере 120 может оказаться антивирусная запись, которая отнесет проверяемый файл 200 к вредоносным 230а, хотя данный файл 200 не является таковым. Поэтому необходимо иметь инструмент проверки актуальности статуса сработавшей записи, а также оперативного исправления неактуальных статусов антивирусных записей.
На Фиг. 3 изображена система защиты от вредоносного ПО в соответствии с вариантом реализации. Системой защиты от вредоносного ПО является антивирусное приложение 170, которое содержит ряд модулей защиты 320, позволяющих обнаружить и, например, удалить вредоносное ПО. Для работы ряда модулей защиты 320 антивирусное приложение 170 в своем составе имеет собственную антивирусную базу 160, которая содержит как рабочие записи 210, так и тестовые записи 220. Каждая антивирусная запись имеет свой уникальный идентификатор. При антивирусной проверке того или иного файла 200 какой-либо модуль защиты из ряда модулей защиты 320 может использовать записи из антивирусной базы данных 160. Такими записями являются, например, сигнатуры, эвристики, политики родительского контроля и так далее. Следует отметить, что не все модули защиты из ряда модулей защиты 320 используют одни и те же записи. В зависимости от типа файла 200 используется соответствующий модуль защиты, который использует антивирусные записи при проверке данного файла 200. Несколько модулей защиты могут также осуществлять проверку файла 200 совместно. Какой-либо модуль защиты из ряда модулей защиты 320 для антивирусной проверки того или иного файла 200 может использовать как рабочую запись 210, так и тестовую запись 220. Также антивирусное приложение 170 может иметь в своем составе кэш 330, необходимый для хранения исправлений антивирусных записей, если исправления будут предоставлены антивирусной компанией. Исправления, например, исправленные записи или статусы записей, которые находятся в кэше 330, обладают более высоким приоритетом по сравнению с записями с тем же идентификатором из антивирусной базы 160. Если при антивирусной проверке того или иного файла 200 каким-либо модулем защиты из ряда модулей защиты 320 будет существовать возможность использования для данного файла 200 антивирусной записи из антивирусной базы 160 и антивирусной записи с тем же идентификатором из кэша 330, то этот модуль защиты выберет запись из кэша 330. В случае срабатывания антивирусной записи, как рабочей, так и тестовой, информация о сработавшей записи отправляется удаленному серверу 340, на котором может быть проверена актуальность статуса сработавшей записи. Ниже будет подробно описан способ управления антивирусными записями, т.е. способ проверки актуальности статуса антивирусной записи. Удаленный сервер 340 находится на стороне антивирусной компании и принимает статистическую информацию о сработавших антивирусных записях и об обнаруженных этими записями файлах 200 от множества компьютеров 120, на которых установлено антивирусное приложение 170. Связь между антивирусным приложением 170 и удаленным сервером 340 осуществляется через сеть Интернет 140. Если при работе какого-либо модуля защиты из ряда модулей защиты 320 сработала антивирусная запись из антивирусной базы 160, то данный модуль направляет запрос удаленному серверу 340 с целью проверки актуальности статуса сработавшей записи. Так, например, запрос будет отправлен до вывода оповещения об обнаружении сработавшей записью со статусом «рабочая» вредоносного файла. Если ответ на запрос будет подтверждать актуальность статуса сработавшей записи, то произойдет оповещение, а также дальнейшие действия, направленные на устранение вредоносного содержимого файла 200, в котором антивирусной записью был обнаружен вредоносный код. Ответ от удаленного сервера 340 на запрос модуля защиты из числа модулей защиты 320 может содержать измененный статус антивирусной записи, например, с «рабочей» на «тестовую». В этом случае, оповещение пользователя и нейтрализация файла 200 не последуют.
На Фиг. 4 представлена система управления антивирусными записями на множестве компьютеров пользователей. Для осуществления управления антивирусными записи на компьютерах 120 (т.е. проверка актуальности и изменение статусов антивирусных записей) в соответствии с настоящим изобретением, на Фиг. 4 представлен более подробный вариант реализации системы, ранее показанной на Фиг. 1 и Фиг. 3.
Для лучшего понимания вариантов реализации изобретения, дальнейшее описание будет вестись исходя из управления одной антивирусной записью. Однако, очевидно, система является масштабируемой и применима для управления любым количеством антивирусных записей.
Удаленный сервер 340 содержит средство обработки 410 и средство классификации 420. При срабатывании антивирусной записи на компьютере 120, информация о сработавшей антивирусной записи отправляется удаленному серверу 340. В частном примере реализации, отправляемая информация содержит параметры антивирусной записи, такие как, например:
- дата и время срабатывания антивирусной записи;
- имя файла, для которого сработала антивирусная запись;
- путь к упомянутому файлу;
- тип антивирусной записи (например, сигнатура, эвристика, средство родительского контроля и пр.);
- тип приложения пользователя;
- регион нахождения компьютера пользователя.
Средство обработки 410 является компонентом удаленного сервера 340 и предназначено для сбора в течение заданного времени (например, 12 часов) параметров антивирусной записи со статусом «рабочая» при ее срабатывании на компьютере 120. Кроме этого, средство обработки 410 собирает статистику срабатывания антивирусной записи, которая содержит зависимость количества компьютеров 120, на которых сработала антивирусная запись, от времени. Такая зависимость может быть представлена в виде графика в прямоугольной системе координат, где по оси абсцисс отложено время, а по оси ординат - количество компьютеров, на которых сработала антивирусная запись. Пример графика зависимости приведен на Фиг. 6 и Фиг. 7.
Если антивирусная запись содержит ложное срабатывание, т.е. она соответствует чистому файлу, то в течение небольшого времени (например, нескольких часов) после отправки антивирусной записи на компьютеры 120 она сработает на всех компьютерах 120, на которых содержится данный чистый файл. Средство обработки 410 предназначено для определения общего количества компьютеров 120, на которых сработала антивирусная запись. Таким образом, если определенное общее количество компьютеров 120 достаточно высокое (например, 10000 компьютеров), то, вероятно, антивирусная запись сработала на чистом файле, т.е. содержит ложное срабатывание. Однако, срабатывание антивирусной записи на большом числе компьютеров в течение короткого промежутка времени иногда может быть характерно и для вредоносного ПО, которое может быть широко распространено, особенно если произошла эпидемия заражения новым вредоносным ПО. Поэтому необходим дополнительный анализ.
Средство классификации 420 связано со средством обработки 410 и используется для классификации антивирусных записей. К первому классу относится антивирусная запись, содержащая ложное срабатывание, а ко второму классу относится антивирусная запись, которая определяет вредоносный файл.
Средство классификации 420 предназначено для определения принадлежности антивирусной записи к классу антивирусных записей, содержащих ложное срабатывание, с помощью алгоритма классификации с использованием параметров антивирусной записи и статистики срабатывания антивирусной записи, если определенное общее количество компьютеров пользователей превышает заданное пороговое значение (например, 10000). В частном варианте реализации заданное пороговое значение определяется с использованием таких параметров антивирусной записи, как дата и время срабатывания антивирусной записи, а также имя файла и путь к нему.
После того, как было определено, что антивирусная запись принадлежит к классу антивирусных записей, содержащих ложное срабатывание, средство классификации 420 изменяет статус антивирусной записи с «рабочей» на «тестовую». В частном варианте реализации средство классификации 420 использует по меньшей мере один из следующих алгоритмов классификации: метод опорных векторов, байесовский классификатор, нейронная сеть, логистическая регрессия. Объектом классификации, в этом случае, является антивирусная запись, признаком объекта классификации является один или несколько параметров антивирусной записи, а алгоритм классификации определяет принадлежность объекта классификации к одному из двух классов. В еще одном частном случае к первому классу дополнительно относится антивирусная запись, которая содержит доверенный файл - ведь антивирусная запись, определяющая ложное срабатывание, по сути определяет чистый файл, который был ошибочно определен как вредоносный антивирусным аналитиком или автоматической системой создания антивирусных записей. Поэтому доверенные файлы и файлы, для которых была создана антивирусная запись, содержащая ложное срабатывание, будут относиться к одному классу.
В частном варианте реализации дополнительным признаком объекта классификации является по меньшей мере одна из статистических функций для выборки из числа пользователей, у которых сработала упомянутая антивирусная запись, при этом статистическими функциями являются: моменты, выборочные моменты, коэффициенты автокорреляции, тренд, закон распределения, наличие компоненты сезонности и период компоненты сезонности.
В частном варианте реализации средство классификации 420 строит алгоритм классификации с использованием обучающей выборки, которая формируется средством обработки 410 из антивирусных записей, для которых заранее известно разделение на два класса. Каждой антивирусной записи из обучающей выборки присваивают статус «тестовой». После формирования выборки средство обработки 410 отправляет ее компьютерам 120 и собирает параметры сработавших антивирусных записей из обучающей выборки и статистики срабатывания антивирусных записей в течение заданного времени после отправки. В частном варианте реализации время отсчитывается с момента отправки антивирусной записи на компьютеры пользователей 120. Статистика срабатывания включает зависимость количества компьютеров 120, на которых сработала антивирусная запись, от времени. В итоге, обучающая выборка дополняется собранными параметрами сработавших антивирусных записей с исключением из обучающей выборки антивирусных записей, которые не сработали во время сбора статистики. Пример алгоритма классификации будет приведен ниже, в описании к Фиг. 8.
В частном варианте реализации приложениям разных типов соответствует разный вес, который учитывается при подсчете числа компьютеров пользователей 120 выявленной антивирусной записи при сравнении числа пользователей с заданным порогом. Например, антивирусная компания может выпускать три антивирусных приложения - базовый антивирус с базовым набором функционала, антивирус с максимальным функционалом и корпоративный антивирус со средствами администрирования. В этом примере, веса могут быть заданы следующим образом: базовый антивирус имеет вес 1, антивирус с максимальным функционалом имеет вес 2 и корпоративный антивирус имеет вес 3. Срабатывание антивирусной записи на компьютере 120, на котором установлен антивирус с максимальным функционалом приравнивается к срабатыванию этой же антивирусной записи на двух компьютерах, на которых установлен базовый антивирус, т.к. компьютер с установленным антивирусом с максимальным функционалом меньше подвержен заражению вредоносным ПО, и, следовательно, срабатывание антивирусной записи на нем имеет больший вес при определении ложных срабатываний. А срабатывание антивирусной записи на компьютере, на котором установлен корпоративный антивирус, приравнивается к срабатыванию этой же антивирусной записи на трех компьютерах, на которых установлен базовый антивирус.
В частном варианте реализации срабатывание антивирусных записей разного типа может иметь разный вес, который также учитывается при подсчете числа компьютеров пользователей выявленной антивирусной записи при сравнении числа пользователей с заданным порогом. Например, при срабатывании антивирусной записи с использованием модуля защиты 320 - сканера по доступу, вес может быть равен 1, а при срабатывании антивирусной записи при проверке файла в другом модуле защиты 320 - песочнице, вес может быть равен 2. Тип антивирусной записи зависит от модуля защиты 320, который предназначен для использования этой антивирусной записи (например, сигнатуры, эвристики, средства родительского контроля и другие объекты).
В еще одном частном варианте реализации файлу 200 могут соответствовать несколько антивирусных записей разных типов. Это может произойти, когда файл 200 был одновременно обнаружен несколькими модулями защиты 320, например, эмулятором и сканером по доступу. В этом примере вероятность ложного срабатывания уменьшается, т.к. вероятность ошибки одновременно нескольких модулей защиты 320 ниже, чем вероятность того, что ошибка произойдет в одном модуле защиты 320. Поэтому вес антивирусной записи каждого типа, которая сработала на файле 200, может быть уменьшен.
В частном варианте реализации средство обработки 410 может изменить значение порога в зависимости от типа антивирусной записи. Например, для сигнатур порог может составлять 10000 срабатываний, а для эвристик - 20000.
В еще одном частном варианте реализации, для разных регионов месторасположения компьютеров пользователей могут быть сформированы разные обучающие выборки, и, следовательно, алгоритмы классификации для разных регионов будут иметь разные значения признаков.
В другом частном примере реализации средство обработки 410 предназначено для изменения значения порога в зависимости от числа сработавших антивирусных записей. Например, если большинство антивирусных записей стали чаще срабатывать, то порог может быть увеличен, например, с 10000 до 15000, чтобы снизить нагрузку на вычислительные ресурсы серверов антивирусной компании.
На Фиг. 5 представлен способ управления антивирусными записями на множестве компьютеров. В случае срабатывания антивирусной записи на компьютере 120, как рабочей, так и тестовой, информация о сработавшей антивирусной записи отправляется удаленному серверу 340. Таким образом, на удаленном сервере 340 с использованием средства обработки 410 на шаге 501 в течение заданного времени собирают параметры антивирусной записи (на фигуре, для краткости, упоминаются как AV-записи) со статусом «рабочая» при ее срабатывании на компьютерах 120. На шаге 502 средство обработки 410 собирает статистику срабатывания антивирусной записи, которая содержит зависимость количества компьютеров 120, на которых сработала антивирусная запись, от времени.
На шаге 503 средство обработки 410 определяет общее количество компьютеров, на которых сработала антивирусная запись. Количество компьютеров определяется за время, в течение которого средство обработки 410 собирало параметры антивирусных записей. Такая зависимость может быть представлена в виде графика в прямоугольной системе координат, где по оси абсцисс отложено время, а по оси ординат - количество компьютеров, на которых сработала антивирусная запись. Пример графика зависимости приведен на Фиг. 6 и Фиг. 7.
На шаге 504 средство обработки 410 проверяет, превышает ли определенное общее количество компьютеров 120 заданное пороговое значение (например, 10000). Если да, то на шаге 505 средство классификации 420 с помощью алгоритма классификации с использованием параметров антивирусной записи и статистики срабатывания антивирусной записи определяет принадлежность к классу антивирусных записей, содержащих ложное срабатывание. Если же порог не был превышен, то способ завершается на шаге 504а, и считается, что антивирусная запись не содержит ложного срабатывания. Если на шаге 505 было определено, что антивирусная запись не принадлежит к классу антивирусных записей, содержащих ложное срабатывание, то способ завершится на шаге 504а, и считается, что антивирусная запись не содержит ложного срабатывания. Пример использования классификации антивирусных записей будет приведен ниже, в описании к Фиг. 8.
На шаге 506 средство классификации 420 изменяет статус антивирусной записи с «рабочей» на «тестовую» и передает ее средству обработки 410, которое, в свою очередь, на шаге 507 отправляет измененный статус антивирусной записи антивирусным приложениям 170 на компьютеры пользователей 120. Таким образом, количество антивирусных записей на компьютерах пользователей 120, использование которых антивирусным приложением 170 вызывает ложные срабатывания, сокращается. И, следовательно, достигается заявленный технический результат.
В частном варианте реализации на шаге 505 может быть использован один из следующих алгоритмов классификации: метод опорных векторов, байесовский классификатор, нейронная сеть, логистическая регрессия; при этом объектом классификации является антивирусная запись, признаком объекта классификации является один или несколько параметров антивирусной записи, а алгоритм классификации определяет принадлежность объекта классификации к одному из двух классов. К первому классу относится антивирусная запись, содержащая ложное срабатывание, а ко второму классу относится антивирусная запись, которая определяет вредоносный файл. В другом частном варианте реализации к первому классу дополнительно относится антивирусная запись, которая определяет доверенный файл. В еще одном частном варианте реализации дополнительным признаком объекта классификации является одна или несколько статистических функций для выборки из числа пользователей, у которых сработала упомянутая антивирусная запись. Статистическими функциями, могут быть, например: моменты, выборочные моменты, тренд, закон распределения, наличие компоненты сезонности и период компоненты сезонности.
Используемый алгоритм классификации формируется и настраивается с использованием обучающей выборки, которая получена следующем образом. Вначале формируется обучающая выборка из антивирусных записей, для которых заранее известно разделение на два класса. Каждой антивирусной записи из обучающей выборки присваивают статус «тестовой» и отправляют группе компьютеров 120. Такая группа может содержать два или более компьютеров 120, на которых установлено антивирусное приложение 170. После отправки обучающей выборки, средство обработки 410 в течение заданного времени (например, в течение суток) собирает параметры сработавших антивирусных записей из обучающей выборки и статистику срабатывания этих записей. Из обучающей выборки исключают антивирусные записи, которые не сработали ни на одном компьютере 120 за отведенное время, а вместе с оставшимися антивирусными записями сохраняют собранные параметры этих антивирусных записей.
В одном частном варианте реализации для разных регионов месторасположения компьютеров пользователей могут быть сформированы разные обучающие выборки, и, следовательно, алгоритмы классификации для разных регионов будут иметь разные значения признаков.
В частном варианте реализации параметрами антивирусной записи являются:
- дата и время срабатывания антивирусной записи;
- имя файла, для которого сработала антивирусная запись;
- путь к упомянутому файлу;
- тип антивирусной записи;
- тип приложения пользователя;
- регион нахождения компьютера пользователя.
В другом частном варианте реализации на шаге 504 средство обработки использует параметры антивирусной записи (например, дату и время срабатывания антивирусной записи) для определения количества компьютеров пользователей, на которых сработала антивирусная записи в течение заданного времени. При этом файл, которому соответствует данная антивирусная запись, определяется следующими параметрами антивирусной записи: имя файла, путь к файлу, хэш-сумма файла.
В частном примере реализации время, в течение которого выбираются только те антивирусные записи, которые были выявлены у такого количества пользователей, которое превышает заданное пороговое значение, отсчитывается с момента отправки соответствующей антивирусной записи одному или нескольким пользователям антивирусного приложения 170.
На Фиг. 6 представлен пример статистики срабатывания антивирусной записи - зависимости количества компьютеров 120, на которых сработала антивирусная запись, от времени. В данном примере количество компьютеров 120 рассчитывается за каждый час. На графике представлена статистика срабатывания антивирусной записи, содержащей ложное срабатывание, и антивирусной записи, соответствующей вредоносному файлу. Для сравнения на Фиг. 7, представлена динамика изменения во времени общего числа компьютеров 120, на которых сработала антивирусная запись, для антивирусных записей, приведенных на Фиг. 6. Из примера видно, что антивирусные записи, соответствующие ложному срабатыванию и антивирусные записи, определяющие вредоносный файл, имеют различную динамику срабатывания на компьютерах 120. Так, для антивирусной записи, содержащей ложное срабатывание, наибольшее количество срабатываний на компьютерах 120 приходится на первые 5 часов - после ее создания и отправки на компьютеры 120. В то же время, антивирусная запись для вредоносного файла первые 6 часов сработала лишь на малом количестве компьютеров пользователей 120, а начиная с 7 часа число срабатываний существенно возросло.
Таким образом, используя алгоритмы классификации, на основании статистики срабатывания антивирусных записей для известных ложных срабатываний и вредоносных файлов можно подобрать такие параметры алгоритма классификации, чтобы каждую новую антивирусную запись классифицировать с большой долей вероятности к одному из двух классов - антивирусных записей для вредоносных файлов или антивирусных записей, содержащих ложное срабатывание. Объектом классификации будет выступать антивирусная запись, а признаком объекта классификации является один или несколько параметров антивирусной записи, а также статистические функции: моменты, выборочные моменты, коэффициенты автокорреляции, тренд, закон распределения, наличие компоненты сезонности и период компоненты сезонности.
Фиг. 8 иллюстрирует пример классификации антивирусных записей. В качестве иллюстративного примера, в качестве алгоритма классификации рассматривается метод опорных векторов (англ. support vector machine, SVM), изобретенный В.Н. Вапником и А.Я. Червонекисом в 1963 году. Данный алгоритм основан на обучении с учителем и использует линейное разделение объектов классификации в пространстве признаков с помощью гиперплоскости. В рассматриваемом изобретении задача состоит в классификации антивирусных записей на два класса. К первому классу относится антивирусная запись, содержащая ложное срабатывание, а ко второму классу относится антивирусная запись, которая определяет вредоносный файл.
i
i
i
i
i
i
i
n
i
i
Объекты классификации (например, антивирусные записи) имеют вид: (x, c), где c принимает значение «1», если объект классификации, определяемый вектором признаков x, принадлежит к первому классу и «-1», если объект принадлежит ко второму классу, при этом объекты  n - количество объектов. На Фиг. 8 заполненными кругами обозначены объекты первого класса (например, антивирусные записи, содержащие ложное срабатывание), а полыми окружностями - объекты второго класса (например, антивирусные записи, определяющие вредоносные файлы). Обозначенные объекты рассматриваются в качестве обучающей выборки. Метод опорных векторов состоит в построении разделяющей гиперплоскости, которая бы максимально далеко отстояла от ближайших к ней точек обоих классов. Такая разделяющая гиперплоскость называется оптимальной и задается в векторной форме: wx-b=0, где wx - скалярное произведение векторов w и х, b - параметр. Далее выбираются гиперплоскости, проходящие через опорные вектора двух классов и параллельные оптимальной разделяющей гиперплоскости: wx-b=1, wx-b=-1. В случае, если обучающая выборка линейно разделима, гиперплоскости выбираются таким образом, чтобы между ними отсутствовали точки обучающей выборки, а затем максимизируется расстояние между гиперплоскостями. Известно, что ширина полосы между гиперплоскостями равна . Таким образом, задача сводится к минимизации нормы , при условии исключения всех точек из полосы между гиперплоскостями: c(wx-b)≥1, 1≤i≤n. По теореме Куна-Таккера задача эквивалентна двойственной задаче поиска седловой точки функции Лагранжа. В результате решения двойственной задачи можно найти вектор двойственных переменных λ=(λ, …, λ). Тогда  b=wx-c, λ>0. Алгоритм классификации записывается в виде:
Соответственно, если а(х)=1, то объект х относится к первому классу, иначе - ко второму классу.
1
2
i
1
2
i
В настоящем изобретении метод опорных векторов применяется для разделения антивирусных записей на два класса. К первому классу относится антивирусная запись, содержащая ложное срабатывание, а ко второму классу относится антивирусная запись, которая определяет вредоносный файл. В качестве признаков х могут быть взяты, как упоминалось ранее, параметры антивирусной записи и статистические функции обучающей выборки. Например, в качестве признаков x могут быть взяты выборочное среднее (х) и выборочная дисперсия (х). Тогда обучающая выборка будет содержать n антивирусных записей, для каждой из которых известны значения признаков x(x, x) и принадлежность к классу c, который принимает значение «1», если антивирусная запись определяет ложное срабатывание, и «-1», если антивирусная запись определяет вредоносный файл. В соответствии с описанным выше методом опорных векторов, будет построена разделяющая гиперплоскость wx-b=0 и, каждая новая антивирусная запись с вектором признаков y, может быть отнесена к классу антивирусных записей с ложным срабатыванием, если она лежит выше разделяющей гиперплоскости: wy-b≥0. Иначе новая антивирусная запись у будет отнесена к классу антивирусных записей, определяющих вредоносный файл.
Следует отметить, что на Фиг. 8 приведен лишь возможный пример использования метода опорных векторов. Однако, могут быть использованы и другие модификации данного алгоритма. Например, в случае, если обучающая выборка линейно неразделима, могут быть удалены т.н. «выбросы», или может быть построен нелинейный классификатор на основе перехода от скалярного произведения к произвольным ядрам, позволяющими строить нелинейные разделители и т.д.
В частном варианте реализации в качестве алгоритма классификации может быть использована логистическая регрессия. В этом случае в качестве зависимой переменной регрессии выступает класс антивирусной записи (ложное срабатывание или вредоносный файл), а в качестве зависимых переменных - признаки, например, выборочное среднее и выборочная дисперсия. В другом частном варианте реализации может использоваться байесовский классификатор, нейронная сеть или другие известные методы классификации.
Статистика срабатывания антивирусной записи может быть представлена в виде временного ряда. В частном варианте реализации перед обучением алгоритма классификации к временным рядам антивирусных записей могут быть применены с помощью средства обработки 410 различные преобразования. Например, масштабирование (нормировка), удаление тренда, удаление шума и прочие преобразования, позволяющие выполнить более качественный анализ.
В одном частном варианте реализации признаки классификации могут быть получены из известных математических преобразований, произведенных с помощью средства обработки 410 к статистикам срабатывания антивирусных записей. Такими преобразованиями могут быть, например, дискретное вейвлет-преобразование или дискретное преобразование Фурье. В качестве признаков для дискретного вейвлет-преобразования могут быть взяты, например, сумма квадратов вейвлет-преобразования и разница между максимальным и минимальным среди вейвлет-коэффициентов.
Фиг. 9 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 9. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В соответствии с описанием, компоненты, этапы исполнения, структура данных, описанные выше, могут быть выполнены, используя различные типы операционных систем, компьютерных платформ, программ.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.