RU2808385C1 - Method for classifying objects to prevent spread of malicious activity - Google Patents

Method for classifying objects to prevent spread of malicious activity Download PDF

Info

Publication number
RU2808385C1
RU2808385C1 RU2023116032A RU2023116032A RU2808385C1 RU 2808385 C1 RU2808385 C1 RU 2808385C1 RU 2023116032 A RU2023116032 A RU 2023116032A RU 2023116032 A RU2023116032 A RU 2023116032A RU 2808385 C1 RU2808385 C1 RU 2808385C1
Authority
RU
Russia
Prior art keywords
objects
information
malicious
domain name
analysis
Prior art date
Application number
RU2023116032A
Other languages
Russian (ru)
Inventor
Денис Игоревич Паринов
Виктория Владимировна Власова
Алексей Михайлович Романенко
Алексей Евгеньевич Антонов
Original Assignee
Акционерное общество "Лаборатория Касперского"
Filing date
Publication date
Application filed by Акционерное общество "Лаборатория Касперского" filed Critical Акционерное общество "Лаборатория Касперского"
Application granted granted Critical
Publication of RU2808385C1 publication Critical patent/RU2808385C1/en

Links

Abstract

FIELD: information security.
SUBSTANCE: methods for identifying malicious packet switch nodes and intermediate nodes through which malware is distributed. According to an implementation option, a method is used to classify objects to prevent the spread of malicious activity, made with the ability to implement steps according to which the following is performed: search for objects on the network that have common information with other objects; constructing a connection graph containing classified and unclassified objects in the form of vertices, and the connection between the objects indicates the presence of common information between the objects, and the classified objects are malicious objects; selecting from the generated connection graph at least one subgraph, including homogeneous objects and containing at least one unclassified object, based on at least one of the approaches: analysis of group connections between objects; analysis of sequential communication between objects; performing a classification of each unclassified object in each subgraph based on the analysis of the objects using classification rules; restricting access to an object that is classified as malicious to prevent the spread of malicious activity.
EFFECT: preventing the spread of malicious activity on a computer network.
15 cl, 7 dwg

Description

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

Изобретение относится к области информационной безопасности, а более конкретно к способам выявления вредоносных сетевых узлов или промежуточных сетевых узлов, через которые осуществляется распространение вредоносных программ.The invention relates to the field of information security, and more specifically to methods for identifying malicious network nodes or intermediate network nodes through which malware is distributed.

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

Вредоносное программное обеспечение (далее - ПО) постоянно развивается, побуждая поставщиков услуг информационной безопасности не отставать от постоянно меняющегося ландшафта угроз. В том числе злоумышленники развивают и пути распространения вредоносного ПО, используют новые уязвимости для проникновения в компьютерные системы (далее - компьютер).Malware is constantly evolving, challenging information security service providers to keep up with the ever-changing threat landscape. Among other things, attackers are developing ways to distribute malware and using new vulnerabilities to penetrate computer systems (hereinafter referred to as computers).

В настоящий момент используются различные варианты атак на ресурсы компьютерной сети. Например, атака на ресурсы вычислительной сети, которая заключается в регистрации злоумышленником доменного имени для последующего распространения вредоносного ПО или использования этого доменного имени для фишинга (от англ. phishing).Currently, various types of attacks on computer network resources are used. For example, an attack on computer network resources, which consists of an attacker registering a domain name for the subsequent distribution of malware or using this domain name for phishing.

Такие атаки могут использоваться для перенаправления пользователей на вредоносный, или фишинговый веб-сайт, или поддельный почтовый сервис по выбору злоумышленника. На страницах указанных веб-сайтов могут содержаться, например, троянские программы или вирусы, а поддельный почтовый сервис может запросить от пользователя логин и пароль к почтовому ящику и передать эти учетные данные злоумышленнику. Посетитель же фишингового веб-сайта не будет осведомлен о подмене и, вероятно, загрузит вредоносное ПО на свой компьютер.Such attacks can be used to redirect users to a malicious or phishing website or fake email service of the attacker's choosing. The pages of these websites may contain, for example, Trojan horses or viruses, and a fake email service may ask the user for a login and password to the mailbox and transfer these credentials to the attacker. A visitor to a phishing website will not be aware of the spoofing and will likely download malware onto their computer.

Из уровня техники известно решение, представленное в патенте US10178121B2. В качестве решения представлена система оценки доменов на основе данных о регистрации доменного имени и схожести доменного имени с вредоносными доменными именами. Система включает динамическую базу данных доменов, сконфигурированную для предоставления данных регистрации доменов в режиме реального времени во всех доменных расширениях. Домены регулярно переоцениваются для согласованности оценок, помогая поддерживать безопасность посетителей размещенных веб-сайтов или автоматизированных подключений к инфраструктуре, присутствующей в домене.The solution presented in patent US10178121B2 is known from the prior art. As a solution, a domain rating system is presented based on domain name registration data and the similarity of the domain name to malicious domain names. The system includes a dynamic domain database configured to provide real-time domain registration data across all domain extensions. Domains are regularly re-evaluated for consistency in ratings, helping to maintain the security of visitors to hosted websites or automated connections to the infrastructure present in the domain.

Указанная технология довольно эффективно решает проблему классификации вредоносных доменов. Но несмотря на ряд преимуществ в указанном изобретении учитывают лишь схожесть на основании WHOIS и DNS-информации, но не учитывают другие факторы, например такие как связь с вредоносными доменными именами по URI и анализ связи доменных имен на основании связанных с ним однородных объектов, при этом объекты являются однородными при наличии общей информации об объекте. Поэтому остается актуальной техническая задача, заключающаяся в создании способа классификации объектов для предотвращения распространения вредоносной активности.This technology quite effectively solves the problem of classifying malicious domains. But despite a number of advantages, this invention takes into account only the similarity based on WHOIS and DNS information, but does not take into account other factors, for example, such as the connection with malicious domain names by URI and the analysis of the connection of domain names based on homogeneous objects associated with it, while objects are homogeneous if there is general information about the object. Therefore, the technical task of creating a method for classifying objects to prevent the spread of malicious activity remains relevant.

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

Задача предлагаемого решения заключается в классификации объектов для предотвращения распространения вредоносной активности.The objective of the proposed solution is to classify objects to prevent the spread of malicious activity.

Технический результат настоящего изобретения заключается в предотвращении распространения вредоносной активности в компьютерной сети.The technical result of the present invention is to prevent the spread of malicious activity on a computer network.

В качестве одного варианта исполнения настоящего изобретения предлагается способ классификации объектов для предотвращения распространения вредоносной активности, выполненный с возможностью реализации шагов, согласно которым: выполняют поиск объектов в сети, которые имеют общую информацию с другими объектами; строят граф связей, содержащий классифицированные и неклассифицированные объекты в виде вершин, причем связь между объектами указывает на наличие общей информации между объектами, при этом классифицированными объектами являются вредоносные объекты; выделяют из сформированного графа связей по меньшей мере один подграф, включающий однородные объекты и содержащий по меньшей мере один неклассифицированный объект, на основании по меньшей мере одного из подходов: анализа групповой связи между объектами; анализа последовательной связи между объектами; выполняют классификацию каждого неклассифицированного объекта на каждом подграфе на основании анализа объектов при помощи правил классификации; ограничивают доступ к объекту, который классифицирован как вредоносный, для предотвращения распространения вредоносной активности.As one embodiment of the present invention, a method is provided for classifying objects to prevent the spread of malicious activity, configured to implement the steps of: searching for objects on a network that share information with other objects; constructing a connection graph containing classified and unclassified objects in the form of vertices, and the connection between the objects indicates the presence of common information between the objects, and the classified objects are malicious objects; selecting from the generated connection graph at least one subgraph, including homogeneous objects and containing at least one unclassified object, based on at least one of the approaches: analysis of group connections between objects; analysis of sequential communication between objects; perform a classification of each unclassified object in each subgraph based on the analysis of the objects using classification rules; restrict access to an object that is classified as malicious to prevent the spread of malicious activity.

В другом варианте исполнения способа другими объектами являются либо объекты, которые классифицированы как вредоносные, либо объекты, которые имеют общую связь с объектами, которые классифицированы как вредоносные.In another embodiment of the method, the other objects are either objects that are classified as malicious, or objects that have a common relationship with objects that are classified as malicious.

В еще одном варианте исполнения способа правила классификации включают по меньшей мере один из следующих подходов: анализ на сходство объектов; анализ объектов при помощи модели машинного обучения.In another embodiment of the method, the classification rules include at least one of the following approaches: analysis for similarity of objects; object analysis using a machine learning model.

В другом варианте исполнения способа анализ на сходство реализуется с помощью метрики Левенштейна.In another embodiment of the method, similarity analysis is implemented using the Levenshtein metric.

В еще одном варианте исполнения способа граф связей содержит связи только между объектами разного типа.In another embodiment of the method, the connection graph contains connections only between objects of different types.

В другом варианте исполнения способа объектами и информацией об объектах являются по крайней мере два из следующих типов информации: IP-адрес; полное доменное имя; URI информации; данные о доменном имени, включающие сведения о регистраторе доменного имени; данные о владельце доменного имени, в том числе наименование владельца, которому принадлежит доменное имя, адрес владельца доменного имени, диапазон IP-адресов, к которому относится доменное имя, в сети, и контактные данные владельца доменного имени; данные о владельце IP-адреса, в том числе наименование и адрес владельца IP-адрес; название диапазона компьютерной сети; месторасположение, соответствующее диапазону IP-адресов, включающее страну и город; контактные данные администратора; сведения об IP-адресе, к которому относится проверяемый объект; сведения о выпущенных для доменного имени сертификатах публичного ключа; хэш файла и путь к файлу; веб-адреса, содержащие доменное имя.In another embodiment of the method, the objects and information about the objects are at least two of the following types of information: IP address; fully qualified domain name; URI information; domain name information, including information about the domain name registrar; information about the owner of the domain name, including the name of the owner to whom the domain name belongs, the address of the owner of the domain name, the range of IP addresses to which the domain name belongs on the network, and contact information of the owner of the domain name; information about the owner of the IP address, including the name and address of the owner of the IP address; name of the computer network range; location corresponding to the range of IP addresses, including country and city; administrator contact details; information about the IP address to which the object being checked belongs; information about public key certificates issued for the domain name; file hash and file path; web addresses containing a domain name.

В еще одном варианте исполнения способа дополнительно информация об объектах включает одну из следующих составляющих URI информации: адрес страницы; параметры загрузки страницы; другие составляющие части URI-информации.In yet another embodiment of the method, additional information about objects includes one of the following components of URI information: page address; page loading parameters; other constituent parts of URI information.

В другом варианте исполнения дополнительно после шага б) классифицируют неклассифицированные объекты, являющиеся доменными именами, как доверенные в случае, если количество запросов, полученное из системы доменных имен, превышает заранее заданный порог.In another embodiment, step b) further classifies unclassified domain name objects as trusted if the number of requests received from the domain name system exceeds a predetermined threshold.

В еще одном варианте исполнения по меньшей мере из одного подграфа выделяют связанные компоненты, которые содержат информацию о связанных объектах, при этом по меньшей мере один объект является неклассифицированным.In yet another embodiment, related components are extracted from at least one subgraph that contain information about related objects, wherein at least one object is unclassified.

