Система и способ пополнения базы данных при одновременной антивирусной проверке объектов на множестве виртуальных машин

Изобретение относится к компьютерной безопасности. Технический результат заключается в снижении общего времени антивирусной проверки идентичных объектов, размещенных на виртуальных машинах. Способ пополнения базы данных, хранящей решения о ранее проверенных файлах, во время проведения антивирусной проверки объектов по крайней мере на двух виртуальных машинах, в котором формируют список объектов, которым требуется антивирусная проверка, на каждой виртуальной машине; назначают метод выбора объектов из списка объектов для очереди объектов на основании количества виртуальных машин и метод выбора объектов из очереди объектов для последующего предоставления объектов на антивирусную проверку; формируют очередь объектов определенной длины путем выбора объектов из сформированного списка объектов согласно назначенному методу выбора объектов из списка объектов на каждой виртуальной машине; производят выбор объекта из очереди объектов в соответствии с назначенным методом выбора объектов из очереди объектов для предоставления на антивирусную проверку, при этом учитывается выбор объектов на каждой виртуальной машине; производят антивирусную проверку выбранного объекта на виртуальной машине защиты; добавляют решение о произведенной антивирусной проверке выбранного объекта в базу данных. 2 н. и 7 з.п. ф-лы, 4 ил.

 

Область техники

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

Уровень техники

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

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

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

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

В патентной заявке US 20110191341 А1 описан подход совместного использования результатов вычислительных операций, в частности, результатов антивирусной проверки файлов, для группы компьютерных систем. В данном подходе все ранее произведенные операции хранятся в общей базе данных. Когда один из членов группы собирается выполнять какую-либо операцию, производится проверка наличия результата о выполнении данной операции в общей базе данных.

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

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

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

Раскрытие изобретения

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

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

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

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

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

В еще одном варианте исполнения способа длина очереди определяется на основании общего числа объектов, которым требуется антивирусная проверка.

В другом варианте исполнения способа методами выбора объектов являются по крайней мере один из следующих методов: метод выбора случайным образом и метод блоков.

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

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

В еще одном варианте исполнения способа база данных, которая содержит решение о ранее проверенных объектах, размещена на виртуальной машине защите.

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

а) средство построения очереди, связанное со средством отбора и предназначенное для формирования списка объектов, которым требуется антивирусная проверка, назначения метод выбора объектов из списка объектов и очереди объектов, формирования очереди объектов определенной длины согласно сформированному списку объектов и назначенному методу выбора объектов;

б) средство отбора, предназначенное для выбора объекта из очереди объектов в соответствии с назначенным методом выбора объектов средством построения очереди, при этом во время выбора объекта для антивирусной проверки учитывается выбор объектов на других виртуальных машинах;

и виртуальную машину защиты, которая содержат:

а) средство анализа, предназначенное для проведения антивирусной проверки выбранного объекта и добавления решения о произведенной антивирусной проверке выбранного объекта в общую базу данных,

б) общую базу данных, предназначенную для хранения решений о ранее проверенных объектах.

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

В еще одном варианте исполнения системы средства построения очереди определяет длину очереди на основании общего числа объектов, которым требуется антивирусная проверка.

В другом варианте исполнения системы методами выбора объектов являются по крайней мере один из следующих методов: метод выбора случайным образом и метод блоков.

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

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

Краткое описание чертежей

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

Фиг. 1 показывает пример виртуальной сетевой архитектуры, для которой реализовано заявленное изобретение, и пример размещения компонентов системы пополнения общей базы данных во время проведения антивирусной проверки объектов на виртуальных машинах.

Фиг. 2 показывает пример взаимодействия компонентов системы пополнения общей базы данных во время проведения антивирусной проверки объектов на виртуальных машинах.

Фиг. 3 показывает способ работы системы пополнения общей базы данных во время проведения антивирусной проверки объектов на виртуальных машинах.

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

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

Описание вариантов осуществления изобретения

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

