RU2748963C2 - System and method for detecting service operation problems in a data transmission network comprising virtual machines - Google Patents

System and method for detecting service operation problems in a data transmission network comprising virtual machines Download PDF

Info

Publication number
RU2748963C2
RU2748963C2 RU2019122437A RU2019122437A RU2748963C2 RU 2748963 C2 RU2748963 C2 RU 2748963C2 RU 2019122437 A RU2019122437 A RU 2019122437A RU 2019122437 A RU2019122437 A RU 2019122437A RU 2748963 C2 RU2748963 C2 RU 2748963C2
Authority
RU
Russia
Prior art keywords
data processing
processing service
virtual machines
data
service
Prior art date
Application number
RU2019122437A
Other languages
Russian (ru)
Other versions
RU2019122437A3 (en
RU2019122437A (en
Inventor
Евгений Владимирович Буштырёв
Original Assignee
Акционерное общество "Лаборатория Касперского"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Акционерное общество "Лаборатория Касперского" filed Critical Акционерное общество "Лаборатория Касперского"
Priority to RU2019122437A priority Critical patent/RU2748963C2/en
Publication of RU2019122437A3 publication Critical patent/RU2019122437A3/ru
Publication of RU2019122437A publication Critical patent/RU2019122437A/en
Application granted granted Critical
Publication of RU2748963C2 publication Critical patent/RU2748963C2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities

Abstract

FIELD: testing.
SUBSTANCE: invention relates to the area of computing technology for detecting service operation problems in a data transmission network comprising virtual machines. The technical result is achieved by using a method wherein: the operation problem of at least one data processing service is detected using a diagnostic tool; at least one executable file intended to detect the cause of said operation problem is created using an assembly tool, wherein the executable file does not have dependencies on software packages and dynamic libraries; the created executable files are executed using the assembly tool on the resources associated with said data processing service; at least one cause of the operation problem of said at least one data processing service is detected based on the data containing the results of the execution of said created executable files using the diagnostic tool.
EFFECT: faster and more accurate diagnostics of defects and limited performance of services in a data transmission network employing security services for virtual machines.
8 cl, 4 dwg

Description

Область техникиTechnology area

Изобретение относится к решениям для выявления проблем функционирования сервисов обработки данных, а более конкретно к системам и способам выявления проблем в функционировании сервисов обработки данных в сети передачи данных, содержащей виртуальные машины.The invention relates to solutions for identifying problems in the functioning of data processing services, and more specifically to systems and methods for identifying problems in the functioning of data processing services in a data transmission network containing virtual machines.

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

Сервисы безопасности для виртуальных машин (например, Kaspersky Security for Virtualization) являются программными продуктами, предназначенными для управления виртуальными машинами, а также для мониторинга и обеспечения безопасности виртуальных машин. Однако, такие продукты тестируются производителем программного обеспечения на ограниченном числе виртуальных окружений, исполняющихся на виртуальных машинах. При использовании продуктов в существующих информационных системах клиентов присутствует значительное количество факторов, влияющих на нормальную работу сервисов безопасности для виртуальных машин и сервисов, исполняющихся в виртуальных окружениях, вследствие чего возникают проблемы функционирования упомянутых сервисов.Security services for virtual machines (for example, Kaspersky Security for Virtualization) are software products designed to manage virtual machines, as well as to monitor and ensure the security of virtual machines. However, such products are tested by the software manufacturer on a limited number of virtual environments running on virtual machines. When using the products in the existing information systems of customers, there are a significant number of factors affecting the normal operation of security services for virtual machines and services running in virtual environments, as a result of which there are problems with the functioning of these services.

Существуют решения для диагностики виртуальных машин. Например, публикация US 9990220 B2 описывает систему, в которой гипервизор получает от агента виртуальной машины сообщение об ошибке и определяет, какое действие необходимо выполнить.There are solutions for diagnosing virtual machines. For example, US publication 9990220 B2 describes a system in which a hypervisor receives an error message from a virtual machine agent and determines what action to take.

Однако существующие решения зачастую нацелены только на выявление проблемы функционирования виртуальной машины, но в случае возникновения проблемы не выявляют причину ее возникновения.However, existing solutions are often aimed only at identifying the problem of the functioning of a virtual machine, but if a problem occurs, they do not identify the cause of its occurrence.

Кроме того, на сложных распределенных окружениях существующих информационных систем, в которых функционируют сервисы безопасности для виртуальных машин, затруднен сбор данных для диагностики возникающих проблем с функционированием сервисов. Требуются действия на различных элементах сети передачи данных и на виртуальных машинах, например, сбор журналов системных событий, опрос текущего состояния сервиса безопасности для виртуальных машин, состояния сети передачи данных, выявление особенностей прохождения трафика через те или иные сегменты сети передачи данных, контроль выполнения приложений и сервисов. Эти действия зачастую рутинны, имеют итерационный характер, а также достаточно медленны при выполнении в ручном режиме пользователем.In addition, in complex distributed environments of existing information systems, in which security services for virtual machines operate, it is difficult to collect data to diagnose emerging problems with the operation of services. Actions are required on various elements of the data transmission network and on virtual machines, for example, collecting system event logs, polling the current state of the security service for virtual machines, the state of the data transmission network, identifying the features of traffic flow through certain segments of the data transmission network, monitoring application execution and services. These actions are often routine, iterative, and also rather slow when performed manually by the user.

Настоящее изобретение лишено упомянутых недостатков и позволяет более быстро и точно производить диагностику неисправностей и ограниченной работоспособности сервисов в сети передачи данных, использующей сервисы безопасности для виртуальных машин.The present invention is free of the aforementioned disadvantages and allows for faster and more accurate diagnostics of malfunctions and limited performance of services in a data network using security services for virtual machines.

Сущность изобретенияThe essence of the invention

Настоящее изобретение предназначено для выявления причин проблем функционирования сервисов обработки данных в сети передачи данных, содержащей виртуальные машины.The present invention is intended to identify the causes of problems in the operation of data services in a data network containing virtual machines.

Технический результат настоящего изобретения заключается в реализации заявленного назначения.The technical result of the present invention is to implement the declared purpose.

Согласно одному из вариантов реализации предоставляется способ выявления причины проблемы функционирования сервиса обработки данных, состоящий из этапов, на которых: с помощью средства диагностики выявляют проблему функционирования по меньшей мере одного сервиса обработки данных; с помощью средства сборки создают по меньшей мере один исполняемый файл, предназначенный для выявления причины упомянутой проблемы функционирования; с помощью средства сборки исполняют созданные исполняемые файлы на ресурсах, связанных с упомянутым сервисом обработки данных; с помощью средства диагностики выявляют на основании данных, содержащих результаты выполнения упомянутых созданных исполняемых файлов, по меньшей мере одну причину проблемы функционирования по меньшей мере одного сервиса обработки данных.According to one embodiment, a method is provided for identifying the cause of a problem in the operation of a data processing service, which consists of the steps at which: using a diagnostic tool, a problem in the operation of at least one data processing service is identified; using the assembly tool create at least one executable file designed to identify the cause of the above-mentioned problem of operation; using the assembly tool, the generated executable files are executed on the resources associated with the said data processing service; using the diagnostic tool, on the basis of the data containing the results of the execution of the said created executable files, at least one cause of the problem of the functioning of at least one data processing service is detected.

Согласно другому частному варианту реализации предлагается способ, в котором сервис обработки данных выполняется на одной или нескольких виртуальных машинах.According to another particular embodiment, a method is provided in which a data processing service is executed on one or more virtual machines.

Согласно еще одному частному варианту реализации предлагается способ, в котором проблемой функционирования является полная неработоспособность сервиса обработки данных.According to another particular embodiment, a method is proposed in which the problem of operation is the complete inoperability of the data processing service.

Согласно еще одному частному варианту реализации предлагается способ, в котором проблемой функционирования является частичная неработоспособность сервиса обработки данных.According to another particular embodiment, a method is proposed in which the problem of operation is a partial inoperability of the data processing service.

Согласно еще одному частному варианту реализации предлагается способ, в котором исполняемый файл не имеет зависимостей от пакетов программного обеспечения.According to another particular embodiment, a method is provided in which the executable file does not have dependencies on software packages.

Согласно еще одному частному варианту реализации предлагается способ, в котором исполняемый файл не имеет зависимостей от динамических библиотек.According to another particular embodiment, a method is proposed in which the executable file does not have dependencies on dynamic libraries.

Согласно еще одному частному варианту реализации предлагается способ, в котором ресурс, связанный с сервисом обработки данных, является элементом сети передачи данных.According to another particular embodiment, a method is proposed in which a resource associated with a data processing service is an element of a data transmission network.

Согласно еще одному частному варианту реализации предлагается способ, в котором ресурс, связанный с сервисом обработки данных, является виртуальной машиной.According to another particular embodiment, a method is proposed in which the resource associated with the data processing service is a virtual machine.

Согласно еще одному частному варианту реализации предлагается способ, в котором ресурс, связанный с сервисом обработки данных, является в управляющим компонентом, на котором исполняется сервис безопасности для виртуальных машин.According to another particular embodiment, a method is proposed in which a resource associated with a data processing service is in a control component that runs a security service for virtual machines.

Согласно еще одному частному варианту реализации предлагается способ, в котором исполняемый файл выполняет действия, необходимые для выявления причины проблемы функционирования по меньшей мере одного сервиса обработки данных.According to another particular embodiment, a method is proposed in which an executable file performs actions necessary to identify the cause of a problem in the operation of at least one data processing service.

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

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

Фиг. 1 показывает пример сети передачи данных, содержащей виртуальные машины.FIG. 1 shows an example of a data network containing virtual machines.

Фиг. 2 показывает пример реализации предлагаемой системы выявления проблем функционирования сервисов в сети передачи данных, содержащей виртуальные машины.FIG. 2 shows an example of the implementation of the proposed system for identifying problems in the functioning of services in a data transmission network containing virtual machines.

Фиг. 3 показывает пример реализации предлагаемого способа выявления проблем функционирования сервисов в сети передачи данных, содержащей виртуальные машины.FIG. 3 shows an example of the implementation of the proposed method for identifying problems in the functioning of services in a data transmission network containing virtual machines.

Фиг. 4 показывает пример компьютерной системы общего назначения, которая позволяет реализовать настоящее изобретение.FIG. 4 shows an example of a general purpose computer system that enables the present invention to be implemented.

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

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

Введем ряд определений и понятий, которые будут использоваться при описании вариантов осуществления изобретения.Let's introduce a number of definitions and concepts that will be used in describing the embodiments of the invention.

Гипервизор (монитор виртуальных машин) - программа, создающая среду функционирования других программ (в том числе других гипервизоров) за счет имитации аппаратных средств вычислительной техники, управления данными средствами и гостевыми операционными системами, функционирующими в данной среде.A hypervisor (virtual machine monitor) is a program that creates an environment for the operation of other programs (including other hypervisors) by simulating computer hardware, managing these tools and guest operating systems operating in this environment.

Под средствами системы анализа файла на вредоносность в виртуальной машине в настоящем изобретении понимаются реальные устройства, системы, компоненты, группы компонентов, реализованные с использованием аппаратных средств, таких как интегральные микросхемы (англ. application-specific integrated circuit, ASIC) или программируемые вентильные матрицы (англ. field-programmable gate array, FPGA) или, например, в виде комбинации программных и аппаратных средств, таких как микропроцессорная система и набор программных инструкций, а также на нейроморфных чипах (англ. neurosynaptic chips) Функциональность указанных средств системы может быть реализована исключительно аппаратными средствами, а также в виде комбинации, где часть функциональности средств системы реализована программными средствами, а часть аппаратными. В некоторых вариантах реализации часть средств, или все средства, могут быть реализованы на процессоре компьютера общего назначения (например, который изображен на Фиг. 4). При этом компоненты (каждое из средств) системы могут быть реализованы в рамках как одного вычислительного устройства, так и разнесены между несколькими, связанными между собой вычислительными устройствами.By means of a file analysis system for malware in a virtual machine, in the present invention, we mean real devices, systems, components, groups of components implemented using hardware such as application-specific integrated circuits (ASICs) or programmable gate arrays ( field-programmable gate array, FPGA) or, for example, in the form of a combination of software and hardware, such as a microprocessor system and a set of software instructions, as well as on neurosynaptic chips. The functionality of these system means can be implemented exclusively hardware, as well as in the form of a combination, where part of the functionality of the system is implemented by software, and part by hardware. In some implementations, some or all of the tools may be implemented on a processor in a general purpose computer (eg, as shown in FIG. 4). In this case, the components (each of the means) of the system can be implemented within the framework of a single computing device, or spaced between several interconnected computing devices.

Фиг. 1 показывает пример сети передачи данных, содержащей виртуальные машины.FIG. 1 shows an example of a data network containing virtual machines.

В общем случае в сети передачи данных присутствуют элементы сети передачи данных 180 (например, компьютеры, терминалы, рабочие станции), виртуальные машины 190, которые в свою очередь работают под управлением различных гипервизоров и исполняются на выделенных компьютерах или серверах, и по меньшей мере один управляющий компонент 170, который в свою очередь также исполняется на по меньшей мере одном выделенном компьютере (например, на сервере). При этом управляющий компонент 170 производит настройку виртуальных машин 190 и осуществляет мониторинг их состояния, а элементы сети передачи данных 180 выполняют запросы к сервисам обработки данных, выполняющимся в одной или нескольких виртуальных машинах 190. Примером управляющего компонента 170 является сервис безопасности для виртуальных машин, в частном случае - программное обеспечение Kaspersky Security for Virtualization.In the general case, the data transmission network contains elements of the data transmission network 180 (for example, computers, terminals, workstations), virtual machines 190, which in turn operate under the control of various hypervisors and run on dedicated computers or servers, and at least one a control component 170, which in turn also runs on at least one dedicated computer (eg, a server). In this case, the control component 170 configures the virtual machines 190 and monitors their state, and the elements of the data transmission network 180 perform requests to the data processing services running in one or more virtual machines 190. An example of the control component 170 is a security service for virtual machines, in in a particular case, the software Kaspersky Security for Virtualization.

В сети передачи данных также зачастую используются решения, использующие инфраструктуру виртуальных рабочих столов (англ. Virtual Desktop Infrastructure, VDI), при этом множество виртуальных рабочих столов на виртуальных машинах 190 создаются из ограниченного набора образов виртуальных машин, но используются пользователями в разных целях. При этом виртуальные рабочие столы могут выполнять функции элементов сети передачи данных 180, в частности запросы к сервисам, выполняющимся на виртуальных машинах 190, а безопасность виртуальных рабочих столов также обеспечивается управляющим компонентом 170.Data networks also often use solutions that use Virtual Desktop Infrastructure (VDI), while many virtual desktops on virtual machines 190 are created from a limited set of virtual machine images, but are used by users for different purposes. In this case, virtual desktops can perform the functions of elements of the data network 180, in particular, requests to services running on virtual machines 190, and the security of virtual desktops is also provided by the control component 170.

Фиг. 2 показывает пример системы выявления проблем функционирования сервисов в сети передачи данных, содержащей виртуальные машины.FIG. 2 shows an example of a system for identifying problems in the functioning of services in a data transmission network containing virtual machines.

В общем случае предлагаемая система содержит средство диагностики 110, средство анализа 120 и средство сборки 130.In general, the proposed system comprises a diagnostic tool 110, an analysis tool 120, and an assembly tool 130.

Средство диагностики 110 в одном из вариантов реализации является компонентом сервиса безопасности для виртуальных машин. С помощью средства диагностики 110 выявляют проблему функционирования по меньшей мере одного сервиса обработки данных, выполняющегося в одной или нескольких защищенных виртуальных машинах 190 (далее по тексту - сервис обработки данных). В общем случае проблемой функционирования сервиса обработки данных является полная или частичная неработоспособность упомянутого сервиса, которая может выражаться в неполучении ответа от сервиса обработки данных на запрос элементов сети передачи данных 180, невозможность обмена сетевым трафиком с сервисом, задержке при получении ответа от сервиса обработки данных и прочих сценариях.Diagnostic tool 110, in one embodiment, is a component of a security service for virtual machines. Using the diagnostic tool 110, a problem is detected in the operation of at least one data processing service running in one or more protected virtual machines 190 (hereinafter referred to as the data processing service). In the general case, the problem of the functioning of the data processing service is the complete or partial inoperability of the said service, which can be expressed in non-receipt of a response from the data processing service to the request for elements of the data transmission network 180, the impossibility of exchanging network traffic with the service, delay in receiving a response from the data processing service, and other scenarios.

В одном из вариантов реализации средство диагностики 110 функционирует в реальном времени и непрерывно производит мониторинг состояния сети передачи данных и сбор информации. В другом варианте реализации средство диагностики 110 начинает функционировать после команды от управляющего компонента 170. В одном из вариантов реализации средство диагностики 110 собирает информацию от агентов, размещенных на виртуальных машинах 190. В другом варианте реализации средство диагностики 110 собирает информацию от агентов, размещенных на элементах сети передачи данных 180. В еще одном из вариантов реализации средство диагностики 110 получает информацию от пользователя элемента сети передачи данных. Например, у пользователя возникает проблема функционирования с сервисом обработки данных, исполняющимся в виртуальном окружении на виртуальной машине 190. В ответ на это запускается средство диагностики 110, собирающее данные по обнаруженной проблеме функционирования: недоступны элементы сети передачи данных 180, программные сбои в работе приложений, высокая загрузка процессора и т.п.Кроме того, в одном из вариантов реализации пользователь выбирает тип проблемы функционирования. В еще одном из вариантов реализации средство диагностики 110 получает информацию от специалиста по информационной безопасности.In one implementation, the diagnostic tool 110 operates in real time and continuously monitors the status of the communication network and collects information. In another implementation, diagnostic tool 110 begins to function upon command from control component 170. In one implementation, diagnostic tool 110 collects information from agents hosted on virtual machines 190. In another implementation, diagnostic tool 110 collects information from agents hosted on items data network 180. In yet another embodiment, diagnostic tool 110 obtains information from a user of a data network element. For example, a user has a problem of functioning with a data processing service running in a virtual environment on a virtual machine 190. In response, a diagnostic tool 110 is launched, collecting data on a detected operational problem: elements of the data network 180 are unavailable, software failures in the operation of applications, high processor load, etc. In addition, in one implementation, the user selects the type of problem. In yet another embodiment, the diagnostic tool 110 obtains information from an information security professional.

Полученную и собранную информацию средство диагностики 110 передает средству анализа 120.The diagnostic tool 110 transmits the received and collected information to the analysis tool 120.

В общем случае средство анализа 120 является компонентом сервиса безопасности для виртуальных машин. При этом средство анализа 120 исполняется на по меньшей одном управляющем компоненте 170. На основании полученных от средства диагностики 110 данных средство анализа 120, используя дерево решений, выявляет последовательность действий для диагностики возникшей проблемы функционирования, например, в одном из вариантов реализации запускает на исполнение скрипт (англ. script). В одном из вариантов реализации средство анализа 120 для выявления последовательности действий использует модель, заранее обученную одним из известных из уровня техники способов машинного обучения. На основании полученных данных средство анализа 120 выявляет по меньшей мере один набор действий, необходимых для по меньшей мере одного из:In general, the analyzer 120 is a component of a security service for virtual machines. In this case, the analysis tool 120 is executed on at least one control component 170. Based on the data received from the diagnostic tool 110, the analysis tool 120, using a decision tree, identifies a sequence of actions for diagnosing a problem of functioning, for example, in one of the implementation options, it launches a script for execution (English script). In one implementation, the analyzer 120 uses a model trained in advance with one of the prior art machine learning techniques to identify a sequence of actions. Based on the data obtained, the analyzer 120 identifies at least one set of actions required for at least one of:

- диагностики работоспособности (выявления причины проблемы функционирования) сервиса обработки данных;- health diagnostics (identifying the cause of the functioning problem) of the data processing service;

- выявление способов восстановления работоспособности сервиса (выявление способов устранения причины проблемы функционирования) обработки данных;- identifying ways to restore the serviceability (identifying ways to eliminate the cause of the functioning problem) data processing;

- восстановления работоспособности сервиса (устранения причины проблемы функционирования) обработки данных.- restoration of service performance (elimination of the cause of the functioning problem) of data processing.

Стоит отметить, что набор действий, необходимых для диагностики или восстановления работоспособности сервиса, может содержать по меньшей мере одно из:It should be noted that the set of actions required to diagnose or restore the service's performance may contain at least one of the following:

- набор действий, которые необходимо выполнить на по меньшей мере одном элементе сети передачи данных 180;- a set of actions to be performed on at least one element of the data transmission network 180;

- набор действий, которые необходимо выполнить на по меньшей мере одной виртуальной машине 190;- a set of actions to be performed on at least one virtual machine 190;

- набор действий, которые необходимо выполнить на по меньшей мере одном управляющем компоненте 170, на котором исполняется сервис безопасности для виртуальных машин.- a set of actions that need to be performed on at least one control component 170, which runs the security service for virtual machines.

Выявленный набор действий в общем случае средство анализа 120 преобразует в исходный код, который передается средству сборки 130.The identified set of actions is generally converted by the parser 120 into source code, which is passed to the build tool 130.

Средство сборки 130 в общем случае является компонентом сервиса безопасности для виртуальных машин. При этом средство сборки 130 функционирует на по меньшей мере одном управляющем компоненте 170 (выделенном сервере или компьютере). Средство сборки 130 на основании полученных данных создает по меньшей мере один исполняемый файл 150, выполняющий действия на основании исходного кода и не имеющий зависимостей (англ. dependencies) после сборки (далее по тексту -исполняемый файл 150). В рамках настоящего изобретения исполняемый файл 150, не имеющий зависимостей, - это исполняемый файл, для исполнения которого не требуются дополнительные пакеты программного обеспечения или динамические библиотеки (например,.NET Framework, Python, PHP). Для операционных систем семейства Windows исполняемый файл 150 представляет собой ехе-файл. Для операционных систем семейства Linux исполняемый файл 150 представляет собой бинарный файл (известно, что в Linux исполняемыми называются файлы, которые имеют разрешение на выполнение). В одном из вариантов реализации упомянутый исполняемый файл 150, не имеющий зависимостей, может быть создан с помощью среды Go Language (https://golang.org/).Build 130 is generally a security service component for virtual machines. In this case, the assembly tool 130 operates on at least one control component 170 (dedicated server or computer). The assembly tool 130, based on the received data, creates at least one executable file 150 that performs actions based on the source code and does not have dependencies after assembly (hereinafter referred to as the executable file 150). For the purposes of the present invention, a non-dependency executable 150 is an executable that does not require additional software packages or dynamic libraries (eg, .NET Framework, Python, PHP) to execute. For Windows operating systems, the executable file 150 is an exe file. For operating systems of the Linux family, the executable file 150 is a binary file (it is known that in Linux executable files are called files that have permission to execute). In one implementation, said executable 150 without dependencies can be built using the Go Language environment (https://golang.org/).

При этом созданный исполняемый файл 150 предназначен исполнения на ресурсах, связанных с сервисом обработки данных, выполняющимся в защищенной виртуальной машине 190, при этом ресурсом является:In this case, the created executable file 150 is intended for execution on the resources associated with the data processing service running in the protected virtual machine 190, while the resource is:

- элемент сети передачи данных 180;- element of the data transmission network 180;

- виртуальная машина 190;- virtual machine 190;

- управляющий компонент 170, на котором исполняется сервис безопасности для виртуальных машин.- control component 170, which runs the security service for virtual machines.

Важно понимать, что исполняемый файл 150 предназначен для выявления или устранения проблем функционирования сервиса обработки данных, при этом причина проблем функционирования сервиса обработки данных зачастую не ясна. Установка дополнительного программного обеспечения на ресурс, связанный с сервисом обработки данных, может привести к искажению результатов выполнения файла 150 (например, в процессе установки дополнительного программного обеспечения ресурс был перезапущен, и проблема функционирования устранилась) или к новым причинам возникновения проблем функционирования сервиса обработки данных, не связанным с предыдущей (например, в процессе установки программного обеспечения закончилось место на системном диске).It is important to understand that the executable file 150 is designed to identify or fix problems in the operation of the data processing service, and the cause of the problems in the operation of the data processing service is often not clear. Installing additional software on a resource associated with a data processing service may distort the results of executing file 150 (for example, during the installation of additional software, the resource was restarted and the functioning problem was eliminated) or to new causes of problems in the functioning of the data processing service, not related to the previous one (for example, during the installation of the software, the space on the system disk ran out).

После этого средство сборки 130 исполняет упомянутый исполняемый файл 150. При этом для размещения файла 150 и исполнения могут быть использованы агенты, взаимодействующие с средством диагностики 110. В одном из вариантов реализации размещение файла 150 и исполнение происходит с использованием протоколов RDP или SSH.The build engine 130 then executes the executable 150. In this case, agents interacting with the diagnostic tool 110 can be used to host the file 150 and execute. In one embodiment, the file 150 is placed and executed using RDP or SSH protocols.

В результате исполнения файла 150 выполняются действия, необходимые для выявления проблемы функционирования (диагностики) или устранению проблемы функционирования (восстановления работоспособности) сервиса обработки данных. Результаты выполнения упомянутых действий в общем случае собираются средством диагностики 110 и передаются средству анализа 120.As a result of the execution of the file 150, the actions necessary to identify the problem of functioning (diagnostics) or to eliminate the problem of functioning (restoring the operability) of the data processing service are performed. The results of these actions are generally collected by the diagnostic tool 110 and transmitted to the analysis tool 120.

Средство анализа 120 на основании полученных данных о результатах выполнения действий после исполнения файла 150, с использованием дерева решений или модели, заранее обученной одним из известных из уровня техники способов машинного обучения или нейронных сетей, выявляет в случае необходимости (например, диагностика произведена или неработоспособность сервиса обработки данных исправлена) другой набор действий, необходимых для диагностики или восстановления. Таким образом, в одном из вариантов реализации средство анализа 120 и средство диагностики 110 повторяют вышеописанные этапы выбора действий и создания исполняемого файла до тех пор, пока средство диагностики 110 на основании данных, содержащих результаты выполнения созданных исполняемых файлов, не выявит устранение проблемы функционирования сервиса обработки данных. Практические примеры работы описанной системы и действий исполняемого файла 150 описаны ниже.The analysis tool 120, based on the data obtained on the results of performing actions after executing the file 150, using a decision tree or a model trained in advance by one of the well-known methods of machine learning or neural networks, detects, if necessary (for example, diagnostics has been made or the service is inoperable. data processing corrected) another set of actions required for diagnosis or recovery. Thus, in one embodiment, the analysis tool 120 and the diagnostic tool 110 repeat the above steps of selecting actions and creating an executable file until the diagnostic tool 110, based on the data containing the results of executing the generated executable files, reveals the elimination of the processing service operation problem. data. Practical examples of the operation of the described system and the actions of the executable file 150 are described below.

В одном из вариантов реализации файл 150 может содержать действия для проверки доступности и эффективности использования внешних сервисов (например, исполняющихся на защищенной виртуальной машине 190 или отдельном сервере по отношению к элементу сети передачи данных 180, на которой файл 150 запущен). Внешними сервисами могут быть:In one implementation, file 150 may contain actions to verify the availability and efficiency of external services (eg, running on secure virtual machine 190 or a separate server with respect to the network element 180 on which file 150 is running). External services can be:

- продуктовые сервисы, с которыми взаимодействует сервис безопасности для виртуальных машин, например, облачный сервис безопасности (Kaspersky Security Network), сервер сбора дампов (англ. dump server), сервис безопасности для виртуальных машин (Kaspersky Security Center) и другие сервисы, к которым обращается сервис или программное обеспечение, размещенное на одном вычислительном устройстве с файлом 150.- product services with which the security service for virtual machines interacts, for example, a cloud security service (Kaspersky Security Network), a dump server, a security service for virtual machines (Kaspersky Security Center) and other services to which accesses a service or software hosted on the same computing device with file 150.

- внешние инфраструктурные сервисы, с которыми может взаимодействовать продукт, например, службы DHCP, DNS, гипервизоры, утилиты ОС, обратившись к которым, можно получить дополнительную диагностику или данные других сервисов.- external infrastructure services that the product can interact with, for example, DHCP, DNS, hypervisors, OS utilities, by contacting which, you can get additional diagnostics or data from other services.

В другом варианте реализации файл 150 может содержать действия для обращения к утилитам конкретного гипервизора, под управлением которого работает виртуальная машина 190. Утилиты представляют собой набор программ, позволяющих из гостевой системы виртуальной машины 190 получать некоторую расширенную информацию про данную виртуальной машины 190 (например, аппаратная конфигурация виртуальной машины 190), а также про гипервизор, под управлением которого работает виртуальная машина 190 (например, IP-адрес, тип гипервизора). Также важна версия этих утилит, ибо определенные их версии могут конфликтовать с сервисом или программным обеспечением, размещенном на одном вычислительном устройстве с файлом 150, вызывая его неработоспособность, либо приводить к более медленной его работе.In another implementation, the file 150 may contain actions for accessing the utilities of the particular hypervisor that is running the virtual machine 190. The utilities are a set of programs that allow the guest system of the virtual machine 190 to obtain some extended information about the given virtual machine 190 (for example, the hardware configuration of virtual machine 190), as well as about the hypervisor that runs virtual machine 190 (for example, IP address, type of hypervisor). The version of these utilities is also important, because certain versions of them may conflict with the service or software located on the same computing device with the file 150, causing it to malfunction, or lead to its slower operation.

В еще одном примере реализации в результате исполнения файла 150 средством диагностики 110 выявлено, что брандмауэр блокирует порт на элементе сети передачи данных 180. Средство анализа 120 выявляет набор действий для открытия порта и создает новый исполняемый файл 150, не имеющий зависимостей.In yet another embodiment, execution of file 150 by diagnostic 110 detects that a firewall is blocking a port on communications network element 180. Analyzer 120 identifies a set of actions to open the port and creates a new executable 150 that has no dependencies.

В еще одном из вариантов реализации файл 150 может содержать действия, выполнение которых позволяет включить/выключить журналы сервиса или программного обеспечения, размещенного на одном вычислительном устройстве с файлом 150, а также копировать упомянутые журналы в сети передачи данных для дальнейшего анализа.In another embodiment, file 150 may contain actions that enable / disable logs of a service or software located on the same computing device with file 150, as well as copy said logs to a data network for further analysis.

В еще одном из вариантов реализации файл 150 также может содержать действия, позволяющие скачать нужный патч для конкретной виртуальной машины 190 или группы виртуальных машины 190 в целом, а также для элемента сети передачи данных 180.In yet another implementation, file 150 may also contain steps to download the desired patch for a specific virtual machine 190 or a group of virtual machines 190 as a whole, as well as for an element of a data network 180.

В еще одном из вариантов реализации файл 150 также может содержать действия, позволяющие произвести настройки сервиса или программного обеспечения, размещенного на одном вычислительном устройстве с файлом 150, например, когда с помощью дерева решений, средство анализа 120 выбирает последовательность действий для решения конкретной проблемы. Например, изменяется размер внутренних очередей, различные временные характеристики (например, таймаут) на соединение с элементом сети передачи данных 180 или с виртуальной машиной 190.In yet another implementation, file 150 may also contain actions that allow customization of a service or software located on the same computing device as file 150, for example, when analysis engine 120 selects a sequence of actions to solve a specific problem using a decision tree. For example, the size of the internal queues is changed, various timing characteristics (for example, timeout) for the connection to the data network element 180 or to the virtual machine 190.

В еще одном из вариантов реализации файл 150 может содержать действия, позволяющие взаимодействовать с пользователем, если действие, которое требуется сделать, может изменить настройки/уровень безопасности. Например, запросить согласие пользователя на перезапуск сервиса или на включение специальных режимов работы сервиса, в которых сервис позволяет производить расширенную диагностику за счет снижения уровня безопасности (например, в журналах на время анализа может появляться конфиденциальная информация, необходимая для анализа). Кроме того, все ненужные данные (например, упомянутые журналы) автоматически будут удалены после завершения выполнения файла 150, поскольку пользователи зачастую забывают это сделать сами.In yet another implementation, file 150 may contain actions that allow interaction with the user if the action to be taken could change the security settings / level. For example, request the user's consent to restart the service or to enable special modes of the service, in which the service allows advanced diagnostics by reducing the security level (for example, confidential information required for analysis may appear in the logs during the analysis). In addition, all unnecessary data (for example, the mentioned logs) will be automatically deleted after the completion of the execution of the file 150, as users often forget to do it themselves.

В еще одном из вариантов реализации файл 150 взаимодействует с пользователем: если действия по диагностике требуют узкоспециализированных утилит, которые отсутствуют в комплекте поставки сервиса безопасности для виртуальных машин, то в качестве одного из шагов пользователь устанавливает упомянутые утилиты (например, перехватчик трафика Wireshark), после чего он будет вызван в автоматическом режиме и, полученные данные после обработки средством анализа 120 могут быть использованы для дальнейшего выбора действий.In another implementation, the file 150 interacts with the user: if the diagnostic actions require highly specialized utilities that are not included in the security service for virtual machines, then as one of the steps the user installs the mentioned utilities (for example, the Wireshark traffic interceptor), after then it will be called automatically and the data obtained after processing by the analysis tool 120 can be used for further selection of actions.

В еще одном из вариантов реализации файл 150 устанавливает связь с одним или несколькими подобными ему файлами 150 на различных элементах сети передачи данных 180 или виртуальных машинах 190 с целью замера скорости трафика (скорости прохождения сетевых пакетов), блокировки портов, потери пакетов, определения наличия правил брандмауэра (англ. firewall), запрещающих прохождение трафика между разными участками сети передачи данных или специфическими виртуальными локальными компьютерными сетями передачи данных (анг. Virtual Local Area Network, VLAN).In another implementation, file 150 communicates with one or more similar files 150 on various elements of the data network 180 or virtual machines 190 in order to measure traffic speed (network packet transmission rate), blocking ports, packet loss, determining the presence of rules a firewall that prohibits the passage of traffic between different parts of the data transmission network or specific virtual local area computer networks (Virtual Local Area Network, VLAN).

В еще одном из вариантов реализации файл 150 анализирует точки входа в операционную систему на наличие уязвимостей - например, проверив список открытых портов и сервисов, использующих открытые порты (что также возможно, как описано выше, с привлечением более специализированных утилит, например, nmap).In another implementation, file 150 analyzes the entry points to the operating system for vulnerabilities - for example, by checking the list of open ports and services using open ports (which is also possible, as described above, using more specialized utilities, such as nmap).

В еще одном из вариантов реализации файл 150 проверяет требования к функционированию сервиса, например, известно, что сервис для своей работы требует открытых тех или иных портов (например, ТСР:7777, UDP:9000).In another implementation, the file 150 checks the requirements for the operation of the service, for example, it is known that the service requires open certain ports for its operation (for example, ТСР: 7777, UDP: 9000).

В еще одном из вариантов реализации файл 150 проверяет состояние системы: загрузка CPU, наличие свободного места на диске и прочее.In yet another implementation, file 150 checks the state of the system: CPU load, free disk space, and so on.

Фиг. 3 показывает пример реализации предлагаемого способа выявления проблем функционирования сервисов в сети передачи данных, содержащей виртуальные машины.FIG. 3 shows an example of the implementation of the proposed method for identifying problems in the functioning of services in a data transmission network containing virtual machines.

На начальном этапе 310 с помощью средства диагностики 110 выявляют проблему функционирования по меньшей мере одного сервиса обработки данных. Сервис обработки данных выполняется на одной или нескольких виртуальных машинах 190. В одном из вариантов реализации проблемой функционирования является полная неработоспособность сервиса обработки данных. В другом варианте реализации проблемой функционирования является частичная неработоспособность сервиса обработки данных. В одном из вариантов реализации средство диагностики 110 функционирует в реальном времени и непрерывно производит мониторинг состояния сети передачи данных и сбор информации. В другом варианте реализации средство диагностики 110 начинает функционировать после команды от управляющего компонента 170. В одном из вариантов реализации средство диагностики 110 собирает информацию от агентов, размещенных на виртуальных машинах 190. В другом варианте реализации средство диагностики 110 собирает информацию от агентов, размещенных на элементах сети передачи данных 180. В еще одном из вариантов реализации средство диагностики 110 получает информацию от пользователя элемента сети передачи данных.At an initial step 310, the diagnostic tool 110 detects a problem with the operation of at least one data service. The data processing service runs on one or more virtual machines 190. In one implementation, a performance problem is the complete inoperability of the data processing service. In another implementation, the problem of functioning is the partial inoperability of the data processing service. In one implementation, the diagnostic tool 110 operates in real time and continuously monitors the status of the communication network and collects information. In another implementation, diagnostic tool 110 begins to function upon command from control component 170. In one implementation, diagnostic tool 110 collects information from agents hosted on virtual machines 190. In another implementation, diagnostic tool 110 collects information from agents hosted on items data network 180. In yet another embodiment, diagnostic tool 110 obtains information from a user of a data network element.

На этапе 320 определяют с помощью средства анализа 120, используя дерево решений, последовательность действий для диагностики возникшей проблемы функционирования. В одном из вариантов реализации средство анализа 120 для выявления последовательности действий использует модель, заранее обученную одним из известных из уровня техники способов машинного обучения. На основании полученных данных средство анализа 120 выявляет по меньшей мере один набор действий, необходимых для диагностики работоспособности (выявления причины проблемы функционирования) сервиса обработки данных.At step 320, a sequence of actions is determined using the analysis tool 120 using a decision tree to diagnose the problem of performance. In one implementation, the analyzer 120 uses a model trained in advance with one of the prior art machine learning techniques to identify a sequence of actions. Based on the received data, the analysis tool 120 identifies at least one set of actions necessary to diagnose the health (identify the cause of the problem of functioning) of the data processing service.

Набор действий, необходимых для диагностики работоспособности сервиса, может содержать по меньшей мере одно из:The set of actions required to diagnose the health of a service may contain at least one of:

- набор действий, которые необходимо выполнить на по меньшей мере одном элементе сети передачи данных 180;- a set of actions to be performed on at least one element of the data transmission network 180;

- набор действий, которые необходимо выполнить на по меньшей мере одной виртуальной машине 190;- a set of actions to be performed on at least one virtual machine 190;

- набор действий, которые необходимо выполнить на по меньшей мере одном управляющем компоненте 170, на котором исполняется сервис безопасности для виртуальных машин.- a set of actions that need to be performed on at least one control component 170, which runs the security service for virtual machines.

Выявленный набор действий в общем случае средство анализа 120 преобразует в исходный код.The identified set of actions is generally converted by the analyzer 120 to source code.

На этапе 330 с помощью средства сборки 130 на основании полученных данных создают по меньшей мере один исполняемый файл 150, выполняющий действия на основании исходного кода и не имеющий зависимостей после сборки. Исполняемый файл 150, не имеющий зависимостей, - это исполняемый файл, для исполнения которого не требуются дополнительные пакеты программного обеспечения или динамические библиотеки.At step 330, using the build tool 130, based on the received data, at least one executable file 150 is created that performs actions based on the source code and does not have dependencies after the build. An executable file 150 without dependencies is an executable file that does not require additional software packages or dynamic libraries to execute.

При этом созданный исполняемый файл 150 предназначен исполнения на ресурсах, связанных с сервисом обработки данных, выполняющимся в защищенной виртуальной машине 190, при этом ресурсом является:In this case, the created executable file 150 is intended for execution on the resources associated with the data processing service running in the protected virtual machine 190, while the resource is:

- элемент сети передачи данных 180;- element of the data transmission network 180;

- виртуальная машина 190;- virtual machine 190;

- управляющий компонент 170, на котором исполняется сервис безопасности для виртуальных машин.- control component 170, which runs the security service for virtual machines.

На этапе 340 с помощью средства сборки 130 исполняют созданные исполняемые файлы 150 на ресурсах, связанных с упомянутым сервисом обработки данных. При этом для размещения файла 150 и исполнения могут быть использованы агенты, взаимодействующие с средством диагностики 110. В одном из вариантов реализации размещение файла 150 и исполнение происходит с использованием протоколов RDP или SSH.At step 340, the build tool 130 executes the generated executable files 150 on resources associated with said data service. In this case, agents that interact with the diagnostic tool 110 can be used to place the file 150 and execute. In one implementation, the file 150 is placed and executed using the RDP or SSH protocols.

В результате исполнения файла 150 выполняются действия, необходимые для выявления проблемы функционирования сервиса обработки данных. Результаты выполнения упомянутых действий в общем случае собираются средством диагностики 110.As a result of execution of the file 150, the actions necessary to identify the problem of the operation of the data processing service are performed. The results of these actions are generally collected by the diagnostic tool 110.

На этапе 350 с помощью средства диагностики 110 выявляют на основании данных, содержащих результаты выполнения упомянутых созданных исполняемых файлов 150 причину проблемы функционирования сервиса обработки данных.At 350, the diagnostic tool 110 identifies, based on the data containing the execution results of said generated executable files 150, the cause of the data processing service problem.

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

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

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

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

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

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

В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего изобретения, согласующиеся с сущностью и объемом настоящего изобретения.In conclusion, it should be noted that the information given in the description are examples, which do not limit the scope of the present invention defined by the claims. One skilled in the art will appreciate that there may be other embodiments of the present invention consistent with the spirit and scope of the present invention.

Claims (12)

1. Способ выявления причины проблемы функционирования сервиса обработки данных, состоящий из этапов, на которых:1. A method for identifying the cause of a problem in the functioning of a data processing service, consisting of stages at which: а) с помощью средства диагностики выявляют проблему функционирования по меньшей мере одного сервиса обработки данных;a) using the diagnostic tool, the problem of the functioning of at least one data processing service is detected; б) с помощью средства сборки создают по меньшей мере один исполняемый файл, предназначенный для выявления причины упомянутой проблемы функционирования, при этом исполняемый файл не имеет зависимостей от пакетов программного обеспечения и динамических библиотек;b) using the assembly tool, create at least one executable file designed to identify the cause of the mentioned functioning problem, while the executable file does not have dependencies on software packages and dynamic libraries; в) с помощью средства сборки исполняют созданные исполняемые файлы на ресурсах, связанных с упомянутым сервисом обработки данных;c) using the assembly tool, the created executable files are executed on the resources associated with the said data processing service; г) с помощью средства диагностики выявляют на основании данных, содержащих результаты выполнения упомянутых созданных исполняемых файлов, по меньшей мере одну причину проблемы функционирования по меньшей мере одного сервиса обработки данных.d) using the diagnostic tool, on the basis of the data containing the results of the execution of the said created executable files, at least one cause of the problem of the functioning of at least one data processing service is detected. 2. Способ по п. 1, в котором сервис обработки данных выполняется на одной или нескольких виртуальных машинах.2. The method according to claim 1, wherein the data processing service is executed on one or more virtual machines. 3. Способ по п. 1, в котором проблемой функционирования является полная неработоспособность сервиса обработки данных.3. The method according to claim 1, wherein the problem of functioning is the complete inoperability of the data processing service. 4. Способ по п. 1, в котором проблемой функционирования является частичная неработоспособность сервиса обработки данных.4. The method according to claim. 1, in which the problem of operation is a partial inoperability of the data processing service. 5. Способ по п. 1, в котором ресурс, связанный с сервисом обработки данных, является элементом сети передачи данных.5. The method of claim 1, wherein the resource associated with the data processing service is an element of a data transmission network. 6. Способ по п. 1, в котором ресурс, связанный с сервисом обработки данных, является виртуальной машиной.6. The method of claim 1, wherein the resource associated with the data processing service is a virtual machine. 7. Способ по п. 1, в котором ресурс, связанный с сервисом обработки данных, является управляющим компонентом, на котором исполняется сервис безопасности для виртуальных машин.7. The method of claim 1, wherein the resource associated with the data processing service is a control component that runs the security service for virtual machines. 8. Способ по п. 1, в котором исполняемый файл выполняет действия, необходимые для выявления причины проблемы функционирования по меньшей мере одного сервиса обработки данных.8. The method of claim 1, wherein the executable file performs actions necessary to identify the cause of a problem in the operation of at least one data processing service.
RU2019122437A 2019-07-17 2019-07-17 System and method for detecting service operation problems in a data transmission network comprising virtual machines RU2748963C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2019122437A RU2748963C2 (en) 2019-07-17 2019-07-17 System and method for detecting service operation problems in a data transmission network comprising virtual machines

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019122437A RU2748963C2 (en) 2019-07-17 2019-07-17 System and method for detecting service operation problems in a data transmission network comprising virtual machines