В другом варианте исполнения каждый из указанных подходов анализа осуществляется с помощью по меньшей мере одной модели машинного обучения.In another embodiment, each of these analysis approaches is carried out using at least one machine learning model.

В еще одном варианте исполнения модель машинного обучения обучена методом «бустинга деревьев решений».In another embodiment, the machine learning model is trained using the “decision tree boosting” method.

В другом варианте исполнения при анализе на основании последовательной связи используют по меньшей мере один соседний вредоносный объект.In another embodiment, the analysis based on serial communication uses at least one neighboring malicious object.

В еще одном варианте исполнения при анализе групповой связи используют информацию по меньшей мере о четырех объектах, причем три из них имеют связь с четвертым.In yet another embodiment, when analyzing a group connection, information about at least four objects is used, and three of them have a connection with the fourth.

В другом варианте исполнения ограничивают доступ к объекту, который классифицирован как вредоносный, для предотвращения распространения вредоносной активности одним из следующих действий: блокируют доступ к веб-сайту, с которым связан объект; открывают веб-сайт, с которым связан объект, в браузере, который работает в защищенном режиме; приостанавливают переход на веб-сайт и информируют пользователя о связи веб-сайта с вредоносным объектом.In another embodiment, access to an object that is classified as malicious is limited to prevent the spread of malicious activity by one of the following actions: access to the website with which the object is associated is blocked; open the website with which the object is associated in a browser running in protected mode; suspend the transition to the website and inform the user about the connection of the website with a malicious object.

Краткое описание чертежейBrief description of drawings

Прилагаемые чертежи иллюстрируют только примерные варианты осуществления изобретения, и поэтому не должны считаться ограничивающими его объем. Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:The accompanying drawings illustrate only exemplary embodiments of the invention and therefore should not be considered limiting its scope. Additional objects, features and advantages of the present invention will become apparent from a reading of the following description of the invention with reference to the accompanying drawings, in which:

Фиг. 1 иллюстрирует пример компьютерной сети, в рамках которой реализуется система классификации объектов.Fig. 1 illustrates an example of a computer network within which an object classification system is implemented.

Фиг. 2 иллюстрирует пример состава системы классификации объектов.Fig. 2 illustrates an example of the composition of an object classification system.

Фиг. 3 иллюстрирует пример построенного графа связей с подграфами, в которых вершины классифицированы при помощи анализа последовательной связи.Fig. Figure 3 illustrates an example of a constructed connection graph with subgraphs in which the vertices are classified using sequential connection analysis.

Фиг. 4 иллюстрирует пример построенного графа связей с подграфами, в которых вершины классифицированы при помощи анализа групповой связи.Fig. Figure 4 illustrates an example of a constructed connection graph with subgraphs in which the vertices are classified using group connection analysis.

Фиг. 5а-5б иллюстрируют примеры графа связей и их анализ.Fig. 5a-5b illustrate examples of the connection graph and their analysis.

Фиг. 6 иллюстрирует способ классификации объектов для предотвращения распространения вредоносной активности.Fig. 6 illustrates a method for classifying objects to prevent the spread of malicious activity.

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

Осуществление изобретенияCarrying out the invention

Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.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, but may be embodied in various forms. The substance set forth in the specification is nothing more than the specific details necessary to assist one skilled in the art in fully understanding the invention, and the present invention is defined within the scope of the appended claims.

На Фиг. 1 представлен пример компьютерной сети 110, включающей по меньшей мере шесть компьютеров (ПК1 - ПК6), и компьютерное устройство (сервер) 120, которое в свою очередь включает модуль сбора информации 130 и систему классификации объектов 140.In FIG. 1 shows an example of a computer network 110, including at least six computers (PC1 - PC6), and a computer device (server) 120, which in turn includes an information collection module 130 and an object classification system 140.

В одном из вариантов реализации компьютерная сеть 110 представляет собой один из сетевых узлов сети Интернет. Еще одним примером компьютерной сети 110 может являться и вся сеть Интернет.In one embodiment, the computer network 110 is one of the network nodes on the Internet. Another example of a computer network 110 may be the entire Internet.

В рамках данного изобретения под компьютером подразумевается любое вычислительное устройство, в частности персональный компьютер, ноутбук, смартфон, планшет, маршрутизатор, система хранения данных, сервер. Примером сервера 120, на котором реализуется система классификации 140, является компьютерная система, представленная при описании Фиг. 7.For the purposes of this invention, a computer means any computing device, in particular a personal computer, laptop, smartphone, tablet, router, storage system, server. An example of a server 120 that implements the classification system 140 is the computer system described in the discussion of FIG. 7.

Модуль сбора информации 130 предназначен для сбора информации об объектах и передачи собранной информации об объектах в систему классификации объектов 140. Во время сбора информации об объектах выполняется поиск объектов в сети 110, которые имеют общую информацию с объектами, которые ранее были классифицированы как вредоносные, либо с объектами, которые в свою очередь имеют общую информацию с объектами, которые классифицированы как вредоносные. Найденные в сети 110 объекты являются неклассифицированными объектами.The information collection module 130 is designed to collect information about objects and transmit the collected information about objects to the object classification system 140. During the collection of information about objects, a search is made for objects in the network 110 that have common information with objects that were previously classified as malicious, or with objects that in turn have common information with objects that are classified as malicious. The objects found in the network 110 are unclassified objects.

Система классификации объектов 140 предназначена для классификации объектов с целью последующего предотвращения распространения вредоносной активности на основании проведенной классификации. Объектами, над которыми осуществляется классификация, являются по меньшей мере одни из следующих объектов: полное доменное имя (далее - доменное имя); URI информация; IP-адрес; данные о доменном имени, включающие сведения о регистраторе доменного имени; данные о владельце доменного имени, в том числе и наименование владельца, которому принадлежит доменное имя, адрес владельца доменного имени, диапазон IP-адресов, к которому относится доменное имя в сети и контактные данные владельца доменного имени; данные о владельце IP-адреса, в том числе наименование и адрес владельца IP-адреса; название диапазона компьютерной сети; месторасположение, соответствующее диапазону IP-адресов, включающее страну и город; контактные данные администратора; сведения об IP-адресе, к которому относится проверяемый объект; сведения о выпущенных для доменного имени сертификатах публичного ключа; хэш файла и путь к файлу; веб-адреса, содержащие доменное имя. В зависимости от варианта реализации классификация объектов может осуществляться как для одного типа объекта, например, доменного имени, так и для двух и более типов объектов. Классификация осуществляется на основании правил классификации, которые учитывают различные признаки и связи объектов в подграфе. Стоит отметить, что в дальнейшем при упоминании какого-либо одного типа объекта может быть использованы и другие типы объектов.The object classification system 140 is designed to classify objects in order to subsequently prevent the spread of malicious activity based on the classification. The objects over which classification is carried out are at least one of the following objects: fully qualified domain name (hereinafter referred to as the domain name); URI information; IP address; domain name information, including information about the domain name registrar; information about the owner of the domain name, including the name of the owner who owns the domain name, the address of the owner of the domain name, the range of IP addresses to which the domain name belongs on the network and contact information of the owner of the domain name; information about the owner of the IP address, including the name and address of the owner of the IP address; name of the computer network range; location corresponding to the range of IP addresses, including country and city; administrator contact details; information about the IP address to which the object being checked belongs; information about public key certificates issued for the domain name; file hash and file path; web addresses containing a domain name. Depending on the implementation option, object classification can be carried out either for one type of object, for example, a domain name, or for two or more types of objects. Classification is carried out on the basis of classification rules that take into account various characteristics and relationships of objects in the subgraph. It is worth noting that in the future, when mentioning any one type of object, other types of objects can be used.

В еще одном из вариантов реализации классификация осуществляется на два класса, а именно вредоносные и доверенные. В данном варианте реализации возможно отсутствие достаточного количества информации об объекте для однозначной классификации. В таком случае объект остается неклассифицированным до тех пор, пока информации об объекте не будет достаточное количество для однозначной классификации.In yet another embodiment, the classification is carried out into two classes, namely malicious and trusted. In this embodiment, it is possible that there is not enough information about the object for an unambiguous classification. In this case, the object remains unclassified until there is enough information about the object for an unambiguous classification.

Стоит отметить, что в других вариантах реализации, классификация объектов может осуществляться на два и более класса, при этом могут быть выбраны другие классы. Например, объекты классифицируются на вредоносные, не вредоносные и доверенные.It is worth noting that in other implementations, the classification of objects can be carried out into two or more classes, and other classes can be selected. For example, objects are classified into malicious, non-malicious, and trusted.

На Фиг. 2 представлен пример состава системы классификации объектов 140, которая содержит модуль построения графа 210, базу данных объектов 205, базу вредоносных объектов 220, базу доверенных объектов 230 и анализатор 240.In FIG. 2 shows an example of the composition of an object classification system 140, which contains a graph construction module 210, an object database 205, a malicious object database 220, a trusted object database 230 and an analyzer 240.

Модуль построения графа 210 предназначен для построения графа связей на основании информации из базы вредоносных объектов 220 и информации об объектах, полученной от модуля сбора информации 130.The graph construction module 210 is designed to construct a connection graph based on information from the database of malicious objects 220 and information about objects received from the information collection module 130.

База вредоносных объектов 220 содержит информацию об известных вредоносных объектах, а также информацию о связанных с ними объектах. Под связью между объектами понимается наличие общей информации между этими объектами. Например, в базе вредоносных объектов 220 хранится IP-адрес 192.158.0.13, модуль сбора информации 130 осуществляет сбор информации о доменных именах, ссылающиеся на этот IP-адрес из компьютерной сети 110. В данном примере указанный IP-адрес является связующим звеном (связью) между объектами.The database of malicious objects 220 contains information about known malicious objects, as well as information about objects associated with them. The connection between objects means the presence of common information between these objects. For example, the malicious object database 220 stores the IP address 192.158.0.13, the information collection module 130 collects information about domain names that refer to this IP address from the computer network 110. In this example, the specified IP address is the link (link) between objects.

В одном из вариантов реализации, модуль сбора информации 130 содержит базу данных объектов 205. База данных объектов 205 содержит информацию о связях и классе собранных модулем сбора информации 130 объектах. В данном варианте реализации база вредоносных объектов 220 хранит по меньшей мере разметку для объектов. В применении к доменным именам в базе вредоносных объектов 220 хранятся маски для вредоносных и фишинговых доменных имен. Маска - ограниченные регулярные выражения, заменяющие звездочками часть доменного имени. Также в базе данных объектов 205 содержится дата добавления маски и прочие атрибуты, например, семейство вредоносного программного обеспечения (далее - ВПО), категория ВПО и т.д. В случае, например, файла, база вредоносных объектов 220 содержит md5 файла, имя ВПО и т. д. Другими словами, база вредоносных объектов 220 хранит ключи вредоносных объектов (например, маски и хэши), которые соответствуют нескольким объектам из базы данных объектов 205. В этом случае модуль построения графа 210 строит граф на основании информации из базы вредоносных объектов 220 и информации об объектах из базы данных объектов 205.In one embodiment, the information collection module 130 contains a database of objects 205. The object database 205 contains information about the relationships and class of objects collected by the information collection module 130. In this embodiment, the malicious object database 220 stores at least markup for the objects. When applied to domain names, the malicious object database 220 stores masks for malicious and phishing domain names. Mask - limited regular expressions that replace part of a domain name with asterisks. The object database 205 also contains the date the mask was added and other attributes, for example, the malware family (hereinafter referred to as malware), malware category, etc. In the case of, for example, a file, the malicious object database 220 contains the md5 of the file, the malware name, etc. In other words, the malicious object database 220 stores malicious object keys (e.g., masks and hashes) that correspond to several objects from the object database 205 In this case, the graph construction module 210 builds a graph based on information from the malicious object database 220 and information about objects from the object database 205.

