RU2789990C1 - Method and system for automated documentation of security threats and vulnerabilities related to an information resource - Google Patents

Method and system for automated documentation of security threats and vulnerabilities related to an information resource Download PDF

Info

Publication number
RU2789990C1
RU2789990C1 RU2022114865A RU2022114865A RU2789990C1 RU 2789990 C1 RU2789990 C1 RU 2789990C1 RU 2022114865 A RU2022114865 A RU 2022114865A RU 2022114865 A RU2022114865 A RU 2022114865A RU 2789990 C1 RU2789990 C1 RU 2789990C1
Authority
RU
Russia
Prior art keywords
profile
information
information resource
vulnerabilities
threats
Prior art date
Application number
RU2022114865A
Other languages
Russian (ru)
Inventor
Сергей Вячеславович Лебедев
Михаил Валерьевич Савин
Original Assignee
Общество с ограниченной ответственностью "КИТ Разработка"
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "КИТ Разработка" filed Critical Общество с ограниченной ответственностью "КИТ Разработка"
Application granted granted Critical
Publication of RU2789990C1 publication Critical patent/RU2789990C1/en

Links

Images

Abstract

FIELD: information security.
SUBSTANCE: invention relates to the field of information security. A method for automated documentation of security threats and vulnerabilities related to an information resource includes: initializing an information resource profile; expanding the profile of an information resource by adding new vertices and edges to its knowledge graph in an automated and interactive mode; clarification of the profile of the information resource by classifying the components of the profile and/or enriching the profile; determination of security threats and vulnerabilities related to the information resource by establishing relationships between the vertices of the profile graph and the corresponding threats and vulnerabilities, moreover, information about the components of the information resource that are obtained during the initialization, expansion and refinement of the profile of the information resource, and certain security threats and vulnerabilities related to the information resource are recorded in the documenting file of security threats and vulnerabilities.
EFFECT: increasing the reliability of the information received about threats and vulnerabilities related to the information resource.
11 cl, 4 dwg

Description

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

Изобретение относится к области информационной безопасности, а именно к средствам автоматизированного документирования угроз безопасности и уязвимостей, относящихся к информационному ресурсу. Изобретение может быть использовано в составе программно-аппаратных комплексов обеспечения информационной безопасности промышленных систем автоматизации и управления.The invention relates to the field of information security, namely to automated documentation of security threats and vulnerabilities related to an information resource. The invention can be used as part of hardware and software systems for ensuring information security of industrial automation and control systems.

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

Известен способ оценки устойчивости киберфизической системы к компьютерным атакам, раскрытый в патенте РФ на изобретение № 2710985 (опубл. 14.01.2020, МПК G06F 21/55, G06N 5/02). В известном способе на основе документации на систему строят компьютерное представление системы в виде ориентированного графа. Затем описывают процессы внутри системы как маршруты на упомянутом графе, формируют для каждого процесса множества альтернативных маршрутов. На основании количества альтернативных маршрутов вычисляют оценку устойчивости системы к компьютерным атакам.There is a known method for assessing the resistance of a cyber-physical system to computer attacks, disclosed in the RF patent for invention No. 2710985 (publ. 01/14/2020, IPC G06F 21/55, G06N 5/02). In a known method, based on the documentation for the system, a computer representation of the system is built in the form of a directed graph. Then the processes inside the system are described as routes on the mentioned graph, and sets of alternative routes are formed for each process. Based on the number of alternative routes, an estimate of the system's resistance to computer attacks is calculated.

Однако известный способ характеризуется ограниченными функциональными возможностями, поскольку не учитывает качественную оценку угроз и уязвимостей компонентов, находящихся на том или ином маршруте, определенного для графа системы. Компоненты системы, участвующие в обеспечении маршрутов на графе, могут иметь явные уязвимости, которые не учитываются в известном способе, что снижает защищенность системы при выборе альтернативного маршрута с уязвимым компонентом.However, the known method is characterized by limited functionality, since it does not take into account the qualitative assessment of threats and vulnerabilities of components located on a particular route defined for the system graph. The system components involved in providing routes on the graph may have obvious vulnerabilities that are not taken into account in the known method, which reduces the system security when choosing an alternative route with a vulnerable component.

Известен способ тестирования системы программных и аппаратных средств, раскрытый в патенте РФ на изобретение № 2715025 (опубл. 21.02.2020, МПК G06F 21/57, G06F 11/36, G06F 17/50). В известном способе строят модель использования тестируемой системы на основании ее формализованного описания, строят модель угроз того же вида, что и модель использования, на основании описаний известных угроз для сходных систем, сравнивают модель угроз с моделью использования и на основании результатов сравнения моделей обнаруживают средства тестируемой системы, которые уязвимы по отношению к известным угрозам.A known method for testing a system of software and hardware is disclosed in the RF patent for invention No. 2715025 (published on February 21, 2020, IPC G06F 21/57, G06F 11/36, G06F 17/50). In a known method, a test system use model is built based on its formalized description, a threat model of the same type as the use model is built based on descriptions of known threats for similar systems, the threat model is compared with the use model, and based on the results of the model comparison, means of the tested system are found. systems that are vulnerable to known threats.

Однако известный способ характеризуется ограниченными функциональными возможностями, поскольку не учитывает угрозы и уязвимости для отдельных компонентов тестируемой системы, ограничиваясь моделью использования такой системы. Помимо этого, в качестве моделей угроз при тестировании системы используются предварительно подготовленные модели угроз для систем, сходных с тестируемой, что может недостаточно точно отражать реальную защищенность тестируемой системы.However, the known method is characterized by limited functionality, since it does not take into account the threats and vulnerabilities for individual components of the system under test, being limited to the model of using such a system. In addition, pre-trained threat models for systems similar to the one under test are used as threat models during system testing, which may not accurately reflect the real security of the system under test.

Известен способ оценивания безопасности компьютерной сети на основе онтологии, раскрытый в публикации Gao J. et al., Ontology-based model of network and computer attacks for security assessment //Journal of Shanghai Jiaotong University (Science). – 2013. – Т. 18. – №. 5. – С. 554-562. В известном способе для оценивания безопасности используется онтология для оценки воздействия атаки через оценку производительности компьютерной системы до и после атаки. Уязвимости компьютерной системы выявляют посредством специальных сканеров. В онтологии фиксируют пять базовых понятий: цель, вектор, воздействие, уязвимость, защита. Источником данных для онтологии являются, в частности, открытые источники, такие как CWE (англ. Common Weakness Enumeration), CVE (англ. Common Vulnerabilities and Exposures), CVSS (англ. Common Vulnerability Scoring System). Использование онтологии позволяет получить список атак, актуальных для выявленных сканерами уязвимостей.There is a known ontology-based computer network security assessment method disclosed in Gao J. et al., Ontology-based model of network and computer attacks for security assessment //Journal of Shanghai Jiaotong University (Science). - 2013. - T. 18. - No. 5. - S. 554-562. The prior art method for evaluating security uses an ontology to evaluate the impact of an attack by evaluating the performance of a computer system before and after an attack. Computer system vulnerabilities are detected through special scanners. Five basic concepts are fixed in the ontology: goal, vector, impact, vulnerability, protection. The data source for the ontology is, in particular, open sources such as CWE (Common Weakness Enumeration), CVE (Common Vulnerabilities and Exposures), CVSS (Common Vulnerability Scoring System). Using the ontology allows you to get a list of attacks that are relevant for vulnerabilities identified by scanners.

Однако известный способ позволяет получить только количественную оценку эффекта атаки на компьютерную систему, но не позволяет получить модель угроз для компьютерной системы. При этом использование сканеров ограничивает область применения способа на этапе проектирования компьютерной системы, что, в частности, приводит к невозможности учета знаний об угрозах, характерных для отдельных классов программного и аппаратного обеспечения.However, the known method allows only to obtain a quantitative assessment of the effect of an attack on a computer system, but does not allow to obtain a threat model for a computer system. At the same time, the use of scanners limits the scope of the method at the design stage of a computer system, which, in particular, makes it impossible to take into account knowledge about threats specific to individual classes of software and hardware.

Известен способ построения модели угроз на основе онтологии, раскрытый в публикации Brazhuk A., Olizarovich E. Framework for ontology-driven threat modelling of modern computer systems //International Journal of Open Information Technologies. – 2020. – Т. 8. – №. 2. – С. 14-20. В известном способе создают базовую онтологию, включающую элементы для построения DFD-диаграмм компьютерной системы (англ. DFD - Data Flow Diagram) и базовые понятия информационной безопасности (угрозы, меры), которые привязаны к элементам DFD-диаграмм. Затем эти элементы связывают с угрозами посредством шаблонов, представляющих собой OWL-аксиомы, определяющие соответствующий класс. Далее базовую онтологию расширяют до онтологии предметной области, например, области облачных системы. Затем в терминах онтологии описывают конкретную DFD-диаграмму, осуществляют логический вывод и получают список угроз.There is a known method of building a threat model based on ontology, disclosed in the publication Brazhuk A., Olizarovich E. Framework for ontology-driven threat modeling of modern computer systems //International Journal of Open Information Technologies. - 2020. - T. 8. - No. 2. - S. 14-20. In a known method, a basic ontology is created, including elements for constructing DFD diagrams of a computer system (eng. DFD - Data Flow Diagram) and basic concepts of information security (threats, measures) that are tied to the elements of DFD diagrams. These elements are then associated with threats through templates, which are OWL axioms that define the corresponding class. Further, the basic ontology is extended to the ontology of the subject area, for example, the area of cloud systems. Then, in terms of ontology, a specific DFD diagram is described, a logical conclusion is made, and a list of threats is obtained.

Однако известный способ характеризуется ограниченными функциональными возможностями, поскольку не учитывает угрозы и уязвимости отдельных компонентов, ограничиваясь угрозами для потоков данных в компьютерной системе. However, the known method is characterized by limited functionality, since it does not take into account the threats and vulnerabilities of individual components, being limited to threats to data flows in a computer system.

Известен способ построения модели угроз на основе онтологии, раскрытый в публикации Välja M. et al., Automating threat modeling using an ontology framework //Cybersecurity. – 2020. – Т. 3. – №. 1. – С. 1-20. В известном способе используют онтологический каркас, обеспечивающий стандартизацию имен и классификацию. Помимо этого, упомянутый каркас обеспечивает группировку и абстрагирование от малозначащих деталей. Для реализации способа предложено два типа шаблонов - содержания, фиксирующего возможные модели описания данных, и вывода, фиксирующего преобразование данных. Уязвимости компьютерной системы выявляют посредством специальных сканеров. Затем выявленные уязвимости обобщают до уязвимостей, известных из CWE и далее до нескольких значимых типов атак (OWASP Top 10).There is a known method for building a threat model based on an ontology, disclosed in the publication of Välja M. et al., Automating threat modeling using an ontology framework //Cybersecurity. - 2020. - Vol. 3. - No. 1. - S. 1-20. In a known method, an ontological framework is used that provides standardization of names and classification. In addition, the mentioned framework provides grouping and abstraction from unimportant details. To implement the method, two types of templates are proposed - content, which fixes possible data description models, and output, which fixes data transformation. Computer system vulnerabilities are detected through special scanners. The identified vulnerabilities are then generalized to vulnerabilities known from CWE and further to several significant types of attacks (OWASP Top 10).

Недостатком известного способа является отсутствие возможности использования предложенного онтологического каркаса для анализа уязвимостей проектируемой системы и выявления угроз по типу программного обеспечения. Помимо этого, в известном способе используют упрощенную метамодель (классы, экземпляры, отношения), не поддерживаемую каким-либо формальным аппаратом, что приводит к ограничению выразительности и строгости семантики. The disadvantage of the known method is the inability to use the proposed ontological framework to analyze the vulnerabilities of the designed system and identify threats by software type. In addition, the known method uses a simplified metamodel (classes, instances, relationships) that is not supported by any formal apparatus, which leads to limited expressiveness and rigor of semantics.

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

Техническая задача, положенная в основу настоящего изобретения, заключается в обеспечении возможности документировании угроз безопасности и уязвимостей, относящихся к информационному ресурсу, в автоматизированном режиме.The technical problem underlying the present invention is to provide the possibility of documenting security threats and vulnerabilities related to an information resource in an automated mode.