Publications (3)

Publication Number Publication Date
RU2019122437A3 RU2019122437A3 (en) 2021-01-18
RU2019122437A RU2019122437A (en) 2021-01-18
RU2748963C2 true RU2748963C2 (en) 2021-06-02

Family

ID=74185074

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019122437A RU2748963C2 (en) 2019-07-17 2019-07-17 System and method for detecting service operation problems in a data transmission network comprising virtual machines

Country Status (1)

Country Link
RU (1) RU2748963C2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110060947A1 (en) * 2009-09-09 2011-03-10 Zhexuan Song Hardware trust anchor
US20120054486A1 (en) * 2010-08-31 2012-03-01 MindTree Limited Securing A Virtual Environment And Virtual Machines
US20120179916A1 (en) * 2010-08-18 2012-07-12 Matt Staker Systems and methods for securing virtual machine computing environments
US20160216992A1 (en) * 2013-06-18 2016-07-28 Vmware, Inc. Hypervisor remedial action for a virtual machine in response to an error message from the virtual machine
RU2015117644A (en) * 2012-10-12 2016-12-10 Конинклейке Филипс Н.В. SAFE DATA PROCESSING BY VIRTUAL MACHINE

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110060947A1 (en) * 2009-09-09 2011-03-10 Zhexuan Song Hardware trust anchor
US20120179916A1 (en) * 2010-08-18 2012-07-12 Matt Staker Systems and methods for securing virtual machine computing environments
US20120054486A1 (en) * 2010-08-31 2012-03-01 MindTree Limited Securing A Virtual Environment And Virtual Machines
RU2015117644A (en) * 2012-10-12 2016-12-10 Конинклейке Филипс Н.В. SAFE DATA PROCESSING BY VIRTUAL MACHINE
US20160216992A1 (en) * 2013-06-18 2016-07-28 Vmware, Inc. Hypervisor remedial action for a virtual machine in response to an error message from the virtual machine