Примером информации, содержащейся в базе вредоносных объектов 220 и/или модуле сбора информации 130 (в зависимости от реализации), является:An example of information contained in the database of malicious objects 220 and/or the information collection module 130 (depending on the implementation) is:

• вредоносное доменное имя “malware.com”;• malicious domain name “malware.com”;

• IP-адрес 192.158.0.13;• IP address 192.158.0.13;

• информация о том, что указанное доменное имя ссылается на указанный IP-адрес.• information that the specified domain name refers to the specified IP address.

Информация об известных вредоносных объектах содержит по меньшей мере одно из:Information about known malicious objects contains at least one of:

• информацию об объекте, получаемую при помощи сервиса WHOIS;• information about the object obtained using the WHOIS service;

• информацию об объекте, получаемую при помощи сервиса WHOIS IP;• information about the object obtained using the WHOIS IP service;

• информацию об объекте, получаемую при помощи системы доменных имен;• information about the object obtained using the domain name system;

• сведения о выпущенных для доменного имени сертификатах публичного ключа;• information about public key certificates issued for the domain name;

• веб-адреса, содержащие информацию о странице, параметрах ее загрузки и расположенных на ней файлов.• web addresses containing information about the page, its download parameters and the files located on it.

База вредоносных объектов 220 может получать информацию из различных источников. Таким источниками могут быть как внешние источники, например, сервис WHOIS, так и внутренние, а именно, анализатор 240.The database of malicious objects 220 can receive information from various sources. Such sources can be either external sources, for example, the WHOIS service, or internal ones, namely, the 240 analyzer.

В свою очередь информация об объекте, получаемая при помощи сервиса WHOIS, содержит по меньшей мере одно из:In turn, information about an entity obtained using the WHOIS service contains at least one of:

• информацию о владельце доменного имени, в том числе наименование владельца, которому принадлежит доменное имя, название компании, адрес владельца доменного имени или контактные данные владельца доменного имени;• information about the owner of the domain name, including the name of the owner who owns the domain name, the name of the company, the address of the owner of the domain name or contact information of the owner of the domain name;

• контактные данные администратора доменного имени;• contact details of the domain name administrator;

• сведения о регистраторе доменного имени;• information about the domain name registrar;

• дату создания доменного имени;• date of creation of the domain name;

• срок регистрации доменного имени;• domain name registration period;

• текущий статус доменного имени.• current status of the domain name.

Информация об объекте, получаемая при помощи сервиса WHOIS IP, содержит информацию по меньшей мере об одном из:Entity information obtained using the WHOIS IP service contains information about at least one of:

• диапазоне IP-адресов, к которому относится проверяемый объект;• the range of IP addresses to which the object being scanned belongs;

• название диапазона компьютерной сети;• name of the computer network range;

• владельце IP-адреса, в том числе и наименование и адрес владельца IP-адреса;• the owner of the IP address, including the name and address of the owner of the IP address;

• стране, которой соответствует данный диапазон IP-адресов;• the country to which this range of IP addresses corresponds;

• городе, которому соответствует данный диапазон IP-адресов.• the city to which this range of IP addresses corresponds.

Под информацией об объекте, получаемой при помощи системы доменных имен, понимаются сведения об IP-адресе, к которому относится проверяемый объект.Information about an object obtained using the domain name system means information about the IP address to which the object being checked belongs.

Сведения о выпущенных для доменного имени сертификатах публичного ключа содержат данные о сертификатах, выданных для доменного имени центрами сертификации. Примером таких сертификатов является SSL-сертификат (от англ. Secure Sockets Layer).Information about public key certificates issued for a domain name contains information about certificates issued for a domain name by certification authorities. An example of such certificates is an SSL certificate (Secure Sockets Layer).