Технический результат, достигаемый при осуществлении настоящего изобретения, заключается в повышении достоверности полученных сведений об угрозах и уязвимостях, относящихся к информационному ресурсу, за счет обеспечения возможности их документирования в автоматизированном режиме с привлечением формализованных экспертных знаний.The technical result achieved by the implementation of the present invention is to increase the reliability of the information received about threats and vulnerabilities related to the information resource by providing the possibility of their documentation in an automated mode with the involvement of formalized expert knowledge.

Дополнительные технические результаты, достигаемые при осуществлении изобретения:Additional technical results achieved in the implementation of the invention:

- повышение полноты информации, получаемой в результате определения угроз и уязвимостей, относящихся к информационному ресурсу;- increasing the completeness of information obtained as a result of identifying threats and vulnerabilities related to the information resource;

- автоматизация процесса документирования угроз и уязвимостей, относящихся к информационному ресурсу.- automation of the process of documenting threats and vulnerabilities related to the information resource.

В качестве изобретения заявлен способ автоматизированного документирования угроз безопасности и уязвимостей, относящихся к информационному ресурсу, включающий следующие шаги:As an invention, a method for automated documentation of security threats and vulnerabilities related to an information resource is claimed, including the following steps:

- инициализация профиля информационного ресурса, при этом такой профиль представлен графом знаний, в котором вершины отражают компоненты ресурса, а ребра отражают связи между такими компонентами, причем на шаге инициализации граф профиля содержит единственный корневой элемент, отражающий информационный ресурс;- initialization of the profile of the information resource, while such a profile is represented by a knowledge graph, in which the vertices reflect the components of the resource, and the edges reflect the links between such components, and at the initialization step, the profile graph contains a single root element that reflects the information resource;

- расширение профиля информационного ресурса путем добавления новых вершин и ребер в его граф знаний в автоматизированном и интерактивном режиме, при этом в автоматизированном режиме сведения о компонентах информационного ресурса получают от автоматических средств сбора данных о компьютерных системах, причем для присвоения названий вершинам и ребрам используют предварительно подготовленную онтологию предметной области построения угроз безопасности информации, содержащую понятия и отношения между ними, стандартизированные для упомянутой предметной области; в интерактивном режиме сведения о компонентах информационного ресурса получают в результате пользовательского ввода на основе анкеты, предоставляемой пользователю и сформированной на основании контекста добавленных ранее вершин, ребер в граф профиля и упомянутой онтологии предметной области, определяющей структуру и состав анкеты;- expanding the profile of an information resource by adding new vertices and edges to its knowledge graph in an automated and interactive mode, while in an automated mode, information about the components of an information resource is obtained from automatic means of collecting data on computer systems, and for assigning names to vertices and edges, they are used in advance a prepared ontology of the subject area for building information security threats, containing concepts and relationships between them, standardized for the mentioned subject area; in interactive mode, information about the components of the information resource is obtained as a result of user input based on the questionnaire provided to the user and formed on the basis of the context of previously added vertices, edges in the profile graph and the mentioned ontology of the subject area that determines the structure and composition of the questionnaire;

- уточнение профиля информационного ресурса путем классификации компонентов профиля, и/или обогащения профиля, при этом при классификации компонентов в граф профиля добавляют вершины, отражающие классы, к которым относятся компоненты профиля; при обогащении в граф профиля добавляют вершины, отражающие дополнительные сведения о компонентах, добавленных при расширении профиля;- refinement of the profile of the information resource by classifying the profile components, and/or enriching the profile, while classifying the components, vertices are added to the profile graph, reflecting the classes to which the profile components belong; when enriching, vertices are added to the profile graph, reflecting additional information about the components added when expanding the profile;

- определение угроз безопасности и уязвимостей, относящихся к информационному ресурсу, путем установления отношений между вершинами графа профиля и соответствующими им угрозами и уязвимостями, при этом упомянутые отношения отражены в упомянутой онтологии предметной области или выведены логически, исходя из изначально заданных отношений между понятиями этой онтологии, причем источником сведений об угрозах и уязвимостях является по меньшей мере одна внешняя база знаний об информационной безопасности, описывающая известные угрозы и уязвимости для компонентов информационного ресурса;- determination of security threats and vulnerabilities related to the information resource by establishing relationships between the vertices of the profile graph and the corresponding threats and vulnerabilities, while the mentioned relationships are reflected in the mentioned domain ontology or are logically derived based on the initially specified relationships between the concepts of this ontology, moreover, the source of information about threats and vulnerabilities is at least one external information security knowledge base that describes known threats and vulnerabilities for the components of the information resource;

- причем сведения о компонентах информационного ресурса, которые получены при инициализации, расширении и уточнении профиля информационного ресурса, и определенных угрозах безопасности и уязвимостях, относящихся к информационному ресурсу, записывают в файл документирования угроз безопасности и уязвимостей.- moreover, information about the components of the information resource, which are obtained during the initialization, expansion and refinement of the profile of the information resource, and certain security threats and vulnerabilities related to the information resource, are recorded in the documenting file of security threats and vulnerabilities.

Дополнительные преимущества и существенные признаки настоящего изобретения могут быть представлены в следующих частных вариантах осуществления.Additional advantages and essential features of the present invention can be presented in the following particular embodiments.

В частности, граф профиля информационного ресурса представлен RDF-графом.In particular, the information resource profile graph is represented by an RDF graph.

В частности, компоненты информационного ресурса представлены программными и аппаратными компонентами.In particular, the components of the information resource are represented by software and hardware components.

В частности, по меньшей мере один компонент информационного ресурса представлен компонентом реальной компьютерной системы.In particular, at least one component of the information resource is represented by a component of a real computer system.

В частности, по меньшей мере один компонент информационного ресурса представлен проектируемым компонентом компьютерной системы. Внесение в профиль информационного ресурса проектируемого компонента позволяет получить сведения о потенциальных угрозах безопасности информации с учетом возможных изменений в информационном ресурсе, связанных с вводом этого компонента в реальную компьютерную систему.In particular, at least one information resource component is represented by a computer system component being designed. Adding a designed component to the profile of an information resource makes it possible to obtain information about potential threats to information security, taking into account possible changes in the information resource associated with the introduction of this component into a real computer system.

Информационный ресурс состоит по меньшей мере из одного компонента, являющегося ресурсом или частью ресурса, выбранного из следующей группы: информационный актив, объект доступа, информационная инфраструктура, объект информационной инфраструктуры, в том числе, информационно-телекоммуникационная сеть, информационная система, автоматизированная система управления.An information resource consists of at least one component that is a resource or part of a resource selected from the following group: information asset, access object, information infrastructure, information infrastructure object, including information and telecommunications network, information system, automated control system.

В качестве изобретения заявлена система автоматизированного документирования угроз безопасности и уязвимостей, относящихся к информационному ресурсу, содержащая профиль информационного ресурса, представленный графом знаний, в котором вершины отражают компоненты ресурса, а ребра отражают связи между такими компонентами;As an invention, a system for automated documentation of security threats and vulnerabilities related to an information resource is claimed, containing an information resource profile represented by a knowledge graph in which the vertices reflect the components of the resource, and the edges reflect the links between such components;

онтологию предметной области, которая содержит понятия и отношения между ними, стандартизированные для предметной области, отражает отношения между вершинами графа профиля и соответствующими им угрозами и уязвимостями;ontology of the subject area, which contains concepts and relations between them, standardized for the subject area, reflects the relationship between the vertices of the profile graph and their corresponding threats and vulnerabilities;

модуль инициализации и расширения профиля, связанный с модулем взаимодействия с пользователем, модулями обработки данных о структуре информационного ресурса, модулем обработки анкеты расширения профиля и онтологией предметной области, при этом упомянутые модули обработки данных связаны с модулями сбора данных о структуре информационного ресурса, модуль обработки анкеты связан с модулем построения анкеты расширения профиля, причем анкета формируются на основании контекста, определяемого вершинами и ребрами, добавленными в граф профиля, и онтологии предметной области, определяющей структуру и состав анкеты;a profile initialization and extension module associated with a user interaction module, modules for processing data on the structure of an information resource, a module for processing a questionnaire for expanding a profile and an ontology of a subject area, while said data processing modules are associated with modules for collecting data about the structure of an information resource, a module for processing a questionnaire associated with a module for constructing a profile extension questionnaire, wherein the questionnaire is formed based on the context defined by the vertices and edges added to the profile graph, and the ontology of the subject area that determines the structure and composition of the questionnaire;

модуль управления классификацией компонентов профиля, связанный с модулями классификации и распознавания компонентов профиля, причем эти модули связаны с соответствующими им модулями доступа к внешним источникам данных о классах компонентов профиля;a profile component classification control module associated with profile component classification and recognition modules, these modules being associated with their respective modules for accessing external data sources of profile component classes;

модуль обогащения профиля, связанный с графом знаний информационной безопасности, который связан с модулем его построения и обновления, причем этот модуль связан с внешними источниками данных об информационной безопасности, включающими по меньшей мере одну базу знаний об информационной безопасности, описывающую угрозы и уязвимости, которые отражены в графе профиля компонентов информационного ресурса;profile enrichment module associated with the information security knowledge graph, which is associated with its construction and updating module, and this module is associated with external information security data sources, including at least one information security knowledge base describing the threats and vulnerabilities that are reflected in the profile graph of the components of the information resource;

модуль определения угроз безопасности и уязвимостей, относящихся к информационному ресурсу, связанный с модулем логического вывода, позволяющим логически вывести отношения между вершинами графа профиля и угрозами и уязвимостями на основе онтологии предметной области, и модулем автоматизированного документирования угроз безопасности и уязвимостей, обеспечивающим запись в файл документирования сведений об упомянутых угрозах и уязвимостях. a module for determining security threats and vulnerabilities related to an information resource, associated with an inference module that allows you to logically derive relationships between the profile graph vertices and threats and vulnerabilities based on the ontology of the subject area, and a module for automated documentation of security threats and vulnerabilities that provides a record in the documentation file information about the mentioned threats and vulnerabilities.

В частности, модули сбора данных о структуре информационного ресурса представлены автоматическими средствами сбора данных о компьютерных системах.In particular, modules for collecting data on the structure of an information resource are represented by automatic tools for collecting data on computer systems.

В частности, внешними источниками данных об информационной безопасности выступают база идентификаторов версий продуктов (CPE), база уязвимостей (CVE), база слабых мест (CWE), база шаблонов атак (CAPEC), банк данных угроз безопасности информации ФСТЭК России.In particular, the database of product version identifiers (CPE), the database of vulnerabilities (CVE), the database of weaknesses (CWE), the database of attack patterns (CAPEC), the information security threat database of the FSTEC of Russia are external sources of information security data.

В частности, система может содержать модуль управления построением профиля, управляющий работой модулей системы на основе потока команд.In particular, the system may include a profile building control module that controls the operation of system modules based on a command stream.

В частности, работа модулей системы инициализируется изменением данных в модулях, с которыми они связаны, и/или изменением данных в профиле информационного ресурса.In particular, the operation of the system modules is initialized by changing the data in the modules with which they are associated and/or changing the data in the information resource profile.

Необходимость автоматизации документирования угроз возникает в двух случаях: при изменении условий ранее решенной задачи (например, изменение структуры информационного ресурса); и при постановке новой задачи для ранее не встречавшегося информационного ресурса. The need to automate the documentation of threats arises in two cases: when the conditions of a previously solved problem change (for example, a change in the structure of an information resource); and when setting a new task for a previously unseen information resource.

Обеспечение возможности документирования угроз и уязвимостей, относящихся к информационному ресурсу, в автоматизированном режиме достигается: Ensuring the possibility of documenting threats and vulnerabilities related to an information resource in an automated mode is achieved by:

- формализацией и унификацией экспертных знаний;- formalization and unification of expert knowledge;

- связыванием экспертных знаний;- linking expert knowledge;

- обобщением экспертных знаний;- generalization of expert knowledge;

- унификацией программных компонент для работы со знаниями;- unification of software components for working with knowledge;

-накоплением и повторным использованием программных компонент. -accumulation and reuse of software components.