В общем случае виртуальная сетевая архитектура имеет вид, показанный на Фиг. 1. Под виртуальной сетевой архитектурой понимается совокупность виртуальных машин и систем связи и управления ими. Количество виртуальных машин может исчисляться как несколькими виртуальными машинами (от 1 до 10), так и сотнями и даже тысячами. Наличие большого, а то и огромного количества виртуальных машин (ВМ) требует и соответствующего объема вычислительных ресурсов. Поэтому виртуальные машины могут быть развернуты как на одной хост-машине (например, на физической машине 100), так и на кластере хост-машин. Каждая хост-машина содержит по крайней мере гипервизор, который предназначен для контроля ВМ, развернутых на той же хост-машине. Под задачей контроля понимается управление и распределение вычислительных ресурсов хост-машины между ВМ. Стоит отметить, что гипервизор является по сути «оболочкой» между хост-машиной и всеми ВМ, развернутыми на той же хост-машине. Так, физическая машина 100 содержит гипервизор 110, который управляет вычислительными ресурсами физической машины 100 и контролирует выполнение всех ВМ 120.

На каждой ВМ 120 производится запуск операционной системы, которая может быть необходима как для работы пользователей, так и для файловых серверов или веб-серверов. Можно отметить, что операционная система может быть, как различной (например, Microsoft Windows, Linux, Mac OS) на ВМ 120, так и идентичной. Кроме того, любая ВМ 120 может являться как подобием персонального компьютера, так и мобильного устройства, например, ноутбука или смартфона.

В одном из вариантов реализации защиту виртуальных машин от различных вредоносных программ и приложений обеспечивает антивирусная система, которая на Фиг. 1 представлена в виде нескольких компонентов, распределенных между ВМ 120. Так одним компонентом антивирусной системы является антивирусное средство 140, которое предназначено для выполнения задач антивирусной проверки и было размещено на специальной ВМ, а именно, виртуальной машине защиты (ВМЗ) 130. Стоит отметить, что ВМЗ 130 по сути своей является такой же ВМ 120, только предназначена, как упоминалось выше, для выполнения задач антивирусной проверки. Другим компонентом является любое средство передачи данных (не показано на фигуре), размещенное на каждой ВМ 120 и предназначенное для передачи данных (файлов) на ВМЗ 130 к антивирусному средству 140 для проведения антивирусной проверки. Так, в одном из вариантов реализации задачу средства передачи данных может выполнять антивирусный агент 150. Антивирусный агент 150 в современных антивирусных системах может выполнят достаточно большой круг задач, от взаимодействия с антивирусным средством (например, передача данных) до контроля в реальном времени происходящих событий на ВМ 120 и проведения их детального анализа (например, используя экспертную систему, в основе которой лежит анализ совершающихся действий). Функционал каждого компонента зависит от настроек антивирусной системы, которая проводится, как правило, при внедрении такой системы в виртуальную среду и при установке на каждую ВМ 120 антивирусного агента 150. Во время настройки учитывается множество критериев, поэтому функциональность компонентов может быть, как отлична друг от друга, так и схожа.

В одном из вариантов реализации антивирусное средство 140, по крайней мере, содержит средство анализа 160 и антивирусную базу данных (не показана на фигуре). Средство анализа 160 выполняет задачи антивирусной проверки с помощью различных методов антивирусной проверки, таких как метод сигнатурного анализа, эвристические методы или методы, использующие экспертные системы. Антивирусная база данных содержит различную информацию, которая требуется для проведения антивирусной проверки, например список сигнатур вредоносных программ, список доверенных файлов (англ. whitelisting), список недоверенных файлов (англ. blacklisting), перечни различных правил контроля (например, список правил, описывающих последовательность действий, совершающиеся в операционной системе и относящиеся к вредоносному поведению) и результаты предыдущих антивирусных проверок. Следовательно, антивирусное средство 140 получает запросы от средств передачи данных, размещенных на всех ВМ 120, на проведения антивирусной проверки каких-либо файлов. Во время проведения антивирусной проверки для оптимизации ресурсов и ускорения времени самой антивирусной проверки средству анализа 160 целесообразно использовать результаты предыдущих антивирусных проверок на всех ВМ 120, хранящиеся в антивирусной базе данных. Средство анализа 160 производит предварительную проверку и принимает решения о необходимости дальнейшей антивирусной проверки или передаче решения о вредоносности объекта на ВМ 120.