Информация о веб-адресе содержит информацию о протоколе, полном доменном имени, порте, а также хэш (от англ. hash) определенного файла на веб сервере, путь к определенному файлу на веб-сервере и URI-информацию (от англ. Uniform Resource Identifier) вида <схема>:[//<хост>[:<порт>]][/< адрес страницы>][?<параметры загрузки страницы>].Web address information contains information about the protocol, fully qualified domain name, port, as well as the hash (from the English hash) of a specific file on the web server, the path to a specific file on the web server and URI information (from the English Uniform Resource Identifier ) of the form <scheme>:[//<host>[:<port>]][/<page address>][?<page loading parameters>].

В частном случае реализации информация о каждом вредоносном объекте содержится в базе вредоносных объектов 220 до тех пор, пока система классификации объектов 120 не получит уведомление о блокировке соответствующего объекта. После получения информации о блокировке объекта система классификации объектов 120 актуализирует информацию при помощи анализатора 240 в базе вредоносных объектов 220.In a particular implementation case, information about each malicious object is contained in the database of malicious objects 220 until the object classification system 120 receives a notification that the corresponding object has been blocked. After receiving information about blocking an object, the object classification system 120 updates the information using the analyzer 240 in the database of malicious objects 220.

В еще одном частном случае реализации база вредоносных объектов 220 дополнительно содержит сведения о времени хранения информации о каждом вредоносном объекте, например шесть месяцев, по истечении которого данная информация о вредоносном объекте удаляется из базы вредоносных объектов 220. Для наиболее эффективного хранения информации, а также для минимизации ложных срабатываний при анализе, время хранения информации может быть выбрано практическим путем. Например, злоумышленники часто используют недолговременные доменные имена, часто связывая новые доменные имена с ранее использовавшимся IP-адресами, после чего сайты, распространяющие вредоносное ПО, блокируются антивирусными решениями. Следовательно, для обновления информации о вредоносных объектах нужно периодически актуализировать базу вредоносных объектов 220.In another particular implementation case, the database of malicious objects 220 additionally contains information about the storage time of information about each malicious object, for example, six months, after which this information about the malicious object is deleted from the database of malicious objects 220. For the most efficient storage of information, as well as for To minimize false positives during analysis, the storage time of information can be chosen in a practical way. For example, attackers often exploit short-lived domain names, often linking new domain names to previously used IP addresses, after which sites distributing malware are blocked by antivirus solutions. Therefore, to update information about malicious objects, it is necessary to periodically update the database of malicious objects 220.

В другом частном случае реализации как в базе вредоносных объектов 220, хранящей разметку объектов, так в базе данных объектов 205 осуществляют периодическую актуализацию данных, например, раз в полгода, на основании информации, полученной из внешних источников, например, сервиса WHOIS.In another particular case of implementation, both in the malicious object database 220, which stores object markings, and in the object database 205, data is periodically updated, for example, once every six months, based on information received from external sources, for example, the WHOIS service.

База доверенных объектов 230 содержит перечень доверенных объектов. Например, доверенное доменное имя - доменное имя, которое запрашивается у DNS-сервера с высокой частотой, то есть частота превышает заранее заданный порог. Также доверенными объектами являются объекты, заранее проанализированы и признанные правомерными.The trusted object database 230 contains a list of trusted objects. For example, a trusted domain name is a domain name that is requested from a DNS server with high frequency, that is, the frequency exceeds a predefined threshold. Also, trusted objects are objects that have been analyzed in advance and recognized as legitimate.

В предпочтительном варианте реализации модуль построения графа 210 строит граф связей следующим образом:In a preferred embodiment, graph builder 210 builds a link graph as follows:

На первом этапе формирует вершины, в качестве которых выступают объекты из базы вредоносных объектов 220 и информации об объектах, полученной от модуля сбора информации 130.At the first stage, it forms vertices, which are objects from the database of malicious objects 220 and information about objects received from the information collection module 130.

В частном варианте реализации формирует вершины при помощи информации об объектах из базы данных объектов 205. При этом объекты, которые не классифицированы, хранятся в базе данных объектов 205, а в базе вредоносных объектов 220 хранятся вредоносные объекты. Если информация об объекте из базы данных объектов 205 присутствует в базе вредоносных объектов 220, соответствующую вершину классифицируют как вредоносную.In a particular implementation, it generates vertices using information about objects from the object database 205. In this case, objects that are not classified are stored in the object database 205, and malicious objects are stored in the malicious object database 220. If information about an object from the object database 205 is present in the malicious object database 220, the corresponding vertex is classified as malicious.

На втором этапе модуль построения графа 210 соединяет две вершины ребром, в тех случаях, когда соответствующие им объекты связаны. Например, двум вершинам соответствуют два доменных имени, при этом они ссылаются на один и тот же IP-адрес. В этом случае в графе будут построены ребра между вершиной, являющейся IP-адресом и каждой из двух вершин, являющихся доменными именами. Другой пример, сорок вершин, соответствующих IP-адресам, принадлежат одному IP-диапазону. В этом случае в графе будут построены ребра между вершиной, являющейся IP-диапазоном с каждой из сорока вершин, являющихся IP-адресами. Таким образом, модуль построения графа 210 выстраивает все ребра на основании информации о связях между объектами.At the second stage, the graph construction module 210 connects two vertices with an edge in cases where the corresponding objects are connected. For example, two vertices correspond to two domain names, and they refer to the same IP address. In this case, edges will be built in the graph between the vertex, which is an IP address, and each of the two vertices, which are domain names. Another example is that forty vertices corresponding to IP addresses belong to one IP range. In this case, edges will be built in the graph between a vertex that is an IP range with each of the forty vertices that are IP addresses. Thus, the graph construction module 210 builds all the edges based on information about the connections between objects.

В частном варианте реализации граф связей содержит связи только между объектами разного типа. То есть связь вида доменное имя и доменное имя не будет построена.In a particular implementation, the connection graph contains connections only between objects of different types. That is, a connection like domain name and domain name will not be built.

Изначально граф связей содержит два класса вершин: вредоносные и неклассифицированные. Вредоносные вершины соответствуют вредоносным объектам из базы вредоносных объектов 220. Неклассифицированные вершины соответствуют объектам, информация о которых была получена от модуля сбора информации 130. Стоит отметить, что в ходе описанного ниже анализа при достаточном количестве информации об объекте неклассифицированные вершины изменяются на один из двух классов вершин, а именно вредоносную или доверенную. Если информации об объекте недостаточно для однозначной классификации, вершина останется неклассифицированной. Класс, которому будет соответствовать вершина, зависит от результатов проведенного анализа.Initially, the connection graph contains two classes of vertices: malicious and unclassified. Malicious vertices correspond to malicious objects from the database of malicious objects 220. Unclassified vertices correspond to objects about which information was received from the information collection module 130. It is worth noting that during the analysis described below, if there is sufficient information about the object, unclassified vertices are changed to one of two classes vertices, namely malicious or trusted. If there is not enough information about the object for an unambiguous classification, the vertex will remain unclassified. The class to which the vertex will correspond depends on the results of the analysis performed.

В частном варианте реализации модуль построения графа 210 дополнительно соединяет вершины на основании URI-информации (например, адреса страницы, параметров загрузки страницы и других составляющих частей URI-информации), WHOISIP и WHOIS информации.In a particular implementation, the graph builder 210 further connects vertices based on URI information (eg, page address, page load parameters, and other components of the URI information), WHOISIP, and WHOIS information.

Анализатор 240 служит для выделения по меньшей мере одного подграфа из графа связей, а также для анализа неклассифицированных объектов подграфа. Стоит отметить, что все объекты, находящиеся в одном подграфе, являются однородными.Analyzer 240 serves to extract at least one subgraph from the relationship graph, as well as to analyze unclassified objects in the subgraph. It is worth noting that all objects located in the same subgraph are homogeneous.

Анализатор 240 выделяет из графа связей по меньшей мере один подграф, включающий однородные объекты и содержащий по меньшей мере один неклассифицированный объект, на основании по меньшей мере одного из следующих подходов:Analyzer 240 extracts from the relationship graph at least one subgraph that includes homogeneous objects and contains at least one unclassified object, based on at least one of the following approaches:

• анализ групповой связи между объектами;• analysis of group communication between objects;

• анализ последовательной связи между объектами.• analysis of sequential communication between objects.

Стоит отметить, что анализатор 240 для каждого подхода использует соответствующую модель машинного обучения, которая обучена для реализации соответствующего подхода. Каждая модель машинного обучения основывается на одном из вышеуказанных подходов.It is worth noting that the analyzer 240 for each approach uses a corresponding machine learning model that is trained to implement the corresponding approach. Each machine learning model is based on one of the above approaches.

В частном варианте реализации модель машинного обучения основана на принципе «бустинга деревьев решений». Дерево решений представляет собой иерархическую древовидную структуру, состоящую из правила вида «Если …, то …». Модель машинного обучения при обучении получает на вход выборку информации об объектах из троек объектов вида «вредоносный одного типа, промежуточный другого типа, вредоносная того же типа что и первый» и «вредоносный одного типа, промежуточный другого типа, доверенный того же типа что и первый». Стоит отметить, что промежуточный объект - это объект, связанный с первым и последним объектом тройки объектов.In a particular implementation, the machine learning model is based on the principle of “boosting decision trees.” A decision tree is a hierarchical tree structure consisting of a rule of the form “If ... then ...”. During training, the machine learning model receives as input a sample of information about objects from triplets of objects of the form “malicious of one type, intermediate of another type, malicious of the same type as the first” and “malicious of one type, intermediate of another type, trusted of the same type as the first " It is worth noting that an intermediate object is an object associated with the first and last object of a triple of objects.

В других частных вариантах реализации модель машинного обучения основана на таких принципах, как метод k-ближайших соседей (от англ. k Nearest Neighbors, kNN), нейронная сеть, метод опорных векторов и др.In other particular implementations, the machine learning model is based on principles such as the k-nearest neighbors method (from the English k Nearest Neighbors, kNN), neural network, support vector machine, etc.

В частном варианте реализации перед выделением подграфа из графа связей, анализатор 240 определяет для каждой неклассифицированной вершины в графе связей количество запросов соответствующих этим вершинам доменных имен к DNS-серверу. Если количество запросов к DNS-серверу превышает заданный порог, например 10000 запросов, тогда анализатор 240 классифицирует эту вершину как доверенную и добавляет соответствующее доменное имя в базу доверенных объектов 230. При этом указанное доменное имя исключается из дальнейшего анализа.In a particular implementation, before extracting a subgraph from the link graph, analyzer 240 determines for each unclassified vertex in the link graph the number of queries corresponding to these vertices for domain names to the DNS server. If the number of queries to the DNS server exceeds a predetermined threshold, for example 10,000 queries, then the analyzer 240 classifies this vertex as trusted and adds the corresponding domain name to the trusted object database 230. The specified domain name is excluded from further analysis.

В еще одном частном варианте реализации перед выделением подграфа из графа связей анализатор 240 определяет для каждой неклассифицированной вершины в графе связей количество запросов соответствующих этим вершинам доменных имен к DNS-серверу. Если количество запросов к DNS-серверу превышает заданный порог, например 10000 запросов, тогда анализатор 240 исключает соответствующую вершину из графа связей.In yet another particular implementation, before extracting a subgraph from the link graph, analyzer 240 determines for each unclassified vertex in the link graph the number of queries corresponding to these vertices of domain names to the DNS server. If the number of queries to the DNS server exceeds a specified threshold, for example 10,000 queries, then the analyzer 240 eliminates the corresponding vertex from the relationship graph.

В зависимости от варианта реализации указанные подходы анализа могут быть применены в различных сочетаниях и последовательностях. В одном из вариантов реализации анализатор 240 при анализе использует последовательно оба подхода, например, в следующем порядке: анализ последовательной связи, анализ групповой связи. В другом варианте реализации анализатор 240 параллельно использует подходы. В еще одном варианте реализации, анализатор 240 при последовательном использовании подходов после каждого подхода определяет необходимость использования последующего подхода. Необходимость использования последующего подхода определяется на основании результатов, полученных от предыдущего подхода. В другом варианте реализации анализатор 240 использует подходы параллельно и после получения результатов проводит формирование единого результата.Depending on the implementation option, these analysis approaches can be applied in various combinations and sequences. In one implementation, the analyzer 240 uses both approaches in sequence when analyzing, for example, in the following order: serial communication analysis, group communication analysis. In another implementation, analyzer 240 uses approaches in parallel. In yet another embodiment, the analyzer 240, when using the approaches sequentially after each approach, determines whether to use the subsequent approach. The need to use a subsequent approach is determined based on the results obtained from the previous approach. In another implementation, the analyzer 240 uses the approaches in parallel and, after receiving the results, generates a single result.

В том случае, когда анализатор 240 использует подход анализ последовательной связи, анализатор 240 анализирует тройки вершин на графе связей на основе информации об объектах при помощи модели машинного обучения, обученной для данной задачи. Стоит отметить, что при анализе с помощью подхода анализ последовательной связи анализатор 240 анализирует тройки вершин вида «вредоносная вершина одного типа, промежуточная вершина другого типа, неклассифицированная вершина того же типа что и первая».When the analyzer 240 uses a serial link analysis approach, the analyzer 240 analyzes triplets of vertices in a link graph based on feature information using a machine learning model trained for the task. It is worth noting that when analyzing using the serial communication analysis approach, the analyzer 240 analyzes triplets of vertices of the form “a malicious vertex of one type, an intermediate vertex of another type, an unclassified vertex of the same type as the first.”

В частном варианте реализации при анализе на основании последовательной связи используют по меньшей мере один соседний вредоносный объект, а также информацию по меньшей мере о трех объектах, имеющих связь.In a particular embodiment, analysis based on serial communication uses at least one neighboring malicious object, as well as information about at least three objects that have a connection.

Рассмотрим работу этого подхода на основании графа связей, построенного модулем построения графа 240 и представленного на Фиг. 3. Неклассифицированные вершины типа домен, обозначены как «u», вредоносные вершины типа домен - как «m», вершины, соответствующие uri информации как «uri», а вершины, соответствующие ip как «ip». Например, анализатор 240 передает модели машинного обучения информацию о вредоносном доменном имени, соответствующем вершине m2, и информацию о неклассифицированном доменном имени, соответствующем вершине u2. Вершины u2 и m2 связаны через вершину uri, которая соответствует общей части URI информации. Если модель машинного обучения решит, что информация об этих доменных именах похожа, то анализатор 240 добавит эту тройку вершин в подграф для дальнейшего анализа.Let us consider the operation of this approach based on the connection graph constructed by the graph construction module 240 and presented in FIG. 3. Unclassified vertices of the domain type are designated as “u”, malicious vertices of the domain type are designated as “m”, vertices corresponding to uri information as “uri”, and vertices corresponding to ip as “ip”. For example, analyzer 240 provides the machine learning model with information about a malicious domain name corresponding to vertex m2 and information about an unclassified domain name corresponding to vertex u2. The vertices u2 and m2 are connected through the vertex uri, which corresponds to the common part of the URI information. If the machine learning model determines that the information about these domain names is similar, then the analyzer 240 will add this trio of vertices to a subgraph for further analysis.

Рассмотрим ещё один пример. Анализатор 240 передает модели машинного обучения информацию о вредоносных доменных именах, соответствующих вершинам m3 и m1, а также информацию о неклассифицированном доменном имени, соответствующем вершине u3. Если модель машинного обучения решит, что вершины m1 и u3 похожи, то анализатор 240 добавит тройку вершин m1, ip, u3 в подграф для дальнейшего анализа. Если модель машинного обучения решит, что вершины m3 и u3 похожи, то анализатор 240 довит тройку вершин m3, uri, u3 в подграф для дальнейшего анализа, причем, так как вершина u3 уже находилась в подграфе, подграф дополнится новыми вершинами. Таким образом подграф будет состоять из следующих вершин: m1, ip, u3, uri, m3.Let's look at another example. Analyzer 240 provides the machine learning model with information about the malicious domain names corresponding to vertices m3 and m1, as well as information about the unclassified domain name corresponding to vertex u3. If the machine learning model decides that vertices m1 and u3 are similar, then analyzer 240 will add the trio of vertices m1, ip, u3 to the subgraph for further analysis. If the machine learning model decides that the vertices m3 and u3 are similar, then the analyzer 240 will add the trio of vertices m3, uri, u3 to the subgraph for further analysis, and since the vertex u3 was already in the subgraph, the subgraph will be supplemented with new vertices. Thus, the subgraph will consist of the following vertices: m1, ip, u3, uri, m3.

Анализатор 240 анализирует остальные связи в графе связей вида «вредоносная вершина, промежуточная вершина другого типа, неклассифицированная вершина того же типа, что и первая» аналогично примерам, которые были описаны ранее.Analyzer 240 analyzes the remaining links in the link graph of the form “malicious node, intermediate node of a different type, unclassified node of the same type as the first” similar to the examples that were described earlier.

В том случае, когда анализатор 240 использует подход анализ групповой связи, анализатор 240 анализирует связи в графе связей на основе информации об объектах при помощи модели машинного обучения, обученной для данной задачи. Модель машинного обучения при обучении получает на вход объект, не являющийся доменным именем и агрегированную информацию обо всех объектах, связанных с анализируемым объектом. Рассмотрим работу этого подхода на основании графа связей, построенного модулем построения графа 210 и представленного на Фиг. 4. Неклассифицированная вершина обозначена как «u», вредоносная вершина - как «m», вершина, соответствующая общему IP-адресу - как «ip1», а вершина, соответствующая общей части URI - как «uri1». Вершины m1, u1 и u2 соединены с вершиной ip1, так как соответствующие им доменные имена имеют общий IP-адрес, а вершины u2, u3, u4, m2, m3, m4 соединены с вершиной uri1, так как соответствующие им доменные имена имеют общую часть URI. В данном подходе анализатор 240 анализирует вершины uri1 и ip1. Например, анализатор 240 передает модели машинного обучения объект uri1 и информацию обо всех вершинах, связанных ребром с вершиной uri1. Если модель машинного обучения предоставит на выходе анализатору 240 решение о том, что объект, соответствующий вершине uri1, похож на вредоносный объект URI информации, то анализатор 240 добавит вершину uri1 и все связанные с ней вершины в подграф для дальнейшего анализа. Аналогичным образом будет проведен анализ вершины ip1.In the case where the analyzer 240 uses a group link analysis approach, the analyzer 240 analyzes the links in the link graph based on the entity information using a machine learning model trained for the task. During training, a machine learning model receives as input an object that is not a domain name and aggregated information about all objects associated with the analyzed object. Let us consider the operation of this approach based on the connection graph constructed by the graph construction module 210 and presented in FIG. 4. The unclassified vertex is denoted as “u”, the malicious vertex as “m”, the vertex corresponding to the public IP address as “ip1”, and the vertex corresponding to the common part of the URI as “uri1”. Peaks m1, u1 and u2 are connected to node ip1, since their corresponding domain names have a common IP address, and nodes u2, u3, u4, m2, m3, m4 are connected to node uri1, since their corresponding domain names have a common part URI. In this approach, analyzer 240 analyzes vertices uri1 and ip1. For example, analyzer 240 provides the machine learning model with the object uri1 and information about all vertices connected by an edge to vertex uri1. If the machine learning model provides output to analyzer 240 that the object corresponding to vertex uri1 is similar to a malicious URI information object, then analyzer 240 will add vertex uri1 and all its associated vertices to the subgraph for further analysis. The vertex ip1 will be analyzed in a similar way.

В частном варианте реализации при анализе на основании подхода анализ групповой связи используют информацию по меньшей мере о четырех объектах, причем три из них должны быть связаны с четвертым.In a particular embodiment, when analyzing based on the group connection analysis approach, information about at least four objects is used, and three of them must be associated with the fourth.

В частном варианте реализации, выделенные анализатором 240, объекты не добавляются в общий подграф, а анализируются только на основании соседних вершин.In a particular implementation, the objects identified by analyzer 240 are not added to the overall subgraph, but are analyzed only based on neighboring vertices.

После выделения подграфа из графа связей анализатор 240 классифицирует неклассифицированные объекты выделенного подграфа на основании анализа объектов при помощи правил классификации.After extracting a subgraph from the link graph, analyzer 240 classifies the unclassified objects of the extracted subgraph based on the analysis of the objects using classification rules.

В частном варианте реализации, по меньшей мере из одного подграфа с помощью вышеописанных подходов анализа выделяют связанные компоненты, которые содержат информацию о связанных объектах, при этом по меньшей мере один объект является неклассифицированным.In a particular embodiment, from at least one subgraph, using the analysis approaches described above, related components are extracted that contain information about related objects, wherein at least one object is unclassified.

Правила классификации включают по меньшей мере один из следующих подходов:Classification rules include at least one of the following approaches:

• анализа на сходство объектов;• analysis for similarity of objects;

• анализа объектов при помощи правил классификации.• analysis of objects using classification rules.

При использовании подхода «анализ на сходство объектов» анализатор 240 анализирует вершины подграфа на основе информации об объектах одним из следующих способов:When using the feature similarity analysis approach, analyzer 240 analyzes the vertices of a subgraph based on feature information in one of the following ways:

a) сходство на основании метрики Левенштейна (В. И. Левенштейн, Двоичные коды с исправлением выпадений, вставок и замещений символов, Докл. АН СССР, 1965, том 163, номер 4, 845-848);a) similarity based on the Levenshtein metric (V.I. Levenshtein, Binary codes with correction of deletions, insertions and substitutions of symbols, Dokl. AN USSR, 1965, volume 163, number 4, 845-848);