Формализация экспертных знаний позволяет перейти к представлению знаний в машинно-читаемом формате и, тем самым сделать знания доступными для программных средств. Например, формализация знаний об уязвимостях позволяет получать дополнительные сведения об уязвимости, например, класс уязвимости, по ее идентификатору без привлечения эксперта.Formalization of expert knowledge makes it possible to move to the representation of knowledge in a machine-readable format and, thereby, make knowledge available to software tools. For example, the formalization of knowledge about vulnerabilities makes it possible to obtain additional information about a vulnerability, for example, a vulnerability class, by its identifier without involving an expert.

Унификация предполагает использование единой системы стандартов представления и обработки знаний, что позволяет сократить количество инструментов, необходимых для работы со знаниями.Unification involves the use of a unified system of standards for the representation and processing of knowledge, which reduces the number of tools needed to work with knowledge.

Кроме того, унификация позволяет наиболее эффективно (т. е. без необходимости промежуточных преобразований) связывать знания. Связывание дает возможность переходить от одних знаний к другим без привлечения эксперта. Например, по идентификатору продукта запрашивать найденные для данного продукта уязвимости, а по полученным уязвимостям запрашивать угрозы, которые реализуются через данные уязвимости.In addition, unification allows the most efficient (i.e., without the need for intermediate transformations) linking knowledge. Linking makes it possible to move from one knowledge to another without the involvement of an expert. For example, by product ID, request vulnerabilities found for a given product, and by received vulnerabilities, request threats that are implemented through these vulnerabilities.

Обобщение экспертных знаний позволяет за счет абстрагирования от специфики конкретных информационных ресурсов, сформировать множество понятий и отношений необходимое и достаточное для описания различных классов данных ресурсов, что избавляет от необходимости формировать такое множество каждый раз при возникновении необходимости получить сведения об угрозах. В частности, данное множество может включать понятия и отношения для описания элементов компьютерной сети.The generalization of expert knowledge allows, by abstracting from the specifics of specific information resources, to form a set of concepts and relationships necessary and sufficient to describe various classes of these resources, which eliminates the need to form such a set every time the need arises to obtain information about threats. In particular, this set may include concepts and relationships for describing the elements of a computer network.

Кроме того, обобщение позволяет использовать унифицированные компьютерные средства, которые ориентированы на работу с зафиксированным множеством понятий и отношений, что избавляет от необходимости разрабатывать приложения для каждой новой задачи. В частности, на основе зафиксированного множества понятий и отношений может быть построена анкета для уточнения данных по защищаемому ресурсу, которая будет обрабатываться единым образом.In addition, generalization allows the use of unified computer tools that are focused on working with a fixed set of concepts and relationships, which eliminates the need to develop applications for each new task. In particular, on the basis of a fixed set of concepts and relationships, a questionnaire can be built to clarify data on a protected resource, which will be processed in a unified way.

Ввиду того, что для решения задачи автоматизации документирования угроз безопасности информации часто используются одни и те же компьютерные средства, целесообразно создавать библиотеки компонент для работы с такими средствами. Например, компонент унификации и связывания информации, полученный от того или иного типа сетевого сканера.In view of the fact that the same computer tools are often used to solve the problem of automating the documentation of information security threats, it is advisable to create component libraries for working with such tools. For example, a component for unifying and linking information obtained from one or another type of network scanner.

Для обеспечения формализации, унификации, связывания и обобщения знаний может быть использован язык описания онтологий OWL (OWL 2 DL), основанный на дескриптивной логике.To provide formalization, unification, linking and generalization of knowledge, the ontology description language OWL (OWL 2 DL), based on descriptive logic, can be used.

Онтологии используются как непротиворечивый источник экспертных знаний, отражающих предметную область через множество понятий и связей между ними. Ontologies are used as a consistent source of expert knowledge that reflects the subject area through a set of concepts and relationships between them.

Множество определенных в онтологии понятий и отношений позволяет строить граф профиля информационного ресурса в автоматизированном режиме с использованием активных и пассивных средств сбора данных об информационном ресурсе.The set of concepts and relationships defined in the ontology makes it possible to build an information resource profile graph in an automated mode using active and passive means of collecting data about an information resource.

Помимо этого, использование онтологии позволяет автоматизировать выдачу рекомендаций, основанных на текущем содержании графа профиля информационного ресурса, для расширения такого графа путем обработки результатов пользовательского ввода, выполненного при взаимодействии с анкетой пользователя.In addition, the use of the ontology makes it possible to automate the issuance of recommendations based on the current content of the information resource profile graph for expanding such a graph by processing the results of user input made when interacting with the user's profile.

Таким образом, привлечение экспертных знаний в совокупности с автоматизацией операций их получения, обработки и передачи, позволяют уменьшить влияние человеческого фактора на подготовку сведений об угрозах и уязвимостях, относящихся к информационному ресурсу. В свою очередь, это приводит к повышению достоверности получаемых сведений о таких угрозах и уязвимостях, что является важной составляющей для обеспечения информационной безопасности автоматизированных систем в различных сферах деятельности.Thus, the involvement of expert knowledge in conjunction with the automation of the operations of their receipt, processing and transmission, can reduce the impact of the human factor on the preparation of information about threats and vulnerabilities related to the information resource. In turn, this leads to an increase in the reliability of the information received about such threats and vulnerabilities, which is an important component for ensuring the information security of automated systems in various fields of activity.

Под термином «RDF» понимается модель представления данных Resource Description Framework (среда описания ресурса). Модель RDF состоит из RDF-утверждений о ресурсах в виде, пригодном для машинной обработки.The term "RDF" refers to the data presentation model of the Resource Description Framework (resource description environment). An RDF model consists of RDF resource assertions in a machine-readable form.

Под термином «RDF-граф» понимается ориентированный граф, состоящий из RDF-утверждений. Вершинами RDF-графа являются субъекты и объекты, а ребра отражают отношения.The term "RDF graph" refers to a directed graph consisting of RDF statements. The vertices of an RDF graph are subjects and objects, and the edges represent relationships.

Под термином «SPARQL-запрос» понимается запрос к данным, структурированным в виде RDF-графа.The term "SPARQL query" refers to a query to data structured as an RDF graph.

Под термином «DL-запрос» понимается выражение, описывающее искомый OWL-класс.The term "DL query" refers to an expression that describes the OWL class you are looking for.

Под термином «CPE» (англ. Common Platform Enumeration) понимается структурированная схема именования систем, программного обеспечения и пакетов информационных технологий.The term "CPE" (eng. Common Platform Enumeration) refers to a structured naming scheme for systems, software and information technology packages.

Под термином «IRI» (англ. Internationalized Resource Identifier) понимается интернационализированный идентификатор ресурса - это короткая последовательность символов, идентифицирующая абстрактный или физический ресурс на любом языке мира.The term "IRI" (English Internationalized Resource Identifier) refers to an internationalized resource identifier - a short sequence of characters that identifies an abstract or physical resource in any language of the world.

Под термином «OWL» (англ. Web Ontology Language) понимается язык описания онтологий.The term "OWL" (Eng. Web Ontology Language) is understood as a language for describing ontologies.

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

ФИГ.1 иллюстрирует структурную схему системы для осуществления способа документирования угроз безопасности и уязвимостей.FIG. 1 illustrates a block diagram of a system for implementing a method for documenting security threats and vulnerabilities.

ФИГ.2 иллюстрирует визуальное представление онтологии предметной области определения угроз безопасности и уязвимостей, относящихся к информационному ресурсу.FIG. 2 illustrates a visual representation of the domain ontology for determining security threats and vulnerabilities related to an information resource.

ФИГ.3 иллюстрирует блок-схему способа документирования угроз безопасности и уязвимостей, относящихся к информационному ресурсу.FIG. 3 illustrates a flow diagram of a method for documenting security threats and vulnerabilities related to an information resource.

ФИГ.4 иллюстрирует пример профиля информационного ресурса.FIG. 4 illustrates an example of an information resource profile.

Описание варианта осуществления изобретенияDescription of an embodiment of the invention

В соответствии с ФИГ.1, иллюстрирующей систему документирования угроз безопасности и уязвимостей, относящихся к информационному ресурсу, предлагаемая система содержит предварительно построенную онтологию предметной области 101.In accordance with FIG.1 , illustrating a system for documenting security threats and vulnerabilities related to an information resource, the proposed system contains a pre-built domain ontology 101 .

Фрагмент онтологии предметной области представлен на ФИГ.2. Для работы с онтологиями и графами знаний может быть использовано несколько видов прикладных программно-аппаратных средств: редакторы (для создания и изменения онтологий и графов знаний), системы хранения (для хранения и обращения к онтологиям и графам знаний) и программные каркасы - фреймворки (для компьютерной обработки онтологий и графов знаний). Следует понимать, что функциональные модули, обеспечивающие работу изобретения, на физическом уровне обращаются к системам хранения онтологий и графов знаний для того, чтобы получить доступ к информации, представленной в онтологии и сохраненной на дисковом пространстве; к фреймворкам - для получения доступа к информации, представленной в онтологии и находящейся в оперативной памяти вычислительного устройства.A fragment of the domain ontology is presented in FIG.2 . To work with ontologies and knowledge graphs, several types of applied software and hardware can be used: editors (for creating and modifying ontologies and knowledge graphs), storage systems (for storing and accessing ontologies and knowledge graphs) and software frameworks - frameworks (for computer processing of ontologies and knowledge graphs). It should be understood that the functional modules that ensure the operation of the invention, at the physical level, access the storage systems of ontologies and knowledge graphs in order to access the information presented in the ontology and stored on disk space; to frameworks - to gain access to information presented in the ontology and located in the RAM of the computing device.

Онтология представляет собой строгое (формализованное) и непротиворечивое описание, записанное в машинно-читаемом формате. В качестве языка для построения таких описаний может использоваться язык OWL, основанный на дескриптивной логике. Онтология, записанная на языке OWL, включает два множества – Tbox 201 и ABox 202 Множество TBox 201 содержит значимые для выбранной предметной области определения понятий. Каждое понятие представляется классом онтологии. Ограничения, накладываемые на классы онтологии, задаются в виде аксиом. Таким образом, аксиомы определяют классы, их свойства и отношения между ними.An ontology is a strict (formalized) and consistent description written in a machine-readable format. As a language for constructing such descriptions, the OWL language based on descriptive logic can be used. The ontology written in the OWL language includes two sets - Tbox 201 and ABox 202 The set TBox 201 contains definitions of concepts that are significant for the selected subject area. Each concept is represented by an ontology class. The restrictions imposed on ontology classes are given in the form of axioms. Thus, axioms define classes, their properties and relations between them.

Множество ABox 202 содержит экземпляры классов (понятий), определенных в множестве TBox 201. В настоящем описании термин “онтология” использован преимущественно для указания на множество TBox 201. Для обозначения множества экземпляров ABox 202 в настоящем описании использован термин “граф знаний процесса документирования угроз и уязвимостей”.The set ABox 202 contains instances of classes (concepts) defined in the set TBox 201 . In the present description, the term "ontology" is used primarily to refer to the set TBox 201 . The term "threat and vulnerability documentation process knowledge graph" is used herein to refer to multiple instances of ABox 202 .

Использование онтологии позволяет отделить описание предметной области от тех или иных реализаций, позволяет зафиксировать накладываемые на предметную область ограничения.The use of an ontology makes it possible to separate the description of the subject area from those or other implementations, and allows fixing the restrictions imposed on the subject area.

Онтология предметной области содержит термины, позволяющие описать защищаемый информационный ресурс. Классы обозначаются прямоугольниками, содержащими название класса, стрелка с пустым концом - отношение наследования, прямоугольники с закругленными углами - экземпляры, стрелки с закрашенным концом, не имеющие названия - отношения “являются экземпляром класса”.The ontology of the subject area contains terms that make it possible to describe the protected information resource. Classes are denoted by rectangles containing the name of the class, an arrow with an empty end - an inheritance relationship, rounded rectangles - instances, arrows with a filled end that do not have a name - the relationship “are an instance of the class”.

В зависимости от особенностей типа защищаемых информационных ресурсов, различные реализации предлагаемого изобретения могут отличаться в части данной онтологии.Depending on the characteristics of the type of information resources being protected, various implementations of the proposed invention may differ in terms of this ontology.