В дальнейшем с целью удобства восприятия при описании изобретения предполагается, что результаты предыдущих антивирусных проверок будут храниться в отдельной базе данных, такой как общая база данных 170. Общая база данных 170 предоставляет хранимую информацию средству анализа 160 для проведения предварительного анализа объектов с целью определения необходимости проведения дальнейшей антивирусной проверки. Стоит отметить, что такая база данных 170 может являться временной базой данных или будет содержать информацию (результаты) только об актуальных объектах для соответствующей виртуальной среды, содержащей ВМ 120. Актуальность результатов регулируется различными способами, например, на основании времени хранения результатов в базе данных или количества обращений к тому или иному результату. Результаты могут храниться в общей базе данных 170 по крайней мере в качестве хэш-суммы объекта, метаданных объекта или условного обозначения, указывающего на то или иное решение по результатам антивирусной проверки объекта. Следует отметить, что при дальнейшем описании изобретения с целью удобства восприятия будет использоваться в качестве объекта - компьютерный файл, но стоит понимать, что изобретение не ограничивается им и могут быть применены и другие типы программных объектов. Такими объектами могут быть по крайней мере архивы, сценарии (script), апплеты, электронные письма, URL-адреса, SMS и ММС сообщения.

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

Итак, система пополнения общей базы данных во время проведения антивирусной проверки объектов на виртуальных машинах (далее - система пополнения) позволяет содержать такую общую базу данных 170 в актуальном виде (актуальность базы данных 170 определяется актуальностью содержащихся результатов в ней) и обеспечивать эффективную антивирусную проверку (например, сканирование по требованию, от англ. on-demand scanning, и сканирование по запросу, от англ. on-access scanning) при первоначальном запуске ВМ 120 или общем обновлении всех ВМ 120 (например, обновление операционной системы или приложений), за которым последует общая антивирусная проверка. Система пополнения включает в себя средство анализа 160 и общую базу данных 170, размещенные на ВМЗ 130, а также средство построения очереди 180 и средство отбора 190, размещенные на каждой ВМ 120. Назначение средства анализа 160 и общей базы данных 170 было приведено выше. Средство построения очереди 180 предназначено для формирования списка файлов, которым требуется антивирусная проверка, определения длины очереди файлов для предоставления файлов на антивирусную проверку и формирования указанной очереди файлов. Средство отбора 190 предназначено для определения метода выбора файлов и последующего выбора файла из очереди файлов согласно методу выбора файлов (объекта). Стоит отметить, что во время выбора файла для антивирусной проверки средство отбора 190 учитывает выбор файлов на других виртуальных машинах. Таким образом обеспечивая неповторимость файлов, которые предоставляются на антивирусную проверку средству анализа 160. Назначения средства построения очереди 180 и средства отбора 190, а также взаимодействия всех средств системы построения более подробно будет рассмотрено при описании Фиг. 2.

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

Предположим, что на ВМ 120 требуется провести антивирусную проверку каталога файлов, содержащего некоторое количество файлов (количество файлов может варьироваться от одного до нескольких десятков тысяч файлов, но и не ограничиваться данным количеством). Данные из каталога файлов предоставляются средству построения очереди 180, который формирует список файлов 210 за счет перебора всех файлов из каталога файлов. При этом список файлов 210 содержит по крайней мере полное имя файлов (другими словами, путь к месту размещения каждого файла на жестком диске). Также список файлов 210 может содержать нумерацию файлов относительно списка и хэш-сумму каждого файла. Далее средство построения очереди 180 создает очередь файлов 220, из которого впоследствии будет производиться выбор файлов для их предоставления на антивирусную проверку. Очередь файлов 220 можно представить в виде набора ячеек, при этом количество ячеек (длина очереди) ограничено. Примером определения длины очереди файлов 220 является подход, основанные на определении среднего количества файлов от общего количества файлов, размещенных на всех ВМ 120 и требующих антивирусную проверку. Для этого средство построения очереди 180 может взаимодействовать со средствами построения очереди, размещенными на других ВМ 120. Одним из примеров взаимодействия ВМ 120 является широковещательное оповещение каждой ВМ 120. Еще одним примером подбора длины очереди файлов 220 является подход, основанный на разделение общего количества файлов, требующих антивирусную проверку, на соответствующей ВМ 120 по крайней мере на два. Значения делителя подбирается на основании практического опыта применения данного подхода в представленном изобретении. После определения длины очереди файлов 220 средство построения очереди 180 помещает в каждую ячейку очереди файлов 220 файл в соответствии со списком файлов 210. Таким образом формируется очередь файлов 220 для антивирусной проверки.

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

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