б) сходство на основании модели машинного обучения.b) similarity based on the machine learning model.

Анализатор 240 содержит по меньшей мере одну модель машинного обучения. Предварительно модель машинного обучения обучается на выборке данных, состоящей из пар объектов, а именно пар похожих объектов и пар непохожих объектов, причем объекты должны быть одного типа. Результатом обучения является модель, которая определяет схожесть полученных на вход объектов. Благодаря использованию подхода анализа на сходство с использованием модели машинного обучения анализатор 240 анализирует более сложные зависимости пар объектов. Например, два случайных доменных имени примерно одинаковой длины - jsidfjk.com и reuhuh.com - будут определены моделью машинного обучения как похожие. Другая пара доменных имен - jsidfjk.com и myaddress.com - будет определена моделью машинного обучения как непохожая, так как первое доменное имя состоит из случайного набора символов, а второе нет.Analyzer 240 contains at least one machine learning model. First, the machine learning model is trained on a data sample consisting of pairs of objects, namely pairs of similar objects and pairs of dissimilar objects, and the objects must be of the same type. The result of training is a model that determines the similarity of the objects received as input. By using a similarity analysis approach using a machine learning model, analyzer 240 analyzes more complex dependencies of pairs of objects. For example, two random domain names of approximately the same length - jsidfjk.com and reuhuh.com - would be identified by a machine learning model as similar. Another pair of domain names - jsidfjk.com and myaddress.com - will be identified by the machine learning model as dissimilar because the first domain name consists of a random set of characters and the second does not.

В одном из вариантов реализации модель машинного обучения, предоставляя решение о схожести информации об объектах вычисляет значение, указывающее, насколько объекты схожи или различны.In one implementation, the machine learning model, when provided with a decision about the similarity of information about objects, calculates a value indicating how similar or different the objects are.

В частном варианте реализации значение, указывающее, насколько объекты схожи выражено в процентах.In a particular implementation, a value indicating how similar objects are, expressed as a percentage.

В еще одном частном варианте реализации значение, указывающее, насколько объекты схожи представлено в виде числа от 0 до 1.In yet another particular implementation, a value indicating how similar the objects are is represented as a number between 0 and 1.

В другом варианте реализации, значение, указывающее, насколько объекты схожи выражено степенью похожести: «не похожи», «немного похожи», «похожи».In another implementation, a value indicating how similar objects are is expressed by degree of similarity: “not similar”, “somewhat similar”, “similar”.

Если анализатор 240 на основании применения по меньшей мере одного из упомянутых способов классифицировал неклассифицированную вершину из подграфа как вредоносную, то анализатор 240 добавляет либо соответствующей объект, либо разметку объекта (маски, хэши) в базу вредоносных объектов 220.If the analyzer 240, based on the use of at least one of the mentioned methods, has classified an unclassified vertex from the subgraph as malicious, then the analyzer 240 adds either the corresponding object or the object markup (masks, hashes) to the database of malicious objects 220.

При использовании подхода «анализа объектов при помощи правил классификации» анализатор 240 анализирует вершины подграфа с помощью заданных правил классификации. Обычно, правила классификации формируются с помощью пользователя, обладающего необходимой квалификацией и знаниями в области информационной безопасности. Например, если модель машинного обучения предоставит на выходе анализатору 240 решение о том, что объект, соответствующий вершине uri1, похож на вредоносный объект URI информации, но при этом количество неклассифицированных вершин подграфа больше определенного числа или количество неклассифицированных вершин меньше определенного процента от общего количества вершин, связанных с вершиной uri, анализатор 240 не будет классифицировать ранее неклассифицированные вершины как вредоносные. Подобные правила необходимы для минимизации ложноположительной классификации.When using the "object analysis using classification rules" approach, analyzer 240 analyzes the vertices of a subgraph using specified classification rules. Typically, classification rules are formed with the help of a user who has the necessary qualifications and knowledge in the field of information security. For example, if the machine learning model provides output to analyzer 240 that the object corresponding to vertex uri1 is similar to a malicious URI information object, but the number of unclassified vertices in the subgraph is greater than a certain number or the number of unclassified vertices is less than a certain percentage of the total number of vertices associated with the vertex uri, the parser 240 will not classify previously unclassified vertices as malicious. Such rules are necessary to minimize false positive classification.

В частном варианте реализации анализатор 240 осуществляет анализ вершин подграфа с помощью модели машинного обучения, а именно, графовой нейронной сети.In a particular embodiment, analyzer 240 analyzes the vertices of a subgraph using a machine learning model, namely a graph neural network.

Выше были представлены два основных подхода анализа для выделения подграфов на основе анализа графа связей анализатором 240 (анализ последовательной связи и анализ групповой связи). Стоит отметить, что результаты выделения подграфов из графа связей и последующая классификация с использованием этих подходов могут отличаться. Таким образом, анализатор 240 может анализировать вершины при помощи одного из представленных подходов анализа, однако при использовании обоих видов анализа количество обнаруженных вредоносных вершин становится больше, вследствие чего эффективность анализа возрастает.Above, two main analysis approaches were presented for identifying subgraphs based on the analysis of the link graph by the analyzer 240 (serial link analysis and group link analysis). It is worth noting that the results of extracting subgraphs from the connection graph and subsequent classification using these approaches may differ. Thus, analyzer 240 can analyze vertices using one of the presented analysis approaches, however, when using both types of analysis, the number of detected malicious vertices increases, resulting in increased efficiency of the analysis.

На основании проведенной анализатором 240 классификации объектов предотвращают распространение вредоносной активности при помощи одного из средств защиты (на Фиг. 1 не представлено) компьютерного устройства пользователя от вредоносных объектов, среди прочих, одним из следующих способов:Based on the classification of objects carried out by the analyzer 240, the spread of malicious activity is prevented using one of the means of protection (not shown in Fig. 1) of the user’s computer device from malicious objects, among others, in one of the following ways:

• ограничивают доступ к объекту, который классифицирован как вредоносный;• restrict access to an object that is classified as malicious;

• полностью блокируют доступ к веб-сайту, который относится к вредоносному объекту;• completely block access to a website that belongs to a malicious object;

• открывают веб-сайт, относящийся к вредоносному объекту в браузере, который работает в защищенном режиме;• open a website related to a malicious object in a browser running in protected mode;

• приостанавливают переход на веб-сайт и информируют пользователя о связи веб-сайта с вредоносным объектом.• pause the transition to the website and inform the user about the connection of the website with a malicious object.

Для лучшего понимания работы настоящего изобретения рассмотрим пример его работы.To better understand the operation of the present invention, let us consider an example of its operation.

Модуль сбора информации 130, после сбора информации об объектах передает информацию об объектах в модуль построения графа 210. На основании полученной от модуля сбора информации 130 информации об объектах, а также информации, хранящихся в базе вредоносных объектов 220, модуль построения графа 210 строит граф связей. Анализатор 240 анализирует количество запросов для каждой неклассифицированной вершины типа доменное имя. Если количество запросов будет превышать определенное число, то анализатор 240 классифицирует вершину, к которой относится соответствующее неклассифицированное доменное имя, как доверенную и добавит соответствующее доменное имя и IP-адрес в базу доверенных объектов 230. Далее, анализатор 240 с помощью анализа последовательной связи и/или анализа групповой связи выделяет по меньшей мере один подграф, например такие, как представленные на фиг. 5а и фиг. 5б.The information collection module 130, after collecting information about objects, transmits information about the objects to the graph construction module 210. Based on the information about objects received from the information collection module 130, as well as information stored in the database of malicious objects 220, the graph construction module 210 builds a connection graph . Analyzer 240 analyzes the number of requests for each unclassified vertex of type domain name. If the number of requests exceeds a certain number, then the analyzer 240 classifies the vertex to which the corresponding unclassified domain name belongs as trusted and adds the corresponding domain name and IP address to the trusted object database 230. Next, the analyzer 240 uses serial communication analysis and/or or group communication analysis identifies at least one subgraph, such as those shown in FIG. 5a and fig. 5 B.