Множество TBox 201 содержит следующие классы. Класс ‘Информационный ресурс’ 203 связан отношением наследования с классами ‘ЭВМ’ 204 и ‘Программное обеспечение’ 205. Класс 204 связан отношением наследования с классами ‘Рабочая станция’ 206 и ‘Сервер’ 207. Класс 205 связан отношением наследования с классом ‘Системное программное обеспечение’ 208. Класс 208 связан отношением наследования с классами ‘Встроенное программное обеспечение’ 209, ‘Операционная система’ 210, ‘Сетевое программное обеспечение’ 211. Класс 211 связан отношением наследования с классом ‘Виртуальная частная сеть’ 212.The set TBox 201 contains the following classes. The class 'Information resource' 203 is related by inheritance to the classes 'Computer' 204 and 'Software' 205 . The class 204 is related by inheritance to the classes 'Workstation' 206 and 'Server' 207 . The class 205 is related by inheritance to the class 'System software' 208 . The class 208 is related by inheritance to the classes 'Embedded Software' 209 , 'Operating System' 210 , 'Network Software' 211 . Class 211 is related by inheritance to class 'Virtual Private Network' 212 .

Множество ABox 202 содержит экземпляры классов ‘Информационный ресурс А’ 213, включающий экземпляры ‘Рабочая станция1214, ‘Сервер1215, ‘Рабочая станцияm216, ‘Серверn217. Экземпляр ‘Сервер1215 включает экземпляры ‘БИОСс1218, ‘ОСс11219, ‘ОСс12220.The set ABox 202 contains instances of classes 'Information resource A' 213 , including instances of 'Workstation 1 ' 214 , 'Server 1 ' 215 , 'Workstation m ' 216 , 'Server n ' 217 . Instance 'Server 1 ' 215 includes instances 'BIOS c1 ' 218 , 'OS c11 ' 219 , 'OS c12 ' 220 .

Связи между элементами множеств TBox 201 и ABox 202 реализуются через отношения “являются экземпляром класса”.Relationships between elements of the sets TBox 201 and ABox 202 are implemented through the relationship "are an instance of the class".

Онтология предметной области 101 расширяется до графа знаний процесса документирования угроз и уязвимостей 102 путем включения в нее знаний о взаимосвязи элементов онтологии предметной области и понятий, используемых в целевой модели угроз безопасности информации. Под моделью угроз понимается перечисление и описание возможных угроз безопасности информации. Целевая модель угроз может включать физическое, математическое, описательное представление свойств или характеристик угроз безопасности информации, при этом видом описательного представления свойств или характеристик угроз безопасности информации может быть специальный нормативный документ (ГОСТ Р 50922-2006 – «Защита информации. Основные термины и определения»). Под целевой понимается модель угроз, в понятиях которой будет осуществляться документирование угроз безопасности и уязвимостей, относящихся к информационному ресурсу. В том случае, если в качестве такой модели используется модель тех или иных регулирующих органов, то результат работы данного решения может рассматриваться как основание для формирования соответствующей отчетности.The domain ontology 101 is extended to the knowledge graph of the process of documenting threats and vulnerabilities 102 by including knowledge about the relationship between the elements of the domain ontology and the concepts used in the target information security threat model. A threat model is a listing and description of possible information security threats. The target threat model may include a physical, mathematical, descriptive representation of the properties or characteristics of information security threats, while the type of descriptive representation of the properties or characteristics of information security threats can be a special regulatory document (GOST R 50922-2006 - "Information security. Basic terms and definitions" ). The target is understood as a threat model, in terms of which the documentation of security threats and vulnerabilities related to the information resource will be carried out. In the event that the model of certain regulatory bodies is used as such a model, then the result of the work of this decision can be considered as the basis for the formation of appropriate reporting.

На основе графа знаний 102 для конкретного информационного ресурса с помощью модуля инициализации и расширения профиля 103 строится профиль информационного ресурса 104, который также представляет собой граф знаний. Данный граф фиксирует формальное описание защищаемого информационного ресурса, включая информацию о выявленных актуальных угрозах и уязвимостях. Профиль информационного ресурса - это граф знаний, который строится в терминах онтологии предметной области. Корневым элементом профиля является экземпляр класса ‘Информационный ресурс’ 203, для которого необходимо выявить и задокументировать угрозы безопасности и уязвимости.Based on the knowledge graph 102 for a specific information resource, using the profile initialization and extension module 103, an information resource profile 104 is built, which is also a knowledge graph. This column fixes a formal description of the protected information resource, including information about the identified actual threats and vulnerabilities. An information resource profile is a knowledge graph that is built in terms of the domain ontology. The root element of the profile is an instance of the 'Information Resource' 203 class for which security threats and vulnerabilities need to be identified and documented.

В соответствии с ФИГ.3, иллюстрирующей блок-схему способа автоматизированного документирования угроз и уязвимостей, относящихся к информационному ресурсу, на этапе 301 осуществляют инициализацию профиля информационного ресурса.In accordance with FIG.3 , illustrating a flowchart of a method for automated documentation of threats and vulnerabilities related to an information resource, at step 301 initialize the information resource profile.

Выполнение операций в способе осуществляется преимущественно автоматически посредством средств вычислительной техники. При этом выполнение некоторых операций выполняется в автоматизированном режиме, если требуется управляющее воздействие со стороны пользователя. В отношении таких операций использована характеристика «в интерактивном режиме». При этом необходимые операции человеко-машинного взаимодействия могут быть реализованы посредством модуля взаимодействия с пользователем 105, предоставляющего пользовательское меню.The execution of operations in the method is carried out mainly automatically by means of computer technology. At the same time, some operations are performed in an automated mode, if a user control is required. For such operations, the characteristic "online" is used. In this case, the necessary human-machine interaction operations can be implemented by means of the user interaction module 105 providing a user menu.

Пользовательское меню может быть реализовано традиционными для информационных технологий средствами: в виде консольного меню или в виде графического пользовательского интерфейса, реализуемого, например, на основе технологий, используемых для построения веб-приложений, включая, но не ограничиваясь React, Angular.The user menu can be implemented by means traditional for information technology: in the form of a console menu or in the form of a graphical user interface, implemented, for example, based on technologies used to build web applications, including but not limited to React, Angular.

Также следует понимать, что определенные ниже функциональные модули, которые обеспечивают работу предложенного изобретения, могут быть реализованы посредством различных сочетаний аппаратных и программных средств. При этом названия операций в способе, сформулированные с использованием глаголов «осуществляют…», «выполняют…», «реализуют…» и т.п., предполагают, что соответствующее действие выполняется средствами компьютерной техники, и не служат указанием на действия, совершаемые исключительно пользователем. It should also be understood that the functional modules defined below that enable the operation of the proposed invention may be implemented through various combinations of hardware and software. At the same time, the names of the operations in the method, formulated using the verbs “carry out ...”, “perform ...”, “implement ...”, etc., suggest that the corresponding action is performed by means of computer technology, and do not serve as an indication of actions performed exclusively user.

В общем случае изобретение реализуется одним или несколькими программно-аппаратными средствами, способными исполнять функциональные модули, входящие в состав предложенной системы. В свою очередь, программная часть упомянутых функциональных модулей может быть представлена любым надлежащим числом программных модулей и может использовать любое надлежащее число библиотек, оболочек, приложений, программных пакетов в зависимости от конкретных операций, реализуемых определенным функциональным модулем. Программная часть функциональных модулей может быть реализована в виде машинного кода или в виде текста программы на языке программирования, таком как C, C++, C#, Java, Python, Perl, Ruby и т.п. Отдельно следует отметить, что функциональность изобретения напрямую не зависит от выбора его программной реализации и может быть поддержана самыми различными сочетаниями программных и аппаратных средств. При этом конкретная программная реализация не является предметом настоящего изобретения, как и детали обеспечения совместимости операций способа или функциональных модулей системы с конкретными используемыми аппаратными средствами. Существенными признаками изобретения являются описанные ниже действия над материальным объектом (данными, сохраненными в памяти систем хранения), при помощи материальных средств (функциональных модулей, способных быть исполненными посредством одного или более процессоров).In the general case, the invention is implemented by one or more software and hardware capable of executing the functional modules included in the proposed system. In turn, the software part of the mentioned functional modules can be represented by any appropriate number of software modules and can use any appropriate number of libraries, shells, applications, software packages, depending on the specific operations implemented by a particular functional module. The software part of the functional modules can be implemented as machine code or as program text in a programming language such as C, C++, C#, Java, Python, Perl, Ruby, and the like. Separately, it should be noted that the functionality of the invention does not directly depend on the choice of its software implementation and can be supported by a variety of combinations of software and hardware. However, the specific software implementation is not the subject of the present invention, nor are the details of ensuring the compatibility of method operations or functional modules of the system with the specific hardware used. The essential features of the invention are the actions described below on a material object (data stored in the memory of storage systems), using material means (functional modules capable of being executed by one or more processors).

Инициализации профиля информационного ресурса реализуют модулем инициализации и расширения профиля 103. При этом выполняют создание графа знаний профиля, состоящего из единственного экземпляра класса ‘Информационный ресурс’ 203.Information resource profile initializations are implemented by the profile initialization and extension module 103. At the same time, the profile knowledge graph is created, consisting of a single instance of the 'Information resource' class 203 .

В соответствии с ФИГ.4, иллюстрирующей пример созданного профиля информационного ресурса, при инициализации профиля создают вершину графа ‘защищаемый информационный ресурс А’ 401.In accordance with FIG.4 , illustrating an example of the created information resource profile, when the profile is initialized, the top of the graph 'protected information resource A' 401 is created.

В соответствии с ФИГ.3, на этапе 302 осуществляют расширение профиля защищаемого информационного ресурса.In accordance with FIG.3 , at step 302 , the extension of the profile of the protected information resource is carried out.

Информационный ресурс в общем случае состоит из отдельных защищаемых компонент. Информация о компонентах защищаемого информационного ресурса поступает от модуля сбора данных о структуре информационного ресурса 106. Расширение профиля информационного ресурса – это процесс включения новых вершин в граф знаний, представляющий профиль защищаемого информационного ресурса, где каждая вершина соответствует компоненту защищаемого информационного ресурса или информационному ресурсу в целом.An information resource generally consists of separate protected components. Information about the components of the protected information resource comes from the module for collecting data on the structure of the information resource 106 . Extension of the information resource profile is the process of including new vertices in the knowledge graph representing the profile of the protected information resource, where each vertex corresponds to a component of the protected information resource or to the information resource as a whole.

Для извлечения из поступивших данных информации о компонентах защищаемого информационного ресурса и ее преобразования в RDF-формат используют соответствующие модули обработки данных о структуре информационного ресурса 107. Полученную информацию в виде вершины графа знаний записывают в профиль 104.To extract information about the components of the protected information resource from the received data and convert it into the RDF format, the corresponding modules for processing data on the structure of the information resource 107 are used. The received information in the form of the top of the knowledge graph is recorded in the profile 104 .

Например, такими компонентами могут быть элементы компьютерной сети - рабочие станции и сервера, для каждого из которых должен существовать соответствующий класс ‘Рабочая станция’ 206 и ‘Сервер’ 207 в онтологии предметной области 101. Перечисленные компоненты фиксируют в профиле, представленном на ФИГ.4, путем создания экземпляров соответствующих классов онтологии предметной области 101 и их привязки к экземпляру защищаемого информационного ресурса отношением ‘включает’.For example, such components can be elements of a computer network - workstations and servers, for each of which there must be a corresponding class 'Workstation' 206 and 'Server' 207 in the domain ontology 101 . The listed components are fixed in the profile shown in FIG. 4 by creating instances of the corresponding classes of the ontology of the subject area 101 and linking them to an instance of the protected information resource by the relation 'includes'.