Рассмотрим пример реализации метода блоков. Допустим, что производится антивирусная проверка на пятнадцати ВМ 120. Следовательно, на каждой ВМ 120 список файлов 210 будет условно разделен на пятнадцать частей. Далее на одной ВМ 120 очередь файлов 220 начнет формироваться из первой части списка файлов 210, на другой ВМ 120 очередь файлов 220 начнет формироваться из второго части списка файлов 210 и так далее.

В частном случае реализации метод блоков может иметь еще одно деление. Так, если ВМ 120 менее 10, проводящих антивирусную проверку, то будет производится сравнение списков файлов 210 по крайней мере между двумя ВМ 120. Например, сравнение может производится как по хэш-суммам файлов, так и по хэш-суммам частей списка файлов 210. Далее все идентичные файлы на различных ВМ 120 будут передаваться только с одной ВМ 120 или будут поровну разделены между ВМ 120 для последующей передачи на антивирусную проверку. В том случае, если ВМ будет более 10 и менее 100, производится выбор файла методом блоков, описанным выше.

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

В частном случае реализации средство отбора 190 может не дожидаться заполнения очереди файлов, а производит выбор файла по мере заполнения очереди.

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

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

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

На Фиг. 3 показана способ работы системы пополнения общей базы данных во время проведения антивирусной проверки объектов на виртуальных машинах. На этапе 310 формируется список файлов 210, над файлами которого необходимо произвести антивирусную проверку. Стоит понимать, что вместо файла возможно применение и любого другого компьютерного объекта, такого как сценарий (script), апплет, электронное письмо и URL-адрес, а также ссылки на сами объекты. Список файлов 210 формируется с помощью средства построения очереди 180, который использует соответствующий каталог файлов. При этом список файлов 210 содержит по крайней мере полное имя файлов (другими словами, путь к месту размещения каждого файла на жестком диске). Также список файлов 210 может содержать нумерацию файлов и хэш-сумму каждого файла. На этапе 320 с помощью средства построения очереди 180 производится формирование очереди файлов определенной длины. Примеры подходов определения длины очереди файлов представлены при описании Фиг. 2. После определения длины очереди файлов 220 средство построения очереди 180 формирует данную очередь файлов 220 с помощью файлов из списка файлов 210.

На этапе 330 определяется метод выбора файлов для предоставления файлов на антивирусную проверку. В одном из вариантов реализации метод выбора файлов будет определяться на основании количества ВМ 120, которые проводят антивирусную проверку в настоящий момент. Данный вариант реализации был раскрыт при описании Фиг.2. Далее, на этапе 340, с помощью средства отбора 190 производится выбор файлов для передачи средству анализа 160 в соответствии с определенным методом выбора файлов, который позволяет учесть передачу файлов на антивирусную проверку с других ВМ 120. На этапе 350 средство анализа 160 определяет, был ли ранее передан с другой ВМ 120 полученный файл от соответствующей ВМ 120. В одном из вариантов реализации определение передачи указанного файла производится с помощью определения наличия решения об указанном файле в общей базе данных, которая хранит решения о ранее проверенных файлах. В том случае, если информация о соответствующем файле найдена в общей базе данных, антивирусная проверка файла не проводится, а решение по данному файлу передается к обратившейся ВМ 120. В противном случае, если информация в общей базе данных отсутствует, то на этапе 360 средство анализа 160 производит антивирусную проверку файла. Результат антивирусной проверки на этапе 370 средство анализа 160 добавляет в общую базу данных 170. После чего также информируется ВМ 120, передавшая файл на антивирусную проверку.

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