На фиг. 5а неклассифицированные вершины представлены в виде квадратов, вредоносные вершины - в виде кругов, а IP-адреса - в виде треугольников. Тройка вершин m2, URI 2, u1 была добавлена в подграф с помощью анализа последовательной связи. Вершина URI 1 и связанные с ней вершины были добавлены в подграф с помощью анализа групповой связи. Вершина URI 1 - вредоносная, вершина URI 2 - неклассифицированная.In fig. 5a, unclassified vertices are represented as squares, malicious vertices as circles, and IP addresses as triangles. The vertex triple m2, URI 2, u1 was added to the subgraph using serial link analysis. Vertex URI 1 and its associated vertices were added to the subgraph using group link analysis. URI vertex 1 is malicious, URI vertex 2 is unclassified.

После выделения по меньшей мере одного подграфа анализатор 240 анализирует информацию об объектах каждой пары вершин вида «вредоносный и неклассифицированный» с использованием анализа на сходство объектов с использованием модели машинного обучения. Если модель машинного обучения предоставит на выходе анализатору 240 решение о том, что неклассифицированный объект похож на вредоносный объект, анализатор 240 классифицирует ранее неклассифицированную вершину как вредоносную.After identifying at least one subgraph, analyzer 240 analyzes the object information of each pair of malicious and unclassified vertices using object similarity analysis using a machine learning model. If the machine learning model outputs to analyzer 240 a decision that the unclassified object is similar to a malicious object, analyzer 240 classifies the previously unclassified vertex as malicious.

При анализе пары вершин URI 1 и URI 2 на фиг.5а анализатор 240 классифицировал вершину URI 2 как вредоносную и добавил соответствующий ей объект в базу вредоносных объектов 220.When analyzing the pair of vertices URI 1 and URI 2 in Fig. 5a, the analyzer 240 classified the vertex URI 2 as malicious and added the corresponding object to the database of malicious objects 220.

На следующем этапе анализатор 240 применяет анализ объектов при помощи правил классификации. В данном примере сработало правило «Если количество вредоносных вершин больше 75% от общего количества вершин в подграфе, классифицировать все вершины как вредоносные» Таким образом, анализатор 240 классифицирует все неклассифицированные вершины как вредоносные и добавил соответствующие этим вершинам объекты в базу вредоносных объектов 220.In the next step, analyzer 240 applies object analysis using classification rules. In this example, the rule “If the number of malicious vertices is more than 75% of the total number of vertices in the subgraph, classify all vertices as malicious” worked. Thus, the analyzer 240 classifies all unclassified vertices as malicious and added objects corresponding to these vertices to the database of malicious objects 220.

Рассмотрим ещё один пример работы изобретения. На Фиг. 5б представлен подграф, выделенный анализатором 240. Вершина связь IP и связанные с ней вершины были добавлены в подграф с помощью анализа групповой связи. Вершина связь IP - вредоносная.Let's look at another example of how the invention works. In FIG. 5b shows the subgraph extracted by analyzer 240. The IP link vertex and its associated vertices were added to the subgraph using group link analysis. The top IP connection is malicious.

На первом этапе анализатор 240 анализирует информацию об объектах каждой пары вершин вида «вредоносный и неклассифицированный» с использованием анализа на сходство объектов с использованием модели машинного обучения. Если модель машинного обучения предоставит на выходе анализатору 240 решение о том, что неклассифицированный объект похож на вредоносный объект, анализатор 240 классифицирует ранее неклассифицированную вершину как вредоносную и добавит соответствующей объект в базу вредоносных объектов 220. В данном примере при анализе пары вершин u1 и m3 анализатор 210 классифицировал вершину u1 как вредоносную и добавил соответствующий ей объект в базу вредоносных объектов 220.In the first step, analyzer 240 analyzes the object information of each pair of malicious and unclassified vertices using object similarity analysis using a machine learning model. If the machine learning model provides output to analyzer 240 that an unclassified object is similar to a malicious object, analyzer 240 will classify the previously unclassified vertex as malicious and add the corresponding object to the database of malicious objects 220. In this example, when analyzing a pair of vertices u1 and m3, the analyzer 210 classified vertex u1 as malicious and added the corresponding object to the database of malicious objects 220.

На следующем этапе анализатор 240 применяет анализ объектов при помощи правил классификации. В данном примере ни одно из правил не сработало.In the next step, analyzer 240 applies object analysis using classification rules. In this example, none of the rules worked.

Фиг. 6 иллюстрирует частный случай реализации способа классификации объектов, а именно способ классификации доменных имен для предотвращения распространения вредоносной активности. Далее при описании этапов способа используется признак «доменное имя» в качестве признака «объект», при этом в зависимости от вариантов реализации может быть использован любой другой объект, указанный в рамках настоящего изобретения, или их совокупность.Fig. 6 illustrates a special case of implementing a method for classifying objects, namely a method for classifying domain names to prevent the spread of malicious activity. Further, when describing the stages of the method, the “domain name” attribute is used as the “object” attribute, and depending on the implementation options, any other object specified within the scope of the present invention, or a combination of them, can be used.

На этапе 610 с помощью модуля сбора информации 130 выполняют сбор информации об объектах, в частности доменных именах, в сети 110. Во время сбора информации об объектах выполняется поиск объектов в сети 110, которые имеют общую информацию с:At step 610, the information collection module 130 collects information about objects, in particular domain names, in the network 110. During the collection of information about objects, a search is made for objects in the network 110 that have common information with:

• объектами, которые ранее были классифицированы как вредоносные,• objects that were previously classified as malicious,

• объектами, которые в свою очередь имеют общую информацию с объектами, которые классифицированы как вредоносные.• objects that, in turn, have common information with objects that are classified as malicious.

Найденные в сети 110 объекты являются неклассифицированными объектами.The objects found in the network 110 are unclassified objects.

На этапе 620 с помощью модуля построения графа 210 строят граф связей, содержащий классифицированные и неклассифицированные объекты в виде вершин, причем связь между объектами указывает на наличие общей информации между объектами, при этом классифицированными объектами являются вредоносные объекты.At step 620, the graph builder 210 constructs a link graph containing classified and unclassified objects as vertices, where the link between the objects indicates the presence of common information between the objects, the classified objects being malicious objects.

В частном варианте реализации строят граф связей, в котором граф связей содержит связи только между объектами разного типа.In a particular implementation, a connection graph is constructed, in which the connection graph contains connections only between objects of different types.

Объектами и информацией об объектах являются по крайней мере два из следующих типов информации: IP-адрес; полное доменное имя; URI информация; данные о доменном имени, включающие сведения о регистраторе доменного имени; данные о владельце доменного имени, в том числе наименование владельца, которому принадлежит доменное имя, адрес владельца доменного имени, диапазон IP-адресов, к которому относится доменное имя, в сети, и контактные данные владельца доменного имени; данные о владельце IP-адреса, в том числе наименование и адрес владельца IP-адрес; название диапазона компьютерной сети; месторасположение, соответствующее диапазону IP-адресов, включающее страну и город; контактные данные администратора; сведения об IP-адресе, к которому относится проверяемый объект; сведения о выпущенных для доменного имени сертификатах публичного ключа; хэш файла и путь к файлу; веб-адреса, содержащие доменное имя, а также одну из следующих составляющих URI информации: адрес страницы; параметры загрузки страницы; другие составляющие части URI-информации.Objects and information about objects are at least two of the following types of information: IP address; fully qualified domain name; URI information; domain name information, including information about the domain name registrar; information about the owner of the domain name, including the name of the owner to whom the domain name belongs, the address of the owner of the domain name, the range of IP addresses to which the domain name belongs on the network, and contact information of the owner of the domain name; information about the owner of the IP address, including the name and address of the owner of the IP address; name of the computer network range; location corresponding to the range of IP addresses, including country and city; administrator contact details; information about the IP address to which the object being checked belongs; information about public key certificates issued for the domain name; file hash and file path; web addresses containing a domain name, as well as one of the following components of the URI information: page address; page loading parameters; other constituent parts of URI information.

В ещё одном частном варианте реализации на этапе 620 дополнительно классифицируют неклассифицированные объекты, являющиеся доменными именами, как доверенные в случае, если количество запросов, полученное из системы доменных имен, превышает заранее заданный порог.In yet another particular embodiment, block 620 further classifies unclassified domain name entities as trusted if the number of requests received from the domain name system exceeds a predetermined threshold.

На этапе 630 с помощью анализатора 240 выделяют из сформированного графа связей по меньшей мере один подграф, включающий однородные объекты и содержащий по меньшей мере один неклассифицированный объект, на основании по меньшей мере одного из подходов: анализа групповой связи между объектами; анализа последовательной связи между объектами.At step 630, using the analyzer 240, at least one subgraph is selected from the generated connection graph, including homogeneous objects and containing at least one unclassified object, based on at least one of the approaches: analysis of group connections between objects; analysis of sequential communication between objects.

В частном варианте реализации каждый из указанных подходов анализа осуществляется с помощью по меньшей мере одной модели машинного обучения, обученной методом «бустинга деревьев решений».In a particular implementation, each of these analysis approaches is carried out using at least one machine learning model trained by the “decision tree boosting” method.

В частном варианте реализации при анализе на основании последовательной связи используют по крайней мере один соседний вредоносный объект и информацию по меньшей мере о трех объектах, имеющих связь, а при анализе на основании групповой связи используют информацию по меньшей мере о четырех объектах, причем три из них имеют связь с четвертым.In a particular embodiment, when analyzing based on sequential communication, at least one neighboring malicious object and information about at least three objects having a connection are used, and when analyzing based on group communication, information about at least four objects is used, and three of them have a connection with the fourth.

На этапе 640 с помощью анализатора 240 выполняют классификацию каждого неклассифицированного объекта на каждом подграфе на основании анализа объектов при помощи правил классификации. В частных случаях реализации правила классификации включают по меньшей мере один из следующих подходов: анализ объектов при помощи модели машинного обучения и анализ на сходство объектов, который реализуется с помощью метрики Левенштейна.At step 640, analyzer 240 classifies each unclassified object in each subgraph based on the analysis of the objects using classification rules. In particular implementation cases, classification rules include at least one of the following approaches: analysis of objects using a machine learning model and analysis of object similarity, which is implemented using the Levenshtein metric.

На этапе 650 ограничивают доступ к объекту, который классифицирован как вредоносный, для предотвращения распространения вредоносной активности одним из следующих действий: блокируют доступ к веб-сайту, с которым связан объект; открывают веб-сайт, с которым связан объект, в браузере, который работает в защищенном режиме; приостанавливают переход на веб-сайт и информируют пользователя о связи веб-сайта с вредоносным объектом.At step 650, restricting access to the object that is classified as malicious to prevent the spread of malicious activity by one of the following actions: blocking access to the website with which the object is associated; open the website with which the object is associated in a browser running in protected mode; suspend the transition to the website and inform the user about the connection of the website with a malicious object.

