СИСТЕМА И СПОСОБ ОБНАРУЖЕНИЯ ВРЕДОНОСНЫХ ОБЪЕКТОВ, РАСПРОСТРАНЯЕМЫХ ЧЕРЕЗ ПИРИНГОВЫЕ СЕТИ
SYSTEM AND METHOD OF DETECTING MALICIOUS ENTITIES DISTRIBUTED OVER PEER-TO-PEER NETWORKS

Область техники
Изобретение относится к антивирусным системам и, более конкретно, к системам и способам обнаружения вредоносных объектов в пиринговых сетях.
Уровень техники
В настоящее время участились случаи распространения вредоносных программ в пиринговых сетях (в иностранной литературе встречаются также названия peer-to-peer сети, Р2Р). Примером пиринговых сетей является Bit Torrent сеть. Особенностью работы пиринговой сети является одновременное скачивание объекта раздачи клиентом сети из многих источников. Причем скачивание происходит блоками, и невозможно предсказать, в каком порядке будут скачиваться эти блоки. Объектом раздачи может быть файл или группа файлов. Пользователь сети может посылать запросы на предоставление данных другим пользователям в пределах этой сети и получать аналогичные запросы. Примерами клиентов пиринговой сети являются такие программные приложения, как µTorrent, BitComet I2P, ED2K (eDonkey2000) и т.д.
Для каждого распространяемого объекта создается файл описания - файл метаданных (например, торрент - файл в Bit Torrent сети). В нем содержится, по меньшей мере, Hash - сумма (далее по тексту - контрольная сумма) закачиваемого файла. Контрольная сумма вычисляется для каждого объекта, и она уникальна. Соответственно, файл метаданных, содержащий контрольную сумму, уникален для каждого описываемого им объекта.
При загрузке объекта вычисляется его контрольная сумма и сравнивается с контрольной суммой, находящейся в файле метаданных. Если контрольные суммы не совпали, то объект считается поврежденным и происходит его повторная загрузка. Когда объект успешно закачан, он становится доступным для раздачи другим пользователям пиринговой сети. После того как объект скачан, его можно использовать. По такой же схеме может скачиваться группа объектов. В этом случае контрольная сумма создается для каждого объекта группы.
Поскольку число пользователей пиринговых сетей непрерывно увеличивается, и объем передаваемых данных активно растет, все очевидней становится угроза со стороны злоумышленников использовать такие сети для распространения вредоносных приложений. Часто злоумышленники добавляют вредоносные программы в архив, содержащий нужную информацию, либо встраивают вредоносный код внутрь незаконно используемых копий программных приложений.
При помощи пиринговых сетей можно производить обмен большим объемом данных. Однако нет полной уверенности в том, что данные, которые закачиваются, не будут содержать вирусы. Если данные будут содержать вредоносный код, то они не смогут быть использованы, но факт наличия вредоносного кода можно установить только после полной загрузки объекта. При этом если бы предварительно было установлено, что данные являются вредоносными, то можно было бы избежать загрузки вовсе.
Существуют системы и способы обнаружения вредоносных объектов с использованием контрольных сумм. Подобные системы описаны в патенте US 7328349 и в патентных заявках US 20080147612 A1, US 20070162975 А1.
В патенте US 7328349 описываются система и способ обнаружения, предотвращения и отслеживания вредоносных объектов (червей и вирусов), которая содержит множество клиентов, получающих множество пакетов, которые могут содержать вредоносные данные, hash-процессор, который исследует пакеты, создает hash-суммы пакетов и сравнивает их с ранее накопленными суммами с целью обнаружения вредоносных данных.
В заявке US 20080147612 A1 описывается система и способ для поиска вредоносных объектов. Система состоит из удаленной базы данных, компьютера и программного приложения, которое производит поиск файлов, создает для них контрольные суммы и сравнивает их с суммами в удаленной базе.
В заявке US 20050021994 А1 описываются система и способ, позволяющие решить проблему определения вредоносных данных, находящихся на персональном компьютере по атрибутам файла. В качестве одного из атрибутов используется контрольная сумма файла.
Известные системы и способы не предназначены для работы в пиринговых сетях и не позволяют проводить анализ контрольных сумм в метаданных соответствующих загружаемых объектов.
Описываемые в данной заявке система и способ позволяют производить пополнение черных списков контрольными суммами вредоносных объектов, загружаемых при помощи пиринговых сетей.
Также предлагаемые система и способ имеют преимущество по сравнению с известными аналогами, поскольку позволяют определить наличие вредоносных данных в объектах раздачи до загрузки объектов на компьютерную систему пользователя сети, который не обладает средствами обнаружения вредоносных данных.
Анализ предшествующего уровня техники и возможностей, которые появляются при комбинировании их в одной системе, позволяет получить новый результат, а именно систему и способ обнаружения вредоносных объектов, распространяемых через пиринговые сети.
Сущность изобретения
Техническим результатом данного изобретения является увеличение уровня защиты компьютерных систем пользователей от вредоносных объектов, распространяемых через пиринговые сети, что достигается за счет предоставления доступа к непроверенным объектам загрузки для тех компьютерных систем, у которых имеется система обнаружения вредоносных объектов.
Настоящее изобретение представляет собой систему и способ обнаружения вредоносных объектов, распространяемых через пиринговые сети.
Способ обнаружения вредоносных объектов, распространяемых через пиринговые сети, заключается в том, что запрашивают метаданные, относящиеся к непроверенному объекту загрузки, у модуля управления на сервере пиринговой сети при помощи клиента пиринговой сети компьютерной системы пользователя; определяют при помощи модуля управления на сервере пиринговой сети наличие антивирусного модуля на компьютерной системе пользователя, запрашивающей метаданные, относящиеся к непроверенному объекту загрузки; загружают метаданные, относящиеся к непроверенному объекту загрузки, при помощи клиента пиринговой сети компьютерной системы пользователя, обладающей антивирусным модулем; получают объект загрузки, соответствующий загруженным метаданным, при помощи упомянутого клиента пиринговой сети компьютерной системы пользователя; производят обнаружение вредоносных объектов путем проверки объекта загрузки с помощью антивирусного модуля упомянутой компьютерной системы пользователя.
В частном варианте исполнения обнаружение вредоносного объекта загрузки выполняют антивирусным модулем компьютерной системы пользователя с применением модуля хранения антивирусной базы и черного списка контрольных сумм.
В частном варианте исполнения модулю управления на сервере пиринговой сети передают данные о том, является объект загрузки вредоносным или безопасным по результатам проверки объекта загрузки с помощью упомянутого антивирусного модуля.
В частном варианте исполнения запрещают проводить загрузку метаданных, относящихся к вредоносным объектам, перемещая соответствующие метаданные из модуля хранения непроверенных метаданных на сервере пиринговой сети в модуль хранения метаданных, относящихся к вредоносным объектам, при помощи модуля управления на сервере пиринговой сети.
В частном варианте исполнения разрешают проводить загрузку метаданных, относящихся к безопасным объектам, перемещая соответствующие метаданные из модуля хранения непроверенных метаданных на сервере пиринговой сети в модуль хранения проверенных метаданных при помощи модуля управления на сервере пиринговой сети.
Система обнаружения вредоносных объектов, распространяемых через пиринговые сети, включающая сервер пиринговой сети, который предназначен для загрузки метаданных, относящихся к объекту загрузки, и получения объекта загрузки, а также клиент пиринговой сети компьютерной системы пользователя выполнен с возможностью передачи модулю управления на сервере пиринговой сети данных о том, является объект загрузки вредоносным или безопасным; антивирусный модуль компьютерной системы пользователя, предназначенный для обнаружения вредоносных объектов загрузки; при этом сервер пиринговой сети содержит модуль управления, предназначенный для обработки запросов о получении метаданных от упомянутого клиента пиринговой сети компьютерной системы пользователя, передачи запрашиваемых метаданных клиенту пиринговой сети компьютерной системы пользователя, определения наличия антивирусного модуля на упомянутой компьютерной системе пользователя, при запросе метаданных, относящихся к непроверенным объектам загрузки; упомянутый модуль хранения непроверенных метаданных на сервере пиринговой сети, предназначенный для хранения метаданных, относящихся к непроверенным объектам; модуль хранения проверенных метаданных на сервере пиринговой сети, предназначенный для хранения метаданных, относящихся к безопасным объектам; модуль хранения метаданных, относящихся к вредоносным объектам, на сервере пиринговой сети, связанный с модулем управления, предназначенный для хранения метаданных, относящихся к вредоносным объектам.
В частном варианте исполнения система дополнительно содержит модуль хранения антивирусной базы и черного списка контрольных сумм на компьютерной системе пользователя, связанный с антивирусным модулем, при этом модуль хранения антивирусной базы и черного списка контрольных сумм выполнен с возможностью хранения, по меньшей мере, данных, необходимых для обнаружения вредоносных объектов загрузки.
В частном варианте исполнения упомянутый модуль хранения антивирусной базы и черного списка контрольных сумм компьютерной системы пользователя дополнительно содержит информацию о метаданных, относящихся к вредоносным объектам.
В частном варианте исполнения система дополнительно содержит модуль определения контрольных сумм на компьютерной системе пользователя, связанный с модулем хранения антивирусной базы и черного списка контрольных сумм компьютерной системы пользователя, выполненный с возможностью проверки загруженных метаданных, относящихся к непроверенному объекту загрузки, при помощи модуля хранения антивирусной базы и черного списка контрольных сумм компьютерной системы пользователя.
В частном варианте исполнения упомянутый модуль определения контрольных сумм компьютерной системы пользователя выполнен с возможностью запрета клиенту пиринговой сети компьютерной системы пользователя проведения загрузки объектов загрузки, если метаданные, относящиеся к объекту загрузки, найдены в результате проверки в модуле хранения антивирусной базы и черного списка контрольных сумм компьютерной системы пользователя.
В частном варианте исполнения упомянутый модуль определения контрольных сумм компьютерной системы пользователя выполнен с возможностью добавления метаданных, которые относятся к вредоносным объектам, в модуль хранения антивирусной базы и черного списка контрольных сумм компьютерной системы пользователя.
В частном варианте исполнения упомянутый модуль управления на сервере пиринговой сети выполнен с возможностью перемещения метаданных, относящихся к вредоносным объектам загрузки по результатам проверки объектов загрузки с помощью антивирусного модуля, из модуля хранения непроверенных метаданных на сервере пиринговой сети в модуль хранения метаданных, относящихся к вредоносным объектам, на сервере пиринговой сети.
В частном варианте исполнения упомянутый модуль управления на сервере пиринговой сети выполнен с возможностью перемещения метаданных, относящихся к безопасным объектам загрузки по результатам проверки объектов загрузки с помощью антивирусного модуля, из модуля хранения непроверенных метаданных на сервере пиринговой сети в модуль хранения проверенных метаданных на сервере пиринговой сети.
В частном варианте исполнения система дополнительно содержит модуль обновления на компьютерной системе пользователя, который выполнен с возможностью обновления данных в модуле хранения антивирусной базы и черного списка контрольных сумм компьютерной системы пользователя.
В частном варианте исполнения система дополнительно содержит модуль хранения информации о заблокированных пользователях на сервере пиринговой сети, связанный с модулем управления на сервере пиринговой сети, при этом упомянутый модуль хранения информации о заблокированных пользователях выполнен с возможностью хранения параметров пользователей, поместивших в модуль хранения непроверенных метаданных на сервере пиринговой сети метаданные, относящиеся к вредоносным объектам.
Краткое описание чертежей
На Фиг.1 изображена схема системы обнаружения вредоносных объектов, распространяемых через пиринговые сети, на стороне компьютерной системы.
На Фиг.2 показана схема системы обнаружения вредоносных объектов, распространяемых через пиринговые сети, на стороне сервера пиринговой сети.
На Фиг.3А изображена схема взаимодействия компьютерных систем, которые используют пиринговые сети для обмена данными.
На Фиг.3Б изображена схема взаимодействия компьютерных систем, которые используют пиринговые сети для обмена данными, в случае определения безопасности объекта загрузки.
На Фиг.4 показан способ работы системы обнаружения вредоносных объектов, распространяемых через пиринговые сети.
На Фиг.5 показан пример компьютерной системы общего назначения, на основе которой может быть организована описанная система обнаружения вредоносных объектов.
Описание вариантов осуществления
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспеченными для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется только в объеме приложенной формулы.
В рамках данной системы предполагается наличие сервера пиринговой сети и нескольких персональных компьютеров, производящих обмен данными при помощи пиринговой сети. Все компьютеры, производящие обмен данными в пиринговой сети, можно условно разделить на две группы: первая группа отличается наличием системы обнаружения вредоносных объектов на базе антивирусного модуля, который может быть выполнен в виде аппаратного устройства или программного приложения, вторая группа не имеет системы обнаружения вредоносных объектов. При этом под вредоносными объектами понимаются такие программные модули, которые способны привести к несанкционированному пользователем уничтожению, блокированию, изменению, копированию данных, а также способны вызвать нарушения в работе компьютера или компьютерной сети и другие нежелательные последствия. К вредоносным объектам относятся компьютерные вирусы, черви, троянские программы, инструменты для взлома, конструкторы полиморфного вредоносного кода и т.д.
На Фиг.1 изображена схема системы обнаружения вредоносных объектов, распространяемых через пиринговые сети, на стороне компьютерной системы. Система обнаружения вредоносных объектов, распространяемых через пиринговые сети, 100 в одном из вариантов реализации состоит из нескольких модулей, одну из главных ролей среди которых играет клиент пиринговой сети 101.
Клиент пиринговой сети 101 обеспечивает получение объектов загрузки 105 с помощью пиринговых сетей. Клиент пиринговой сети 100 производит обмен данными внутри сети. Описываемая система может работать в таких широко используемых сетях, как ED2K (eDonkey2000), Overnet, BitTorrent и др. В том числе в сетях, использующих шифрование данных и адресов пользователей для анонимности, например, в сети I2P.
До начала обмена данными клиент загружает метаданные 102 объектов загрузки. Сущность метаданных может быть различной: метаданные могут быть представлены в виде файла либо в виде ссылки. Самым распространенным типом представления метаданных является файл, содержащий, по меньшей мере, контрольную сумму объекта загрузки. Файл может дополнительно содержать адрес ресурса в сети Интернет (или сервера пиринговой сети), общую информацию об объектах загрузки и другую информацию.
С развитием технологий все большую популярность приобретает тип представления метаданных в виде ссылки, позволяющей идентифицировать объект загрузки. Ссылка состоит из параметров, необходимых для однозначного определения объекта загрузки, при этом отсутствует привязка объекта загрузки к файлу метаданных и к ресурсу сети Интернет, на котором хранятся файлы метаданных. Такая ссылка содержит, по меньшей мере, контрольную сумму объекта загрузки, однако может содержать дополнительную информацию, например, имя объекта загрузки, размер объекта загрузки в байтах, ключевые слова для поиска объекта загрузки и другие. Ссылка с метаданными может быть представлена в следующем виде:
magnet:?xl=10826029&xt=urn:tree:tiger:7N5OAMRNGMSSEUE3ORHOK WN4WWIQ5X4EBOOTLJY
При переходе по данной ссылке клиент пиринговой сети начнет загрузку соответствующего объекта.
Из различной сущности метаданных вытекают различные виды файлообменных сетей: централизованные и децентрализованные. Централизованные сети, в отличие от децентрализованных сетей, предполагают наличие сервера пиринговой сети, который более подробно будет рассмотрен на Фиг.2.
В любом случае метаданные содержат контрольную сумму, которая однозначно характеризует объект загрузки и не зависит от сущности представления метаданных. Контрольная сумма является уникальным идентификатором для объекта загрузки и позволяет определить конкретный объект при помощи метаданных, соответствующих ему. Если производится загрузка сразу нескольких объектов, то такие метаданные содержат контрольные суммы для каждого объекта загрузки. Далее при описании системы будет использоваться понятие файл метаданных, однако это не исключает возможность использования ссылочного представления метаданных в рамках описываемой системы.
Модуль определения контрольных сумм 103 извлекает из полученных от клиента пиринговой сети 101 метаданных 102 контрольные суммы. Контрольные суммы проверяются модулем определения контрольных сумм 103, который производит сравнение контрольных сумм, извлеченных из метаданных 102, с контрольными суммами, находящимися в модуле хранения антивирусной базы данных и черного списка контрольных сумм 104. Модуль 104 содержит черный список контрольных сумм, который состоит из контрольных сумм ранее найденных объектов, содержащих вредоносный код, которые передаются через пиринговые сети. Стоит отметить, что не исключается вариант раздельного хранения и обновления антивирусной базы и черного списка контрольных сумм с использованием двух раздельных модулей хранения.
Если модуль определения контрольных сумм 103 найдет в модуле хранения 104 контрольную сумму, совпадающую с той, которая описывает загружаемый объект, то модуль определения контрольных сумм 103 запретит клиенту пиринговой сети 101 загрузку объекта 105, поскольку данный объект представляет опасность для компьютерной системы. Далее клиент пиринговой сети 101 оповестит сервер пиринговой сети 200 о том, что контрольная сумма объекта загрузки 105 находится в черном списке. Сервер пиринговой сети 200 реагирует на данное оповещение перемещением файла метаданных, содержащего данную контрольную сумму, из модуля хранения непроверенных метаданных (модуль 202 на Фиг.2) в модуль хранения метаданных, относящихся к вредоносным объектам, (модуль 205 на Фиг.2), таким образом, делая невозможным дальнейшее распространение вредоносного объекта на другие компьютерные системы.
При отсутствии контрольной суммы в черном списке в модуле 104 клиент пиринговой сети 101 производит скачивание объекта загрузки 105. После завершения процесса скачивания производится антивирусная проверка объекта 105 на наличие вирусов. Проверка проводится антивирусным модулем 106.
При антивирусной проверке используются различные методы и технологии, например, сигнатурная проверка, эвристический и поведенческий анализ.
Сигнатурная проверка основана на сравнении байтового кода проверяемых данных с кодом различных вредоносных объектов, который находится в сигнатурах. Эвристический анализ использует при поиске вредоносных объектов аналитическую систему, применяющую гибко заданные шаблоны, к примеру, описанные с использованием нечеткой логики. Поведенческий анализ в частном случае основан на наблюдении за системными событиями. Определение вредоносного объекта происходит по его поведению в системе в рамках заданных правил поведения вредоносных объектов.
Проверка объекта загрузки 105 на наличие вируса или других вредоносных данных производится антивирусным модулем 106, который при работе использует антивирусную базу данных, находящуюся в модуле хранения антивирусной базы и черного списка контрольных сумм 104. Антивирусная база содержит данные, необходимые для выполнения антивирусной проверки, например, сигнатуры вредоносных объектов, поведенческие сигнатуры и т.д.
Сигнатуры вредоносных объектов представляют собой последовательности битов, которые сравниваются с программным кодом проверяемого объекта. Если возникает совпадение, то это означает, что анализируемый объект является вредоносным.
Сигнатуры поведения в свою очередь содержат информацию о возможных действиях потенциально вредоносных объектов, таких как вызов системных функций, обращение к данным реестра и т.д. При этом производится наблюдение за проверяемым объектом, если поведение объекта будет совпадать с известной сигнатурой поведения, то данный объект будет признан вредоносным.
Если в результате антивирусной проверки обнаружено, что в объекте загрузки 105 присутствуют вредоносные данные, то антивирусный модуль 106 передает информацию о зараженном объекте клиенту пиринговой сети 101, который оповещает сервер пиринговой сети 200 о том, что объект загрузки 105 содержит вредоносные данные и представляет опасность. Сервер пиринговой сети 200 реагирует на данное оповещение перемещением файла метаданных, содержащего данную контрольную сумму, из модуля хранения непроверенных метаданных (модуль 202 на Фиг.2) в модуль хранения метаданных, относящихся к вредоносным объектам, (модуль 205 на Фиг.2), делая невозможным дальнейшее распространение вредоносного объекта на другие компьютерные системы.
Также антивирусный модуль 106 при помощи модуля определения контрольных сумм 103, извлекающего контрольную сумму из файла метаданных 102, производит пополнение черного списка в модуле хранения 104 новыми контрольными суммами вредоносных объектов. Так происходит пополнение черного списка контрольных сумм.
В частном случае вредоносный код в объекте загрузки 105 может быть обнаружен антивирусным модулем 106 до завершения полной загрузки, например, при плановой антивирусной проверке. В таком случае загрузка прекращается до завершения, оповещается сервер пиринговой сети 200 и контрольная сумма добавляется в черный список в модуле 104.
Если антивирусная проверка не дала результатов, указывающих на присутствие вредоносных данных в объекте загрузки 105, то объект загрузки 105 является безопасным, о чем оповещается сервер пиринговой сети 200 при помощи клиента пиринговой сети 101.
Описываемая система обнаружения вредоносных объектов содержит также модуль обновления 107, который выполняет обновление антивирусной базы и обновление черного списка контрольных сумм в модуле хранения антивирусной базы и черного списка контрольных сумм 104. Модуль обновления 107 может быть реализован в программно-аппаратном виде, например, на основе сетевого адаптера, обеспечивающего сетевое подключение.
Модуль обновления 107 позволяет обновлять черный список контрольных сумм в модуле 104, а также при добавлении в черный список новой контрольной суммы производить отправку новой контрольной суммы вредоносного объекта на антивирусный сервер (не показан). При этом другие компьютеры, использующие описываемую систему, при обновлении черного списка контрольных сумм получат добавленную новую контрольную сумму. Соединение с антивирусным сервером происходит с использованием вычислительных сетей с возможностью подключения к сети Интернет 108.
В данном варианте реализации черный список контрольных сумм, находящийся в модуле 104, позволяет организовать хранение контрольных сумм вредоносных объектов с возможностью оперативного обмена контрольными суммами, помещаемыми в черный список, через антивирусный сервер (не показан). Таким образом, все компьютерные системы, обладающие системой обнаружения вредоносных объектов, распространяемых через пиринговые сети, производящие обмен в других пиринговых сетях, могут оперативно получать найденные контрольные суммы вредоносных объектов.
На Фиг.2 показана схема системы обнаружения вредоносных объектов, распространяемых через пиринговые сети, на стороне сервера пиринговой сети.
Сервер пиринговой сети 200 выполняет стандартные функции, направленные на управление работой пиринговой сети, регулирование обмена данными между компьютерными системами. Другая важнейшая задача, выполняемая при помощи сервера пиринговой сети 200 в рамках описываемого изобретения, состоит в предотвращении заражения компьютерных систем и препятствии распространения вредоносных объектов в пиринговых сетях.
В целях выполнения указанных задач сервер пиринговой сети 200 в одном из вариантов состоит из модуля управления 201, модуля хранения непроверенных метаданных 202, модуля хранения проверенных метаданных 203 и модуля хранения метаданных, относящихся к вредоносным объектам, 205.
Все файлы метаданных, находящиеся на сервере пиринговой сети 200, разделены на три части. Первая часть содержит файлы метаданных, которые относятся к объектам загрузки, не содержащим вирусов по результатам антивирусной проверки, такие файлы метаданных хранятся в модуле хранения проверенных метаданных 203. Файлы метаданных из модуля хранения проверенных метаданных 203 доступны для скачивания всем компьютерным системам, независимо от того, имеется ли на компьютерной системе описываемая система обнаружения вредоносных объектов или такая система отсутствует.
Вторая часть содержит файлы метаданных, относящиеся к непроверенным объектам. К данной группе принадлежат те файлы метаданных, которые появились в результате регистрации на сервере пириноговой сети 200 нового объекта загрузки. Если какой-либо пользователь добавляет новый файл метаданных, то тем самым дает возможность скачивать объект загрузки, соответствующий новому файлу метаданных. Файл метаданных в таком случае попадает в модуль хранения непроверенных метаданных 202.
Третья часть содержит те метаданные, которые относятся к объектам, являющимся вредоносными в результате проведенной антивирусной проверки. Такие файлы метаданных хранятся в модуле хранения метаданных, относящихся к вредоносным объектам, 205. Они не доступны для загрузки и служат для того, чтобы сделать невозможным добавление известных вредоносных метаданных на сервер пиринговой сети и предотвратить повторную загрузку одного и того же вредоносного объекта различными компьютерными системами.
Появление нового файла метаданных означает наличие нового доступного объекта загрузки, который представляет собой потенциальную опасность, так как объект загрузки может содержать вредоносные данные. По этой причине, а именно из-за рисков, связанных с возможным содержанием вредоносных данных в объекте загрузки, файл метаданных для такого объекта помещается в модуль хранения непроверенных метаданных 202, что ограничивает доступ к файлу метаданных. При этом файлы метаданных, относящиеся к заведомо вредоносным объектам, будут отсеяны модулем управления 201 по результатам сравнения с файлами метаданных, хранящимися в модуле 205.
Файлы метаданных в модуле 202 находятся в ограниченном доступе, который разрешен тем компьютерным системам, которые имеют возможность провести анализ на наличие вредоносных данных в объекте загрузки. При запросе компьютерной системы, у которой имеется система 100 обнаружения вредоносных объектов, распространяемых через пиринговые сети, файла метаданных из модуля 202 модуль управления 201 проводит проверку компьютерной системы на наличие системы обнаружения вредоносных объектов, распространяемых через пиринговые сети, описанной ранее при рассмотрении Фиг.1.
Таким образом, приоритетным правом на скачивание непроверенных файлов метаданных обладают компьютерные системы 100, которые после проведения загрузки проводят антивирусную проверку объекта загрузки и сообщают результаты антивирусной проверки на сервер пиринговой сети 200. Модуль управления 201 принимает информацию о результатах проверки. Файлы метаданных, относящиеся к объектам, которые не представляют опасности по результатам антивирусной проверки, модуль управления 201 перемещает из модуля хранения непроверенных метаданных 202 в модуль хранения проверенных метаданных 203, что делает перемещенные файлы доступными всем компьютерным системам, даже тем, у которых отсутствует система обнаружения объектов, распространяемых через пиринговые сети 100.
Файлы метаданных, относящиеся к объектам, которые представляют опасность по результатам антивирусной проверки, то есть содержат вредоносные данные, модуль управления 201 переносит из модуля хранения непроверенных метаданных 202 в модуль хранения метаданных, относящихся к вредоносным объектам, 205, таким образом, предотвращая дальнейшее распространение вредоносных данных и заражение компьютерных систем, которые не имеют антивирусных модулей.
Обмен данными по пиринговой сети может быть организован в рамках сетей разного размера. По территориальной распространенности принято разделять вычислительные сети на локальные сети (LAN - Local Area Network) и глобальные сети (WAN - Wide Area Network), покрывающие большие географические регионы, включающие в себя как локальные сети, так и прочие телекоммуникационные сети и устройства. В локальных вычислительных сетях, небольших по размеру, также может быть организован обмен данными с использованием пиринговой сети. Для сетей, где есть возможность определить IP- и MAC - адреса компьютерных систем, система обнаружения вредоносных объектов позволяет использовать дополнительно модуль хранения информации о заблокированных пользователях 204. При таком варианте осуществления системы модуль управления 201 получает IP - адреса и MAC - адреса компьютерных систем, находящихся в данной локальной сети, при помощи, например, ARP запроса, которые производят размещение новых непроверенных файлов метаданных на сервере пиринговой сети 200. Далее, если в результате работы описываемой системы обнаружится, что размещенный файл метаданных относится к объекту загрузки, представляющему опасность по результатам антивирусной проверки, то модуль управления 201 вносит в модуль 204 данные о том, что компьютерная система с соответствующим MAC - адресом предоставила метаданные, относящиеся к вредоносному объекту. В дальнейшем попытки размещения нового файла метаданных со стороны компьютерной системы, ранее размещавшей файл метаданных, относящийся к вредоносному объекту, будут пресекаться модулем управления 201 благодаря проверке MAC - адреса компьютерной системы по информации, находящейся в модуле 204.
На Фиг.3А изображена схема взаимодействия компьютерных систем, которые используют пиринговые сети для обмена данными.
В данном примере представлен сервер пиринговой сети 200, который устанавливает доступ к файлам метаданных, хранящихся на нем. Также в рамках данной системы возможна организация обмена данными между, по меньшей мере, двумя компьютерными системами. В общем случае, как показано на Фиг.3А, таких систем может быть несколько (301-306). Для всех компьютерных систем, участвующих в обмене данными в рамках данной пиринговой сети, можно провести разделение на компьютерные системы, обладающие системой 100 обнаружения вредоносных объектов, распространяемых через пиринговые сети (302, 303), и компьютерные системы, которые участвуют в обмене данными при помощи пиринговой сети, но такой системой не обладают (301, 304-306).
Если какая-либо компьютерная система имеет новый объект загрузки (т.е. такой объект, метаданные для которого отсутствуют среди уже имеющихся метаданных в модуле 203), для начала обмена данными необходимо поместить файл метаданных, описывающий данный объект загрузки, на сервере пиринговой сети 200. При этом если такой файл метаданных имеется в модуле 205, то модуль управления 201 не позволит добавить такой файл метаданных, так как он заведомо относится к вредоносным объектам. Пусть система 301 поместила новый файл метаданных, описывающий объект загрузки, на сервере 200. Данный файл попадает в модуль хранения непроверенных метаданных 202, и он находится в ограниченном доступе, то есть только компьютеры (302, 303), обладающие системой обнаружения вредоносных объектов, распространяемых через пиринговые сети, имеют возможность получить файл метаданных из модуля хранения 202. В данном случае компьютерные системы 301-306 при обращении на сервер с запросом файла метаданных будут проанализированы модулем управления 201, который примет решение о предоставлении непроверенного файла метаданных на основе наличия у компьютеров системы 100 обнаружения вредоносных объектов. В описываемом примере только компьютерные системы 302 и 303 получат файл метаданных, поскольку они смогут обнаружить вредоносные данные в объекте загрузки и не дать распространиться вредоносным объектам на другие незащищенные системы.
Как только компьютерные системы 302 и 303 получили файл метаданных, начинается обмен данными с компьютерной системой 301, на которой находится объект загрузки. После получения объекта загрузки любой из систем 302 или 303, например, компьютерной системой 302, производится антивирусная проверка объекта загрузки, после чего сервер пиринговой сети 200 информируется о результатах проверки.
По результатам проведенной антивирусной проверки объекта загрузки компьютерной системой, которая завершила загрузку первой, сервер пиринговой сети 200 получает уведомление о том, содержит ли объект загрузки вредоносные данные или нет.
Если антивирусный модуль 106 компьютерной системы 302 по результатам антивирусной проверки определил, что объект загрузки 105 содержит вредоносные данные, то клиент пиринговой сети 101 на компьютерной системе 302 передаст информацию о том, что объект загрузки представляет опасность, после чего файл метаданных будет перемещен из модуля хранения непроверенных метаданных 202 в модуль хранения метаданных, относящихся к вредоносным объектам 205 на сервере пиринговой сети 200. Таким образом, вредоносный объект не будет распространяться на те компьютерные системы (301, 304-306), у которых отсутствует система обнаружения вредоносных объектов 100.
После обнаружения вредоносных данных в объекте загрузки компьютерная система 302 при помощи антивирусного модуля 106 и модуля определения контрольных сумм 103 поместит контрольную сумму вредоносного объекта в модуль хранения антивирусной базы и черного списка контрольных сумм 104. При обновлении модуля хранения 104 модуль обновления 107 произведет пополнение черного списка контрольных сумм на антивирусном сервере (не показан), что послужит обновлению черных списков контрольных сумм у всех компьютерных систем, содержащих систему 100 обнаружения вредоносных объектов, распространяемых через пиринговые сети. При дальнейшей попытке загрузить такой же объект загрузки, содержащий вредоносные данные, например, из другой пиринговой сети, система 100 не позволит произвести загрузку такого объекта после проверки его контрольной суммы, извлеченной из файла метаданных, так как контрольная сумма такого объекта будет в черном списке контрольных сумм.
На Фиг.3Б изображена схема взаимодействия компьютерных систем, которые используют пиринговые сети для обмена данными, в случае определения безопасности объекта загрузки.
Когда компьютерная система, например, система 302 завершит загрузку объекта загрузки, то после проведения антивирусной проверки объекта загрузки при помощи антивирусного модуля 106 может оказаться, что объект загрузки является безопасным и не содержащим вредоносные данные. В таком случае такой объект может быть загружен и другими компьютерными системами (301, 304-306), которые не содержат систему 100 обнаружения вредоносных объектов, распространяемых через пиринговые сети, без опасности заражения. Для того чтобы компьютерные системы (301, 304-306) могли начать загрузку, необходимо, чтобы файл метаданных, описывающий объект загрузки, находился в модуле хранения проверенных метаданных 203 на сервере пиринговой сети 200. Поэтому при определении отсутствия вредоносности объекта загрузки по результатам антивирусной проверки, компьютерная система, первая завершившая проверку, например, система 302 уведомляет о безопасности объекта загрузки сервер пиринговой сети 200, который перемещает файл метаданных безопасного объекта загрузки из модуля хранения непроверенных метаданных 202 в модуль хранения проверенных метаданных 203. Таким образом, файл метаданных становится доступным для всех компьютерных систем, не зависимо от наличия или отсутствия системы 100 обнаружения вредоносных объектов, распространяемых через пиринговые сети. В процессе обмена данными, направленного на получение объекта загрузки, файл метаданных для которого помещен в модуль хранения проверенных метаданных 203, могут участвовать все компьютерные системы 301-306.
На Фиг.4 показан способ работы системы обнаружения вредоносных объектов, распространяемых через пиринговые сети. На шаге 401 компьютерная система производит обращение к серверу пиринговой сети 200 с запросом файла метаданных. Сервер пиринговой сети 200 принимает запрос и обрабатывает его при помощи модуля управления 201 на шаге 402. При этом производится определение при помощи модуля управления 201, где находится запрашиваемый файл метаданных: в модуле хранения непроверенных метаданных 202 или в модуле хранения проверенных метаданных 203. Если на шаге 403 установлено, что запрашиваемый файл метаданных находится в модуле хранения проверенных метаданных 203, то файл метаданных на шаге 404 передается компьютерной системе, осуществившей запрос, без дополнительных действий. В таком случае способ работы системы завершается на шаге 405.
Другой случай, а именно случай, при котором модулем управления 201 установлено на шаге 403, что запрашиваемый файл метаданных находится в модуле хранения непроверенных метаданных 202 на сервере 200, предполагает наличие дополнительных этапов. Нахождение файла метаданных в модуле хранения непроверенных метаданных 202 означает, что объект загрузки, который описывается таким файлом метаданных, не был проверен на наличие вредоносных данных и может представлять опасность. По этой причине загружать такие объекты, файлы метаданных для которых находятся в модуле хранения непроверенных метаданных 202, могут лишь компьютерные системы, обладающие системой 100 обнаружения вредоносных данных, распространяемых через пиринговые сети, например, системы 302 и 303.
Если на шаге 406 модуль управления 201 определит, что за файлом метаданных из модуля хранения непроверенных метаданных 202 обращается компьютерная система без системы 100 обнаружения вредоносных данных, распространяемых через пиринговые сети, например, система 305, то передача файла метаданных блокируется модулем управления 201 и способ завершается на шаге 407. С другой стороны, если к серверу обращается компьютерная система, обладающая системой 100 обнаружения вредоносных данных, распространяемых через пиринговые сети, то на шаге 409, компьютерная система, обладающая системой обнаружения вредоносных объектов, распространяемых через пиринговые сети, например, система 302 или 303 получит запрашиваемый файл метаданных, предварительно произведя обновление антивирусной базы и черного списка контрольных сумм в модуле хранения 104 при помощи модуля обновления 107 на шаге 408.
При получении файла метаданных 102 при помощи клиента пиринговой сети 101, модуль определения контрольных сумм 103 производит извлечение из файла метаданных 102 контрольной суммы объекта загрузки и проводит проверку извлеченной контрольной суммы по черному списку контрольных сумм из модуля 104. Описанная проверка производится на шаге 410. При этом модуль определения контрольных сумм 103 способен запретить на шаге 412 клиенту пиринговой сети 101 произвести загрузку объекта, если на шаге 411 контрольная сумма объекта будет найдена в черном списке контрольных сумм в модуле 104. В таком случае система переходит на шаг 420, на котором клиент пиринговой сети 101 информирует модуль управления 201 о том, что данный объект представляет угрозу. После чего на шаге 421 модуль управления производит перемещение файла метаданных из модуля хранения непроверенных метаданных 202 в модуль хранения метаданных, относящихся к вредоносным объектам, 205.
В другом возможном варианте контрольная сумма не будет обнаружена на шаге 411 модулем определения контрольных сумм 103 в черном списке контрольных сумм в модуле 104. Если контрольная сумма объекта загрузки не найдена в черном списке контрольных сумм, это не всегда означает, что объект безопасен, например, в том случае, если объект является новым и на момент проверки неизвестным вредоносным объектом. Однако отсутствие контрольной суммы объекта в черном списке контрольных сумм не дает оснований для запрета загрузки такого объекта. Поэтому на шаге 413 модуль определения контрольных сумм 103 дает разрешение на загрузку клиентом пиринговой сети 101 объекта загрузки 105.
После завершения загрузки объекта 105 антивирусный модуль 106 приступает к его проверке на шаге 414. Антивирусный модуль 106 использует антивирусную базу, находящуюся в модуле хранения антивирусной базы и черного списка контрольных сумм 104. Антивирусная проверка позволяет определить наличие вредоносных данных в объекте загрузки 105. Если на шаге 415 по результатам антивирусной проверки выявлено, что объект загрузки является вредоносным, то антивирусный модуль 106 проводит необходимые действия для защиты компьютерной системы в зависимости от степени опасности объекта загрузки 105, которые могут, в том числе, заключаться в удалении объекта загрузки, ограничении доступа к данному объекту и т.д. Кроме того, антивирусный модуль 106 сообщает модулю определения контрольных сумм 103, что объект представляет опасность. И на шаге 418 модуль определения контрольных сумм 103 производит пополнение черного списка контрольных сумм в модуле 104. После обновления черного списка контрольных сумм в модуле 104 модуль обновления 107 производит обновление черного списка контрольных сумм на антивирусном сервере (не показан) на шаге 419.
Одной из основных задач, выполняемых системой 100 обнаружения вредоносных объектов, распространяемых через пиринговые сети, является предупреждение сервера пиринговой сети 200 об опасности, которую может нести объект загрузки 105. Поэтому на шаге 420 клиент пиринговой сети 101, получив предупреждение об опасности от антивирусного модуля 106, информирует сервер пиринговой сети 200. Как только модуль управления 201 получит сигнал от компьютерной системы, он на шаге 421 переместит файл метаданных, относящийся к вредоносному объекту загрузки, в модуль хранения 205. Таким образом, происходит предотвращение заражения других компьютерных систем.
Возвращаясь к шагу 415, если антивирусный модуль 106 по результатам проведенной проверки делает заключение, что объект загрузки 105 угрозы не несет, то способом, аналогичным описанному ранее, клиент пиринговой сети 101 информирует сервер пиринговой сети 200 на шаге 416 о том, что объект загрузки 105 безопасен. Как только модуль управления 201 получает сигнал от компьютерной системы, он на шаге 417 перемещает файл метаданных, относящийся к безопасному объекту загрузки, из модуля хранения непроверенных метаданных 202 в модуль хранения проверенных метаданных 203. Таким образом, безопасный объект загрузки 105, описываемый файлом метаданных 102, становится доступным для загрузки любыми компьютерными системами в рамках пиринговой сети. На шаге 422 способ работы системы обнаружения вредоносных объектов, распространяемых через пиринговые сети, завершается.
На Фиг.5 показан пример компьютерной системы общего назначения, на основе которой может быть организована описанная система обнаружения вредоносных объектов.
Фиг.5 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 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, представленного на Фиг.5. В вычислительной сети могут присутствовать также и другие устройства, например маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего изобретения, согласующиеся с сущностью и объемом настоящего изобретения.