RU2602372C2 - System and method for distributed detection of malicious objects - Google Patents

System and method for distributed detection of malicious objects Download PDF

Info

Publication number
RU2602372C2
RU2602372C2 RU2015111430/08A RU2015111430A RU2602372C2 RU 2602372 C2 RU2602372 C2 RU 2602372C2 RU 2015111430/08 A RU2015111430/08 A RU 2015111430/08A RU 2015111430 A RU2015111430 A RU 2015111430A RU 2602372 C2 RU2602372 C2 RU 2602372C2
Authority
RU
Russia
Prior art keywords
security
client
security client
malicious
objects
Prior art date
Application number
RU2015111430/08A
Other languages
Russian (ru)
Other versions
RU2015111430A (en
Inventor
Андрей Геннадьевич Тихонов
Original Assignee
Закрытое акционерное общество "Лаборатория Касперского"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Закрытое акционерное общество "Лаборатория Касперского" filed Critical Закрытое акционерное общество "Лаборатория Касперского"
Priority to RU2015111430/08A priority Critical patent/RU2602372C2/en
Publication of RU2015111430A publication Critical patent/RU2015111430A/en
Application granted granted Critical
Publication of RU2602372C2 publication Critical patent/RU2602372C2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

FIELD: information technology.
SUBSTANCE: invention relates to computer security. Method, which comprises analysing by means of a first security client objects in order to detect a malicious object; collecting by means of first security client object information during analysis; selecting by first security client a second client from at least two security clients to participate in interaction with first security client; wherein selection of second security client is carried out based on geographic mutual arrangement of security clients, communication channel capacity between security clients, query results, previously processed by other security clients; analysing by second security client an object in order to detect a malicious object; eliminating by means of first security client on a computing device malicious object by means of eliminating malicious object obtained from side of second client.
EFFECT: technical result is improved security of computing device.
2 cl, 6 dwg

Description

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

Изобретение относится к области защиты от компьютерных угроз, а именно к системам и способам распределенного обнаружения вредоносных объектов.The invention relates to the field of protection against computer threats, and in particular to systems and methods for the distributed detection of malicious objects.

Уровень техникиState of the art

В настоящее время наряду с широким распространением компьютеров и подобных им устройств, таких как мобильные телефоны, имеет место рост количества компьютерных угроз. Под компьютерными угрозами в общем случае подразумевают объекты, способные нанести какой-либо вред компьютеру или пользователю компьютера, например сетевые черви, клавиатурные шпионы, компьютерные вирусы.Currently, along with the widespread adoption of computers and similar devices, such as mobile phones, there is an increase in the number of computer threats. In general, computer threats mean objects that can cause any harm to a computer or a computer user, for example, network worms, keyloggers, computer viruses.

Для защиты пользователя и его персонального компьютера от возможных компьютерных угроз применяются различные антивирусные технологии. В состав антивирусного программного обеспечения включаются различные модули обнаружения компьютерных угроз. Частными случаями таких модулей являются модули сигнатурного и эвристического обнаружения. Также в составе антивирусного программного обеспечения могут находиться средства для устранения как вредоносных объектов, так и последствий их присутствия. Возможны ситуации, когда модули обнаружения не являются эффективными - каждый из упомянутых методов обнаружения, как правило, требует наличия баз сигнатур или правил для эвристического обнаружения, которые распространяются при помощи предназначенного для этого серверов. И зачастую антивирусное программное обеспечение может не обладать набором актуальных баз для используемых модулей обнаружения по ряду причин, например из-за отсутствия соединения с серверами, распространяющими обновления баз на протяжении длительного времени.To protect the user and his personal computer from possible computer threats, various anti-virus technologies are used. The anti-virus software includes various computer threat detection modules. Special cases of such modules are signature and heuristic detection modules. Also, anti-virus software may contain tools to eliminate both malicious objects and the consequences of their presence. There may be situations when the detection modules are not effective - each of the mentioned detection methods, as a rule, requires the presence of signature databases or rules for heuristic detection, which are distributed using the servers intended for this. And often anti-virus software may not have a set of relevant databases for the used detection modules for a number of reasons, for example, due to a lack of connection with servers that have been distributing database updates for a long time.

Существуют решения, направленные на решение указанной проблемы, например в патенте US 7716660 B2 описана система обновлений программного обеспечения, которая подразумевает загрузку частей обновления с других компьютеров сети, отличных от сервера. Описывается классическая схема работы BitTorrent-сетей.There are solutions aimed at solving this problem, for example, in the patent US 7716660 B2 describes a system of software updates, which involves downloading parts of the update from other computers on the network other than the server. The classic scheme of the BitTorrent networks is described.

Однако упомянутый выше подход обладает недостатком. Скорость реакции на заражение вредоносным объектом компьютера может быть достаточно большой, что повлечет за собой нанесение вреда компьютеру и хранящимся на них данным.However, the above approach has a drawback. The reaction rate to infection with a malicious computer object can be quite high, which will entail harm to the computer and the data stored on them.

Настоящее изобретение позволяет более эффективно решить задачу распределенного обнаружения вредоносных объектов.The present invention allows to more effectively solve the problem of distributed detection of malicious objects.

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

Настоящее изобретение предназначено для обнаружения вредоносного программного обеспечения.The present invention is intended to detect malicious software.

Технический результат настоящего изобретения заключается в повышении безопасности вычислительного устройства, которое достигается путем устранения вредоносного объекта при помощи клиента безопасности на вычислительном устройстве.The technical result of the present invention is to increase the security of a computing device, which is achieved by eliminating a malicious object using a security client on a computing device.

Способ распределенного обнаружения вредоносных объектов, в котором анализируют при помощи первого клиента безопасности объекты с целью обнаружения вредоносного объекта; собирают при помощи первого клиента безопасности информацию об объекте во время проведения анализа; запрашивают при помощи первого клиента безопасности проведение анализа объекта вторым клиентом безопасности с использованием собранной ранее информации об объекте, если на этапе анализа, проведенного первым клиентом безопасности, не удалось обнаружить вредоносный объект; анализируют при помощи второго клиента безопасности объект с целью обнаружения вредоносного объекта; передают при помощи второго клиента безопасности результаты проведенного упомянутым клиентом безопасности анализа, а также по меньшей мере одного средства для устранения вредоносного объекта, если на этапе анализа был обнаружен вредоносный объект, первому клиенту безопасности; устраняют при помощи первого клиента безопасности на вычислительном устройстве вредоносный объект при помощи средств для устранения вредоносного объекта, полученных со стороны второго клиента.A distributed malware detection method in which objects are analyzed using a first security client to detect a malicious object; using the first security client, collect information about the object during the analysis; requesting, with the help of the first security client, an analysis of the object by the second security client using the previously collected information about the object if, at the stage of analysis carried out by the first security client, it was not possible to detect a malicious object; using the second security client, analyze the object in order to detect a malicious object; using the second security client, transmit the results of the analysis performed by the said security client, as well as at least one means for eliminating the malicious object, if a malicious object was detected at the analysis stage, to the first security client; eliminate the malicious object using the first security client on the computing device using the means for eliminating the malicious object received from the second client.

В частном случае реализации способа в качестве объекта выступает по крайней мере файл, процесс, участок оперативной памяти вычислительного устройства.In the particular case of implementing the method, at least a file, a process, a portion of the RAM of a computing device acts as an object.

В еще одном частном случае реализации способа сбор информации об объекте включает в себя вычисление контрольных сумм объектов и их частей, формирование журнала вызовов системных функций при выполнении программного кода объекта как с использованием эмуляции исполнения, так и во время исполнения на вычислительном устройстве, определение процесса, создавшего и запустившего исполнение объекта, определение процессов, запущенных объектом, определение сетевого адреса, с которого был загружен объект, определение сетевых адресов, к которым производится доступ со стороны объекта во время исполнения, определение областей памяти, к которым производится доступ со стороны объекта во время исполнения.In another particular case of the method, the collection of information about the object includes the calculation of the checksums of the objects and their parts, the formation of a call log of system functions when executing the program code of the object both using emulation of execution and during execution on a computing device, determining the process, created and launched the execution of the object, determining the processes started by the object, determining the network address from which the object was downloaded, determining the network addresses to which access is made from the side of the object at runtime, defining the areas of memory that are accessed from the side of the gate at runtime.

В другом частном случае реализации способа вторым клиентом безопасности, участвующим во взаимодействии с первым клиентом безопасности, является клиент безопасности, выбранный на основании по меньшей мере географического взаиморасположения клиентов безопасности, пропускной способности канала связи между клиентами безопасности, результатов запросов, ранее обработанных другими клиентами безопасности при помощи первого клиента безопасности.In another particular case of implementing the method, the second security client participating in the interaction with the first security client is a security client selected based on at least the geographical location of the security clients, the bandwidth of the communication channel between the security clients, the results of requests previously processed by other security clients when help first security client.

В еще одном частном случае реализации способа устранение на вычислительном устройстве вредоносных объектов дополнительно включает в себя устранение последствий присутствия упомянутых объектов на вычислительном устройствеIn another particular case of the implementation of the method, elimination of malicious objects on the computing device further includes eliminating the consequences of the presence of said objects on the computing device

Краткое описание чертежейBrief Description of the Drawings

Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:Additional objectives, features and advantages of the present invention will be apparent from reading the following description of an embodiment of the invention with reference to the accompanying drawings, in which:

Фиг. 1 иллюстрирует схему взаимодействия множества вычислительных устройств.FIG. 1 illustrates an interaction diagram of a plurality of computing devices.

Фиг. 2 показывает детальную схему одного из вариантов реализации клиента безопасности.FIG. 2 shows a detailed diagram of one embodiment of a security client.

Фиг. 3 показывает схему одного из вариантов реализации системы распределенного обнаружения вредоносных объектов.FIG. 3 shows a diagram of one embodiment of a distributed malware detection system.

Фиг. 4 иллюстрирует схему еще одного варианта реализации системы распределенного обнаружения вредоносных объектов.FIG. 4 illustrates a diagram of yet another embodiment of a distributed malware detection system.

Фиг. 5 показывает схему варианта реализации одного из алгоритмов работы системы распределенного обнаружения вредоносных объектов.FIG. 5 shows a diagram of an embodiment of one of the operation algorithms of a distributed malware detection system.

Фиг. 6 иллюстрирует пример компьютерной системы общего назначения.FIG. 6 illustrates an example of a general purpose computer system.

Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.Although the invention may have various modifications and alternative forms, the characteristic features shown by way of example in the drawings will be described in detail. It should be understood, however, that the purpose of the description is not to limit the invention to its specific embodiment. On the contrary, the purpose of the description is to cover all changes, modifications that are included in the scope of this invention, as defined by the attached formula.

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

Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.The objects and features of the present invention, methods for achieving these objects and features will become apparent by reference to exemplary embodiments. However, the present invention is not limited to the exemplary embodiments disclosed below, it can be embodied in various forms. The essence described in the description is nothing more than the specific details necessary to assist the specialist in the field of technology in a comprehensive understanding of the invention, and the present invention is defined in the scope of the attached claims.

Фиг. 1 иллюстрирует схему взаимодействия множества вычислительных устройств 110. Вычислительным устройством 110 в общем случае может быть персональный компьютер, мобильное вычислительное устройство (например, смартфон), ноутбук или несколько упомянутых вычислительных устройств, объединенных в сеть, например, для осуществления распределенных вычислений. Детальная схема варианта вычислительного устройства будет приведена на Фиг. 6. Множество устройств 110 связаны при помощи сети для передачи информации 120. Посредством сети 120 вычислительные устройства 110 обмениваются информацией, передают запросы и соответствующие ответы. Сеть 120 может в частном случае реализации являться одной подсетью, а другом случае реализации сеть 120 является совокупностью связанных между собой подсетей. Для передачи данных в сети 120 могут использоваться по меньшей мере технологии передачи данных: Ethernet, Wi-Fi, Bluetooth.FIG. 1 illustrates an interaction scheme of a plurality of computing devices 110. Computing device 110 can generally be a personal computer, a mobile computing device (eg, a smartphone), a laptop, or several of these computing devices that are networked, for example, for performing distributed computing. A detailed diagram of a variant of the computing device will be shown in FIG. 6. A plurality of devices 110 are connected through a network for transmitting information 120. Through a network 120, computing devices 110 exchange information, transmit requests and corresponding responses. Network 120 may, in the particular case of implementation, be one subnet, and in another implementation case, network 120 is a collection of interconnected subnets. For data transmission in the network 120, at least data transmission technologies may be used: Ethernet, Wi-Fi, Bluetooth.

На каждом из вычислительных устройств 110 присутствует клиент безопасности, детальная схема которого приведена на Фиг. 2. В частном случае реализации клиент безопасности 200 может являться антивирусным программным обеспечением. В частном случае реализации клиент безопасности выполняет функции по защите устройства 110 от вредоносных объектов. В общем случае под объектом понимают по крайней мере файл, процесс, участок оперативной памяти вычислительного устройства. Вредоносным объектом является любой объект на вычислительном устройстве (например, файл, процесс или область памяти), способный нанести какой-либо вред вычислительному устройству, пользователю устройства или данным пользователя (например, пароли для доступа к почте и т.п.), например сетевой червь, клавиатурный шпион, компьютерный вирус, а также ссылка на упомянутый объект.A security client is present on each of computing devices 110, a detailed diagram of which is shown in FIG. 2. In the particular case of implementation, the security client 200 may be anti-virus software. In the particular case of the implementation, the security client performs the functions of protecting the device 110 from malicious objects. In general, an object is understood to mean at least a file, a process, a portion of the RAM of a computing device. A malicious object is any object on a computing device (for example, a file, process, or memory area) that can cause any harm to a computing device, device user, or user data (for example, passwords for accessing mail, etc.), for example, a network a worm, keylogger, computer virus, as well as a link to the mentioned object.

Клиент безопасности 200 включает в себя модуль обнаружения 210, предназначенный для анализа объектов устройства 110 с целью обнаружения на устройстве 110 вредоносных объектов. В частном случае реализации модуль обнаружения 210 включает в себя модуль сигнатурного анализа 211 для проведения сигнатурного анализа, модуль эвристического анализа 212 для осуществления эвристического анализа объектов, модуль проактивной защиты 213 и эмулятор 214 для эмуляции исполнения объектов. Под эмуляцией исполнения объектов в частном случае реализации изобретения понимают формирование журнала вызовов (API функций, аргументов функций, а также результатов выполнения функций), при этом вычислительное устройство 110 не исполняет реальные инструкции объекта. Модуль проактивной защиты 213 предназначен для анализа исполнения объектов на устройстве 110, а именно журнала системных вызовов во время исполнения инструкций объекта на реальном вычислительном устройстве 110. Под инструкциями объекта понимают программный код, хранящийся в объекте, в частном случае реализации - машинный код исполняемого файла. Во время проведения анализа объектов модулем обнаружения 210 в зависимости от того, какой модуль используется для обнаружения вредоносного объекта (например, модуль сигнатурного анализа 211 или модуль 212), собирается информация об анализируемом объекте. Такая информация собирается модулем сбора информации 220. В частном случае реализации такая информация об объекте включает в себя:Security client 200 includes a detection module 210 for analyzing the objects of device 110 to detect malicious objects on device 110. In the particular case of implementation, the detection module 210 includes a signature analysis module 211 for conducting signature analysis, a heuristic analysis module 212 for performing heuristic analysis of objects, a proactive defense module 213 and an emulator 214 for emulating the execution of objects. Under the emulation of the execution of objects in the particular case of the invention, the formation of a call log (API functions, function arguments, as well as the results of the execution of functions) is understood, while the computing device 110 does not execute the real instructions of the object. The proactive protection module 213 is designed to analyze the execution of objects on the device 110, namely the system call log during the execution of the instructions of the object on the real computing device 110. The instructions of the object mean the program code stored in the object, in the particular case of implementation, the machine code of the executable file. During the analysis of objects by the detection module 210, depending on which module is used to detect a malicious object (for example, signature analysis module 211 or module 212), information about the analyzed object is collected. Such information is collected by the information collection module 220. In the particular case of implementation, such information about the object includes:

- контрольные суммы объектов и их частей;- checksums of objects and their parts;

- журнал системных вызовов объекта (как при эмуляции, так и во время реального выполнения инструкций);- a log of system calls of the object (both during emulation, and during the actual execution of instructions);

- источник объекта: процесс, создавший объект, а также ссылка на источник объекта (URL при загрузке из сети);- source of the object: the process that created the object, as well as a link to the source of the object (URL when downloading from the network);

- родительский процесс - процесс, запустивший исполнение инструкций объекта, а также процессы, запущенные посредством выполнения инструкций объекта;- parent process - the process that launched the execution of the instructions of the object, as well as the processes started by executing the instructions of the object;

- области памяти, к которым обращается объект как в ОЗУ, так и ПЗУ;- memory areas accessed by the object in both RAM and ROM;

- URL (англ. Uniform Resource Locator, указатель адреса ресурса), по которым производились обращения объектом;- URL (Eng. Uniform Resource Locator, pointer to the address of the resource), by which the object was accessed;

- используемые для защиты объекта упаковщики.- packers used to protect the facility.

В частном случае реализации модуль сбора информации 220 использует результаты работы модулей, входящих в состав модуля обнаружения, например журнал системных вызовов, формируемый эмулятором 214. На основании собираемой информации модуль обнаружения 210 принимает решение об обнаружении вредоносного объекта во время проводимого анализа. Модуль связи 230 предназначен для обмена данными с аналогичными модулями других клиентов безопасности (функционирующих в рамках других вычислительных устройств). В качестве передаваемых данных могут выступать данные, которыми оперирует клиент безопасности 200, в том числе результаты анализа объектов, проводимые модулем безопасности 210, информация об объектах, собираемая модулем сбора информации 220. Модуль устранения вредоносных объектов 240 предназначен для устранения присутствующих на вычислительном устройстве вредоносных объектов, например для удаления файлов, являющихся вредоносными объектами. В частном случае реализации устранение вредоносных объектов также включает в себя устранение последствий присутствия упомянутых объектов на вычислительном устройстве, например внесенных вредоносным объектом изменений в файловую систему компьютера или в реестр операционной системы.In the particular case of implementation, the information collection module 220 uses the results of the operation of the modules included in the detection module, for example, the system call log generated by the emulator 214. Based on the information collected, the detection module 210 decides to detect a malicious object during the analysis. Communication module 230 is designed to exchange data with similar modules of other security clients (operating within other computing devices). The data that can be transmitted is the data operated by the security client 200, including the results of the analysis of objects carried out by the security module 210, information about objects collected by the information collection module 220. The malware removal module 240 is designed to eliminate malicious objects present on the computing device , for example, to delete files that are malicious objects. In the particular case of implementation, the elimination of malicious objects also includes the elimination of the consequences of the presence of the mentioned objects on the computing device, for example, changes made by the malicious object to the file system of the computer or to the registry of the operating system.

Кроме вышеописанных модулей клиент безопасности 200 также включает в себя базу данных 250, которая в частном случае содержит информацию для обнаружения 251. Это информация, которую использует модуль обнаружения 210 для анализа объектов с целью обнаружения вредоносных объектов, например сигнатуры для обнаружения вредоносных объектов или эвристические правила. База данных 250 также содержит средства для устранения вредоносных объектов 252 на вычислительном устройстве 110. Средства 252 представляют собой набор правил, сценариев, а также исполняемых модулей (например, библиотек или драйверов), необходимых модулю устранения вредоносных объектов 240 для выполнения задач по устранению вредоносных объектов. В частном случае реализации средства для устранения вредоносных объектов 252 хранят набор вышеупомянутых правил, сценариев и исполняемых модулей в сочетании с идентификатором вредоносного объекта (например, контрольной суммой или символьным именем). Получив идентификатор вредоносного объекта (например, со стороны модуля обнаружения 210), модуль устранения вредоносных объектов 240 использует необходимые правила и сценарии для устранения вредоносного объекта, которые соответствуют полученному идентификатору вредоносного объекта. В частном случае реализации база данных 250 дополнительно хранит собранную в рамках анализа объектов информацию об объектах, а также соответствующие результаты анализа (был или нет обнаружен вредоносный объект по результатам анализа, в рамках которого был произведен сбор информации об объекте).In addition to the above modules, the security client 200 also includes a database 250, which in a particular case contains information for detection 251. This information is used by the detection module 210 to analyze objects in order to detect malicious objects, for example, signatures for detecting malicious objects or heuristic rules . Database 250 also contains tools for eliminating malicious objects 252 on computing device 110. Tools 252 are a set of rules, scripts, and executable modules (for example, libraries or drivers) required by the module for eliminating malicious objects 240 to perform tasks to eliminate malicious objects . In the particular case of the implementation of tools for eliminating malicious objects 252, they store a set of the above rules, scripts, and executable modules in combination with the identifier of the malicious object (for example, a checksum or symbolic name). Having received the identifier of the malicious object (for example, from the detection module 210), the malware removal module 240 uses the necessary rules and scripts to eliminate the malicious object that correspond to the received identifier of the malicious object. In the particular case of implementation, the database 250 additionally stores information about the objects collected as part of the analysis of the objects, as well as the corresponding results of the analysis (whether the malicious object was detected or not according to the results of the analysis, within which information about the object was collected).

Клиент безопасности 200 способен добавлять новую информацию или изменять имеющуюся из базы данных 250. В частном случае реализации клиент безопасности 200 способен изменять средства для устранения вредоносных объектов 252 на основании поступающих извне данных, например со стороны удаленного сервера или человека. В еще одном частном случае реализации клиент безопасности 200 сам формирует новые средства для устранения вредоносных объектов, например сценарии. Такие сценарии могут быть сформированы клиентом безопасности на основании формируемой во время анализа информации об объекте: сценарий для устранения вредоносного объекта формируется из наборов процедур, каждый из которых соответствует некоторому системному вызову из журнала, формируемого эмулятором 214. В еще одном частном случае реализации вместо журнала системных вызовов, формируемого эмулятором 214, используется журнал системных вызовов, формируемый модулем проактивной защиты 213. В частном случае реализации для хранения наборов процедур используется база данных процедур, входящая в состав клиента безопасности 200 (не отображена на Фиг. 2). Эта база данных хранит также соответствия наборов процедур системным вызовам, последствия которых упомянутый набор процедур должен устранить. Таким образом, в частном случае реализации сценарий для устранения вредоносного объекта формируется как последовательность наборов процедур для устранения последствий системных вызовов объекта.Security client 200 is able to add new information or change information available from database 250. In the particular case of implementation, security client 200 is able to change means to eliminate malicious objects 252 based on incoming data from, for example, a remote server or a person. In another particular case of implementation, the security client 200 itself generates new tools for eliminating malicious objects, for example, scripts. Such scenarios can be generated by the security client on the basis of information about the object generated during the analysis: the script for eliminating the malicious object is formed from sets of procedures, each of which corresponds to a system call from the log generated by the emulator 214. In another particular case, instead of the system log is implemented of calls generated by the emulator 214, the system call log generated by the proactive defense module 213 is used. In a particular case, the implementation for storing sets of procedure is used by the data base procedures, part of the security client 200 (not displayed in Fig. 2). This database also stores the correspondence of the sets of procedures to system calls, the consequences of which the mentioned set of procedures should eliminate. Thus, in the particular case of the implementation, the scenario for eliminating the malicious object is formed as a sequence of sets of procedures for eliminating the consequences of system calls of the object.

Фиг. 3 показывает схему одного из вариантов реализации системы распределенного обнаружения вредоносных объектов. Для обозначения сущностей на Фиг. 3 (аналогично на Фиг. 4) используются буквы (а, b, …), добавленные к нумерации соответствующих сущностей, описанных на Фиг. 1 и Фиг. 2, для обозначения соответствующих экземпляров, описанных на Фиг. 1 и Фиг. 2. Например вычислительное устройство 110а и клиент безопасности 200а - один из экземпляров вычислительного устройства 110 и клиента безопасности 200. Данная нумерация введена для упрощения обозначения взаимодействия сущностей разных вычислительным устройств («устройство а», «устройство b» и т.д.).FIG. 3 shows a diagram of one embodiment of a distributed malware detection system. To refer to the entities in FIG. 3 (similarly to FIG. 4) the letters (a, b, ...) are used added to the numbering of the corresponding entities described in FIG. 1 and FIG. 2 to refer to the respective instances described in FIG. 1 and FIG. 2. For example, computing device 110a and security client 200a are one of the instances of computing device 110 and security client 200. This numbering is introduced to simplify the designation of the interaction of entities of different computing devices (“device a”, “device b”, etc.).

В рамках одного из вариантов реализации изобретения предполагается использование по меньшей мере двух взаимосвязанных клиентов безопасности 200, каждый из которых функционирует на своем вычислительном устройстве 110. На вычислительном устройстве 110а производится анализ объектов при помощи клиента безопасности 200а. В рамках проводимого анализа клиент 200а формирует информацию об объекте (объем формируемого набора информации описан выше). Если клиент безопасности на этапе анализа обнаруживает вредоносный объект, принимаются соответствующие меры (при помощи модуля устранения вредоносных объектов 240а).In one embodiment, it is contemplated to use at least two interconnected security clients 200, each of which operates on its computing device 110. On the computing device 110a, objects are analyzed using the security client 200a. As part of the analysis, the client 200a generates information about the object (the volume of the generated set of information described above). If the security client detects a malicious object at the analysis stage, appropriate measures are taken (using the malware removal module 240a).

Если обнаружить вредоносный объект не удалось, клиент безопасности 200а посылает запрос клиенту безопасности 200b на проведение анализа объекта с целью обнаружения вредоносного объекта. В частном случае реализации для проведения вышеупомянутого анализа клиентом безопасности 200b клиент безопасности 200а передает ему собранную ранее информацию об объекте. В еще одном частном случае реализации для проведения анализа клиентом безопасности 200b клиент безопасности 200а передает ему сам объект. Клиент безопасности 200b, функционирующий на вычислительном устройстве 110b, получив соответствующий запрос со стороны клиента безопасности 200а, осуществляет анализ объекта с целью обнаружения вредоносного объекта. В частном случае реализации такой анализ подразумевает использование модуля обнаружения 210b применительно к полученной со стороны клиента безопасности 200а информации об объекте. В еще одном частном случае реализации клиент безопасности 200b осуществляет анализ полученного со стороны клиента безопасности 200а объекта с использованием самого объекта (например, файла). После проведения анализа, запрошенного клиентом безопасности 200а, клиент безопасности 200b передает клиенту безопасности результаты соответствующего анализа (был или нет обнаружен вредоносный объект). В частном случае реализации, если клиент безопасности 200b обнаружил вредоносный объект, клиент безопасности 200b вместе с результатами анализа дополнительно пересылает клиенту безопасности 200а средства для устранения соответствующего вредоносного объекта.If a malicious object cannot be detected, security client 200a sends a request to security client 200b to analyze the object in order to detect the malicious object. In the particular case of implementation, in order to carry out the aforementioned analysis by the security client 200b, the security client 200a transmits to it the previously collected object information. In another particular implementation, for the analysis by the security client 200b, the security client 200a passes the object to it. A security client 200b operating on computing device 110b, upon receipt of a request from the security client 200a, analyzes the object in order to detect a malicious object. In a particular implementation, this analysis involves the use of a detection module 210b in relation to the object information received from the security client 200a. In another particular embodiment, the security client 200b analyzes the object received from the security client 200a using the object itself (for example, a file). After the analysis requested by the security client 200a, the security client 200b passes the results of the corresponding analysis to the security client (whether or not a malicious object was detected). In the particular case of implementation, if the security client 200b detects a malicious object, the security client 200b, together with the analysis results, additionally sends funds to the security client 200a to eliminate the corresponding malicious object.

Если клиент безопасности 200b обнаружил вредоносный объект во время анализа и соответствующие результаты анализа были переданы клиенту безопасности 200а, то клиент безопасности 200а признает объект, анализ которого был запрошен для проведения клиентом безопасности 200b, вредоносным. В частном случае реализации клиент безопасности 200а дополнительно производит устранение обнаруженного таким образом вредоносного объекта. В частном случае реализации для устранения вредоносного объекта клиент безопасности 200а использует средства для устранения на вычислительном устройстве вредоносного объекта, полученные со стороны клиента безопасности 200b.If the security client 200b detected a malicious object during the analysis and the corresponding analysis results were transferred to the security client 200a, then the security client 200a recognizes the object whose analysis was requested for security client 200b to be malicious. In the particular case of implementation, the security client 200a additionally eliminates the malicious object detected in this way. In the particular case of implementation, to eliminate the malicious object, the security client 200a uses the means to eliminate the malicious object obtained from the security client 200b on the computing device.

Фиг. 4 иллюстрирует схему еще одного варианта реализации системы распределенного обнаружения вредоносных объектов. В рамках еще одного из вариантов реализации изобретения на вычислительном устройстве 110а производится анализ объектов при помощи клиента безопасности 200а. В рамках проводимого анализа клиент 200а формирует информацию об объекте (объем формируемого набора информации описан выше). Если клиент безопасности на этапе анализа обнаруживает вредоносный объект, принимаются соответствующие меры (при помощи модуля устранения вредоносных объектов 240а). Собранная на этапе анализа информация также помечается в соответствии с результатами анализа.FIG. 4 illustrates a diagram of yet another embodiment of a distributed malware detection system. As part of another embodiment of the invention, a computing device 110a analyzes objects using a security client 200a. As part of the analysis, the client 200a generates information about the object (the volume of the generated set of information described above). If the security client detects a malicious object at the analysis stage, appropriate measures are taken (using the malware removal module 240a). Information collected during the analysis phase is also marked in accordance with the analysis results.

После проведения вышеописанных операций клиент безопасности 200а производит рассылку другим клиентам безопасности (например, 200b и 200n) данных, которые могут быть использованы этими клиентам безопасности для обнаружения вредоносных объектов. В частном случае реализации клиент безопасности 200а передает клиенту безопасности 200b идентификатор проанализированного объекта, собранную информацию об объекте, результаты анализа объекта, а также средства для устранения вредоносных объектов (если такие средства необходимы и имеются в распоряжении у клиента безопасности 200а). После получения упомянутых данных клиент безопасности 200b использует эти данные для анализа объектов (используется полученная информация об объекте, а также результаты анализа объекта), а также для устранения на вычислительном устройстве вредоносных объектов (используются полученные средства для устранения на вычислительном устройстве вредоносных объектов).After performing the above operations, the security client 200a sends out to other security clients (for example, 200b and 200n) data that these security clients can use to detect malicious objects. In the particular case of implementation, the security client 200a transfers to the security client 200b the identifier of the analyzed object, the collected information about the object, the results of the analysis of the object, as well as means for eliminating malicious objects (if such tools are necessary and are available to the security client 200a). After receiving the mentioned data, the security client 200b uses this data to analyze objects (the obtained information about the object is used, as well as the results of the analysis of the object), as well as to eliminate malicious objects on the computing device (the obtained means are used to eliminate malicious objects on the computing device).

В частном случае реализации изобретения клиент безопасности 200b во время анализа объекта производит сравнение собранной информации об объекте с информацией об объектах, которая поступает со стороны клиента безопасности 200а. В частном случае реализации клиент безопасности 200b производит обнаружение вредоносного объекта в рамках проводимого анализа, если полученная от клиента безопасности 200а информация о вредоносном объекте совпадает с собранной информацией об анализируемом объекте. В еще одном частном случае реализации для обнаружения вредоносного объекта клиентом безопасности 200b в соответствии с вышеописанной схемой достаточно частичное совпадение полученной от клиента безопасности 200а информации о вредоносном объекте и информации об объекте, собранной в рамках анализа, например совпадение 90% информации.In the particular case of the invention, the security client 200b during the analysis of the object compares the collected information about the object with information about the objects that comes from the security client 200a. In the particular case of implementation, the security client 200b detects a malicious object as part of the analysis if the information about the malicious object received from the security client 200a matches the collected information about the analyzed object. In another particular implementation case, in order to detect a malicious object by the security client 200b in accordance with the above scheme, a partial match of the malicious object information received from the security client 200a and the object information collected during the analysis is sufficient, for example, 90% of the information matches.

Следует понимать, что вышеописанное взаимодействие клиента безопасности 200а и клиента безопасности 200b является частным случаем любых двух клиентов безопасности 200, и в роли клиента безопасности 200b может выступать любой другой, например, 200n, а вместо клиента безопасности 200а - клиента безопасности 200b.It should be understood that the above interaction between the security client 200a and the security client 200b is a special case of any two security clients 200, and the security client 200b can be any other, for example, 200n, and the security client 200b instead of the security client 200a.

Фиг. 5 показывает схему варианта реализации одного из алгоритмов работы системы распределенного обнаружения вредоносных объектов. На этапе 501 клиент безопасности 200 (первый клиент безопасности 200) осуществляет анализ объекта на вычислительном устройстве 110 с целью обнаружения вредоносного объекта. На этапе 502 упомянутый клиент безопасности 200 собирает полученную во время анализа информацию об анализируемом объекте. Стоит отметить, что анализ объекта и сбор информации в частном случае реализации могут производиться параллельно, и решение о признании объекта, например, вредоносным может быть принято до окончания этапа сбора информации 502 (если был уже собран достаточный для обнаружения вредоносного объекта объем информации об объекте). Если на этапе 503 вредоносный объект был обнаружен клиентом безопасности 200 в соответствии с результатами ранее проведенного анализа, то на этапе 504 клиент безопасности 200 осуществляет устранение обнаруженного вредоносного объекта на вычислительном устройстве 110. Если же на этапе 503 вредоносный объект не был обнаружен клиентом безопасности 200 в соответствии с результатами ранее проведенного анализа, то на этапе 505 клиент безопасности 200 осуществляет запрос проведения анализа вторым клиентом безопасности 200 с целью обнаружения вредоносного объекта. На этапе 506 второй клиент безопасности 200 осуществляет запрошенный анализ объекта с целью обнаружения вредоносного объекта. Следует отметить, что на этом этапе используется ранее собранная информация об объекте при помощи первого клиента безопасности 200. На этапе 507 второй клиент безопасности 200 производит обнаружение вредоносного объекта, после чего, на этапе 508, второй клиент безопасности 200 передает результаты проведенного анализа первому клиенту безопасности 200 совместно со средствами для устранения обнаруженного вредоносного объекта. На этапе 509 первый клиент безопасности 200 осуществляет устранение вредоносного объекта при помощи средств для устранения вредоносных объектов на вычислительном устройстве, полученных со стороны второго клиента безопасности.FIG. 5 shows a diagram of an embodiment of one of the operation algorithms of a distributed malware detection system. At step 501, the security client 200 (the first security client 200) analyzes the object on the computing device 110 in order to detect a malicious object. At step 502, the said security client 200 collects information obtained during the analysis of the analyzed object. It is worth noting that the analysis of the object and the collection of information in the particular case of implementation can be carried out in parallel, and the decision to recognize the object as malicious, for example, can be made before the end of the information collection phase 502 (if sufficient information about the object has already been collected to detect the malicious object) . If at step 503 a malicious object was detected by security client 200 in accordance with the results of a previous analysis, then at step 504, security client 200 eliminates the detected malicious object on computing device 110. If at step 503 a malicious object was not detected by security client 200 in according to the results of the previous analysis, then at step 505, the security client 200 performs a request for analysis by the second security client 200 in order to detect malicious object. At step 506, the second security client 200 performs the requested analysis of the object in order to detect a malicious object. It should be noted that at this stage previously collected information about the object is used using the first security client 200. At step 507, the second security client 200 detects a malicious object, and then, at step 508, the second security client 200 passes the results of the analysis to the first security client 200 together with means for eliminating the detected malicious object. At step 509, the first security client 200 eliminates the malicious object using means for eliminating malicious objects on the computing device received from the second security client.

Следует отметить, что выбор клиента безопасности для взаимодействия (например, передачи запроса на анализ, информации об объекте, средств для устранения вредоносных объектов и любой другой информации), а именно выбор первым клиентом безопасности 200 второго клиента безопасности 200, может осуществляются несколькими способами. В частном случае реализации первый клиент безопасности 200 выбирает для взаимодействия второй клиент безопасности 200 на основании географического взаиморасположения клиентов безопасности 200: для взаимодействия выбирается клиент безопасности 200, географически наименее удаленный от первого клиента безопасности 200. В еще одном частном случае реализации под географическим взаиморасположением понимают принцип, согласно которому для взаимодействия не будет выбираться клиент безопасности 200, который находится в определенной географической зоне (например, чтобы данные в рамках взаимодействия не передавались по сетям недружественного государства). В еще одном частном случае реализации для взаимодействия выбирается клиент безопасности 200, пропускная скорость канала связи с которым наибольшая среди других клиентов безопасности 200. В еще одном частном случае реализации выбор клиента безопасности 200 для взаимодействия может основываться на его «надежности»: если первый клиент безопасности 200 для взаимодействия имеет выбор из двух клиентов безопасности 200, то будет выбран клиент безопасности 200, который ранее смог обнаружить наибольшее количество вредоносных объектов и/или предоставить средства для устранения наибольшего количества вредоносных объектов.It should be noted that the choice of a security client for interaction (for example, transmitting an analysis request, information about an object, means for eliminating malicious objects and any other information), namely, the first security client 200 selects a second security client 200, can be implemented in several ways. In the particular case of the implementation, the first security client 200 selects the second security client 200 for interaction based on the geographic location of the security clients 200: for the interaction, the security client 200 is selected that is geographically the least distant from the first security client 200. In another particular case of implementation, the principle of geographic location is understood as the principle according to which, for interaction, the security client 200, which is located in a certain geographical zone (for example, so that the data in the framework of the interaction is not transmitted over the networks of an unfriendly state). In another special case of implementation, a security client 200 is selected for interaction, the communication channel throughput is the highest among other security clients 200. In another particular implementation case, the choice of security client 200 for interaction can be based on its “reliability”: if the first security client 200 for interaction has a choice of two security clients 200, then the security client 200 will be selected, which previously could detect the largest number of malicious objects and / or provide Means to eliminate the greatest number of malicious objects.

В частном случае реализации клиент безопасности 200 в случае, если ему не удалось в рамках запрошенного другим клиентом безопасности 200 анализа обнаружить вредоносный объект, может передать аналогичный запрос на проведение анализа с целью обнаружения вредоносного объекта еще одному клиенту безопасности 200 (отличному от клиента безопасности 200, инициировавшего анализ) и передать клиенту безопасности 200, запросившему анализ, результаты анализа, проведенного еще одним клиентом безопасности 200.In the particular case of implementation, the security client 200, if it failed to detect a malicious object within the framework of the analysis requested by another security client 200, may send a similar analysis request to detect another malicious object to another security client 200 (different from security client 200, initiating the analysis) and transmit to the security client 200, which requested the analysis, the results of the analysis performed by another security client 200.

Фиг. 6 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26 содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.FIG. 6 is an example of a general purpose computer system, a personal computer or server 20 comprising a central processor 21, a system memory 22, and a system bus 23 that contains various system components, including memory associated with the central processor 21. The system bus 23 is implemented as any prior art bus structure comprising, in turn, a bus memory or a bus memory controller, a peripheral bus and a local bus that is capable of interacting with any other bus architecture. The system memory contains read-only memory (ROM) 24, random access memory (RAM) 25. The main input / output system (BIOS) 26 contains the basic procedures that ensure the transfer of information between the elements of the personal computer 20, for example, at the time of loading the operating system using ROM 24.

Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.The personal computer 20 in turn contains a hard disk 27 for reading and writing data, a magnetic disk drive 28 for reading and writing to removable magnetic disks 29, and an optical drive 30 for reading and writing to removable optical disks 31, such as a CD-ROM, DVD -ROM and other optical information carriers. The hard disk 27, the magnetic disk drive 28, the optical drive 30 are connected to the system bus 23 through the interface of the hard disk 32, the interface of the magnetic disks 33 and the interface of the optical drive 34, respectively. Drives and associated computer storage media are non-volatile means of storing computer instructions, data structures, software modules and other data of a personal computer 20.

Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.The present description discloses an implementation of a system that uses a hard disk 27, a removable magnetic disk 29, and a removable optical disk 31, but it should be understood that other types of computer storage media 56 that can store data in a form readable by a computer (solid state drives, flash memory cards, digital disks, random access memory (RAM), etc.) that are connected to the system bus 23 through the controller 55.

Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47 персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например колонками, принтером и т.п.Computer 20 has a file system 36 where the recorded operating system 35 is stored, as well as additional software applications 37, other program modules 38, and program data 39. The user is able to enter commands and information into personal computer 20 via input devices (keyboard 40, keypad “ the mouse "42). Other input devices (not displayed) can be used: microphone, joystick, game console, scanner, etc. Such input devices are, as usual, connected to the computer system 20 via a serial port 46, which in turn is connected to the system bus, but can be connected in another way, for example, using a parallel port, a game port, or a universal serial bus (USB). A monitor 47 or other type of display device is also connected to the system bus 23 via an interface such as a video adapter 48. In addition to the monitor 47, the personal computer may be equipped with other peripheral output devices (not displayed), such as speakers, a printer, and the like.

Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 6. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.The personal computer 20 is capable of operating in a networked environment, using a network connection with another or more remote computers 49. The remote computer (or computers) 49 are the same personal computers or servers that have most or all of the elements mentioned earlier in the description of the creature the personal computer 20 of FIG. 6. Other devices, for example, routers, network stations, peer-to-peer devices or other network nodes, may also be present on the computer network.

Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.Network connections can form a local area network (LAN) 50 and a wide area network (WAN). Such networks are used in corporate computer networks, internal networks of companies and, as a rule, have access to the Internet. In LAN or WAN networks, the personal computer 20 is connected to the local area network 50 via a network adapter or network interface 51. When using the networks, the personal computer 20 may use a modem 54 or other means of providing communication with a global computer network such as the Internet. The modem 54, which is an internal or external device, is connected to the system bus 23 via the serial port 46. It should be clarified that the network connections are only exemplary and are not required to display the exact network configuration, i.e. in reality, there are other ways to establish a technical connection between one computer and another.

В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.In conclusion, it should be noted that the information provided in the description are examples that do not limit the scope of the present invention defined by the claims.

Claims (2)

1. Способ распределенного обнаружения вредоносных объектов, в котором:
a. анализируют при помощи первого клиента безопасности объекты с целью обнаружения вредоносного объекта;
b. собирают при помощи первого клиента безопасности информацию об объекте во время проведения анализа;
c. выбирают при помощи первого клиента безопасности второй клиент безопасности из по меньшей мере двух клиентов безопасности для участия во взаимодействии с первым клиентом безопасности;
при этом выбор второго клиента безопасности осуществляется из по меньшей мере двух клиентов безопасности, связанных с первым клиентом безопасности, на основании по меньшей мере географического взаиморасположения клиентов безопасности, пропускной способности канала связи между клиентами безопасности, результатов запросов, ранее обработанных другими клиентами безопасности;
d. запрашивают при помощи первого клиента безопасности проведение анализа объекта вторым клиентом безопасности с использованием собранной ранее информации об объекте, если на этапе анализа, проведенного первым клиентом безопасности, не удалось обнаружить вредоносный объект;
e. анализируют при помощи второго клиента безопасности объект с целью обнаружения вредоносного объекта;
f. передают при помощи второго клиента безопасности результаты проведенного упомянутым клиентом безопасности анализа, а также по меньшей мере одного средства для устранения вредоносного объекта, если на этапе анализа был обнаружен вредоносный объект, первому клиенту безопасности;
g. устраняют при помощи первого клиента безопасности на вычислительном устройстве вредоносный объект при помощи средств для устранения вредоносного объекта, полученных со стороны второго клиента.
1. The method of distributed detection of malicious objects, in which:
a. analyze objects with the first security client in order to detect a malicious object;
b. using the first security client, collect information about the object during the analysis;
c. using the first security client, select a second security client from at least two security clients to participate in interaction with the first security client;
wherein the second security client is selected from at least two security clients associated with the first security client, based on at least the geographical location of the security clients, the bandwidth of the communication channel between the security clients, the results of requests previously processed by other security clients;
d. requesting, with the help of the first security client, an analysis of the object by the second security client using the previously collected information about the object if, at the stage of analysis carried out by the first security client, it was not possible to detect a malicious object;
e. using the second security client, analyze the object in order to detect a malicious object;
f. using the second security client, transmit the results of the analysis performed by the said security client, as well as at least one means for eliminating the malicious object, if a malicious object was detected at the analysis stage, to the first security client;
g. eliminate the malicious object using the first security client on the computing device using the means for eliminating the malicious object received from the second client.
2. Система распределенного обнаружения вредоносных объектов, которая содержит:
связанные между собой первый клиент безопасности и по меньшей мере два клиента безопасности, каждый из которых предназначен для анализа объектов с целью обнаружения вредоносных объектов, сбора информации о объектах во время проведения анализа, устранения на вычислительном устройстве вредоносных объектов, запроса проведения анализа объектов другому клиенту безопасности с целью обнаружения вредоносных объектов, для анализа объектов, запрошенных со стороны другого клиента безопасности, с использованием полученной со стороны этого клиента безопасности информации об объектах с целью обнаружения вредоносных объектов, передачи результатов проведенного анализа другим клиентам безопасности, для передачи по меньшей мере одного средства для устранения на вычислительном устройстве вредоносных объектов другим клиентам безопасности, а также для выбора другого клиента безопасности для участия во взаимодействии;
при этом выбор другого клиента безопасности осуществляется из по меньшей мере двух клиентов безопасности, связанных с выбирающим клиентом безопасности, на основании по меньшей мере географического взаиморасположения клиентов безопасности, пропускной способности канала связи между клиентами безопасности, результатов запросов, ранее обработанных другими клиентами безопасности;
при этом один клиент безопасности также способен использовать переданные со стороны другого клиента безопасности средства для устранения на вычислительном устройстве вредоносных объектов.
2. A distributed malware detection system that contains:
interconnected first security client and at least two security clients, each of which is designed to analyze objects in order to detect malicious objects, collect information about objects during the analysis, eliminate malicious objects on the computing device, request the analysis of objects to another security client in order to detect malicious objects, to analyze objects requested by another security client, using received from this client coagulant security information about the objects in order to detect malicious programs, transmitting the results of the analysis to other security clients, to transmit at least one means for removing on the computing device of malware other security clients and to select a different client security to participate in the interaction;
however, the selection of another security client is carried out from at least two security clients associated with the selecting security client, based on at least the geographical location of the security clients, the bandwidth of the communication channel between the security clients, the results of requests previously processed by other security clients;
moreover, one security client is also able to use the means transferred from the other security client to eliminate malicious objects on the computing device.
RU2015111430/08A 2015-03-31 2015-03-31 System and method for distributed detection of malicious objects RU2602372C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2015111430/08A RU2602372C2 (en) 2015-03-31 2015-03-31 System and method for distributed detection of malicious objects

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2015111430/08A RU2602372C2 (en) 2015-03-31 2015-03-31 System and method for distributed detection of malicious objects

Publications (2)

Publication Number Publication Date
RU2015111430A RU2015111430A (en) 2016-10-20
RU2602372C2 true RU2602372C2 (en) 2016-11-20

Family

ID=57138280

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2015111430/08A RU2602372C2 (en) 2015-03-31 2015-03-31 System and method for distributed detection of malicious objects

Country Status (1)

Country Link
RU (1) RU2602372C2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523502B1 (en) * 2006-09-21 2009-04-21 Symantec Corporation Distributed anti-malware
US8166203B1 (en) * 2009-05-29 2012-04-24 Google Inc. Server selection based upon time and query dependent hashing
RU2481633C2 (en) * 2011-08-04 2013-05-10 Закрытое акционерное общество "Лаборатория Касперского" System and method for automatic investigation of safety incidents

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523502B1 (en) * 2006-09-21 2009-04-21 Symantec Corporation Distributed anti-malware
US8166203B1 (en) * 2009-05-29 2012-04-24 Google Inc. Server selection based upon time and query dependent hashing
RU2481633C2 (en) * 2011-08-04 2013-05-10 Закрытое акционерное общество "Лаборатория Касперского" System and method for automatic investigation of safety incidents

Also Published As

Publication number Publication date
RU2015111430A (en) 2016-10-20

Similar Documents

Publication Publication Date Title
US11489855B2 (en) System and method of adding tags for use in detecting computer attacks
RU2485577C1 (en) Method of increasing reliability of detecting malicious software
RU2634211C1 (en) Method and system of protocols analysis of harmful programs interaction with control centers and detection of computer attacks
EP3111330B1 (en) System and method for verifying and detecting malware
RU2568295C2 (en) System and method for temporary protection of operating system of hardware and software from vulnerable applications
CN111737696A (en) Method, system and equipment for detecting malicious file and readable storage medium
US20190332771A1 (en) System and method for detection of malicious hypertext transfer protocol chains
US20170244762A1 (en) System and Method for Collection and Analysis of Endpoint Forensic and Event Data
RU2617654C2 (en) System and method of formation of anti-virus records used to detect malicious files on user's computer
US10447726B2 (en) Mitigating attacks on server computers by enforcing platform policies on client computers
US9332029B1 (en) System and method for malware detection in a distributed network of computer nodes
US20170041342A1 (en) System and method of utilizing a dedicated computer security service
US11290484B2 (en) Bot characteristic detection method and apparatus
RU2584506C1 (en) System and method of protecting operations with electronic money
US20120260304A1 (en) Methods and apparatus for agent-based malware management
JP2019023918A (en) System and method for blocking execution of script
RU2624552C2 (en) Method of malicious files detecting, executed by means of the stack-based virtual machine
RU2653241C1 (en) Detecting a threat of a zero day with the use of comparison of a leading application/program with a user agent
US11949694B2 (en) Context for malware forensics and detection
RU2598337C2 (en) System and method of selecting means of interception of data transmitted over network
US10965693B2 (en) Method and system for detecting movement of malware and other potential threats
JP2014179025A (en) Connection destination information extraction device, connection destination information extraction method, and connection destination information extraction program
WO2017217247A1 (en) Malignant event detection apparatus, malignant event detection method, and malignant event detection program
RU2614929C1 (en) Method for anti-virus records transmission used to detect malicious files
US20230344861A1 (en) Combination rule mining for malware signature generation