Таким образом, благодаря вышеописанному изобретению решается техническая проблема, заключающаяся в создании способа классификации объектов на вредоносные и доверенные объекты для предотвращения распространения вредоносной активности.Thus, thanks to the above invention, the technical problem of creating a method for classifying objects into malicious and trusted objects to prevent the spread of malicious activity is solved.

На Фиг. 7 представлена компьютерная система, на которой могут быть реализованы различные варианты систем и способов, раскрытых в настоящем документе. Компьютерная система 20 может представлять собой систему, сконфигурированную для реализации настоящего изобретения и может быть в виде одного вычислительного устройства или в виде нескольких вычислительных устройств, например, настольного компьютера, портативного компьютера, ноутбука, мобильного вычислительного устройства, смартфона, планшетного компьютера, сервера, мейнфрейма, встраиваемого устройства и других форм вычислительных устройств.In FIG. 7 illustrates a computer system on which various embodiments of the systems and methods disclosed herein can be implemented. Computer system 20 may be a system configured to implement the present invention and may be in the form of a single computing device or multiple computing devices, such as a desktop computer, a laptop computer, a notebook computer, a mobile computing device, a smartphone, a tablet computer, a server, a mainframe computer. , embedded device, and other forms of computing devices.

Как показано на Фиг. 7, компьютерная система 20 включает в себя: центральный процессор 21, системную память 22 и системную шину 23, которая связывает разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, способную взаимодействовать с любой другой шинной архитектурой. Примерами шин являются: PCI, ISA, PCI-Express, HyperTransport™, InfiniBand™, Serial ATA, I2C и другие подходящие соединения между компонентами компьютерной системы 20. Центральный процессор 21 содержит один или несколько процессоров, имеющих одно или несколько ядер. Центральный процессор 21 исполняет один или несколько наборов машиночитаемых инструкций, реализующих способы, представленные в настоящем документе. Системная память 22 может быть любой памятью для хранения данных и/или компьютерных программ, исполняемых центральным процессором 21. Системная память может содержать как постоянное запоминающее устройство (ПЗУ) 24, так и память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами компьютерной системы 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.As shown in FIG. 7, the computer system 20 includes: a central processing unit 21, a system memory 22, and a system bus 23 that communicates various system components, including memory, coupled to the central processing unit 21. The system bus 23 is implemented as any bus known in the art. a structure that in turn contains a bus memory or bus memory controller, a peripheral bus, and a local bus capable of interfacing with any other bus architecture. Examples of buses include: PCI, ISA, PCI-Express, HyperTransport™, InfiniBand™, Serial ATA, I2C, and other suitable connections between components of the computer system 20. The central processing unit 21 includes one or more processors having one or more cores. The central processing unit 21 executes one or more sets of computer-readable instructions implementing the methods presented herein. System memory 22 may be any memory for storing data and/or computer programs executed by the central processing unit 21. System memory may include both read-only memory (ROM) 24 and random access memory (RAM) 25. Main input/output system (BIOS) 26 contains basic procedures that ensure the transfer of information between elements of the computer system 20, for example, when the operating system is loaded using ROM 24.

Компьютерная система 20 включает в себя одно или несколько устройств хранения данных, таких как одно или несколько извлекаемых запоминающих устройств 27, одно или несколько неизвлекаемых запоминающих устройств 28, или комбинации извлекаемых и неизвлекаемых устройств. Одно или несколько извлекаемых запоминающих устройств 27 и/или неизвлекаемых запоминающих устройств 28 подключены к системной шине 23 через интерфейс 32. В одном из вариантов реализации извлекаемые запоминающие устройства 27 и соответствующие машиночитаемые носители информации представляют собой энергонезависимые модули для хранения компьютерных инструкций, структур данных, программных модулей и других данных компьютерной системы 20. Системная память 22, извлекаемые запоминающие устройства 27 и неизвлекаемые запоминающие устройства 28 могут использовать различные машиночитаемые носители информации. Примеры машиночитаемых носителей информации включают в себя машинную память, такую как кэш-память, SRAM, DRAM, ОЗУ не требующую конденсатора (Z-RAM), тиристорную память (T-RAM), eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM; флэш-память или другие технологии памяти, такие как твердотельные накопители (SSD) или флэш-накопители; магнитные кассеты, магнитные ленты и магнитные диски, такие как жесткие диски или дискеты; оптические носители, такие как компакт-диски (CD-ROM) или цифровые универсальные диски (DVD); и любые другие носители, которые могут быть использованы для хранения нужных данных и к которым может получить доступ компьютерная система 20.Computer system 20 includes one or more data storage devices, such as one or more removable storage devices 27, one or more non-removable storage devices 28, or combinations of removable and non-removable devices. One or more removable storage devices 27 and/or non-removable storage devices 28 are connected to the system bus 23 through an interface 32. In one embodiment, removable storage devices 27 and associated computer-readable storage media are non-volatile modules for storing computer instructions, data structures, program modules and other data of the computer system 20. System memory 22, removable storage devices 27, and non-removable storage devices 28 may use various computer-readable storage media. Examples of computer-readable storage media include computer memory such as cache memory, SRAM, DRAM, capacitorless RAM (Z-RAM), thyristor memory (T-RAM), eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM; flash memory or other memory technologies such as solid-state drives (SSDs) or flash drives; magnetic cassettes, magnetic tapes and magnetic disks such as hard disks or floppy disks; optical media such as compact discs (CD-ROMs) or digital versatile discs (DVDs); and any other media that can be used to store the desired data and that can be accessed by the computer system 20.

Системная память 22, извлекаемые запоминающие устройства 27 и неизвлекаемые запоминающие устройства 28, содержащиеся в компьютерной системе 20 используются для хранения операционной системы 35, приложений 37, других программных модулей 38 и программных данных 39. Компьютерная система 20 включает в себя периферийный интерфейс 46 для передачи данных от устройств ввода 40, таких как клавиатура, мышь, стилус, игровой контроллер, устройство голосового ввода, устройство сенсорного ввода, или других периферийных устройств, таких как принтер или сканер через один или несколько портов ввода/вывода, таких как последовательный порт, параллельный порт, универсальная последовательная шина (USB) или другой периферийный интерфейс. Устройство отображения 47, такое как один или несколько мониторов, проекторов или встроенных дисплеев, также подключено к системной шине 23 через выходной интерфейс 48, такой как видеоадаптер. Помимо устройств отображения 47, компьютерная система 20 оснащена другими периферийными устройствами вывода (на Фиг. 7 не показаны), такими как динамики и другие аудиовизуальные устройства.System memory 22, removable storage devices 27, and non-removable storage devices 28 contained in the computer system 20 are used to store the operating system 35, applications 37, other program modules 38, and program data 39. The computer system 20 includes a peripheral interface 46 for data transfer. from input devices 40 such as a keyboard, mouse, stylus, game controller, voice input device, touch input device, or other peripheral devices such as a printer or scanner through one or more input/output ports such as a serial port, a parallel port , Universal Serial Bus (USB), or other peripheral interface. A display device 47, such as one or more monitors, projectors, or embedded displays, is also connected to the system bus 23 through an output interface 48, such as a video adapter. In addition to the display devices 47, the computer system 20 is equipped with other peripheral output devices (not shown in FIG. 7), such as speakers and other audiovisual devices.

Компьютерная система 20 может работать в сетевом окружении, используя сетевое соединение с одним или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 является рабочим персональным компьютером или сервером, который содержит большинство или все упомянутые компоненты, отмеченные ранее при описании сущности компьютерной системы 20, представленной на Фиг. 7. В сетевом окружении также могут присутствовать и другие устройства, например, маршрутизаторы, сетевые станции или другие сетевые узлы. Компьютерная система 20 может включать один или несколько сетевых интерфейсов 51 или сетевых адаптеров для связи с удаленными компьютерами 49 через одну или несколько сетей, таких как локальная компьютерная сеть (LAN) 50, глобальная компьютерная сеть (WAN), интранет и Интернет. Примерами сетевого интерфейса 51 являются интерфейс Ethernet, интерфейс Frame Relay, интерфейс SONET и беспроводные интерфейсы.The computer system 20 may operate in a networked environment using a network connection to one or more remote computers 49. The remote computer(s) 49 is a working personal computer or server that contains most or all of the components noted previously in describing the nature of the computer system 20 , presented in Fig. 7. There may also be other devices in the network environment, such as routers, network stations or other network nodes. The computer system 20 may include one or more network interfaces 51 or network adapters for communicating with remote computers 49 over one or more networks, such as a local area network (LAN) 50, a wide area network (WAN), an intranet, and the Internet. Examples of network interface 51 are an Ethernet interface, a Frame Relay interface, a SONET interface, and wireless interfaces.

Варианты раскрытия настоящего изобретения могут представлять собой систему, способ, или машиночитаемый носитель (или носитель) информации.Embodiments of the present invention may be a system, a method, or a computer-readable medium (or storage medium).

Машиночитаемый носитель информации является осязаемым устройством, которое сохраняет и хранит программный код в форме машиночитаемых инструкций или структур данных, к которым имеет доступ центральный процессор 21 компьютерной системы 20. Машиночитаемый носитель может быть электронным, магнитным, оптическим, электромагнитным, полупроводниковым запоминающим устройством или любой подходящей их комбинацией. В качестве примера, такой машиночитаемый носитель информации может включать в себя память с произвольным доступом (RAM), память только для чтения (ROM), EEPROM, портативный компакт-диск с памятью только для чтения (CD-ROM), цифровой универсальный диск (DVD), флэш-память, жесткий диск, портативную компьютерную дискету, карту памяти, дискету или даже механически закодированное устройство, такое как перфокарты или рельефные структуры с записанными на них инструкциями.A computer-readable storage medium is a tangible device that stores and stores program code in the form of machine-readable instructions or data structures that can be accessed by the central processing unit 21 of a computer system 20. The computer-readable storage medium may be an electronic, magnetic, optical, electromagnetic, semiconductor storage device, or any suitable their combination. By way of example, such a computer-readable storage medium may include random access memory (RAM), read-only memory (ROM), EEPROM, compact disc read-only memory (CD-ROM), digital versatile disk (DVD) ), flash memory, hard drive, portable computer floppy disk, memory card, floppy disk, or even a mechanically encoded device such as punch cards or embossed structures with instructions written on them.