Расширение профиля осуществляют путем итеративного уточнения: определяют состав компонент информационного ресурса, после чего определяют состав каждой из компонент в отдельности и т. д. Так как каждый компонент сам представляет собой информационный ресурс, что на уровне онтологии предметной области выражено в виде отношения наследования от класса ‘Информационный ресурс’ 203, то все действия по расширению профиля реализуются единообразно, но с различным контекстом, соответствующим уровню детализации.The profile extension is carried out by iterative refinement: the composition of the information resource components is determined, after which the composition of each of the components is determined separately, etc. Since each component itself is an information resource, which is expressed at the level of the ontology of the subject area as an inheritance relation from the class 'Information resource' 203 , then all profile enhancement actions are implemented in the same way, but with different context corresponding to the level of detail.

В соответствии с ФИГ.4 на шаге 302 в граф 104 добавляют следующие вершины, отражающие компоненты информационного ресурса: ‘сервер1402, ‘серверn403, ‘рабочая станция1404, ‘рабочая станцияm 405.In accordance with FIG.4, at step 302 , the following vertices are added to graph 104 , reflecting the components of the information resource: 'server 1 ' 402 , 'server n ' 403 , 'workstation 1 ' 404 , 'workstation m ' 405 .

Состав компонентов, которыми уточняют профиль, определяют посредством онтологии предметной области 101.The composition of the components that refine the profile is determined by means of the ontology of the subject area 101 .

В соответствии с ФИГ.4 при расширении графа профиля информационного ресурса уточняют состав компонента, определенного на предыдущем шаге и отраженного в вершине ‘сервер1402. Далее добавляют вершины ‘БИОСc1' 406 и ‘ОСc1407, которые связаны отношением ‘включает’ 408 с вершиной ‘сервер1402.In accordance with FIG.4, when expanding the information resource profile graph, the composition of the component defined in the previous step and reflected in the top 'server 1 ' 402 is specified. Next, the vertices 'BIOS c1 ' 406 and 'OS c1 ' 407 are added, which are connected by the relation 'includes' 408 with the vertex 'server 1 ' 402 .

Вершина ‘ОСc1407 далее может быть связана с вершиной ‘Microsoft Corp’ 409, отражающей производителя операционной системы, вершиной ‘Windows Server 2010’ 410, отражающей название операционной системы, и вершиной ‘6.3’ 411, отражающей версию операционной системы.The node 'OS c1 ' 407 can further be associated with the node 'Microsoft Corp' 409 representing the manufacturer of the operating system, the node 'Windows Server 2010' 410 representing the name of the operating system, and the node '6.3' 411 representing the version of the operating system.

Данные о структуре информационного ресурса могут быть добавлены двумя способами - в автоматизированном 303 и интерактивном режиме 304.Data about the structure of the information resource can be added in two ways - in automated 303 and interactive mode 304 .

Для автоматизированного режима 304 входными данными могут являться результаты работы пассивных и активных средств сбора данных о компьютерном оборудовании и программном обеспечении. Пассивные средства обеспечивают прием данных от сервисов или удаленного пользователя. Такие средства, как правило, строятся по двухкомпонентной архитектуре, включающие удаленного агента сбора данных и централизованный сервис хранения и обработки собранных данных. В качестве примера можно представить систему, в рамках которой пользователь локально выполняет PowerShell скрипты для получения данных о системе и отправляет результаты в централизованный сервис хранения и обработки данных.For automated mode 304 , the inputs may be the results of passive and active means of collecting data about computer hardware and software. Passive means receive data from services or a remote user. Such tools are usually built on a two-component architecture, including a remote data collection agent and a centralized service for storing and processing the collected data. As an example, imagine a system in which the user locally executes PowerShell scripts to obtain data about the system and sends the results to a centralized data storage and processing service.

Активные средства реализуют удаленное сканирование оборудования и программного обеспечения. Примером может служить специализированное программное обеспечение - сканеры, например, сканер компьютерной сети nmap.Active tools implement remote hardware and software scanning. An example is specialized software - scanners, for example, the nmap computer network scanner.

При расширении профиля в интерактивном режиме 304 осуществляют прием результата пользовательского ввода, выполненного при помощи графического пользовательского интерфейса. Меню ввода информации о компоненте защищаемого информационного ресурса может быть представлено в виде анкеты.When expanding the profile in interactive mode 304 receive the result of user input made using a graphical user interface. The menu for entering information about the component of the protected information resource can be presented in the form of a questionnaire.

Анкета формируется модулем построения анкеты расширения профиля 108 на основе текущего контекста и онтологии предметной области 101, где онтология определяет общую структуру и состав анкеты, а контекст определяет фрагмент, значимый с точки зрения текущего уровня расширения профиля защищаемого информационного ресурса. The questionnaire is formed by the module for constructing the profile extension questionnaire 108 based on the current context and ontology of the subject area 101 , where the ontology defines the general structure and composition of the questionnaire, and the context defines a fragment that is significant from the point of view of the current level of profile extension of the protected information resource.

Влияние контекста может быть продемонстрировано примером, представленным на ФИГ.4, где при расширении профиля пользователю предложено ввести сведения об узлах сети - серверах и рабочих станциях; при дальнейшем расширении профиля пользователю предложено внести сведения о выбранном узле ‘сервер1402.The influence of the context can be demonstrated by the example shown in FIG. 4 , where, when expanding the profile, the user is prompted to enter information about the network nodes - servers and workstations; upon further expansion of the profile, the user is prompted to enter information about the selected node 'server 1 ' 402 .

Структура и состав анкеты определяются онтологией предметной области 101. Например, при расширении профиля в интерактивном режиме 304 будет использовано формальное определение класса ‘Сервер’ 207, входящего в состав онтологии 101, вида:The structure and composition of the questionnaire are determined by the ontology of the subject area 101 . For example, when expanding the profile in interactive mode 304 , the formal definition of the class 'Server' 207 , which is part of the ontology 101 , will be used, of the form:

(‘Сервер’ включает ‘Операционная система’) И (включает ‘Встроенное программное обеспечение’) И (включает ‘Программное обеспечение’),(‘Server’ includes ‘Operating System’) AND (includes ‘Firmware’) AND (includes ‘Software’),

где каждая группа будет определять пункт анкеты для выбора. При выборе пункта, соответствующего классу ‘Программное обеспечение’ 205, в соответствии с иерархией классов онтологии предметной области 101, определяющей данный класс, пользователю будет предложено три новых пункта: ‘Встроенное программное обеспечение’, ‘Операционная система’, ‘Сетевое программное обеспечение’. Допустим, что пользователь остановил свой выбор на классе ‘Сетевое программное обеспечение’.where each group will determine the item on the questionnaire to choose from. When selecting an item corresponding to the 'Software' 205 class, in accordance with the class hierarchy of the domain ontology 101 that defines this class, the user will be offered three new items: 'Embedded software', 'Operating system', 'Network software'. Let's say that the user has chosen the 'Network Software' class.

Далее пользователь может ввести значения свойств для программного обеспечения. Состав свойств, предлагаемых пользователю, определяется формальным определением свойств, данных в онтологии. Определения имеют вид:The user can then enter property values for the software. The composition of the properties offered to the user is determined by the formal definition of the properties given in the ontology. The definitions look like:

‘названия’ область определения ‘Программное обеспечение’ И область значений ‘строка’,‘names’ scope ‘Software’ AND scope ‘string’,

‘производитель’ область определения ‘Программное обеспечение’ И область значений ‘строка’,'manufacturer' scope 'Software' AND scope 'string',

‘версия’ область определения ‘Программное обеспечение’ И область значений ‘строка’.'version' scope 'Software' AND scope 'string'.

На ФИГ.4 проиллюстрирован результат ввода единственного значения OpenVPN - названия программного обеспечения. Таким образом, в итоге расширения профиля в интерактивном режиме в профиль добавляют вершину 412, представляющую собой экземпляр класса ‘Сетевое программное обеспечение’, имеющую свойство ‘название’ со значением OpenVPN 413. Данный экземпляр привязывают к экземпляру ‘сервер1402 отношением ‘включает’. FIG. 4 illustrates the result of entering a single OpenVPN value, the name of the software. Thus, as a result of expanding the profile in interactive mode, a vertex 412 is added to the profile, which is an instance of the 'Network Software' class, having a property 'name' with a value of OpenVPN 413 . This instance is bound to the instance 'server 1 ' 402 by the relation 'includes'.

Преобразование анкеты, заполненной пользователем, в элементы графа профиля защищаемого информационного ресурса, реализуется модулем обработки анкеты 109. Результаты преобразования передают в модуль инициализации и расширения профиля 103 для непосредственного расширения профиля.The transformation of the questionnaire filled in by the user into elements of the profile graph of the protected information resource is implemented by the questionnaire processing module 109 . The conversion results are passed to the profile initialization and expansion module 103 for direct profile expansion.

В ходе расширения профиля для корневого элемента задают вершины, которые могут отражать различные компоненты защищаемого информационного ресурса, и ребра, которые могут отражать связи между упомянутыми частями. В общем случае вершины профиля могут соответствовать сетевым узлам информационной инфраструктуры, аппаратным и программным компонентам сетевых узлов этой инфраструктуры. Упомянутые сетевые узлы могут быть представлены вычислительными устройствами, например, персональными и промышленными компьютерами, серверами, коммутирующими, маршрутизирующими устройствами, но не ограничиваются лишь этими примерами устройств. Собираемая информация может касаться как оборудования, так и программного обеспечения, в том числе, встраиваемого программного обеспечения, установленного на сетевом узле, операционной системы сетевого узла и т.п.In the course of expanding the profile for the root element, vertices are specified, which can reflect the various components of the protected information resource, and edges, which can reflect the links between the mentioned parts. In the general case, the profile vertices can correspond to the network nodes of the information infrastructure, hardware and software components of the network nodes of this infrastructure. Mentioned network nodes can be represented by computing devices, for example, personal and industrial computers, servers, switching, routing devices, but are not limited to these examples of devices. The collected information may relate to both hardware and software, including embedded software installed on the network node, the operating system of the network node, etc.

Извлеченную информацию представляют в структурированной форме путем преобразования ее в вершины и ребра графа профиля защищаемого информационного ресурса. Для преобразования собранных данных могут использоваться решения, разработанные под заданный формат и источник данных, либо универсальные решения, в частности, предназначенные для преобразования слабоструктурированных данных в RDF, такие как: Carml, SPARQL-Generate и т.п. Каждое такое решение является основой одного из модулей обработки данных о структуре информационного ресурса 107.The extracted information is presented in a structured form by converting it into vertices and edges of the profile graph of the protected information resource. To transform the collected data, solutions developed for a given format and data source can be used, or universal solutions, in particular, designed to convert semi-structured data to RDF, such as: Carml, SPARQL-Generate, etc. Each such decision is the basis of one of the modules for processing data on the structure of the information resource 107 .

На шаге 305 пользователю может быть предложено повторить уточнение и выполнить шаги 303 или 304 повторно.At step 305 , the user may be prompted to repeat the refinement and perform steps 303 or 304 again.

На шаге 306 пользователю предлагают выполнить одну из возможных альтернативных операций: уточнить профиль (шаг 307) или получить список угроз и уязвимостей на основе профиля (шаг 311).At step 306 , the user is prompted to perform one of the possible alternative operations: refine the profile (step 307 ) or get a list of threats and vulnerabilities based on the profile (step 311 ).

На шаге 307 проводят уточнение профиля информационного ресурса. Компоненты защищаемого информационного ресурса, добавленные в профиль 104, могут быть уточнены двумя путями: может быть уточнен класс компонента - классификация 308; может быть расширен перечень сведений о компоненте - обогащение 309. Под уточнением понимается процесс добавления новых сведений о ранее добавленных компонентах профиля.At step 307 , the information resource profile is refined. The components of the protected information resource added to the profile 104 can be refined in two ways: the component class can be refined - classification 308 ; the list of information about the component can be expanded - enrichment 309 . Refinement refers to the process of adding new information about previously added profile components.

Классификация компонент, выполняемая на шаге 308, может быть выполнена в автоматизированном либо интерактивном режимах. Классификация реализуется модулем управления классификацией компонентов профиля 110.The component classification performed in step 308 may be automated or interactive. The classification is implemented by the profile component classification control module 110 .

В случае интерактивного режима порядок действий аналогичен интерактивному расширению за исключением того, что пользователю предоставляют возможность выбора компонентов, уже существующих в профиле. In the case of interactive mode, the procedure is similar to the interactive extension, except that the user is given the opportunity to select components that already exist in the profile.