Also Published As

Publication number Publication date
RU2019122437A3 (en) 2021-01-18
RU2019122437A (en) 2021-01-18

Similar Documents

Publication Publication Date Title
RU2653985C2 (en) Method and system for detecting malicious software by control of software implementation running under script
EP2163027B1 (en) System and method for simulating computer network attacks
Larsson et al. Impact of etcd deployment on Kubernetes, Istio, and application performance
EP2237154A2 (en) Facilitated introspection of virtualized environments
JP2016537695A (en) Optimized resource allocation to virtual machines in malware content detection system
US9104798B2 (en) Enabling remote debugging of virtual machines running in a cloud environment
US8429717B2 (en) Method for activating virtual machine, apparatus for simulating computing device and supervising device
Zhuang et al. {NetCheck}: Network Diagnoses from Blackbox Traces
EP3611643B1 (en) Malware detection based on user interactions
US9021008B1 (en) Managing targeted scripts
US20230214229A1 (en) Multi-tenant java agent instrumentation system
Malik et al. A measurement study of open source SDN layers in OpenStack under network perturbation
JP5400873B2 (en) Method, system, and computer program for identifying software problems
Kim et al. Prof-gen: Practical study on system call whitelist generation for container attack surface reduction
RU2747465C2 (en) System and method for troubleshooting functioning of services in data network containing virtual machines
RU2748963C2 (en) System and method for detecting service operation problems in a data transmission network comprising virtual machines
EP4160455A1 (en) Behavior analysis based on finite-state machine for malware detection
US10685115B1 (en) Method and system for implementing cloud native application threat detection
AU2022226943B2 (en) Computer system security scan and response
US20220012161A1 (en) Instrumentation trace capture technique
US11494284B2 (en) Dynamic configuration trace capture technique
RU2739831C1 (en) Application operation troubleshooting method
RU2739867C1 (en) Method of determining application module associated with cause of problem encountered during operation of application
US11451570B1 (en) Computer system security scan
Scholten Automatic detection of zero-day attacks in high-interaction IoT honeypots using static analysis techniques