Система и способ, настоящего изобретения, могут быть рассмотрены в терминах средств. Термин "средство", используемый в настоящем документе, относится к реальному устройству, компоненту или группе компонентов, реализованных с помощью аппаратного обеспечения, например, с помощью интегральной схемы, специфичной для конкретного приложения (ASIC) или FPGA, или в виде комбинации аппаратного и программного обеспечения, например, с помощью микропроцессорной системы и набора машиночитаемых инструкций для реализации функциональности средства, которые (в процессе выполнения) превращают микропроцессорную систему в устройство специального назначения. Средство также может быть реализовано в виде комбинации этих двух компонентов, при этом некоторые функции могут быть реализованы только аппаратным обеспечением, а другие функции - комбинацией аппаратного и программного обеспечения. В некоторых вариантах реализации, по крайней мере, часть, а в некоторых случаях и все средство может быть выполнено на центральном процессоре 21 компьютерной системы 20. Соответственно, каждое средство может быть реализовано в различных подходящих конфигурациях и не должно ограничиваться каким-либо конкретным вариантом реализации, приведенным в настоящем документе.The system and method of the present invention can be thought of in terms of means. The term "device" as used herein refers to an actual device, component, or group of components implemented in hardware, such as an application-specific integrated circuit (ASIC) or FPGA, or a combination of hardware and software. providing, for example, using a microprocessor system and a set of machine-readable instructions to implement the functionality of a tool that (in the process of execution) turns the microprocessor system into a special-purpose device. The tool may also be implemented as a combination of these two components, with some functions being implemented by hardware alone and other functions being implemented by a combination of hardware and software. In some embodiments, at least a portion, and in some cases all, of the means may be executed on the central processing unit 21 of the computer system 20. Accordingly, each means may be implemented in various suitable configurations and should not be limited to any particular implementation. given in this document.

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

Claims (42)

1. Способ классификации объектов для предотвращения распространения вредоносной активности, реализуемый на компьютерном устройстве, включающем память и аппаратный процессор, выполненный с возможностью реализации шагов, согласно которым:1. A method for classifying objects to prevent the spread of malicious activity, implemented on a computer device, including memory and a hardware processor, configured to implement steps according to which: а) выполняют поиск объектов в сети, которые имеют общую информацию с другими объектами;a) search for objects on the network that have common information with other objects; б) строят граф связей, содержащий классифицированные и неклассифицированные объекты в виде вершин, причем связь между объектами указывает на наличие общей информации между объектами, при этом классифицированными объектами являются вредоносные объекты;b) build a connection graph containing classified and unclassified objects in the form of vertices, and the connection between the objects indicates the presence of common information between the objects, while the classified objects are malicious objects; в) выделяют из сформированного графа связей по меньшей мере один подграф, включающий однородные объекты и содержащий по меньшей мере один неклассифицированный объект, на основании по меньшей мере одного из подходов:c) at least one subgraph is selected from the generated connection graph, which includes homogeneous objects and contains at least one unclassified object, based on at least one of the approaches: • анализа групповой связи между объектами;• analysis of group communication between objects; • анализа последовательной связи между объектами;• analysis of sequential communication between objects; г) выполняют классификацию каждого неклассифицированного объекта на каждом подграфе на основании анализа объектов при помощи правил классификации;d) perform classification of each unclassified object on each subgraph based on the analysis of objects using classification rules; д) ограничивают доступ к объекту, который классифицирован как вредоносный, для предотвращения распространения вредоносной активности.e) restrict access to an object that is classified as malicious to prevent the spread of malicious activity. 2. Способ по п. 1, в котором другими объектами являются либо объекты, которые классифицированы как вредоносные, либо объекты, которые имеют общую связь с объектами, которые классифицированы как вредоносные.2. The method of claim 1, wherein the other objects are either objects that are classified as malicious or objects that have a common relationship with objects that are classified as malicious. 3. Способ по п. 1, в котором правила классификации включают по меньшей мере один из следующих подходов:3. The method according to claim 1, in which the classification rules include at least one of the following approaches: • анализ на сходство объектов;• analysis for similarity of objects; • анализ объектов при помощи модели машинного обучения.• analysis of objects using a machine learning model. 4. Способ по п. 3, в котором анализ на сходство реализуется с помощью метрики Левенштейна.4. The method according to claim 3, in which similarity analysis is implemented using the Levenshtein metric. 5. Способ по п. 1, в котором граф связей содержит связи только между объектами разного типа.5. The method according to claim 1, in which the connection graph contains connections only between objects of different types. 6. Способ по п. 1, в котором объектами и информацией об объектах являются по крайней мере два из следующих типов информации:6. The method of claim 1, wherein the objects and information about objects are at least two of the following types of information: • IP-адрес;• IP address; • полное доменное имя;• fully qualified domain name; • URI информации;• URI information; • данные о доменном имени, включающие сведения о регистраторе доменного имени;• domain name information, including information about the domain name registrar; • данные о владельце доменного имени, в том числе наименование владельца, которому принадлежит доменное имя, адрес владельца доменного имени, диапазон IP-адресов, к которому относится доменное имя, в сети, и контактные данные владельца доменного имени;• information about the owner of the domain name, including the name of the owner to whom the domain name belongs, the address of the owner of the domain name, the range of IP addresses to which the domain name belongs on the network, and contact information of the owner of the domain name; • данные о владельце IP-адреса, в том числе наименование и адрес владельца IP-адрес;• information about the owner of the IP address, including the name and address of the owner of the IP address; • название диапазона компьютерной сети;• name of the computer network range; • месторасположение, соответствующее диапазону IP-адресов, включающее страну и город;• location corresponding to the range of IP addresses, including country and city; • контактные данные администратора;• administrator contact details; • сведения об IP-адресе, к которому относится проверяемый объект;• information about the IP address to which the object being checked belongs; • сведения о выпущенных для доменного имени сертификатах публичного ключа;• information about public key certificates issued for the domain name; • хэш файла и путь к файлу;• file hash and path to the file; • веб-адреса, содержащие доменное имя.• web addresses containing a domain name. 7. Способ по п. 6, в котором дополнительно URI информацией по меньшей мере являются:7. The method according to claim 6, in which the additional URI information is at least: • адрес страницы;• page address; • параметры загрузки страницы.• page loading parameters. 8. Способ по п. 1, в котором дополнительно после шага б) классифицируют неклассифицированные объекты, являющиеся доменными именами, как доверенные в случае, если количество запросов, полученное из системы доменных имен, превышает заранее заданный порог.8. The method of claim 1, further comprising, after step b), classifying unclassified domain name objects as trusted if the number of requests received from the domain name system exceeds a predetermined threshold. 9. Способ по п. 1, в котором по меньшей мере из одного подграфа выделяют связанные компоненты, которые содержат информацию о связанных объектах, при этом по меньшей мере один объект является неклассифицированным.9. The method according to claim 1, wherein from at least one subgraph, related components are extracted that contain information about related objects, wherein at least one object is unclassified. 10. Способ по п. 1, в котором каждый из указанных подходов анализа осуществляется с помощью по меньшей мере одной модели машинного обучения.10. The method according to claim 1, in which each of these analysis approaches is carried out using at least one machine learning model. 11. Способ по п. 10, в котором модель машинного обучения обучена методом «бустинга деревьев решений».11. The method according to claim 10, in which the machine learning model is trained using the “decision tree boosting” method. 12. Способ по п. 1, в котором при анализе на основании последовательной связи используют по меньшей мере один соседний вредоносный объект.12. The method according to claim 1, in which at least one neighboring malicious object is used in the analysis based on serial communication. 13. Способ по п. 1 в котором при анализе последовательной связи используют информацию по меньшей мере о трех объектах, имеющих связь.13. The method according to claim 1, in which when analyzing a serial connection, information about at least three objects having a connection is used. 14. Способ по п. 1 в котором при анализе групповой связи используют информацию по меньшей мере о четырех объектах, причем три из них имеют связь с четвертым. 14. The method according to claim 1, in which when analyzing a group connection, information about at least four objects is used, and three of them have a connection with the fourth. 15. Способ по п. 1, в котором ограничивают доступ к объекту, который классифицирован как вредоносный, для предотвращения распространения вредоносной активности одним из следующих действий:15. The method according to claim 1, in which access to an object that is classified as malicious is limited to prevent the spread of malicious activity by one of the following actions: • блокируют доступ к веб-сайту, с которым связан объект;• block access to the website with which the object is associated; • открывают веб-сайт, с которым связан объект, в браузере, который работает в защищенном режиме;• open the website to which the item is associated in a browser running in protected mode; • приостанавливают переход на веб-сайт и информируют пользователя о связи веб-сайта с вредоносным объектом.• pause the transition to the website and inform the user about the connection of the website with a malicious object.
RU2023116032A 2023-06-19 Method for classifying objects to prevent spread of malicious activity RU2808385C1 (en)

Publications (1)

Publication Number Publication Date
RU2808385C1 true RU2808385C1 (en) 2023-11-28

Family

ID=

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2408145C2 (en) * 2005-07-07 2010-12-27 Теленор Аса Method of distributing information and preventing distribution of information in computer network
US8635694B2 (en) * 2009-01-10 2014-01-21 Kaspersky Lab Zao Systems and methods for malware classification
US10178121B2 (en) * 2015-10-01 2019-01-08 Michael Klatt Domain reputation evaluation process and method
RU2724800C1 (en) * 2018-12-28 2020-06-25 Акционерное общество "Лаборатория Касперского" System and method of detecting source of malicious activity on computer system
US20210312042A1 (en) * 2020-04-06 2021-10-07 Cybereason Inc. Graph-Based Classification of Elements

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2408145C2 (en) * 2005-07-07 2010-12-27 Теленор Аса Method of distributing information and preventing distribution of information in computer network
US8635694B2 (en) * 2009-01-10 2014-01-21 Kaspersky Lab Zao Systems and methods for malware classification
US10178121B2 (en) * 2015-10-01 2019-01-08 Michael Klatt Domain reputation evaluation process and method
RU2724800C1 (en) * 2018-12-28 2020-06-25 Акционерное общество "Лаборатория Касперского" System and method of detecting source of malicious activity on computer system
US20210312042A1 (en) * 2020-04-06 2021-10-07 Cybereason Inc. Graph-Based Classification of Elements

Similar Documents

Publication Publication Date Title
Hindy et al. A taxonomy and survey of intrusion detection system design techniques, network threats and datasets
Xu et al. Am I eclipsed? A smart detector of eclipse attacks for Ethereum
US10574681B2 (en) Detection of known and unknown malicious domains
Arora et al. Minimizing network traffic features for android mobile malware detection
RU2494453C2 (en) Method for distributed performance of computer security tasks
JP2018049602A (en) Graph database analysis for network anomaly detection systems
US10771496B2 (en) Insider threat detection utilizing user group data object access analysis
US11165803B2 (en) Systems and methods to show detailed structure in a security events graph
JP2020525960A (en) System and method for detecting vulnerabilities on a server
Serketzis et al. Actionable threat intelligence for digital forensics readiness
US11652833B2 (en) Detection of anomalous count of new entities
Chen et al. Efficient suspicious URL filtering based on reputation
Ismail et al. Incorporating known malware signatures to classify new malware variants in network traffic
RU2808385C1 (en) Method for classifying objects to prevent spread of malicious activity
RU2587424C1 (en) Method of controlling applications
WO2023163820A1 (en) Graph-based analysis of security incidents
Tabash et al. An Approach for Detecting and Preventing DoS Attacks in LA N
US9465921B1 (en) Systems and methods for selectively authenticating queries based on an authentication policy
Buczak et al. Using sequential pattern mining for common event format (CEF) cyber data
Veetil et al. Real-time network intrusion detection using Hadoop-based Bayesian classifier
US11425092B2 (en) System and method for analytics based WAF service configuration
Azizpour et al. Nada: new architecture for detecting dos and ddos attacks in fog computing
Tao Suspicious URL and device detection by log mining
Singh et al. A review of network intrusion detection system based on KDD dataset
Nguyen Quoc et al. Detecting DGA Botnet based on Malware Behavior Analysis