Для автоматизированной классификации могут быть использованы внешние источники данных 111 - базы знаний и базы данных (например, база данных управления конфигурации, англ. Configuration management database, CMDB). Для получения данных из каждого типа таких источников используют модули доступа к базе знаний 112. Управление процессом использования внешнего источника и обработка полученных данных реализуются соответствующим модулем классификации и распознавания компонента профиля 113. Модуль 113 извлекает из полученных данных название класса компонента профиля, с учетом того, какие классы известны из онтологии предметной области 101. Для реализации модуля 113 могут использоваться подходы, рассчитанные на заданный источник, либо специализированные алгоритмы, например, извлечения именованных сущностей из текстов на естественном языке.For automated classification, external data sources 111 can be used - knowledge bases and databases (for example, a configuration management database, eng. Configuration management database, CMDB). Knowledge base access modules 112 are used to obtain data from each type of such sources. The control of the process of using an external source and the processing of the received data are implemented by the corresponding module for classifying and recognizing the profile component 113 . Module 113 extracts from the received data the class name of the profile component, taking into account which classes are known from the domain ontology 101 . To implement module 113 , either source-specific approaches or specialized algorithms, such as extracting named entities from natural language texts, can be used.

Пример классификации компонента на основе знаний из внешнего источника показан на ФИГ.4, где для ранее созданного компонента, отраженного вершиной 412, уточняется его класс, ‘Виртуальная частная сеть’ 414. В качестве внешнего источника используется открытая база знаний Wikidata. Взаимодействие с данной базой знаний может быть реализовано на основе запросов на языке SPARQL, отправляемых по протоколу HTTP. Таким образом, соответствующий модуль доступа к базе знаний 112 должен реализовывать построение и отправку запроса на языке SPARQL по протоколу HTTP и получение ответа.An example of a classification of a component based on knowledge from an external source is shown in FIG. 4 , where the previously created component, reflected by node 412 , is updated to its class, 'Virtual Private Network' 414 . The open knowledge base Wikidata is used as an external source. Interaction with this knowledge base can be implemented based on queries in the SPARQL language sent via the HTTP protocol. Thus, the corresponding module for accessing the knowledge base 112 must implement the construction and sending of a query in the SPARQL language over the HTTP protocol and receiving a response.

SPARQL-запрос к данному источнику может иметь следующую структуру: A SPARQL query to a given source can have the following structure:

SELECT ?label {SELECT ?label {

?sw rdfs:label ?software_name ; ?sw rdfs:label ?software_name ;

p:P366/ps:P366/rdfs:label ?label. p:P366/ps:P366/rdfs:label ?label.

FILTER(LANG(?label) = "" || LANGMATCHES(LANG(?label), "en")) FILTER(LANG(?label) = "" || LANGMATCHES(LANG(?label), "en"))

} LIMIT 1} LIMIT 1

Переменная ?software_name в этом запросе содержит название программного компонента, для которого нужно уточнить класс. В данном случае это OpenVPN. Суть данного запроса сводится к получению вариантов использования указанного программного компонента. В ответ будет получено ‘virtual private network’.The ?software_name variable in this query contains the name of the software component for which you want to qualify the class. In this case, it's OpenVPN. The essence of this request is to obtain options for using the specified software component. The response will be 'virtual private network'.

В данном случае модуль классификации и распознавания компонента профиля 113 реализует метод сопоставления строк - полученного результата с именами классов из онтологии предметной области. Так как онтология содержит класс ‘Виртуальная частная сеть’ 212, одной из меток которого служит ‘virtual private network’, то рассматриваемый элемент - OpenVPN 413 классифицируют как экземпляр соответствующего класса. В итоге, в граф профиля будет добавлена вершина, отражающая данный класс и ребро, соединяющее узел OpenVPN 413 и узел класса ‘Виртуальная частная сеть’ 414.In this case, the module for classifying and recognizing the profile component 113 implements the method of matching strings - the result obtained with class names from the ontology of the subject area. Since the ontology contains the class 'Virtual private network' 212 , one of the labels of which is 'virtual private network', then the element in question - OpenVPN 413 - is classified as an instance of the corresponding class. As a result, a vertex reflecting this class and an edge connecting the OpenVPN node 413 and the node of the class 'Virtual Private Network' 414 will be added to the profile graph.

На шаге 309 осуществляют обогащение профиля информационного ресурса путем добавления к графу новых вершин, отражающих дополнительные сведения о компонентах, которые добавлены при расширении профиля 303.At step 309 , the information resource profile is enriched by adding new vertices to the graph, reflecting additional information about the components that were added when expanding the profile 303 .

За обогащение профиля отвечает модуль обогащения профиля 114. Для реализации возможности обогащения предварительно на основе данных из внешних источников об информационной безопасности строится граф знаний информационной безопасности 115. За построение графа 115 на данных из внешних источников отвечает модуль построения и обновления графа знаний информационной безопасности 116. В качестве источников данных могут выступать следующие базы: база идентификаторов версий продуктов (CPE) 117, база уязвимостей (CVE) 118, база слабых мест (CWE) 119, база шаблонов атак (CAPEC) 120.The profile enrichment module 114 is responsible for profile enrichment. To implement the possibility of enrichment, an information security knowledge graph is preliminarily built on the basis of data from external sources on information security 115 . The module for constructing and updating the information security knowledge graph 116 is responsible for building graph 115 on data from external sources. The following databases can serve as data sources: Product Version Identifier Database (CPE) 117 , Vulnerability Database (CVE) 118 , Weakness Database (CWE) 119 , Attack Pattern Database (CAPEC) 120 .

Вариант построения системы, реализующей функции модуля 116 описан в Kiesling, E., Ekelhart, A., Kurniawan, K., & Ekaputra, F. (2019). The SEPSES Knowledge Graph: An Integrated Resource for Cybersecurity. In International Semantic Web Conference (pp. 198–214). https://doi.org/10.1007/978-3-030-30796-7_13. В данном варианте реализовано построение RDF-графа на основе открытых баз данных информационной безопасности, данные из которого могут извлекаться посредствам SPARQL-запросов.An option for building a system that implements the functions of module 116 is described in Kiesling, E., Ekelhart, A., Kurniawan, K., & Ekaputra, F. (2019). The SEPSES Knowledge Graph: An Integrated Resource for Cybersecurity. In International Semantic Web Conference (pp. 198–214). https://doi.org/10.1007/978-3-030-30796-7_13. In this version, the construction of an RDF graph based on open information security databases is implemented, data from which can be retrieved using SPARQL queries.

Пример обогащения представлен на ФИГ.4, где для компонента профиля ‘OpenVPN’ 413 указывают возможные идентификаторы версий продуктов, CPE. Для этого, на модуле обогащения профиля 114 формируют SPARQL-запрос к графу знаний информационной безопасности 115, суть которого сводится к поиску CPE, полное строковое представление которого включает название искомого компонента, т. е. ‘OpenVPN’. Данный SPARQL-запрос возвращает два идентификатора, соответствующих найденным CPE - ‘Aviatrix OpenVPN’ 415 и ‘OpenVPN’ 416. Полученные идентификаторы добавляют в граф профиля в виде соответствующих вершин 415 и 416, которые связывают с узлом ‘OpenVPN’ 413 отношением ‘cpe’ 417.An enrichment example is shown in FIG. 4 where the 'OpenVPN' profile component 413 is indicated by possible product version identifiers, CPE. To do this, on the profile enrichment module 114 , a SPARQL query is formed to the information security knowledge graph 115 , the essence of which is to search for a CPE, the full string representation of which includes the name of the desired component, i.e. 'OpenVPN'. This SPARQL query returns two identifiers corresponding to the found CPEs - 'Aviatrix OpenVPN' 415 and 'OpenVPN' 416 . The resulting identifiers are added to the profile graph as respective vertices 415 and 416, which are linked to the 'OpenVPN' node 413 by the relation 'cpe' 417 .

На шаге 310 пользователю может быть предложено повторить уточнение профиля информационного ресурса, повторно выполнив шаги 308 или 309.At step 310 , the user may be prompted to re-qualify the content profile by re-executing steps 308 or 309 .

На шаге 311 осуществляют определение угроз безопасности информации для полученного профиля защищаемого информационного ресурса. За реализацию данной функции отвечает модуль определения угроз безопасности и уязвимостей, относящихся к информационному ресурсу 121. Угрозы и уязвимости для информационного ресурса представляют в виде вершин, которые связывают ребрами с вершинами, отражающими компоненты информационного ресурса.At step 311 , information security threats are determined for the obtained profile of the protected information resource. The module for determining security threats and vulnerabilities related to the information resource is responsible for the implementation of this function 121 . Threats and vulnerabilities for an information resource are presented in the form of vertices, which are connected by edges with vertices that reflect the components of the information resource.

Работа модуля определения угроз безопасности информации 121 обеспечивается наличием формализованного экспертного знания о взаимосвязи компонентов профиля с угрозами и уязвимостями из целевой модели угроз безопасности информации. Данные знания фиксируются в профиле информационного ресурса 104, графе знаний процесса документирования угроз 102, графе знаний информационной безопасности 115. Сам модуль реализует множество алгоритмов извлечения этих знаний в соответствии с выбранным способом их формализации в перечисленных графах знаний.The operation of the information security threat detection module 121 is provided by the presence of formalized expert knowledge about the relationship of profile components with threats and vulnerabilities from the target information security threat model. This knowledge is recorded in the information resource profile 104 , the knowledge graph of the process of documenting threats 102 , the information security knowledge graph 115 . The module itself implements many algorithms for extracting this knowledge in accordance with the chosen method of their formalization in the listed knowledge graphs.

Для примера можно рассмотреть два возможных подхода. В соответствии с первым способом знание о связи компонент профиля и угроз и уязвимостей целевой модели угроз безопасности информации фиксируют в определении классов компонент, угроз и уязвимостей, например, в следующей форме:As an example, two possible approaches can be considered. In accordance with the first method, knowledge about the relationship between profile components and threats and vulnerabilities of the target information security threat model is fixed in the definition of component classes, threats and vulnerabilities, for example, in the following form:

‘Угроза внедрения вредоносного кода в BIOS’ ‘воздействует на’ (‘БИОС’ ИЛИ включает ‘БИОС). 'BIOS malware threat''affects'('BIOS' OR includes 'BIOS) .

Суть данного определения в том, что экземпляр класса ‘БИОСc1406 или класса, который определен через отношение ‘включает’ 408 ‘БИОСc1406, будет являться объектом, подверженным угрозе ‘Угроза внедрения вредоносного кода в BIOS’ 418, которая представляет собой угрозу из банка данных угроз безопасности информации Федеральной службы по техническому и экспортному контролю (ФСТЭК России), взятой в рамках примера в качестве целевой модели угроз безопасности информации. Под целевой моделью угроз безопасности в данной случае понимается документ, который может включать перечень возможных угроз или физическое, математическое, описательное представление свойств или характеристик угроз безопасности информации.The essence of this definition is that an instance of the 'BIOS c1 ' 406 class or a class that is defined through the relation 'includes' 408 'BIOS c1 ' 406 , will be an object subject to the 'BIOS Malicious Code Injection Threat' 418 threat, which is a threat from the database of information security threats of the Federal Service for Technical and Export Control (FSTEC of Russia), taken in the example as a target model of information security threats. In this case, the target model of security threats is understood as a document that may include a list of possible threats or a physical, mathematical, descriptive representation of the properties or characteristics of information security threats.

Так как при расширении профиля 303 в него был включен экземпляр ‘сервер1402, класс которого определен через отношение ‘включает’ 408 ‘БИОСc1406, то в совокупности данная информация позволяет сделать вывод о том, что данный тип угрозы актуален для созданного профиля 104.Since when expanding profile 303, it included an instance of 'server 1 ' 402 , the class of which is defined through the relation 'includes' 408 'BIOS c1 ' 406 , then in aggregate this information allows us to conclude that this type of threat is relevant for the created profile 104 .

Получение описанного вывода реализуется модулем логического вывода 122, который основан на использовании некоторой реализации машины логического вывода, например, Hermit. Машина логического вывода позволяет формировать DL-запросы (запросы на языке дескриптивной логики) к графам знаний. В данном случае, необходимо запрашивать родительские классы для следующего определения:The derivation of the described output is implemented by the inference module 122 , which is based on the use of some implementation of the inference engine, such as Hermit. The inference engine allows you to generate DL-queries (queries in the language of descriptive logic) to knowledge graphs. In this case, you need to query the parent classes for the following definition:

‘воздействует на’ ‘Сервер’‘affects’ ‘Server’

Информация об актуальной угрозе добавляется в профиль 104 в виде отдельной вершины, которая отношением ‘воздействует на’ связывается с компонентом ‘сервер1402.Information about the actual threat is added to the profile 104 as a separate node, which is associated with the 'server 1 ' 402 component by the relation 'affects'.

Второй подход основан на использовании знаний из внешних источников, в частности, из баз CPE 117 и CVE 118.The second approach is based on the use of knowledge from external sources, in particular, from the CPE 117 and CVE 118 databases.

После того, как для добавленного компонента ‘OpenVPN’ 413 был установлен возможный перечень CPE, из графа знаний информационной безопасности 115 можно извлечь информацию о всех известных актуальных уязвимостях. Для этого может быть применен SPARQL запрос вида:Once a possible CPE list has been established for the added 'OpenVPN' component 413 , information about all known current vulnerabilities can be extracted from the information security knowledge graph 115 . For this, a SPARQL query of the form can be used:

Figure 00000001
Figure 00000001

В качестве одной из актуальных уязвимостей может быть возвращено CVE-2020-11810. Аналогично предыдущему подходу соответствующая вершина 419, отражающая уязвимость, добавляется в профиль защищаемого информационного ресурса.CVE-2020-11810 may be returned as one of the current vulnerabilities. Similarly to the previous approach, the corresponding vertex 419 , which reflects the vulnerability, is added to the profile of the protected information resource.

Отличительным преимуществом использования онтологий является возможность связывания различных моделей знаний и переход между ними при необходимости. Выше были представлены примеры вычисления для рассматриваемого профиля актуальной угрозы - ‘Угроза внедрения вредоносного кода в BIOS’, и актуальной уязвимости - CVE-2020-11810. Первый артефакт относится к банку данных угроз безопасности информации ФСТЭК, второй определен в Национальной Базе Уязвимостей, США (англ. National Vulnerability Database, NVD). При необходимости построения целевой модели угроз информации в терминах единого множества стандартов, в рассматриваемом примере - ФСТЭК, можно воспользоваться формализованными и зафиксированными в онтологии предметной области отношениями, связывающими понятия различных стандартов. Источниками данных отношений могут выступать как сами стандарты, так и соответствующие эксперты, в т.ч. в рамках отдельно взятой организации.A distinctive advantage of using ontologies is the ability to link different knowledge models and transition between them if necessary. Above, calculation examples were presented for the current threat profile under consideration - ‘Bios Malicious Code Injection Threat’, and the actual vulnerability - CVE-2020-11810. The first artifact belongs to the FSTEC data security threat database, the second one is defined in the National Vulnerability Database, USA (NVD). If it is necessary to build a target model of information threats in terms of a single set of standards, in the example under consideration - FSTEC, you can use formalized and fixed in the ontology of the subject area relations that connect the concepts of different standards. The sources of these relations can be both the standards themselves and the relevant experts, incl. within a single organization.

В частности, уязвимости CVE-2020-11810 в базе уязвимостей ФСТЭК соответствует уязвимость BDU:2020-01777. Данная информация может быть записана в онтологию следующим образом:In particular, the CVE-2020-11810 vulnerability in the FSTEC vulnerability database corresponds to the BDU:2020-01777 vulnerability. This information can be written into the ontology as follows:

‘BDU:2020-01777’ ‘соответствует’ ‘CVE-2020-11810’'BDU:2020-01777' 'compliant' 'CVE-2020-11810'

Данная информация позволяет получить по идентификатору уязвимости из базы NVD идентификатор уязвимости из базы ФСТЭК, например, с помощью SPARQL-запроса.This information allows you to get the vulnerability ID from the FSTEC database by the vulnerability ID from the NVD database, for example, using a SPARQL query.

Для получения по уязвимости ФСТЭК соответствующей угрозы ФСТЭК, отношение между ними также должно быть зафиксировано в онтологии предметной области, например, следующим образом:In order to obtain the corresponding FSTEC threat for the FSTEC vulnerability, the relationship between them must also be fixed in the ontology of the subject area, for example, as follows:

‘Угроза приведения системы в состояние «отказ в обслуживании»’ ‘реализуется через’ ‘BDU:2020-01777’‘The threat of bringing the system into a “denial of service” state’ ‘implemented through’ ‘BDU:2020-01777’

Переход к угрозам ФСТЭК позволяет включить в целевую модель угроз безопасности информации описание потенциального нарушителя. Связь нарушителя и угрозы может быть зафиксирована в онтологии следующим образом:The transition to FSTEC threats allows you to include a description of a potential intruder in the target model of information security threats. The connection between the intruder and the threat can be fixed in the ontology as follows:

‘Угроза внедрения вредоносного кода в BIOS’ ‘исходит от’ (‘Внутренний нарушитель’ И ‘Нарушитель с высоким потенциалом’)‘BIOS malware threat’ ‘comes from’ (‘Insider’ AND ‘High Potential Intruder’)

‘Угроза приведения системы в состояние «отказ в обслуживании»’ ‘исходит от’ (‘Внешний нарушитель’ И ‘Нарушитель с низким потенциалом’)‘Threat of bringing the system into a denial of service state’ ‘comes from’ (‘External intruder’ AND ‘Low potential intruder’)

На шаге 312 сведения о компонентах информационного ресурса, которые получены при инициализации, расширении и уточнении профиля информационного ресурса, и определенных угрозах безопасности и уязвимостях, относящихся к информационному ресурсу, записывают в файл документирования угроз безопасности и уязвимостей. Выполнение операции, соответствующей шагу 312, осуществляется модулем автоматизированного документирования угроз безопасности и уязвимостей 123, который способен преобразовать графовое представление сведений об информационном ресурсе и относящихся к нему угрозах и уязвимостях в документ с заданным форматом представления. В частности, результаты выполнения SPARQL-запросов могут быть преобразованы к CSV формату. Описанный подход позволяет осуществить запись сведений о компонентах и относящихся к нему угрозах и уязвимостях как множество строк вида:At step 312 , information about the components of the information resource, which are obtained by initializing, expanding and refining the profile of the information resource, and certain security threats and vulnerabilities related to the information resource, is recorded in a security threat and vulnerability documentation file. The operation corresponding to step 312 is carried out by the module for automated documentation of security threats and vulnerabilities 123, which is able to convert a graph representation of information about an information resource and related threats and vulnerabilities into a document with a given presentation format. In particular, the results of executing SPARQL queries can be converted to CSV format. The described approach allows you to record information about the components and related threats and vulnerabilities as a set of lines of the form:

<компонент информационного ресурса, актуальная угроза><information resource component, current threat>

Сведения, записанные в выбранный формат, могут быть переданы различным средствам визуального отображения для представления модели в текстовом, табличном или графическом виде. Помимо этого, упомянутые сведения могут быть переданы регулирующим органам в области обеспечения безопасности информации при использовании соответствующей целевой модели угроз безопасности информации.Information recorded in the selected format can be transferred to various visual display tools to represent the model in text, tabular or graphical form. In addition, said information may be communicated to information security regulators using an appropriate information security threat target model.

На шаге 313 пользователю может быть предложено закончить работу или повторить какие-либо шаги способа.At step 313 , the user may be prompted to end or repeat any steps of the method.

Предложенная система может быть реализована в соответствии с двумя обобщенными архитектурами: на основе потока команд (control-flow) и на основе потока данных (data-flow). Реализация первого подхода представлена на ФИГ.1, где модуль управления построением профиля 124 управляет переходом от одного шага способа к другому.The proposed system can be implemented in accordance with two general architectures: based on the flow of commands (control-flow) and based on the flow of data (data-flow). The implementation of the first approach is shown in FIG. 1 , where the profile building control module 124 controls the transition from one method step to another.

В случае архитектуры на основе потока данных, упомянутый выше модуль отсутствует, а работа модулей 103, 110 и 114, определяется фактом изменения данных в соответствующих базах. При этом модули 103, 110 и 114 связываются с профилем информационного ресурса 104 напрямую.In the case of a data flow architecture, the module mentioned above is absent, and the operation of the modules 103 , 110 and 114 is determined by the fact that the data in the respective databases has changed. In this case, the modules 103 , 110 and 114 are associated with the profile of the information resource 104 directly.

В частности, модуль 106 находится в режиме ожидания новых данных об информационном ресурсе. При их получении, он передает данные модулю обработки данных о структуре информационного ресурса 107, чем инициализирует его запуск. Модуль 107, в свою очередь, передает обработанные данные модулю инициализации и расширения профиля 103 и инициализирует его работу. Результаты своей работы модуль 103 сохраняет в профиле информационного ресурса 104. Изменения в профиле инициализируют запуск модуля управления классификацией компонентов профиля 110 и модуля обогащения профиля 114. В данном случае, инициализация может быть реализована либо на основе механизма подписки, либо на основе периодического опроса профиля 104 со стороны модулей 110 и 114 на предмет изменений.In particular, the module 106 is waiting for new data about the information resource. Upon receiving them, it transfers data to the data processing module about the structure of the information resource 107 , which initializes its launch. The module 107 in turn passes the processed data to the profile initialization and expansion module 103 and initializes its operation. Module 103 stores the results of its work in the information resource profile 104 . Changes to the profile initiate the launch of the profile component classification control module 110 and the profile enrichment module 114 . In this case, initialization can be implemented either on the basis of a subscription mechanism, or on the basis of a periodic polling of the profile 104 from the modules 110 and 114 for changes.

Стоит отметить, что представленное выше описание приведено в качестве примера, и не должно быть истолковано как ограничивающее объем охраны настоящего изобретения, определяемым исключительно объемом приложенной формулы изобретения.It is worth noting that the above description is given by way of example and should not be construed as limiting the scope of protection of the present invention to be determined solely by the scope of the appended claims.

Несмотря на то, что описанные выше частные случаи осуществления приведены со ссылкой на конкретные шаги, выполняемые в определенном порядке, и модули, осуществляющие выполнение этих шагов, должно быть очевидно, что эти шаги, модули могут быть объединены или разделены без отклонения от сущности настоящего изобретения.While the particular embodiments described above are given with reference to specific steps performed in a certain order, and the modules that perform these steps, it should be obvious that these steps, modules can be combined or separated without deviating from the essence of the present invention. .

Claims (21)

1. Способ автоматизированного документирования угроз безопасности и уязвимостей, относящихся к информационному ресурсу, включающий следующие шаги:1. A method for automated documentation of security threats and vulnerabilities related to an information resource, including the following steps: - инициализация профиля информационного ресурса, при этом такой профиль представлен графом знаний, в котором вершины отражают компоненты ресурса, а ребра отражают связи между такими компонентами, причем на шаге инициализации граф профиля содержит единственный корневой элемент, отражающий информационный ресурс;- initialization of the profile of the information resource, while such a profile is represented by a knowledge graph, in which the vertices reflect the components of the resource, and the edges reflect the links between such components, and at the initialization step, the profile graph contains a single root element that reflects the information resource; - расширение профиля информационного ресурса путем добавления новых вершин и ребер в его граф знаний в автоматизированном и интерактивном режиме, при этом в автоматизированном режиме сведения о компонентах информационного ресурса получают от автоматических средств сбора данных о компьютерных системах, причем для присвоения названий вершинам и ребрам используют предварительно подготовленную онтологию предметной области построения угроз безопасности информации, содержащую понятия и отношения между ними, стандартизированные для упомянутой предметной области; в интерактивном режиме сведения о компонентах информационного ресурса получают в результате пользовательского ввода на основе анкеты, предоставляемой пользователю и сформированной на основании контекста добавленных ранее вершин, ребер в граф профиля и упомянутой онтологии предметной области, определяющей структуру и состав анкеты;- expanding the profile of an information resource by adding new vertices and edges to its knowledge graph in an automated and interactive mode, while in an automated mode, information about the components of an information resource is obtained from automatic means of collecting data on computer systems, and for assigning names to vertices and edges, they are used in advance a prepared ontology of the subject area for building information security threats, containing concepts and relationships between them, standardized for the mentioned subject area; in interactive mode, information about the components of the information resource is obtained as a result of user input based on the questionnaire provided to the user and formed on the basis of the context of previously added vertices, edges in the profile graph and the mentioned ontology of the subject area that determines the structure and composition of the questionnaire; - уточнение профиля информационного ресурса путем классификации компонентов профиля и/или обогащения профиля, при этом при классификации компонентов в граф профиля добавляют вершины, отражающие классы, к которым относятся компоненты профиля; при обогащении в граф профиля добавляют вершины, отражающие дополнительные сведения о компонентах, добавленных при расширении профиля;- refining the profile of the information resource by classifying the profile components and/or enriching the profile, while classifying the components, vertices are added to the profile graph, reflecting the classes to which the profile components belong; when enriching, vertices are added to the profile graph, reflecting additional information about the components added when expanding the profile; - определение угроз безопасности и уязвимостей, относящихся к информационному ресурсу, путем установления отношений между вершинами графа профиля и соответствующими им угрозами и уязвимостями, при этом упомянутые отношения отражены в упомянутой онтологии предметной области или выведены логически исходя из изначально заданных отношений между понятиями этой онтологии, причем источником сведений об угрозах и уязвимостях является по меньшей мере одна внешняя база знаний об информационной безопасности, описывающая известные угрозы и уязвимости для компонентов информационного ресурса;- determination of security threats and vulnerabilities related to the information resource by establishing relationships between the vertices of the profile graph and the corresponding threats and vulnerabilities, while the mentioned relationships are reflected in the mentioned domain ontology or are derived logically based on the initially specified relationships between the concepts of this ontology, and the source of information about threats and vulnerabilities is at least one external information security knowledge base that describes known threats and vulnerabilities for information resource components; - причем сведения о компонентах информационного ресурса, которые получены при инициализации, расширении и уточнении профиля информационного ресурса, и определенных угрозах безопасности и уязвимостях, относящихся к информационному ресурсу, записывают в файл документирования угроз безопасности и уязвимостей.- moreover, information about the components of the information resource, which are obtained during the initialization, expansion and refinement of the profile of the information resource, and certain security threats and vulnerabilities related to the information resource, are recorded in the documenting file of security threats and vulnerabilities. 2. Способ по п.1, в котором граф профиля информационного ресурса представлен RDF-графом.2. The method of claim 1, wherein the information resource profile graph is represented by an RDF graph. 3. Способ по п.1, в котором компоненты информационного ресурса представлены программными и аппаратными компонентами.3. The method according to claim 1, in which the components of the information resource are represented by software and hardware components. 4. Способ по п.1, в котором по меньшей мере один компонент информационного ресурса представлен компонентом реальной компьютерной системы.4. The method of claim 1, wherein at least one component of the information resource is a component of a real computer system. 5. Способ по п.1, в котором по меньшей мере один компонент информационного ресурса представлен проектируемым компонентом компьютерной системы.5. The method of claim 1, wherein at least one information resource component is a computer system component being designed. 6. Способ по п.1, в котором информационный ресурс состоит по меньшей мере из одного компонента, являющегося ресурсом или частью ресурса, выбранного из следующей группы: информационный актив, объект доступа, информационная инфраструктура, объект информационной инфраструктуры, в том числе информационно-телекоммуникационная сеть, информационная система, автоматизированная система управления.6. The method according to claim 1, in which the information resource consists of at least one component that is a resource or part of a resource selected from the following group: information asset, access object, information infrastructure, information infrastructure object, including information and telecommunications network, information system, automated control system. 7. Система автоматизированного документирования угроз безопасности и уязвимостей, относящихся к информационному ресурсу, содержащая профиль информационного ресурса, представленный графом знаний, в котором вершины отражают компоненты ресурса, а ребра отражают связи между такими компонентами;7. A system for automated documentation of security threats and vulnerabilities related to an information resource, containing an information resource profile represented by a knowledge graph, in which the vertices reflect the components of the resource, and the edges reflect the links between such components; онтологию предметной области, которая содержит понятия и отношения между ними, стандартизированные для предметной области, отражает отношения между вершинами графа профиля и соответствующими им угрозами и уязвимостями;ontology of the subject area, which contains concepts and relations between them, standardized for the subject area, reflects the relationship between the vertices of the profile graph and their corresponding threats and vulnerabilities; модуль инициализации и расширения профиля, связанный с модулем взаимодействия с пользователем, модулями обработки данных о структуре информационного ресурса, модулем обработки анкеты расширения профиля и онтологией предметной области, при этом упомянутые модули обработки данных связаны с модулями сбора данных о структуре информационного ресурса, модуль обработки анкеты связан с модулем построения анкеты расширения профиля, причем анкета формируются на основании контекста, определяемого вершинами и ребрами, добавленными в граф профиля, и онтологии предметной области, определяющей структуру и состав анкеты;a profile initialization and extension module associated with a user interaction module, information resource structure data processing modules, a profile extension questionnaire processing module, and a domain ontology, while said data processing modules are associated with information resource structure data collection modules, a questionnaire processing module associated with a module for constructing a profile extension questionnaire, wherein the questionnaire is formed based on the context defined by the vertices and edges added to the profile graph, and the ontology of the subject area that determines the structure and composition of the questionnaire; модуль управления классификацией компонентов профиля, связанный с модулями классификации и распознавания компонентов профиля, причем эти модули связаны с соответствующими им модулями доступа к внешним источникам данных о классах компонентов профиля;a profile component classification control module associated with profile component classification and recognition modules, these modules being associated with their respective modules for accessing external data sources of profile component classes; модуль обогащения профиля, связанный с графом знаний информационной безопасности, который связан с модулем его построения и обновления, причем этот модуль связан с внешними источниками данных об информационной безопасности, включающими по меньшей мере одну базу знаний об информационной безопасности, описывающую угрозы и уязвимости, которые отражены в графе профиля компонентов информационного ресурса;profile enrichment module associated with the information security knowledge graph, which is associated with its construction and updating module, and this module is associated with external information security data sources, including at least one information security knowledge base describing the threats and vulnerabilities that are reflected in the profile graph of the components of the information resource; модуль определения угроз безопасности и уязвимостей, относящихся к информационному ресурсу, связанный с модулем логического вывода, позволяющим логически вывести отношения между вершинами графа профиля и угрозами и уязвимостями на основе онтологии предметной области, и модулем автоматизированного документирования угроз безопасности и уязвимостей, обеспечивающим запись в файл документирования сведений об упомянутых угрозах и уязвимостях.a module for determining security threats and vulnerabilities related to an information resource, associated with an inference module that allows you to logically derive relationships between the profile graph vertices and threats and vulnerabilities based on the ontology of the subject area, and a module for automated documentation of security threats and vulnerabilities that provides a record in the documentation file information about the mentioned threats and vulnerabilities. 8. Система по п.7, в которой модули сбора данных о структуре информационного ресурса представлены автоматическими средствами сбора данных о компьютерных системах.8. The system according to claim 7, in which the modules for collecting data on the structure of the information resource are represented by automatic means for collecting data on computer systems. 9. Система по п.7, в которой внешними источниками данных об информационной безопасности выступают база идентификаторов версий продуктов (CPE), база уязвимостей (CVE), база слабых мест (CWE), база шаблонов атак (CAPEC).9. The system according to claim 7, in which the database of product version identifiers (CPE), the database of vulnerabilities (CVE), the database of weaknesses (CWE), the database of attack patterns (CAPEC) act as external sources of information security data. 10. Система по п.7, которая содержит модуль управления построением профиля, управляющий работой модулей системы на основе потока команд.10. The system according to claim 7, which contains a profile building control module that controls the operation of the system modules based on the command stream. 11. Система по п.7, в которой работа модулей системы инициализируется изменением данных в модулях, с которыми они связаны, и/или изменением данных в профиле информационного ресурса.11. The system according to claim 7, in which the operation of the system modules is initialized by changing the data in the modules with which they are associated and/or changing the data in the information resource profile.
RU2022114865A 2022-06-01 Method and system for automated documentation of security threats and vulnerabilities related to an information resource RU2789990C1 (en)

Publications (1)

Publication Number Publication Date
RU2789990C1 true RU2789990C1 (en) 2023-02-14

Family

ID=

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2610287C1 (en) * 2015-12-10 2017-02-08 Валентин Викторович Богданов Method of monitoring state of data transmission network
RU2664018C1 (en) * 2017-06-21 2018-08-14 Денис Викторович Козлов System and method of automatic investigation of safety incidents in automated system
RU2705460C1 (en) * 2019-03-19 2019-11-07 федеральное автономное учреждение "Государственный научно-исследовательский испытательный институт проблем технической защиты информации Федеральной службы по техническому и экспортному контролю" Method of determining potential threats to information security based on information on vulnerabilities of software
WO2020028535A1 (en) * 2018-07-31 2020-02-06 Veracode, Inc. Software vulnerability graph database
RU2715025C2 (en) * 2018-04-19 2020-02-21 Акционерное общество "Лаборатория Касперского" Method for automated testing of software and hardware systems and complexes
US10970395B1 (en) * 2018-01-18 2021-04-06 Pure Storage, Inc Security threat monitoring for a storage system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2610287C1 (en) * 2015-12-10 2017-02-08 Валентин Викторович Богданов Method of monitoring state of data transmission network
RU2664018C1 (en) * 2017-06-21 2018-08-14 Денис Викторович Козлов System and method of automatic investigation of safety incidents in automated system
US10970395B1 (en) * 2018-01-18 2021-04-06 Pure Storage, Inc Security threat monitoring for a storage system
RU2715025C2 (en) * 2018-04-19 2020-02-21 Акционерное общество "Лаборатория Касперского" Method for automated testing of software and hardware systems and complexes
WO2020028535A1 (en) * 2018-07-31 2020-02-06 Veracode, Inc. Software vulnerability graph database
RU2705460C1 (en) * 2019-03-19 2019-11-07 федеральное автономное учреждение "Государственный научно-исследовательский испытательный институт проблем технической защиты информации Федеральной службы по техническому и экспортному контролю" Method of determining potential threats to information security based on information on vulnerabilities of software

Similar Documents

Publication Publication Date Title
Bromander et al. Semantic Cyberthreat Modelling.
Balduccini et al. Ontology-based reasoning about the trustworthiness of cyber-physical systems
Sugali Software testing: Issues and challenges of artificial intelligence & machine learning
Andrei Semantic model of attacks and vulnerabilities based on CAPEC and CWE dictionaries
Islam et al. Automated interpretation and integration of security tools using semantic knowledge
Christoforou et al. Migration of software components to microservices: Matching and synthesis
Burns et al. Reasoning about smart city
Messe et al. Asset-oriented threat modeling
US20230222223A1 (en) Computer-implemented method for testing the cybersecurity of a target environment
Matoussi et al. A survey of non-functional requirements in software development process
US20230396638A1 (en) Adaptive system for network and security management
RU2789990C1 (en) Method and system for automated documentation of security threats and vulnerabilities related to an information resource
Demange et al. Detection of SOA patterns
Refsdal et al. Security risk analysis of system changes exemplified within the oil and gas domain
Aman et al. Ontology-based dynamic and context-aware security assessment automation for critical applications
Ahmad et al. Formal reasoning of web application firewall rules through ontological modeling
Bouquet et al. Model-based testing for functional and security test generation
Groner et al. Model-based generation of attack-fault trees
Kotha et al. Formal methods for enterprise application integration
Rambikur et al. Systems architecture in failure analysis (Applications of architecture modeling to system failure analysis)
Suloglu et al. Comparative analysis of variability modelling approaches in component models
Ven et al. Experiences with the automatic discovery of violations to the normalized systems design theorems
CN116627466B (en) Service path extraction method, system, equipment and medium
US11656855B2 (en) Identify, suggest, and auto-implement best practices for requirement specific software development
Balduccini et al. Reasoning about Smart City