Система и способ обнаружения вредоносных файлов на распределённой системе виртуальных машин
Иллюстрации
Показать всеИзобретение предназначено для антивирусной проверки файлов. Технический результат настоящего изобретения заключается в повышении скорости выполнения антивирусной проверки файлов за счет распределения файлов, предназначенных для выполнения антивирусной проверки, по виртуальным машинам. Данный результат достигается с помощью использования системы проведения антивирусной проверки файлов на виртуальных машинах, при этом упомянутая система содержит: «защищаемую виртуальную машину», которая взаимодействует с двумя «виртуальными машинами защиты». Для «виртуальных машин защиты» определяется аппроксимационная зависимость эффективности антивирусной проверки, на основании которой выбирается конкретная «виртуальная машина защиты», для которой определяется время начала выполнения антивирусной проверки файлов, полученных от «виртуальной машины защиты». 2 н. и 12 з.п. ф-лы, 3 ил.
Реферат
Область техники
Изобретение относится к антивирусным технологиям, а более конкретно к системам и способам обнаружения вредоносных файлов на распределенной системе «защищаемых виртуальных машин».
Уровень техники
Бурное развитие в последнее десятилетие компьютерных, в том числе и облачных, технологий, а также широкое распространение разнообразных вычислительных устройств (персональных компьютеров, ноутбуков, планшетов, смартфонов и т.д.), послужило мощным стимулом для использования упомянутых устройств во всевозможных сферах человеческой деятельности и для решения огромного количества задач (от интернет-серфинга и общения через интернет до банковских переводов и ведения электронного документооборота). Параллельно с ростом количества вычислительных устройств быстрыми темпами росли и объемы программного обеспечения, работающего на этих устройствах, в том числе и нелегального, включающего в себя вредоносные программы.
В настоящий момент существует огромное количество разновидностей вредоносных программ. Одни крадут с устройств пользователей их персональные и конфиденциальные данные (такие как логины и пароли, банковские реквизиты, электронные документы). Другие формируют из устройств пользователей так называемые бот-сети (англ. botnet) для подбора паролей методом грубой силы (англ. bruteforce) или атак, таких как отказ в обслуживании (англ. DDOS - Denial of Service), на другие компьютеры или компьютерные сети. Третьи навязывают пользователям платные сервисы через рекламу, демонстрируемую с высокой периодичностью, платные подписки, отправку CMC на платные номера и т.д.
Для борьбы с вредоносными программами используются программы - антивирусы. Эффективная борьба с вредоносными программами в первую очередь требует своевременного обнаружения файлов, содержащих код вредоносных программ, для чего антивирусные программы применяют разнообразные технологии, такие как сигнатурный, эвристический и проактивный анализ, белые и черные списки и т.д. При этом каждая упомянутая выше технология обладает собственной эффективностью обнаружения вредоносных файлов, заключающейся в потенциальной возможности обнаружить те или иные вредоносные файлы, используя заранее предоставленные для этой цели вычислительные ресурсы компьютерной системы, на которой она работает.
В настоящее время объемы данных (в том числе и файлы), обрабатываемые компьютерными системами, настолько огромны, что их антивирусная проверка может занимать ощутимое время и требовать значительных вычислительных ресурсов, что особенно критично для пользователей персональных компьютеров. Поэтому для повышения эффективности обнаружения вредоносных файлов применяются в частности методы, повышающие эффективность использования вычислительных ресурсов компьютерных систем, на которых происходит поиск вредоносных файлов. С этой целью используются распределенные системы поиска вредоносных файлов, состоящие из нескольких серверов, на каждом из которых выполняется проверка лишь части файлов, требующих проверки.
Например, в публикации US 20050149749 A1 описана технология распределенной антивирусной проверки файлов с использованием нескольких вычислительных систем (клиентов). Задачи антивирусной проверки распределяются среди клиентов специальным централизованным балансировщиком задач. В качестве клиентов могут выступать виртуальные машины, что позволяет работать нескольким клиентам на одном физическом компьютере. Такой подход решает задачу повышения эффективности обнаружения вредоносных файлов, но при этом не повышает, и даже снижает надежность осуществляемого обнаружения вредоносных файлов, поскольку вся технология опирается на централизованный балансировщик задач, от работы которого целиком зависит и задача поиска вредоносных файлов.
В другой публикации US 8875294 B2 описана технология использования облачных технологий для поиска вредоносных файлов. Для анализа файлов используется сеть распределенных серверов (облако). Задачи антивирусной проверки распределяются по серверам в зависимости от нагрузки упомянутых серверов, для чего используется единый распределительный сервер. Такой подход при некоторых условиях (устойчивое соединение, отсутствие загрузки серверов и т.д.) решает задачу повышения эффективности обнаружения вредоносных файлов, но при этом довольно требователен к компьютерным ресурсам, упомянутым выше, и зависит от работы единого распределительного сервера, что негативно сказывается на надежность проводимой антивирусной проверки файлов.
Хотя описанные выше способы работы хорошо справляются с задачами распределенной антивирусной проверки файлов (особенно, когда средства антивирусной проверки работаю на отдельных компьютерных системах), их эффективность зачастую оказывается слишком низкой в случае большого количества файлов, требующих антивирусной проверки (из-за ограничений, накладываемых на количество файлов, которые может обработать балансировщик задач), средств проверки, выполняющих упомянутую антивирусную проверку (из-за ограничений, накладываемых на вычислительные ресурсы, предоставляемые каждому средству проверки). Кроме того, в случае работы в виртуальном окружении, страдает отказоустойчивость распределенной системы антивирусной проверки файлов, поскольку в виртуальном окружении не реализуется независимость и заменимость средств, осуществляющих антивирусную проверку файлов.
Настоящее изобретение позволяет решать задачу обнаружения вредоносных файлов на распределенной системе «защищаемых виртуальных машин».
Раскрытие изобретения
Изобретение предназначено для антивирусной проверки файлов.
Технический результат настоящего изобретения заключается в повышении скорости выполнения антивирусной проверки файлов за счет распределения файлов, предназначенных для антивирусной проверки, по виртуальным машинам, на которых выполняется антивирусная проверка.
Еще один технический результат настоящего изобретения заключается в гарантированности выполнения антивирусной проверки файлов, размещенных на виртуальных машинах, на которых выполняется антивирусная проверка.
Данный результат достигается с помощью использования системы обнаружения вредоносных файлов на виртуальных машинах, при этом упомянутая система содержит: по крайней мере два средства «тонкий клиент», установленные на виртуальных машинах, именуемых далее «защищаемыми виртуальными машинами», при этом каждое средство «тонкий клиент» взаимодействует по крайней мере с двумя средствами «сервер защиты» и в свою очередь содержит: средство сбора, предназначенное для: перехвата информации, содержащей характеристики вычислительных ресурсов по меньшей мере двух «виртуальных машин защиты», на которой работает средство «сервер защиты», при этом упомянутая информация распространяется по компьютерной сети средством передачи, передачи перехваченной информации средству выбора; упомянутое средство выбора, предназначенное для: вычисления значения скорости выполнения антивирусной проверки для каждого средства проверки, содержащегося на средстве «сервер защиты», на основании полученной информации, выбора средства «сервера защиты» на основании сравнения вычисленных значений скоростей выполнения антивирусной проверки для средств проверки, передачи информации о выбранном средстве «сервера защиты» средству формирования задач; упомянутое средство формирования задач, предназначенное для: определения по меньшей мере одного файла, содержащегося на «защищаемой виртуальной машине», для выполнения антивирусной проверки; передачи определенных файлов выбранному средству «сервер защиты»; по крайней мере два средства «сервер защиты», установленные на виртуальных машинах, именуемых далее «виртуальными машинами защиты», и предназначенные для выполнения антивирусной проверки файлов, при этом каждое средство «сервер защиты» содержит: упомянутое средство передачи, предназначенное для: определения характеристик вычислительных ресурсов «виртуальной машины защиты», на которой установлено средство «сервер защиты»; распространения по компьютерной сети информации, содержащей определенные характеристики; средство управления задачами, предназначенное для: определения для каждого полученного файла доступности средства проверки для выполнения антивирусной проверки упомянутого файла в момент передачи упомянутого файла средству проверки; передачи упомянутого файла в случае недоступности средства проверки текущей «виртуальной машины защиты» средству управления задачами другой «виртуальной машины защиты» для проведения антивирусной проверки; передачи упомянутого файла в случае доступности средства проверки текущей «виртуальной машины защиты» упомянутому средству проверки; средство проверки, предназначенное для: выполнение антивирусной проверки полученных файлов; вынесения вердикта об обнаружении вредоносного файла по результатам выполненной антивирусной проверки.
В другом частном случае реализации системы передача файлов от средства формирования задач средству проверки осуществляется посредством очереди задач «сервера защиты», где для каждого файла, полученного от средства формирования задач, вычисляется порядковый номер, зависящий от характеристик вычислительных ресурсов «виртуальной машины защиты», в соответствии с которым впоследствии файлы передаются средству проверки.
Еще в одном частном случае реализации системы в качестве характеристик вычислительных ресурсов «виртуальной машины защиты» выступает по меньшей мере: время нахождения по меньшей мере одного файл в очереди задач «сервера защиты»; время, прошедшее между определением по меньшей мере одного файла средством формирования задач до вынесения вердикта средством проверки; размер очереди задач «сервера защиты»; вычислительная мощность «виртуальной машины защиты».
В другом частном случае реализации системы качестве вычислительной мощности «виртуальной машины защиты» выступает по меньшей мере: объем оперативной памяти, предоставляемый операционной системой «виртуальной машиной защиты» «серверу защиты»; производительность компьютерной системой, на которой работает «виртуальная машина защиты».
Еще в одном частном случае реализации в качестве скорости выполнения антивирусной проверки «сервера защиты» выступает по меньшей мере мера центральной тенденции (measure of central tendency): времени нахождения файла в очереди задач «сервера защиты»; времени, прошедшего между определением файла средством формирования задач до вынесения вердикта средством проверки; скорости заполнения очереди задач «сервера защиты».
В другом частном случае реализации системы выбирают по меньшей мере один «сервер защиты» на основании сравнения вычисленных скоростей выполнения антивирусной проверки, удовлетворяющий по меньшей мере одному критерию, по которому: вычисленная средняя скорость антивирусной проверки выбранных «серверов защиты» больше средней скорости антивирусной проверки всех оставшихся «серверов защиты», участвующих в выборе; вычисленная скорость выполнения антивирусной проверки выбранного «сервера защиты» является наибольшей; вычисленная скорость выполнения антивирусной проверки выбранного «сервера защиты» выше установленного порогового значения; размер очереди задач выбранного «сервера защиты» является наименьшим; размер очереди задач выбранного «сервера защиты» ниже установленного порогового значения.
Еще в одном частном случае реализации распространение средством передачи по компьютерной сети информации, содержащей определенные средством передачи характеристики вычислительных ресурсов «виртуальной машины защиты», осуществляется с использованием по меньшей мере: маршрутизации по широковещательному каналу (broadcasting); многоадресного вещания (multicasting); непосредственной передачи средству сбора по меньшей мере одному «тонкому клиенту».
Данный результат достигается с помощью использования способа обнаружения вредоносных файлов на виртуальных машинах, при этом способ содержит этапы, которые реализуются с помощью средств из системы обнаружения вредоносных файлов на виртуальных машинах, и на которых: определяют по меньшей мере один файл по меньшей мере одной виртуальной машины, именуемой далее «защищаемая виртуальная машина», на которой работает средство «тонкий клиент», предназначенное для защиты упомянутой «защищаемой виртуальных машин» от вредоносных файлов; определяют характеристики вычислительных ресурсов по меньшей мере одной виртуальной машины, именуемой далее «виртуальной машиной защиты», на которой работает средство «сервер защиты», предназначенное для выполнения антивирусной проверки по меньшей мере одного файла, полученного от средства «тонкий клиент»; распространяют по компьютерной сети информацию, содержащую определенные на предыдущем этапе характеристики вычислительных ресурсов; перехватывают информацию, содержащую определенные на предыдущем этапе характеристики вычислительных ресурсов по меньшей мере одной «виртуальной машины защиты»; вычисляют скорости выполнения антивирусной проверки каждого «сервера защиты», работающего на «виртуальной машине защиты», чьи характеристики вычислительных ресурсов содержатся в информации, перехваченной на предыдущем этапе; выбирают по меньшей мере один «сервер защиты» на основании сравнения вычисленных на предыдущем этапе скоростей выполнения антивирусной проверки; определяют для каждого полученного на предыдущем этапе файла доступность средства проверки выбранного на предыдущем этапе «сервера защиты» для выполнения антивирусной проверки упомянутого файла в момент передачи упомянутого файла средству проверки; передают полученный на предыдущем этапе файл в случае определенной на предыдущем этапе недоступности средства проверки текущей «виртуальной машины защиты» средству управления задачами другой «виртуальной машины защиты» для проведения антивирусной проверки; выполняют антивирусную проверку полученного на предыдущем этапе файла в случае определенной на предыдущем этапе доступности средства проверки текущей «виртуальной машины защиты»; выносят вердикт об обнаружении вредоносного файла.
В другом частном случае реализации способа передача файлов от средства формирования задач средству проверки осуществляется посредством очереди задач «сервера защиты», где для каждого файла, полученного от средства формирования задач, вычисляется порядковый номер, зависящий от характеристик вычислительных ресурсов «виртуальной машины защиты», в соответствии с которым впоследствии файлы передаются средству проверки.
Еще в одном частном случае реализации способа в качестве характеристик вычислительных ресурсов «виртуальной машины защиты» выступает по меньшей мере время нахождения по меньшей мере одного файл в очереди задач «сервера защиты»; время, прошедшее между определением по меньшей мере одного файла средством формирования задач до вынесения вердикта средством проверки; размер очереди задач «сервера защиты»; вычислительная мощность «виртуальной машины защиты».
В другом частном случае реализации способа в качестве вычислительной мощности «виртуальной машины защиты» выступает по меньшей мере: объем оперативной памяти, предоставляемый операционной системой «виртуальной машиной защиты» «серверу защиты»; производительность компьютерной системой, на которой работает «виртуальная машина защиты».
Еще в одном частном случае реализации способа в качестве скорости выполнения антивирусной проверки «сервера защиты» выступает по меньшей мере мера центральной тенденции (measure of central tendency): времени нахождения файла в очереди задач «сервера защиты»; времени, прошедшего между определением файла средством формирования задач до вынесения вердикта средством проверки; скорости заполнения очереди задач «сервера защиты».
В другом частном случае реализации способа выбирают по меньшей мере один «сервер защиты» на основании сравнения вычисленных скоростей выполнения антивирусной проверки, удовлетворяющий по меньшей мере одному критерию, по которому: вычисленная средняя скорость антивирусной проверки выбранных «серверов защиты» больше средней скорости антивирусной проверки всех оставшихся «серверов защиты», участвующих в выборе; вычисленная скорость выполнения антивирусной проверки выбранного «сервера защиты» является наибольшей; вычисленная скорость выполнения антивирусной проверки выбранного «сервера защиты» выше установленного порогового значения; размер очереди задач выбранного «сервера защиты» является наименьшим; размер очереди задач выбранного «сервера защиты» ниже установленного порогового значения.
Еще в одном частном случае реализации способа распространение средством передачи по компьютерной сети информации, содержащей определенные средством передачи характеристики вычислительных ресурсов «виртуальной машины защиты», осуществляется с использованием по меньшей мере: маршрутизации по широковещательному каналу (broadcasting); многоадресного вещания (multicasting); непосредственной передачи средству сбора по меньшей мере одному «тонкому клиенту».
Краткое описание чертежей
Фиг. 1 представляет структурную схему системы обнаружения вредоносных файлов на распределенной системе виртуальных машин.
Фиг. 2 представляет структурную схему способа обнаружения вредоносных файлов на распределенной системе виртуальных машин.
Фиг. 3 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
Введем ряд определений и понятий, которые будут использоваться при описании вариантов осуществления изобретения.
«Защищаемая виртуальная машина» - виртуальная машина (англ. virtual machine), работающая под управлением гипервизора (англ. hypervisor), с установленной гостевой операционной системой (англ. guest operating system), под управлением которой работает приложение «тонкий клиент» (англ. thin client).
«Виртуальная машина защиты» - виртуальная машина, работающая под управлением гипервизора, с установленной операционной системой, под управлением которой работает приложение «сервер защиты» (англ. protection server).
«Тонкий клиент» - программное обеспечение, предназначенное для защиты «защищаемой виртуальной машины» от вредоносных программ и компьютерных угроз, и передачи по сети «виртуальным машинам защиты» файлов для антивирусной проверки.
«Сервер защиты» - программное обеспечение, предназначенное для выполнения антивирусной проверки файлов, полученных от «защищаемых виртуальных машин».
Фиг. 1 представляет структурную схему системы обнаружения вредоносных файлов на распределенной системе виртуальных машин.
Структурная схема системы обнаружения вредоносных файлов на распределенной системе виртуальных машин состоит из «тонкого клиента» 110, средства сбора 111, средства выбора 112, средства формирования задач 113, «сервера защиты» 120, средства передачи 121, средства управления задачами 122 и средства проверки 123.
Средство «тонкий клиент» 110, содержащееся на каждой «защищаемой виртуальной машине» предназначено для защиты «защищаемой виртуальной машины» от вредоносных файлов и содержит средство сбора 111, средство выбора 112, и средство формирования задач 113.
Средство «сервер защиты» 120, содержащееся на каждой «виртуальной машине защиты», предназначено для выполнения антивирусной проверки файлов, полученных от «тонких клиентов» 110 «защищаемых виртуальных машины» и содержит средство передачи 121, средство управления задачами 122, и средство проверки 123.
При этом передача файлов от средства формирования задач 113 средству проверки 123 может осуществляться посредством очереди задач «сервера защиты» 120, где для каждого файла, полученного от средства формирования задач 113, вычисляется порядковый номер, зависящий от характеристик вычислительных ресурсов «виртуальной машины защиты», в соответствии с которым впоследствии файлы передаются средству проверки 123.
В одном из вариантов реализации очереди задач каждому файлу ставится в соответствие уникальный номер, на основании которого средством проверки 123 осуществляется выборка упомянутого файла из очереди задач для проведения антивирусной проверки, при этом уникальный номер выборки файла из очереди вычисляется на основании анализа характеристик состояния работы средства проверки 123, где в качестве состояния работы средства проверки 123 выступает по меньшей мере один из критериев:
- средство проверки 123 не осуществляет на момент выборки файла из очереди задач антивирусную проверку файлов, переданных средству проверки 123 ранее;
- средство проверки 123 обладает вычислительными ресурсами, достаточными для обработки выбранного файла.
Например, в самом простом случае очередь задач может быть организована по принципу «первый пришел - первый ушел» (англ First In First Out, FIFO). В этом случае каждому переданному средством управления задачами 122 файлу назначается уникальный номер, больший чем у файла, переданного средству управления задачами 122 ранее (1, 2, 5, 17, 123 и т.д.), и выборка файлов средством проверки 123 также будет происходить в порядке возрастания уникального номера, назначенного файлу (сначала 1, потом 2, 5, 17, 123 и т.д.). В другом случае изначально назначенные уникальные номера могут перераспределяться в зависимости характеристик работы средства проверки 123. Например, средство проверки 123 обработало файл с номером №15, после чего «сервер защиты» стал располагать 50МБ свободной оперативной памяти «виртуальной машины защиты», которую может использовать при выполнении проверки последующих файлов, но для выполнения антивирусной проверки файла №16 потребуется 100МБ свободной оперативной памяти, и 10МБ - для файла №17, 35МБ для файла №18, поэтому вместо того, чтобы ожидать, когда же будет доступно 100МБ оперативной памяти средство проверки 123 выбирает из очереди задач файлы №17 и №18.
Средство сбора 111 предназначено для:
- перехвата с помощью установленного на «защищаемой виртуальной машине» драйвера компьютерной сети информации, содержащей характеристики вычислительных ресурсов «виртуальных машин защиты», распространенной средством передачи 121 по компьютерной сети;
- передачи перехваченной информации средству выбора 112.
При этом в качестве характеристик вычислительных ресурсов «виртуальной машины защиты» может выступать:
- время нахождения файлов в очереди задач «сервера защиты» 120;
- время, прошедшее между получением файла от средства формирования задач 113 до вынесения вердикта средством проверки 123;
- размер очереди задач «сервера защиты» 120;
- вычислительная мощность «виртуальной машины защиты», на которой работает «сервер защиты» 120.
При этом в качестве вычислительной мощности «виртуальной машины защиты» может выступать:
- объем оперативной памяти, предоставляемый операционной системой «виртуальной машиной защиты» «серверу защиты»;
- производительность компьютерной системы, выраженная в количестве операций в секунду (FLOPS), способное выполняться компьютерной системой, на которой работает «виртуальная машина защиты»;
- приоритет, и как следствие скорость выполнения антивирусной проверки, с которым работает «сервер защиты» 120 под управлением операционной системы «виртуальной машины защиты».
При этом средство сбора 111, работающее на одной «защищаемой виртуальной машине», может перехватывать информацию, передаваемую средством передачи 121, средству сбора 111, работающему на другой «защищаемой виртуальной машине».
Например, средство сбора 111 может перехватывать все сетевые пакеты, передающиеся по компьютерной сети. Сетевые пакеты, переданные «сервером защиты» 120 будут обрабатываться, остальные - игнорироваться. Если сетевые пакеты содержат информацию, передаваемую какому-либо «тонкому клиенту» 110, то считается, что они содержат информацию, содержащую характеристики вычислительных ресурсов «виртуальной машины защиты», на которой работает упомянутый «сервер защиты» 120. Далее из перехваченных сетевых пакетов формируется упомянутая информация (например, в виде структурированных данных, где каждому типу вычислительных ресурсов соответствует численная характеристика, к примеру [1] доступная оперативная память «виртуальной машины защиты» - 100МБ, [2] размер очереди задач - 25 файлов и т.д.) и передается средству выбора 112.
Средство выбора 112 предназначено для:
- вычисления скорости выполнения антивирусной проверки для каждого «сервера защиты» 120, на основании характеристик вычислительных ресурсов содержащихся в информации, полученной от средства сбора 111,
- выбора «серверов защиты» 120 на основании анализа вычисленной скорости выполнения антивирусной проверки для последующей передачи выбранным «серверам защиты» 120 файлов для выполнения антивирусной проверки,
- передачи информации о каждом выбранном «сервере защиты» 120 средству формирования задач 113, где передаваемая информация может содержать уникальные идентификаторы «серверов защиты» 120 (для возможности передачи файлов для выполнения антивирусной проверки только выбранному «серверу защиты» 120).
При этом в качестве скорости выполнения антивирусной проверки «сервера защиты» 120 может выступать мера центральной тенденции (англ. measure of central tendency):
- времени нахождения файлов в очереди задач «сервера защиты»;
- времени, прошедшего между получением файлов от средства формирования задач 113 до вынесения вердикта средством проверки 123;
- скорости заполнения очереди задач «сервера защиты» 120;
- используемых для выполнения антивирусной проверки характеристик вычислительных ресурсов «виртуальной машины защиты», на которой работает «сервер защиты» 120.
Например, средство выбора 112 может в качестве скорости выполнения антивирусной проверки «сервером защиты» использовать среднее время от определения средством формирования задачи 113 файла на «защищаемой виртуальной машине», для которого необходимо выполнить антивирусную проверку, до вынесения вердикта проверки от средства проверки 123.
Например, в качестве меры центральной тенденции используемых для выполнения антивирусной проверки характеристик вычислительных ресурсов «виртуальной машины защиты», на которой работает «сервер защиты» 120 может выступать среднее гармоническое объема оперативной памяти, выделяемой операционной системой «виртуальной машины защиты» «серверу защиты» 120 для проведения антивирусной проверки полученных файлов.
При этом скорость выполнения антивирусной проверки «сервера защиты» 120 может быть вычислена всеми описанными выше способами с использованием вероятностных методов, реализующих предсказание того, какой скоростью выполнения антивирусной проверки «сервера защиты» 120 будет обладать «сервер защиты» 120 каждой «виртуальной машины защиты» в выбранной период времени, путем вычисления временных аппроксимационных зависимостей скорости выполнения антивирусной проверки от времени осуществления упомянутой антивирусной проверки.
При этом для передачи средству формирования задач 113 могут выбирать «сервера защиты» 120 одним или несколькими приведенными ниже критериями, по которым:
- вычисленная средняя скорость антивирусной проверки выбранных «серверов защиты» 120 больше средней скорости антивирусной проверки всех оставшихся «серверов защиты», работающих на «виртуальных машин защиты»;
- вычисленная скорость выполнения антивирусной проверки выбранных «серверов защиты» 120 является наибольшей среди всех «сервером защиты» 120, работающих на «виртуальных машин защиты»;
- вычисленная скорость выполнения антивирусной проверки выбранных «серверов защиты» выше установленного порогового значения;
- размер очереди задач выбранных «серверов защиты» 120 является наименьшим среди всех очередей задач «серверов защиты» 120, работающих на «виртуальных машин защиты»;
- размер очереди задач выбранных «серверов защиты» 120 ниже установленного порогового значения.
Средство формирования задач 113 предназначено для:
- определения файлов виртуальной машины, на которой установлен упомянутый «тонкий клиент» 110, для выполнения антивирусной проверки;
- передачи определенных файлов средству управления задачами 122 «сервера защиты» 120, информация о котором была получена от средства выбора 112.
Средство передачи 121 предназначено для:
- определения характеристик вычислительных ресурсов «виртуальных машин защиты», на которой содержатся «сервера защиты» 120;
- распространения по компьютерной сети информации, содержащей определенные характеристики.
При этом распространение средством передачи 121 по компьютерной сети информации, содержащей определенные средством передачи 121 характеристики вычислительных ресурсов «виртуальной машины защиты», на которой работает «сервер защиты» 120, может осуществляться с использованием:
- маршрутизации по широковещательному каналу (англ. broadcasting);
- многоадресного вещания (англ. multicasting);
- непосредственной передачи определенной информации средству сбора 111.
Например, информация, содержащая характеристики вычислительных ресурсов «виртуальной машины защиты», на которой работает «сервер защиты» 120, может быть передана непосредственно средству сбора 111 любого «тонкого клиента» 110. Такой способ передачи информации возможен, например, когда «тонкий клиент» 110 уже передавал файлы для выполнения антивирусной проверки «серверу защиты» 120. Кроме того, «сервер защиты» 120 может осуществить широковещательную передачу информации, рассчитанную на то, что любой «тонкий клиент» 110 может получить передаваемые данные и, следовательно, после ее обработки сможет передать свои файлы упомянутому «серверу защиты» 120 для выполнения антивирусной проверки.
Средство управления задачами 122 предназначено для:
- определения для каждого полученного файла доступность средства проверки 123 для выполнения антивирусной проверки упомянутого файла в момент передачи упомянутого файла средству проверки 123;
- передачи упомянутого файла в случае недоступности средства проверки 123 текущей «виртуальной машины защиты» средству управления задачами 122 другой «виртуальной машины защиты» для проведения антивирусной проверки;
- передачи упомянутого файла в случае доступности средства проверки 123 текущей «виртуальной машины защиты» упомянутому средству проверки 123;
Средство проверки 123 предназначено для:
- выполнение антивирусной проверки полученных файлов;
- вынесения вердикта об обнаружении вредоносного файла по результатам выполненной антивирусной проверки.
Рассмотрим работу системы обнаружения вредоносных файлов на «защищаемых виртуальных машинах» на примере антивирусной проверки 1000 файлов, хранящихся на 10 «защищаемых виртуальных машинах» (по 100 на каждой из «защищаемой виртуальной машине») средствами 2 «виртуальных машин защиты».
На каждой из 10 «защищаемых виртуальных машин» свой «тонкий клиент» 110 выбирает файлы из группы из 100 файлов, для которых необходимо выполнить антивирусную проверку. Средство сбора 111 каждой «защищаемой виртуальной машины», перехватывает с помощью установленного на «защищаемой виртуальной машине» драйвера компьютерной сети характеристики вычислительных ресурсов «виртуальных машин защиты», переданные ранее средством передачи 121 «сервера защиты» каждого из двух доступных «виртуальных машин защиты», после чего передает их средству выбора 112. В качестве характеристик вычислительных ресурсов «виртуальной машины защиты» #1 и «виртуальной машины защиты» #2 могут выступать разные характеристики (что зависит как от самих «виртуальных машин защиты», так и от настроек «серверов защиты») - время нахождения файлов в очереди задач антивирусной проверки «сервера защиты» #1 120, вычислительная мощность «виртуальной машины защиты» #1, на которой работает «сервер защиты» #1 120 (т.е. доступная оперативная память, производительность центрального процессора и т.д.), и размер очереди задач антивирусной проверки «сервера защиты» #2 120 соответственно.
На основании перехваченных характеристик вычислительных ресурсов «виртуальной машины защиты» #1 и «виртуальной машины защиты» #2 средство выбора 112, входящее в состав «тонкого клиента» каждой «защищаемой виртуальной машины», независимо от других средств выбора 112 вычисляет (как один из случаев меры центральной тенденции, демонстрирующий статистическое распределение измеряемой величины) среднее арифметическое времени, прошедшего между получением файлов от средства формирования задач 113 до вынесения вердикта средством проверки 123, что является скоростью выполнения антивирусной проверки «серверов защиты» #1 и #2 120. Из двух «серверов защиты» выбирается «сервер защиты» с наивысшей вычисленной скоростью выполнения антивирусной проверки (#2), после чего результат передается средству формирования задач 113, поскольку минимальная вычисленная скорость выполнения антивирусной проверки (#1) означает, что «сервер защиты» #1 120 на текущий момент является загруженным другими задачами проверки, или же «виртуальная машина защиты» не обладает нужными вычислительными ресурсами для осуществления антивирусной проверки файлов.
Средство формирования задач 113, входящее в состав «тонкого клиента» 110 запрашивает у «тонкого клиента» 110 очередной файл для выполнения антивирусной проверки запрашиваемого файла, и передает полученный файл средству управления задачами 122 выбранного «сервера защиты» (#2) 120.
Средство управления задачами 122 определяет для полученного файла доступность средства проверки 123 для выполнения антивирусной проверки полученного файла в момент передачи упомянутого файла средству проверки 123. В случае, если средство проверки 123 не доступно, полученный файл передается средству управления задачами 122 одного из оставшихся «средств защиты» 120. В противном случае полученный файл передается средству проверки 123 текущего «сервера защиты» 120.
Средство проверки 123 осуществляет антивирусную проверку полученных от средства управления задачами 122 файлов и выносит вердикт о том, являются ли полученные файлы вредоносными или нет. После завершения проверки средство проверки передает информацию о завершении обработки полученных файлов, а также результаты проверки средству управления задачами 122.
При такой работе «сервера защиты» #2 120 «тонкие клиенты» 110 «защищаемых виртуальных машин» не простаивают. Во время работы «сервера защиты» #2 120 может освободиться «сервер защиты» #1 120. В этом случае при очередном вычислении выполнения антивирусной проверки она станет большей у «сервера защиты» #1 120, чем у «сервера защиты» #2 120 и следующая порция от оставшихся для проверки 990 файлов (99 на каждой «защищаемой виртуальной машине») будет передана средству управления задачами 122 «сервера защиты» #2 120.
Поскольку для выполнения антивирусной проверки файлы с «защищаемых виртуальных машин» передавались разным «виртуальным машинам защиты» так, чтобы вычислительные ресурсы системы «виртуальных машин