Фиг. 4 представляет пример компьютерной системы общего назначения (может быть как персональным компьютер, так и сервером) 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, представленного на Фиг. 4. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.

Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.

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

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

2. Способ по п. 1, в котором методами выбора объектов являются по крайней мере один из следующих методов: метод выбора случайным образом и метод блоков.

3. Способ по п. 1, в котором антивирусная проверка включает по крайней мере одну из следующих проверок: проверку наличия решения о ранее произведенной антивирусной проверке выбранного объекта в базе данных и различные типы антивирусной проверки.

4. Способ по п. 1, в котором после выбора объекта из очереди добавляют в очередь следующий объект согласно сформированному списку объектов.

5. Способ по п. 1, в котором база данных, которая содержит решение о ранее проверенных объектах, размещена на виртуальной машине защите.

6. Система пополнения базы данных, хранящей решения о ранее проверенных объектах, во время проведения антивирусной проверки объектов на виртуальных машинах, при этом система содержит:
- по крайней мере две виртуальные машины, которые содержат антивирусные агенты, предназначенные для предоставления объектов на антивирусную проверку виртуальной машине защиты и включают:
а) средство построения очереди, связанное со средством отбора и предназначенное для:
- формирования списка объектов, которым требуется антивирусная проверка,
- назначения метода выбора объектов из списка объектов для очереди объектов на основании количества ВМ и метода выбора объектов из очереди объектов,
- формирования очереди объектов определенной длины путем выбора объектов из сформированного списка объектов согласно назначенному методу выбора объектов из списка объектов, при этом длина очереди объектов зависит от количества объектов, которым требуется антивирусная проверка;
б) средство отбора, предназначенное для выбора объекта из очереди объектов в соответствии с назначенным методом выбора объектов из очереди объектов средством построения очереди, при этом во время выбора объекта для антивирусной проверки учитывается выбор объектов на других виртуальных машинах;
- и виртуальную машину защиты, которая содержат:
а) средство анализа, предназначенное для проведения антивирусной проверки выбранного объекта и добавления решения о произведенной антивирусной проверке выбранного объекта в общую базу данных,
б) общую базу данных, предназначенную для хранения решений о ранее проверенных объектах.

7. Система по п. 6, в которой методами выбора объектов являются по крайней мере один из следующих методов: метод выбора случайным образом и метод блоков.

8. Система по п. 6, в которой антивирусная проверка проводится на основании по крайней мере одной из следующих проверок: проверки наличия решения о ранее произведенной антивирусной проверке выбранного файла в базе данных и проверки различными типами антивирусной проверки.

9. Система по п. 6, в которой после выбора объекта из очереди объектов средство построения очереди добавляет в упомянутую очередь следующий объект согласно сформированному списку объектов.



 

Похожие патенты:

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

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

Изобретение относится к средствам для регулировки канала I/O на виртуальной платформе, которые применяются в области виртуальной технологии. Технический результат заключается в повышении эффективности распределения ресурсов.

Изобретение относится к обработке виртуализации в компьютерной системе. Технический результат заключается в обеспечении совместимости средств виртуализации с устройствами, использующимися в компьютерной системе.

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

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

Изобретение относится к области эмуляции внутри вычислительной среды. Техническим результатом является повышение эффективности эмуляции команд.

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

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

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

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

Изобретение относится к многопроцессорным платформам. Технический результат - защита данных.

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

Изобретение относится к безопасности сетей. Технический результат - повышение уровня электронной связи и обеспечение безопасности сетей от несанкционированного доступа.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении безопасности передаваемых по сети данных.

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

Изобретение относится к области криптографической обработки данных. Технический результат - обеспечение высокого уровня надежности и защиты данных.

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

Изобретение относится к способу и устройству отображения информации уведомления. Техническим результатом является улучшение способности к адаптации режима отображения информации уведомления к различным местам применения.

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

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