WO2025220100A1 - システムコール収集システム、および、システムコール収集方法 - Google Patents

システムコール収集システム、および、システムコール収集方法

Info

Publication number
WO2025220100A1
WO2025220100A1 PCT/JP2024/015082 JP2024015082W WO2025220100A1 WO 2025220100 A1 WO2025220100 A1 WO 2025220100A1 JP 2024015082 W JP2024015082 W JP 2024015082W WO 2025220100 A1 WO2025220100 A1 WO 2025220100A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
communication
collection
equivalent
system call
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
PCT/JP2024/015082
Other languages
English (en)
French (fr)
Inventor
勝 真田
彰則 白神
裕一 中谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to PCT/JP2024/015082 priority Critical patent/WO2025220100A1/ja
Publication of WO2025220100A1 publication Critical patent/WO2025220100A1/ja
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance

Definitions

  • the present invention relates to a system call collection system and a system call collection method.
  • NFs Network Functions
  • VNF Virtualized NF
  • Patent Document 1 describes the use of statistical information regarding the issuance of system calls by a host OS (Operating System).
  • Non-Patent Document 1 describes an EDR (Endpoint Detection and Response) product that detects abnormal symptoms by monitoring statistical information on system calls.
  • Non-Patent Document 1 detect signs of abnormalities on a single server.
  • network systems are implemented by multiple communication servers operating independently or in cooperation with one another.
  • signs of abnormalities may occur simultaneously or spread across multiple servers.
  • a server may be infected with malware that has an incubation period set with the same startup conditions or the same date, or a worm that spreads copies of programs that perform malicious acts over the network, causing the server to behave abnormally.
  • the present invention aims to improve the accuracy of anomaly detection for servers equivalent to servers in which abnormal symptoms have been detected, but in which no abnormal symptoms have been detected.
  • the system call collection system of the present invention comprises the following means.
  • the present invention provides a system call collection system including communication servers constituting a network system, an analysis server that analyzes system calls of the communication servers, and a maintenance server that is communicatively connected to the analysis server, Each of the communication servers a system call collection unit that collects the system calls in accordance with predetermined collection conditions for the collection of the system calls;
  • the analysis server an abnormality symptom detection unit that acquires information on the system call from each of the communication servers and detects an abnormality symptom of the communication server;
  • the maintenance server an equivalent server extraction unit that acquires information about a communication server in which a symptom of an abnormality has been detected and extracts other communication servers having a configuration equivalent to that of the detected communication server;
  • the system is characterized by having a condition setting unit that changes the specified collection conditions so as to increase the amount of system calls collected for the communication server in which the abnormality signs are detected and the extracted communication server having an equivalent configuration.
  • FIG. 1 is a diagram illustrating an example of a network configuration of a communication server that is a target for detecting abnormal signs in a system call collection system according to an embodiment of the present invention
  • 1 is a diagram illustrating an overall configuration of a system call collection system according to an embodiment of the present invention.
  • FIG. 10 is a diagram illustrating an example of the data configuration of server classification information according to the embodiment.
  • FIG. 10 is a diagram for explaining a process of extracting a comparable server according to the embodiment.
  • FIG. 2 is a sequence diagram showing the flow of processing in the system call collection system according to the present embodiment.
  • FIG. 10 is a diagram illustrating an overall configuration of a system call collection system according to a modified example of the present embodiment.
  • 10A and 10B are diagrams for explaining the process of extracting equivalent servers after a predetermined selection condition is satisfied according to the present embodiment.
  • FIG. 2 is a hardware configuration diagram of each device of the system call collection system according to the present embodiment.
  • FIG. 1 is a diagram illustrating an example of a network configuration of a communication server that is a target for detecting abnormal signs in a system call collection system 100 according to this embodiment.
  • the network is made up of multiple communication servers 10.
  • each communication server 10 undergoes maintenance and management by a maintenance server 30 (described later), the versions of the application layer (main application, library, process), virtualization infrastructure layer, OS/hardware layer, etc. change.
  • a library is a collection of program components that are stored in a file and are made so that a program with a specific function can be called and used by other programs.
  • communication servers 10 among the multiple communication servers 10 that have the same current configuration (version, etc.) of the system used by the communication servers 10 there is a high possibility that the same abnormality will occur in the equivalent communication servers 10.
  • the possibility of the same abnormality occurring is due to, for example, the deterioration of the same parts over time, the existence of a common vulnerability to malware, etc.
  • the system call collection system 100 of this embodiment if an abnormality symptom is detected as a result of monitoring the system calls of a certain communication server 10, the amount of information collected regarding system calls is increased for other communication servers 10 that have the same (common) configuration (version, etc.) as that communication server 10.
  • an abnormal symptom, etc. an abnormal symptom
  • FIG. 2 is a diagram showing the overall configuration of a system call collection system 100 according to this embodiment.
  • a plurality of communication servers 10, an analysis server 20, and a maintenance server 30 are connected via a network.
  • the communication servers 10 that relay data constitute a network system such as that shown in FIG.
  • the analysis server 20 analyzes the system call information (system call information) collected by each communication server 10 to detect the occurrence of an abnormality (failure) in the communication server 10 or signs of an abnormality (such as signs of an abnormality).
  • the maintenance server 30 stores the current maintenance status (version, etc.) of each configuration of each communication server 10, and uses server classification information 300 (see FIG. 3, described later for details) for classifying the communication servers 10 to extract other communication servers 10 that have the same configuration (version, etc.) as the communication server 10 in which an abnormal symptom, etc. has been detected.
  • the maintenance server 30 then increases the amount of system call information collected between the communication server 10 in which an abnormal symptom, etc. has been detected and the extracted other communication servers 10.
  • the communication server 10, analysis server 20, and maintenance server 30 will be described in detail below.
  • the communication server 10 is realized using hardware resources such as a CPU and a storage device, and forms a virtualization infrastructure layer 10V that provides the functions of the OS, and an application layer 10A that runs on the virtualization infrastructure layer 10V.
  • the application layer 10A includes an application 11 for providing services using a VNF or the like, and a collection control unit 12 for controlling a system call collection unit 15 .
  • the collection control unit 12 instructs the system call collection unit 15 to set up system call collection in accordance with predetermined collection conditions (type, frequency, capacity, etc. of collection) notified from the maintenance server 30 via the analysis server 20.
  • the collection control unit 12 also transmits the system calls collected by the system call collection unit 15 to the analysis server 20.
  • the virtualization infrastructure layer 10V includes a kernel 14 which is the core function of the OS, and a system call collection unit 15 which collects system calls from the kernel 14 .
  • the system call collection unit 15 collects (copies) system calls that the kernel 14 receives from the applications 11 (for example, VNFs), and outputs the collected system calls to the collection control unit 12 in the application layer 10A.
  • the OS is Linux (registered trademark)
  • the system call collection unit 15 can be implemented in the kernel 14 by using an extended Berkeley Packet Filter (eBPF).
  • eBPF extended Berkeley Packet Filter
  • the maintenance server 30 includes a peer server extraction unit 31 , a condition setting unit 32 , and server classification information 300 .
  • the equivalent server extraction unit 31 When the equivalent server extraction unit 31 receives notification of the analysis results of the system calls of each communication server 10 from the analysis server 20, it extracts the communication server 10 in which an abnormality symptom or the like has been detected and other communication servers 10 that have an equivalent configuration (common version, etc.) based on the server classification information 300 ( Figure 3) used to classify the communication servers 10.
  • FIG. 3 is a diagram showing an example of the data configuration of server classification information 300 according to this embodiment.
  • the server classification information 300 is information for classifying the communication servers 10 based on the current maintenance status (version, etc.) of each communication server 10.
  • the server classification information 300 stores information on the current maintenance status (version, etc.) of the configuration of each communication server 10, specifically, the application layer 10A (main application, library, process), virtualization infrastructure layer 10V, and OS/hardware layer (not shown in FIG. 2 ) of that communication server 10.
  • the server classification information 300 stores the following information:
  • the manufacturer of the application installed on the communication server 10 (#01) is "Company P", the version of the application itself is “Ver2.0”, and the version of the library of the application is “Ver2.0".
  • the version of the virtualization infrastructure configuration of the communication server 10 (#01) is "Virtualization 21".
  • the version of the hardware resource configuration of the communication server 10 (#01) is "Resource 02”.
  • the manufacturer of the application installed on the communication server 10 (#02) is "Company X”, the version of the application itself is “Ver. 3.1", and the version of the application library is “Ver. 2.1".
  • the version of the virtualization infrastructure configuration of the communication server 10 (#02) is "Virtualization 31".
  • the version of the hardware resource configuration of the communication server 10 (#02) is "Resource 02".
  • the current maintenance status (version, etc.) of the configuration of each communication server 10 is stored in the server classification information 300 .
  • this server classification information 300 may store, as more detailed information, the OS version corresponding to the virtualization infrastructure configuration of each communication server 10. Furthermore, as more detailed information on the hardware resource configuration, the manufacturer, model name, version, etc. of the CPU, memory, accelerator, etc. may be stored.
  • the equivalent server extraction unit 31 When the equivalent server extraction unit 31 receives an analysis result notification from the analysis server 20 that includes information indicating that an abnormal symptom has been detected for one of the communication servers 10, it refers to the server classification information 300 ( Figure 3) and extracts communication servers 10 that are equivalent to the communication server 10 that detected the abnormal symptom based on a specified logic for determining equivalence. For example, when the equivalent server extraction unit 31 adopts a predetermined logic that determines that communication servers 10 with common application libraries (e.g., the same version) are equivalent, it refers to the server classification information 300 and determines that communication servers 10 (#02, #03, #05) with the same library version are equivalent communication servers 10.
  • common application libraries e.g., the same version
  • the equivalent server extraction unit 31 adopts a predetermined logic of determining that communication servers 10 with a common version of the virtualization infrastructure configuration (for example, the same version) are equivalent, it refers to the server classification information 300 ( Figure 3) and determines, for example, that communication servers 10 (#02, #03) with a virtualization infrastructure configuration version of "Virtualization 31" are equivalent communication servers 10.
  • the equivalent server extraction unit 31 employs, as the predetermined logic, logic for determining that communication servers 10 having the same application library are equivalent, it refers to the server classification information 300 (FIG. 3) and determines that the communication servers 10 (#02, #03) whose library version is the same as that of the communication server 10 (#05), "Ver2.1,” are equivalent communication servers 10.
  • the equivalent server extraction unit 31 may determine equivalence based on a predetermined logic, or may select an equivalence determination logic appropriate to the content of the abnormal symptom indicated in the analysis result notification. For example, if the analysis result of the system call indicates an abnormal symptom caused by an application library, the equivalent server extraction unit 31 may use an equivalence determination logic based on the version of the application library. If the abnormal symptom is caused by an abnormal symptom related to the virtualization platform, the equivalent server extraction unit 31 may use an equivalence determination logic based on the version of the virtualization platform configuration. Furthermore, when determining equivalence by version, the equivalent server extraction unit 31 may treat, for example, "Version 2.1,”"Version2.2,””Version2.3,” etc. as common versions in the same "Version 2" group and treat them as "equivalent.” In this way, the granularity of each version used to determine equivalence may be set in advance.
  • the equivalent server extraction unit 31 outputs information about the communication server 10 that detected an abnormality sign, etc., and the communication server 10 that has been determined to be equivalent to that communication server 10 to the condition setting unit 32.
  • the condition setting unit 32 generates information (collection condition change instruction) that instructs the change of collection conditions to increase the amount of system call information collected for a communication server 10 that has detected an abnormality symptom, etc., and a communication server 10 that has been determined to be equivalent to that communication server 10.
  • This collection condition change instruction includes at least the identification information of the communication server 10 for which the amount of system call information collected will be increased.
  • the collection condition change instruction may also include condition setting information, which is a specific instruction on the collection conditions for increasing the amount of system call information collected. Specifically, the following information may be included in association with each communication server 10: For the communication server 10 that increases the amount of system call information collected, the condition settings are changed to increase the number of types of applications (for example, VNFs) that are to be collected. For the communication server 10 for which the amount of collected system call information is to be increased, the condition settings are changed so as to increase the types of system calls (function names, etc.) to be collected. For communication servers 10 that increase the amount of system call information collected, increase the frequency of collection processing. For example, change the condition settings to increase the collection frequency, such as increasing the frequency of collection processing startup times, increasing the collection time per collection processing, or increasing the collection capacity per collection processing.
  • condition setting information is a specific instruction on the collection conditions for increasing the amount of system call information collected. Specifically, the following information may be included in association with each communication server 10: For the communication server 10 that increases the amount of system call information collected, the
  • the condition setting unit 32 sends to the analysis server 20 a collection condition change instruction including the identification information of the communication server 10 for which the amount of collected system call information is to be increased.
  • the condition setting unit 32 may be provided in the maintenance server 30 or in the analysis server 20.
  • the equivalent server extraction unit 31 of the maintenance server 30 transmits to the analysis server 20 a collection condition change instruction including identification information of the communication server 10 that increases the amount of system call information collected.
  • the analysis server 20 acquires and analyzes system call information from each communication server 10 to detect abnormalities and signs of abnormalities (such as signs of abnormality) in the communication servers 10. Furthermore, based on a collection condition change instruction acquired from the maintenance server 30, the analysis server 20 identifies a communication server 10 for which the amount of system call information collected will be increased, and sets the changed collection condition setting information in the target communication server 10.
  • the analysis server 20 includes an abnormality sign detection unit 21 and a condition setting processing unit 22 .
  • the abnormality sign detection unit 21 detects abnormalities or signs of abnormalities in the communication server 10 based on predetermined analysis logic, for example by detecting changes from normal conditions. If the abnormality sign detection unit 21 detects an abnormality sign, it sends an analysis result notification including identification information for that communication server 10 to the maintenance server 30.
  • the condition setting processing unit 22 determines the communication server 10 that will increase the amount of system call information collected based on the identification information of the communication server 10 that will increase the amount of system call information collected, which is included in the collection condition change instruction obtained from the maintenance server 30. Furthermore, the condition setting processing unit 22 generates collection condition change setting information to which condition setting information corresponding to each of the target communication servers 10 is added. If the collection condition change instruction received from the maintenance server 30 includes condition setting information corresponding to each target communication server 10, the condition setting processing unit 22 attaches the information to the collection condition change setting information. On the other hand, if the collection condition change instruction does not include condition setting information for the target communication server 10, the condition setting processing unit 22 sets collection conditions for increasing the amount of system call information collected, generates condition setting information, and attaches it to the collection condition change setting information.
  • the condition setting processing unit 22 changes the collection conditions of each communication server 10 by sending the generated collection condition change setting information to the target communication server 10.
  • FIG. 5 is a sequence diagram showing the flow of processing of the system call collection system 100 using the topology shown in FIG. 4 as an example.
  • each communication server 10 (#01, #02, #03, #04, #05, #06) collects a small amount of system call information (S11a, S11b, S11c, S11d, S11e, S11f) and notifies the analysis server 20 of the collection results (S12a, S12b, S12c, S12d, S12e, S12f).
  • the communication server 10 (#05) notifies unnatural system call information that may indicate an abnormality (S12e).
  • the analysis server 20 analyzes the system call information of the communication server 10 (#05) and detects abnormal signs, etc. Then, it sends an analysis result notification to the maintenance server 30, including information that abnormal signs, etc. have been detected in the communication server 10 (#05) (S13).
  • the maintenance server 30 When the maintenance server 30 receives the analysis result notification from the analysis server 20, it extracts other communication servers 10 (#02, #03) that have an equivalent configuration (version, etc.) to the communication server 10 in which an abnormality symptom or the like has been detected, based on the server classification information 300 ( Figure 3) used to classify the communication servers 10 (S14: Extract equivalent servers).
  • the equivalent server extraction unit 31 of the maintenance server 30 has set a predetermined logic for determining equivalence, which determines that communication servers 10 with common application libraries (same version) are equivalent.
  • the maintenance server 30 generates a collection condition change instruction that includes identification information for the communication server 10 (#5) that detected the abnormality symptom and other communication servers 10 (#02, #03) that have the same configuration (version, etc.) as the communication server 10 (#5), and sends it to the analysis server 20 (S15).
  • the analysis server 20 determines the communication servers 10 for which the amount of collected system call information will be increased based on the identification information of the communication servers 10 for which the amount of collected system call information will be increased, which is included in the collection condition change instruction obtained from the maintenance server 30.
  • the analysis server 20 determines the communication servers 10 (#02, #03, #05) as the communication servers 10 for which the amount of collected system call information will be increased.
  • the analysis server 20 transmits collection condition change setting information to the determined communication servers 10 (#02, #03, #05) (S16b, S16c, S16e).
  • the amount of system call information collected by the communication servers 10 (#02, #03, #05) is set to be large (S17b, S17c, S17e).
  • the analysis server 20 receives a large amount of collected system call information from the communication servers 10 (#02, #03, #05) (S18b, S18c, S18e). The analysis server 20 also receives a smaller amount of collected system call information from the other communication servers 10 (#01, #04, #06) (S18a, S18d, S18f). Based on this system call information, the analysis server 20 performs analysis to detect abnormality signs, etc. The analysis server 20 then sends a notification of the analysis results to the maintenance server 30 (S19).
  • the system call collection system 100 is equivalent to a server in which abnormal symptoms have been detected, and the accuracy of anomaly detection can be improved even for servers in which no abnormal symptoms have been detected, just as it is for servers in which abnormal symptoms have been detected. Therefore, the system as a whole can analyze abnormal symptoms with higher accuracy.
  • the predetermined selection condition may take into consideration, for example, the positional relationship in the network topology between the communication server 10 in which the abnormal symptom or the like has been detected and other communication servers 10, and if a communication server 10 equivalent to the communication server 10 in which the abnormal symptom or the like has been detected is located near the communication server 10 in which the abnormal symptom or the like has been detected, it is selected as a target for increasing the amount of system call information collected, but if it is located far away, it is not selected. Also, a communication server 10 that is directly connected on the network to the communication server 10 in which the abnormal symptom or the like has been detected is not selected.
  • the system call collection system 100A detects an abnormal symptom or the like in a certain communication server 10, it can strengthen the collection conditions by limiting it to only that communication server 10 and the communication servers 10 in the vicinity of that communication server 10. Therefore, the system call collection system 100A can improve the accuracy of detecting an abnormal symptom or the like while suppressing an increase in the amount of collected system call information across the entire system.
  • FIG. 6 is a diagram showing the overall configuration of a system call collection system 100A according to a modified example of this embodiment. Components having the same functions as those of the system call collection system 100 shown in FIG. 2 are given the same names and reference numerals, and descriptions thereof will be omitted.
  • the system call collection system 100A shown in FIG. 6 differs from the system call collection system 100 (FIG. 2) in that the application layer 10A of each communication server 10 is provided with a topology collection unit 13, and the maintenance server 30 is provided with a topology storage unit 330 and an equivalent server extraction unit 31A instead of the equivalent server extraction unit 31 (FIG. 2).
  • the topology collection unit 13 of the communication server 10 collects topology related to its own communication server 10.
  • the topology collection unit 13 transmits information related to the collected topology to the maintenance server 30.
  • the topology storage unit 330 of the maintenance server 30 stores the topology of the network system formed by the communication servers 10.
  • the topology storage unit 330 stores topology information notified by the topology collection unit 13 of each communication server 10, or topology information input by an administrator, etc.
  • the topology is the layout information of the communication server 10 that indicates how the communication server 10 is connected to other devices.
  • the equivalent server extraction unit 31A When the equivalent server extraction unit 31A receives an analysis result notification from the analysis server 20 that includes information indicating that an abnormal symptom or the like has been detected in one of the communication servers 10, it first refers to the server classification information 300 ( Figure 3) and extracts communication servers 10 that are equivalent to the communication server 10 that detected the abnormal symptom or the like based on a specified logic for determining equivalence. The equivalent server extraction unit 31A selects, from among the other communication servers 10 extracted that have the same configuration (same version, etc.) as the communication server 10 in which abnormal symptoms, etc. were detected, the communication servers 10 that meet specified selection conditions as communication servers 10 for which the amount of system call information collected will be increased.
  • the specified selection condition is, for example, to consider the positional relationship in the network topology between the communication server 10 in which an abnormal symptom or the like was detected and other communication servers 10, and if a communication server 10 equivalent to the communication server 10 in which an abnormal symptom or the like was detected is located near the communication server 10 in which the abnormal symptom or the like was detected, it is selected as a target for increasing the amount of system call information collected, but if it is located far away (not nearby), it is not selected.
  • the equivalent server extraction unit 31A employs predetermined logic that determines that communication servers 10 with the same application library are equivalent, it references the server classification information 300 ( Figure 3) and extracts the communication server 10 (#05) in which an abnormality symptom or the like has been detected and the communication servers 10 (#02, #03) with the same library version, "Ver2.1,” as equivalent communication servers 10.
  • the equivalent server extraction unit 31A refers to the topology information stored in the topology storage unit 330 among the extracted equivalent communication servers 10, and selects the communication server 10 (#02) that is a predetermined number of hops (e.g., "1") or less from the communication server 10 (#05) in which abnormal symptoms or the like have been detected as the communication server 10 for which the amount of system call information collected will be increased. That is, the equivalent server extraction unit 31A selects the communication server 10 (#5) in which an abnormal symptom or the like has been detected and its nearby equivalent communication server 10 (#2) as communication servers 10 for which the amount of system call information collected is to be increased.
  • a predetermined number of hops e.g., "1"
  • the equivalent server extraction unit 31A selects the communication server 10 (#5) in which an abnormal symptom or the like has been detected and its nearby equivalent communication server 10 (#2) as communication servers 10 for which the amount of system call information collected is to be increased.
  • the communication server 10 (#03) is a server equivalent to the communication server 10 (#05) in which an abnormal symptom or the like has been detected, since the number of hops is "2", which exceeds the predetermined number "1", it is not a nearby server and is not selected as a communication server 10 for which the amount of system call information collected is to be increased.
  • the number of hops has been exemplified as an index for determining the communication server 10 in the vicinity of the communication server 10 in which an abnormality symptom or the like has been detected, other network distances (metrics) such as delay may also be used.
  • a communication server 10 that is directly connected on the network to either a communication server 10 in which abnormal signs or the like have been detected or a communication server 10 that has been extracted as having a configuration equivalent to that of the communication server 10 may not be selected.
  • a communication server 10 in which abnormal signs or the like have been detected or a communication server 10 that has been extracted as having a configuration equivalent to that of the communication server 10 may not be selected.
  • an infection by a worm or the like that spreads copies of a program that performs fraudulent activities via a network it is predicted that an abnormality will occur due to infection of a directly connected communication server 10, so detection of an abnormality due to infection by malware such as a worm is performed on some of the communication servers 10 rather than on all of the equivalent communication servers 10 in question, so as to prevent excessive load on the system as a whole.
  • the equivalent server extraction unit 31A among the communication servers 10 (#02, #03) extracted as having a configuration equivalent to the communication server 10 in which an abnormality symptom or the like has been detected, does not select the communication server 10 (#03) that is directly connected to the communication server (#02) having the equivalent configuration as a communication server 10 for which to increase the amount of system call information collected.
  • the equivalent server extraction unit 31A selects communication servers 10 that satisfy specified selection conditions from among the communication servers 10 extracted as having the same configuration (version, etc.) as the communication server 10 in which an abnormal symptom, etc., was detected. The equivalent server extraction unit 31A then outputs information about the communication server 10 in which the abnormal symptom, etc. was detected and the communication servers 10 selected as satisfying the specified selection conditions to the condition setting unit 32.
  • the system call collection system 100A can improve the accuracy of detecting abnormal signs, etc., while suppressing an increase in the amount of system call information collected by the entire system.
  • FIG. 8 is a diagram showing the hardware configuration of each device in the system call collection systems 100 and 100A.
  • Each device (communication server 10, analysis server 20, maintenance server 30) of the system call collection systems 100 and 100A is configured as a computer 900 having a CPU 901, RAM 902, ROM 903, HDD 904, communication I/F 905, input/output I/F 906, and media I/F 907.
  • the communication I/F 905 is connected to an external communication device 915.
  • the input/output I/F 906 is connected to an input/output device 916.
  • the media I/F 907 reads and writes data from a recording medium 917.
  • the CPU 901 controls each unit by executing a program (system call collection program) loaded into the RAM 902.
  • This program also called an application, or an app for short
  • the system call collection system of the present invention is a system call collection system 100 including communication servers 10 constituting a network system, an analysis server 20 that analyzes system calls of each of the communication servers 10, and a maintenance server 30 that is communicatively connected to the analysis server 20, Each communication server 10 a system call collection unit 15 that collects system calls according to predetermined collection conditions related to the collection of system calls;
  • the analysis server 20 an abnormality sign detection unit (21) that acquires system call information from each of the communication servers (10) and detects an abnormality sign of the communication server (10);
  • the maintenance server 30 an equivalent server extraction unit 31 that acquires information about a communication server in which a symptom of an abnormality has been detected and extracts other communication servers having a configuration equivalent to that of the detected communication server;
  • the system is characterized by having a condition setting unit 32 that changes the specified collection conditions so as to increase the amount of system calls collected for a communication server 10 in which signs of an abnormality have been detected and for an extracted communication server 10 having an equivalent configuration.
  • the system call collection system 100 is a communications server with a configuration equivalent to that of a communications server in which signs of an abnormality have been detected, and for servers in which signs of an abnormality have not been detected, the collection conditions can be changed to increase the amount of system calls collected, thereby improving the accuracy of anomaly detection.
  • the maintenance server 30 is provided with server classification information 300 in which the current maintenance and management status of the configuration of each communication server 10, including applications, virtualization infrastructure, and hardware resources, is stored;
  • the equivalent server extraction unit 31 refers to the server classification information 300 and extracts communication servers 10 that have the same maintenance status as the communication server 10 in which signs of abnormality have been detected as communication servers 10 with equivalent configurations.
  • the maintenance server 30 includes a topology storage unit 330 in which the network topology of the network system is stored,
  • the equivalent server extraction unit 31A is characterized in that, from among the extracted communication servers 10 having equivalent configurations, a nearby communication server 10 that satisfies predetermined selection conditions, including the number of hops from the communication server 10 in which signs of abnormality are detected being a predetermined number or less, is selected as the communication server 10 that will increase the amount of system calls collected, based on the network topology.
  • the system call collection system 100A can improve the accuracy of detecting signs of abnormalities while suppressing an increase in the amount of system call information collected by the entire system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

システムコール収集システム(100)の各通信サーバ(10)は、所定の収集条件に従って、システムコールを収集するシステムコール収集部(15)を備える。分析サーバ(20)は、通信サーバ(10)の異常の兆候を検知する異常兆候検知部(21)を備える。保守サーバ(30)は、異常の兆候が検知された通信サーバ(10)と同等の構成を有する他の通信サーバ(10)を抽出する同等サーバ抽出部(31)と、異常の兆候が検知された通信サーバ(10)および同等の構成を有する通信サーバ(10)について、システムコールの収集量を増加させるように所定の収集条件を変更する条件設定部(32)とを備える。

Description

システムコール収集システム、および、システムコール収集方法
 本発明は、システムコール収集システム、および、システムコール収集方法に関する。
 5GC(5th Generation Core network)などのネットワークシステムにおいては、ネットワーク内の様々な機能をNF(Network Function)として定義し、NFを組み合わせることで、多種多様な通信サービスを提供する。また、NFを仮想化技術の1つであるコンテナとして実現するVNF(Virtualized NF)も、提案されている。
 ネットワークシステムを正常に安定して運用するためには、ネットワークシステムを構成するサーバの異常や故障の兆候を検知する必要がある。その検知技術の一例として、以下が存在する。
 特許文献1には、ホストOS(Operating System)のシステムコールの発行についての統計情報を活用する旨が記載されている。
 非特許文献1には、EDR(Endpoint Detection and Response)製品として、システムコールの統計情報の監視によって異常兆候を検出する旨が記載されている。
特開2011-258019号公報
Falco、「The Falco Project」、[online]、[2024年4月1日検索]、インターネット〈URL:https://falco.org/docs/〉
 特許文献1、非特許文献1などの従来のセキュリティツールは、単一のサーバでの異常兆候の検知を行うものである。一方、ネットワークシステムでは、複数の通信サーバが独立にあるいは協調してネットワークシステムを実現している。この場合、異常の兆候は、複数サーバに同時期にあるいは拡散して発生する可能性がある。例えば、同一の起動条件や同一の日付が指定された潜伏期間が設定されたマルウェアや、ネットワークを介して不正行為を行うプログラムのコピーを拡散させるワーム等に感染し、サーバが異常な動作を行う場合である。このような複数のサーバに関し、同時期にあるいは拡散して発生する異常やその兆候を検知する問題については、これまで解決することが困難であった。
 そこで、本発明は、異常兆候が検知されたサーバと同等のサーバであり、異常兆候が未検知のサーバについて、異常検知の精度を向上させることを課題とする。
 前記課題を解決するために、本発明のシステムコール収集システムは、以下の手段を備える。
 本発明は、ネットワークシステムを構成する各通信サーバと、前記通信サーバそれぞれのシステムコールを分析する分析サーバと、前記分析サーバに通信接続される保守サーバとを備えるシステムコール収集システムであって、
 前記通信サーバそれぞれは、
 システムコールの収集に関する所定の収集条件に従って、前記システムコールを収集するシステムコール収集部を備え、
 前記分析サーバは、
 前記通信サーバそれぞれから前記システムコールの情報を取得し、当該通信サーバの異常の兆候を検知する異常兆候検知部を備え、
 前記保守サーバは、
 異常の兆候が検知された通信サーバの情報を取得し、当該検知された通信サーバと同等の構成を有する他の通信サーバを抽出する同等サーバ抽出部と、
 前記異常の兆候が検知された通信サーバ、および、前記抽出された同等の構成を有する通信サーバについて、前記システムコールの収集量を増加させるように前記所定の収集条件を変更する条件設定部と、を備えることを特徴とする。
 本発明によれば、異常兆候が検知されたサーバと同等のサーバであり、異常兆候が未検知のサーバについて、異常検知の精度を向上させることができる。
本実施形態に係るシステムコール収集システムにおいて、異常兆候の検出対象となる通信サーバのネットワーク構成を例示する図である。 本実施形態に係るシステムコール収集システムの全体構成を示す図である。 本実施形態に係るサーバ分類情報のデータ構成例を示す図である。 本実施形態に係る同等サーバ抽出処理を説明するための図である。 本実施形態に係るシステムコール収集システムの処理の流れを示すシーケンス図である。 本実施形態の変形例に係るシステムコール収集システムの全体構成を示す図である。 本実施形態に係る所定の選択条件を満たした上での同等サーバ抽出処理を説明するための図である。 本実施形態に関するシステムコール収集システムの各装置のハードウェア構成図である。
<概要>
 まず、本実施形態におけるシステムコール収集システム100(後記図2参照)の概要について説明する。
 図1は、本実施形態に係るシステムコール収集システム100において、異常兆候の検出対象となる通信サーバのネットワーク構成を例示する図である。
 図1で示すように、ネットワークは複数の通信サーバ10で構成される。各通信サーバ10は、後記する保守サーバ30等の維持管理に伴い、アプリ層(メインアプリ、ライブラリ、プロセス)、仮想化基盤層、OS・ハードウェア層などにおいて、バージョン等が変化していく。
 なお、ライブラリは、ある特定の機能を持ったプログラムを他のプログラムから呼び出して利用できるように部品化し、そのプログラム部品を複数集めてファイルに収納したものである。
 ここで、複数の通信サーバ10のうち、その通信サーバ10に用いられているシステムの現状の構成(バージョン等)が同等な通信サーバ10がある場合に、その同等な通信サーバ10は、同じ異常を起こす可能性が高いことに着目する。同じ異常を起こす可能性は、例えば、同一部品の経年劣化や、マルウェアに対する共通の脆弱性の存在等に起因する。
 そこで、本実施形態に係るシステムコール収集システム100では、ある通信サーバ10のシステムコールの監視の結果、異常兆候が検出された場合に、その通信サーバ10と同等の(共通する)構成(バージョン等)を有する他の通信サーバ10についても、システムコールに関する情報の収集量を増やすようにする。
 図1に示す例では、通信サーバ10(#02,#03,#04)のアプリケーションが、X社製品であり、ライブラリのバージョンが「Ver 2.1」で共通していた場合、この通信サーバ10のうちのいずれか(例えば、通信サーバ#05)において、収集したシステムコール(各図において、「SC」と表記する。)により異常や異常の兆候(以下「異常兆候等」と称する場合がある。)が検知されたときには、まだ異常兆候等が検知されていない同等の構成(バージョン等)を有する他の通信サーバ10(通信サーバ#02,#03)についても、収集を強化する。つまり、システムコールに関する情報の収集量を増やすようにする。
 これにより、システムコール収集システム100は、異常兆候等が未検知の通信サーバ10についてもシステムコールの情報収集を強化することができ、異常兆候等の検知の精度向上を図ることができる。
<本実施形態>
 以下、本発明の一実施形態について、図面を参照して詳細に説明する。
 図2は、本実施形態に係るシステムコール収集システム100の全体構成を示す図である。
 システムコール収集システム100は、複数の通信サーバ10と、分析サーバ20と、保守サーバ30とが、ネットワークで接続される。
 データを中継する通信サーバ10間は、例えば図1で示すようなネットワークシステムを構成する。
 分析サーバ20は、各通信サーバ10で収集されたシステムコールの情報(システムコール情報)を分析することで、通信サーバ10の異常(故障)の発生や異常の兆候(異常兆候等)を検知する。
 保守サーバ30は、各通信サーバ10の現時点での各構成の維持管理状況(バージョン等)が記憶されており、通信サーバ10を分類するためのサーバ分類情報300(詳細は後記する図3参照)を用いて、異常兆候等が検知された通信サーバ10と同等の構成(バージョン等)を有する他の通信サーバ10を抽出する。そして、保守サーバ30は、異常兆候等が検知された通信サーバ10と、抽出した他の通信サーバ10とのシステムコール情報の収集量を増加させるようにする。
 以下、通信サーバ10、分析サーバ20、保守サーバ30について、詳細に説明する。
≪通信サーバ≫
 通信サーバ10は、CPUや記憶装置等のハードウェアリソースを用いて実現され、OSの機能を提供する仮想化基盤層10Vと、その仮想化基盤層10V上で動作するアプリ層10Aとを形成する。
 アプリ層10Aは、VNFなどによりサービスを提供するためのアプリ(アプリケーション)11と、システムコール収集部15を制御する収集制御部12とを有する。
 収集制御部12は、保守サーバ30から分析サーバ20を介して通知される所定の収集条件(収集の種類や頻度、容量等)に従って、システムコール収集部15に対して、システムコールを収集する設定を指示する。また、収集制御部12は、システムコール収集部15が収集したシステムコールを、分析サーバ20へ送信する。
 仮想化基盤層10Vは、OSの中核機能であるカーネル14と、カーネル14のシステムコールを収集するシステムコール収集部15とを有する。
 システムコール収集部15は、カーネル14がアプリ11(例えば、VNF)から受け取ったシステムコールを収集(複製)し、アプリ層10Aの収集制御部12へ出力する。
 なお、OSがLinux(登録商標)である場合には、カーネル14へのシステムコール収集部15の実装を、eBPF(extended Berkeley Packet Filter)により行うことができる。
≪保守サーバ≫
 保守サーバ30は、同等サーバ抽出部31と、条件設定部32と、サーバ分類情報300とを備える。
 同等サーバ抽出部31は、分析サーバ20から各通信サーバ10のシステムコールの分析結果通知を受信すると、通信サーバ10を分類するためのサーバ分類情報300(図3)に基づき、異常兆候等が検知された通信サーバ10と、同等の構成(共通するバージョン等)を有する他の通信サーバ10を抽出する。
 図3は、本実施形態に係るサーバ分類情報300のデータ構成例を示す図である。
 サーバ分類情報300は、各通信サーバ10の現時点での維持管理状況(バージョン等)に基づき、通信サーバ10を分類するための情報である。サーバ分類情報300は、各通信サーバ10の構成における、具体的には、その通信サーバ10のアプリ層10A(メインアプリ、ライブラリ、プロセス)、仮想化基盤層10V、OS・ハードウェア層(図2において図示省略)における、現時点での維持管理状況(バージョン等)の情報が格納される。
 例えば、図3で示すように、サーバ分類情報300には、以下の情報が格納される。通信サーバ10(#01)に搭載されるアプリケーションの製造元が「P社」であり、そのアプリケーション本体のバージョンが「Ver2.0」であり、そのアプリケーションのライブラリのバージョンが「Ver2.0」である。通信サーバ10(#01)の仮想化基盤構成のバージョンが「仮想化21」である。通信サーバ10(#01)のハードウェアリソース構成のバージョンが「リソース02」である。
 通信サーバ10(#02)に搭載されるアプリケーションの製造元が「X社」であり、そのアプリケーション本体のバージョンが「Ver3.1」であり、そのアプリケーションのライブラリのバージョンが「Ver2.1」である。通信サーバ10(#02)の仮想化基盤構成のバージョンが「仮想化31」である。通信サーバ10(#02)のハードウェアリソース構成のバージョンが「リソース02」である。
 以下同様に、各通信サーバ10の構成について、現時点での維持管理状況(バージョン等)がこのサーバ分類情報300に格納される。
 なお、このサーバ分類情報300には、さらに詳細な情報として、通信サーバ10それぞれの仮想化基盤構成に対応するOSのバージョンを格納してもよい。また、ハードウェアリソース構成をより詳細な情報とし、CPU、メモリ、アクセラレータ等の製造元や機種名、バージョン等を格納してもよい。
 同等サーバ抽出部31は、分析サーバ20から通信サーバ10のいずれかについて、異常兆候を検知した旨の情報を含む分析結果通知を受信した場合に、サーバ分類情報300(図3)を参照し、同等性判定の所定のロジックに基づき、その異常兆候を検知した通信サーバ10と同等な通信サーバ10を抽出する。
 例えば、同等サーバ抽出部31は、所定のロジックとして、アプリケーションのライブラリが共通(例えばバージョンが同一)の通信サーバ10を同等性ありと判定するロジックを採用する場合には、サーバ分類情報300を参照し、ライブラリのバージョンが同じである通信サーバ10(#02,#03,#05)を同等の通信サーバ10であると判定する。
 また、同等サーバ抽出部31は、所定のロジックとして、仮想化基盤構成のバージョンが共通(例えばバージョンが同一)の通信サーバ10を同等性ありと判定するロジックを採用する場合には、サーバ分類情報300(図3)を参照し、例えば、仮想化基盤構成のバージョンが「仮想化31」である、通信サーバ10(#02,#03)を同等の通信サーバ10であると判定する。
 より具体的に説明する。例えば、図4の符号401で示すように、通信サーバ10(#02,#03,#05)において、アプリケーションの製造元が「X社」でありライブラリのバージョンが「Ver2.1」で共通しているものとする。
 そして、図4の符号402で示すように、通信サーバ10(#05)において、異常兆候等が検知されたものとする。その場合において、同等サーバ抽出部31が、所定のロジックとして、アプリケーションのライブラリが同一の通信サーバ10を同等性ありと判定するロジックを採用するときには、サーバ分類情報300(図3)を参照し、通信サーバ10(#05)のライブラリのバージョンが「Ver2.1」と同じである通信サーバ10(#02,#03)を同等の通信サーバ10であると判定する。
 なお、同等サーバ抽出部31は、同等性判定のロジックとして、予め所定のロジックを決定しておいてもよいし、分析結果通知で示される異常兆候の内容に基づき、その異常兆候の内容に応じた同等性判定のロジックを選択して判定してもよい。例えば、システムコールの分析結果が、アプリケーションのライブラリの起因する異常兆候等である場合には、アプリケーションのライブラリのバージョンに基づき同等性を判定するロジックを採用する。また、仮想化基盤に関する異常兆候に起因するものである場合には、仮想化基盤構成のバージョンに基づき同等性を判定するロジックを採用する。
 また、同等サーバ抽出部31は、バージョンにより同等性は判定する際に、例えば、「Ver2.1」「Ver2.2」「Ver2.3」…等を、同じ「Ver2」のグループの共通するバージョンとして「同等性あり」と扱ってもよい。このように同等性の判定を用いる各バージョンの粒度を予め設定しておいてもよい。
 同等サーバ抽出部31は、異常兆候等を検知した通信サーバ10と、その通信サーバ10と同等性ありと判定した通信サーバ10との情報を、条件設定部32へ出力する。
 条件設定部32は、異常兆候等を検知した通信サーバ10と、その通信サーバ10と同等性ありと判定した通信サーバ10とについて、システムコール情報の収集量を増加するように収集条件の変更指示を行う情報(収集条件変更指示)を生成する。この収集条件変更指示には、少なくともシステムコール情報の収集量を増加させる通信サーバ10の識別情報が含まれる。
 また、この収集条件変更指示には、システムコール情報の収集量を増加させるための収集条件についての具体的な指示である条件設定情報を含めてもよい。具体的には、各通信サーバ10に対応付けて以下の情報を含めてもよい。
 ・システムコール情報の収集量を増加させる通信サーバ10について、収集対象とするアプリケーション(例えば、VNF)の種類を増やすように条件設定を変更する。
 ・システムコール情報の収集量を増加させる通信サーバ10について、収集対象とするシステムコールの種類(関数名など)を増やすように条件設定を変更する。
 ・システムコール情報の収集量を増加させる通信サーバ10について、収集処理の頻度を増やす。例えば、収集処理の起動時刻の頻度を多くする、1回の収集処理での収集時間を多くする、1回の収集処理での収集容量を多くする、などの収集頻度を増加させた条件設定に変更する。
 条件設定部32は、システムコール情報の収集量を増加させる通信サーバ10の識別情報を含む収集条件変更指示を、分析サーバ20へ送信する。
 なお、条件設定部32は、保守サーバ30内に備える構成でもよいし、分析サーバ20内に備える構成でもよい。条件設定部32を分析サーバ20が備える場合には、保守サーバ30の同等サーバ抽出部31が、システムコール情報の収集量を増加させる通信サーバ10の識別情報を含む収集条件変更指示を、分析サーバ20へ送信する。
≪分析サーバ≫
 分析サーバ20は、各通信サーバ10からシステムコール情報を取得し分析することで、通信サーバ10の異常や異常の兆候(異常兆候等)を検知する。また、保守サーバ30から取得した収集条件変更指示に基づき、システムコール情報の収集量を増加させる通信サーバ10を特定し、変更された収集条件の設定情報を対象となる通信サーバ10に設定させる。
 この分析サーバ20は、異常兆候検知部21および条件設定処理部22を備える。
 異常兆候検知部21は、所定の分析ロジックに基づき、例えば平常時との変化を検知することにより、通信サーバ10の異常や異常の兆候を検知する。そして、異常兆候検知部21は、異常兆候等を検知した場合に、その通信サーバ10の識別情報を含む分析結果通知を保守サーバ30に送信する。
 条件設定処理部22は、保守サーバ30から取得した収集条件変更指示に含まれる、システムコール情報の収集量を増加させる通信サーバ10の識別情報に基づき、システムコール情報の収集量を増加させる通信サーバ10を決定する。
 また、条件設定処理部22は、対象となる通信サーバ10それぞれに応じた条件設定情報を付した収集条件変更設定情報を生成する。
 なお、条件設定処理部22は、保守サーバ30から取得した収集条件変更指示に、対象となる通信サーバ10それぞれに応じた条件設定情報が含まれている場合には、その情報を収集条件変更設定情報に付す。一方、収集条件変更指示に、対象となる通信サーバ10の条件設定情報が含まれていない場合には、条件設定処理部22が、システムコール情報の収集量を増加させるための収集条件を設定し、条件設定情報を生成して、収集条件変更設定情報に付す。
 条件設定処理部22は、対象となる通信サーバ10に対し、生成した収集条件変更設定情報を送信することにより、各通信サーバ10の収集条件を変更する。
<システムコール収集システムの処理>
 次に、システムコール収集システム100が実行する処理の流れについて説明する。
 図5は、図4で示したトポロジを例とした、システムコール収集システム100の処理の流れを示すシーケンス図である。
 まず、平常時には、各通信サーバ10(#01,#02,#03,#04,#05,#06)は、少ない収集量のシステムコール情報を収集し(S11a,S11b,S11c,S11d,S11e,S11f)、収集結果を分析サーバ20に通知する(S12a,S12b,S12c,S12d,S12e,S12f)。ここで、図4で説明したように、通信サーバ10(#05)からは、異常兆候を検知させるような不自然なシステムコール情報が通知される(S12e)。
 分析サーバ20は、通信サーバ10(#05)のシステムコール情報を分析した結果、異常兆候等を検知する。そして、通信サーバ10(#05)において異常兆候等が検知された旨を含む分析結果通知を、保守サーバ30へ送信する(S13)。
 保守サーバ30は、分析サーバ20から分析結果通知を受信すると、通信サーバ10を分類するためのサーバ分類情報300(図3)に基づき、異常兆候等が検知された通信サーバ10と、同等の構成(バージョン等)を有する他の通信サーバ10(#02,#03)を抽出する(S14:同等サーバ抽出)。ここでは、保守サーバ30の同等サーバ抽出部31に、同等性判定の所定のロジックとして、アプリケーションのライブラリが共通(同一のバージョン)の通信サーバ10を同等性ありと判定するロジックが設定されているものとする。
 保守サーバ30は、異常兆候を検知した通信サーバ10(#5)および通信サーバ10(#5)と同等の構成(バージョン等)を有する他の通信サーバ10(#02,#03)の識別情報を含む収集条件変更指示を生成し、分析サーバ20へ送信する(S15)。
 次に、分析サーバ20は、保守サーバ30から取得した収集条件変更指示に含まれる、システムコール情報の収集量を増加させる通信サーバ10の識別情報に基づき、システムコール情報の収集量を増加させる通信サーバ10を決定する。ここでは、システムコール情報の収集量を増加させる通信サーバ10として、通信サーバ10(#02,#03,#05)を決定する。そして、分析サーバ20は、決定した通信サーバ10(#02,#03,#05)に対し、収集条件変更設定情報を送信する(S16b,S16c,S16e)。
 これにより、通信サーバ10(#02,#03,#05)のシステムコール情報の収集量が多く設定される(S17b,S17c,S17e)。
 そして、分析サーバ20は、通信サーバ10(#02,#03,#05)から、システムコール情報の収集量を多く受信する(S18b,S18c,S18e)。また、分析サーバ20は、他の通信サーバ10(#01,#04,#06)から、システムコール情報の収集量が少ないままで受信する(S18a,S18d,S18f)。これらのシステムコール情報をもとに、分析サーバ20は、異常兆候等を検知するための分析を実行する。そして、分析サーバ20は、その分析結果通知を保守サーバ30へ送信する(S19)。
 これにより、システムコール収集システム100は、異常兆候等が検知されたサーバと同等のサーバであり、異常兆候が未検知のサーバについても、異常兆候が検知されたサーバと同様に、異常検知の精度をより向上させることができる。よって、システム全体として、より精度の高い異常兆候の分析が可能となる。
<本実施形態の変形例>
 次に、本実施形態に係るシステムコール収集システム100(図2)の変形例について説明する。
 本実施形態に係るシステムコール収集システム100(図2)においては、ある通信サーバ10において異常兆候等が検出された場合に、その通信サーバ10と同等の構成(バージョン等)を有する通信サーバ10について(無条件で)システムコール情報の収集量を増やすようにした。
 これに対し、本実施形態の変形例に係るシステムコール収集システム100A(後記する図6参照)では、異常兆候等が検出された通信サーバ10と同等の構成(バージョン等)を有する他の通信サーバ10として抽出されたもののうち、所定の選択条件を満たした通信サーバ10を、システムコール情報の収集量を増やす対象となる通信サーバ10として選択する。
 所定の選択条件は、例えば、異常兆候等が検出された通信サーバ10と他の通信サーバ10とのネットワークトポロジにおける位置関係を考慮し、異常兆候等が検出された通信サーバ10と同等の通信サーバ10が、異常兆候等が検出された通信サーバ10の近傍にあれば、システムコール情報の収集量を増やす対象として選択し、遠方にあれば選択しないようにする。また、異常兆候等が検出された通信サーバ10とネットワーク上で直接接続されている通信サーバ10は、選択しないようにする等である。
 このようにすることで、システムコール収集システム100Aは、ある通信サーバ10において異常兆候等を検出した場合に、その通信サーバ10およびその通信サーバ10近傍の通信サーバ10にのみ限定して収集条件を強化することができる。よって、システムコール収集システム100Aは、システム全体でのシステムコール情報の収集量の増加を抑えた上で、異常兆候等の検知について精度の向上を図ることができる。
 図6は、本実施形態の変形例に係るシステムコール収集システム100Aの全体構成を示す図である。図2で示すシステムコール収集システム100と同じ機能を備える構成には、同一の名称と符号を付し、説明を省略する。
 図6で示すシステムコール収集システム100Aがシステムコール収集システム100(図2)と異なる点は、各通信サーバ10のアプリ層10Aに、トポロジ収集部13を備えることと、保守サーバ30が、トポロジ格納部330を備えるとともに、同等サーバ抽出部31(図2)の代わりに、同等サーバ抽出部31Aを備えることである。
 通信サーバ10のトポロジ収集部13は、自身の通信サーバ10に関するトポロジを収集する。トポロジ収集部13は、収集したトポロジに関する情報を、保守サーバ30へ送信する。
 保守サーバ30のトポロジ格納部330は、通信サーバ10が形成するネットワークシステムのトポロジを格納する。トポロジ格納部330は、各通信サーバ10のトポロジ収集部13から通知されるトポロジの情報、または、管理者等により入力されるトポロジの情報が格納される。トポロジは、通信サーバ10と他装置とがどのように結びついているかを示す通信サーバ10の配置情報である。
 同等サーバ抽出部31Aは、まず、分析サーバ20から通信サーバ10のいずれかにおいて、異常兆候等を検知した旨の情報を含む分析結果通知を受信した場合に、サーバ分類情報300(図3)を参照し、同等性判定の所定のロジックに基づき、その異常兆候等を検知した通信サーバ10と同等な通信サーバ10を抽出する。
 同等サーバ抽出部31Aは、異常兆候等が検出された通信サーバ10と同等の構成(同一のバージョン等)を有する他の通信サーバ10として抽出されたもののうち、所定の選択条件を満たした通信サーバ10を、システムコール情報の収集量を増やす対象となる通信サーバ10として選択する。
 所定の選択条件は、例えば、異常兆候等が検出された通信サーバ10と他の通信サーバ10とのネットワークトポロジにおける位置関係を考慮し、異常兆候等が検出された通信サーバ10と同等の通信サーバ10が、異常兆候が検出された通信サーバ10の近傍にあれば、システムコール情報の収集量を増やす対象として選択し、遠方にあれば(近傍にない場合には)選択しないという条件である。
 より具体的に説明する。例えば、図7の符号701で示すように、通信サーバ10(#02,#03,#05)において、アプリケーションの製造元が「X社」でありライブラリのバージョンが「Ver2.1」で共通しているものとする。同等サーバ抽出部31Aは、所定のロジックとして、アプリケーションのライブラリが同一の通信サーバ10を同等性ありと判定するロジックを採用するときには、サーバ分類情報300(図3)を参照し、異常兆候等が検知された通信サーバ10(#05)と、ライブラリのバージョンが「Ver2.1」で同じである通信サーバ10(#02,#03)を同等の通信サーバ10であるとして抽出する。
 さらに、同等サーバ抽出部31Aは、抽出された同等の通信サーバ10のうち、トポロジ格納部330に格納されたトポロジの情報を参照し、異常兆候等が検知された通信サーバ10(#05)からホップ数が所定数(例えば「1」)以下である通信サーバ10(#02)について、システムコール情報の収集量を増やす対象の通信サーバ10として選定する。
 つまり、同等サーバ抽出部31Aは、異常兆候等が検知され通信サーバ10(#5)と、その近傍にある同等サーバである通信サーバ10(#2)を、システムコール情報の収集量を増やす対象となる通信サーバ10として選択する。なお、通信サーバ10(#03)は、異常兆候等が検知された通信サーバ10(#05)と同等のサーバであるが、ホップ数が所定数「1」を超える「2」であるため、近傍のサーバではなく、システムコール情報の収集量を増やす対象の通信サーバ10として選定されない。
 なお、異常兆候等が検知された通信サーバ10から近傍にある通信サーバ10を決定する指標として、ホップ数を例示したが、遅延など他のネットワーク距離(メトリック)を用いてもよい。
 所定の選択条件の他の例として、異常兆候等が検出された通信サーバ10および当該通信サーバ10と同等の構成を備えるとして抽出された通信サーバ10のいずれかと、ネットワーク上で直接接続されている通信サーバ10は、選択しないようにしてもよい。
 例えば、ネットワークを介して不正行為を行うプログラムのコピーを拡散させるワーム等での感染を想定した場合、直接接続されている通信サーバ10への感染による異常の発生が予測されるので、ワームのようなマルウェアの感染による異常検知を、対象となる同等の通信サーバ10全部ではなく一部の通信サーバ10で行い、システム全体としての負荷が過大にならないようにする。
 例えば、同等サーバ抽出部31Aは、図7の符号702で示すように、異常兆候等が検知された通信サーバ10と同等の構成として抽出された通信サーバ10(#02,#03)のうち、同等構成を備える通信サーバ(#02)と直接接続されている通信サーバ10(#03)は、システムコール情報の収集量を増やす対象の通信サーバ10として選択しないようにする。
 同等サーバ抽出部31Aは、異常兆候等が検出された通信サーバ10と同等の構成(バージョン等)を有する他の通信サーバ10として抽出されたもののうち、所定の選択条件を満たした通信サーバ10を選択する。そして、同等サーバ抽出部31Aは、異常兆候等を検知した通信サーバ10と、所定の選択条件を満たすとして選択された通信サーバ10との情報を、条件設定部32へ出力する。
 これにより、システムコール収集システム100Aは、システム全体としてシステムコール情報の収集量の増加を抑えた上で、異常兆候等の検知について精度の向上を図ることができる。
<ハードウェア構成>
 図8は、システムコール収集システム100,100Aの各装置のハードウェア構成図である。
 システムコール収集システム100,100Aの各装置(通信サーバ10、分析サーバ20、保守サーバ30)は、それぞれCPU901と、RAM902と、ROM903と、HDD904と、通信I/F905と、入出力I/F906と、メディアI/F907とを有するコンピュータ900として構成される。
 通信I/F905は、外部の通信装置915と接続される。入出力I/F906は、入出力装置916と接続される。メディアI/F907は、記録媒体917からデータを読み書きする。さらに、CPU901は、RAM902に読み込んだプログラム(システムコール収集プログラム)を実行することにより、各部を制御する。そして、このプログラム(アプリケーション、その略のアプリとも呼ばれる)は、通信回線を介して配布したり、USBメモリ等の記録媒体917に記録して配布したりすることも可能である。
[効果]
 本発明のシステムコール収集システムは、ネットワークシステムを構成する各通信サーバ10と、通信サーバ10それぞれのシステムコールを分析する分析サーバ20と、分析サーバ20に通信接続される保守サーバ30とを備えるシステムコール収集システム100であって、
 通信サーバ10それぞれは、
 システムコールの収集に関する所定の収集条件に従って、システムコールを収集するシステムコール収集部15を備え、
 分析サーバ20は、
 通信サーバ10それぞれからシステムコールの情報を取得し、当該通信サーバ10の異常の兆候を検知する異常兆候検知部21を備え、
 保守サーバ30は、
 異常の兆候が検知された通信サーバの情報を取得し、当該検知された通信サーバと同等の構成を有する他の通信サーバを抽出する同等サーバ抽出部31と、
 異常の兆候が検知された通信サーバ10、および、抽出された同等の構成を有する通信サーバ10について、システムコールの収集量を増加させるように所定の収集条件を変更する条件設定部32と、を備えることを特徴とする。
 これにより、システムコール収集システム100は、異常の兆候が検知された通信サーバと同等の構成を有する通信サーバであり、異常の兆候が未検知のサーバについて、システムコールの収集量を増加させるように収集条件を変更し、異常検知の精度を向上させることができる。
 本発明のシステムコール収集システム100は、保守サーバ30が、通信サーバ10それぞれの現時点での、アプリケーション、仮想化基盤およびハードウェアリソースを含む構成についての維持管理状況が格納されたサーバ分類情報300を備えており、
 同等サーバ抽出部31は、サーバ分類情報300を参照し、異常の兆候が検知された通信サーバ10と、維持管理状況が共通する通信サーバ10を、同等の構成を有する通信サーバ10として抽出することを特徴とする。
 このように、システムコール収集システム100の保守サーバ30が、サーバ分類情報300(図3)を備えることにより、異常の兆候が検知された通信サーバ10と同様の異常の発生する可能性の高い、維持管理状況が共通する通信サーバ10を、同等の構成を有する通信サーバ10として抽出することができる。
 本発明のシステムコール収集システム100Aは、保守サーバ30が、ネットワークシステムのネットワークトポロジが格納されたトポロジ格納部330を備えており、
 同等サーバ抽出部31Aは、抽出された同等の構成を有する通信サーバ10のうち、ネットワークトポロジに基づき、異常の兆候が検知された通信サーバ10からホップ数が所定数以下であることを含む所定の選択条件を満たす近傍の通信サーバ10を、システムコールの収集量を増加させる通信サーバ10として選択することを特徴とする。
 これにより、システムコール収集システム100Aは、システム全体としてシステムコール情報の収集量の増加を抑えた上で、異常の兆候の検知について精度の向上を図ることができる。
 10  通信サーバ
 10A アプリ層
 10V 仮想化基盤層
 11  アプリ(アプリケーション)
 12  収集制御部
 13  トポロジ収集部
 14  カーネル
 15  システムコール収集部
 20  分析サーバ
 21  異常兆候検知部
 22  条件設定処理部
 30  保守サーバ
 31,31A 同等サーバ抽出部
 32  条件設定部
 100,100A システムコール収集システム
 300 サーバ分類情報
 330 トポロジ格納部

Claims (4)

  1.  ネットワークシステムを構成する各通信サーバと、前記通信サーバそれぞれのシステムコールを分析する分析サーバと、前記分析サーバに通信接続される保守サーバとを備えるシステムコール収集システムであって、
     前記通信サーバそれぞれは、
     システムコールの収集に関する所定の収集条件に従って、前記システムコールを収集するシステムコール収集部を備え、
     前記分析サーバは、
     前記通信サーバそれぞれから前記システムコールの情報を取得し、当該通信サーバの異常の兆候を検知する異常兆候検知部を備え、
     前記保守サーバは、
     異常の兆候が検知された通信サーバの情報を取得し、当該検知された通信サーバと同等の構成を有する他の通信サーバを抽出する同等サーバ抽出部と、
     前記異常の兆候が検知された通信サーバ、および、前記抽出された同等の構成を有する通信サーバについて、前記システムコールの収集量を増加させるように前記所定の収集条件を変更する条件設定部と、を備えること
     を特徴とするシステムコール収集システム。
  2.  前記保守サーバは、前記通信サーバそれぞれの現時点での、アプリケーション、仮想化基盤およびハードウェアリソースを含む構成についての維持管理状況が格納されたサーバ分類情報を備えており、
     前記同等サーバ抽出部は、前記サーバ分類情報を参照し、前記異常の兆候が検知された通信サーバと、維持管理状況が共通する通信サーバを、前記同等の構成を有する通信サーバとして抽出すること
     を特徴とする請求項1に記載のシステムコール収集システム。
  3.  前記保守サーバは、前記ネットワークシステムのネットワークトポロジが格納されたトポロジ格納部を備えており、
     前記同等サーバ抽出部は、前記抽出された同等の構成を有する通信サーバのうち、前記ネットワークトポロジに基づき、前記異常の兆候が検知された通信サーバからホップ数が所定数以下であることを含む所定の選択条件を満たす近傍の通信サーバを、前記システムコールの収集量を増加させる通信サーバとして選択すること
     を特徴とする請求項1また請求項2に記載のシステムコール収集システム。
  4.  ネットワークシステムを構成する各通信サーバと、前記通信サーバそれぞれのシステムコールを分析する分析サーバと、前記分析サーバに通信接続される保守サーバとを備えるシステムコール収集システムのシステムコール収集方法であって、
     前記通信サーバそれぞれは、
     システムコールの収集に関する所定の収集条件に従って、前記システムコールを収集するステップを実行し、
     前記分析サーバは、
     前記通信サーバそれぞれから前記システムコールの情報を取得し、当該通信サーバの異常の兆候を検知するステップを実行し、
     前記保守サーバは、
     異常の兆候が検知された通信サーバの情報を取得し、当該検知された通信サーバと同等の構成を有する他の通信サーバを抽出するステップと、
     前記異常の兆候が検知された通信サーバ、および、前記抽出された同等の構成を有する通信サーバについて、前記システムコールの収集量を増加させるように前記所定の収集条件を変更するステップと、を実行すること
     を特徴とするシステムコール収集方法。
PCT/JP2024/015082 2024-04-16 2024-04-16 システムコール収集システム、および、システムコール収集方法 Pending WO2025220100A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2024/015082 WO2025220100A1 (ja) 2024-04-16 2024-04-16 システムコール収集システム、および、システムコール収集方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2024/015082 WO2025220100A1 (ja) 2024-04-16 2024-04-16 システムコール収集システム、および、システムコール収集方法

Publications (1)

Publication Number Publication Date
WO2025220100A1 true WO2025220100A1 (ja) 2025-10-23

Family

ID=97403133

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2024/015082 Pending WO2025220100A1 (ja) 2024-04-16 2024-04-16 システムコール収集システム、および、システムコール収集方法

Country Status (1)

Country Link
WO (1) WO2025220100A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017220013A (ja) * 2016-06-07 2017-12-14 京セラドキュメントソリューションズ株式会社 機器管理装置、機器管理システム及び機器管理プログラム
WO2023181241A1 (ja) * 2022-03-24 2023-09-28 日本電気株式会社 監視サーバ装置、システム、方法、及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017220013A (ja) * 2016-06-07 2017-12-14 京セラドキュメントソリューションズ株式会社 機器管理装置、機器管理システム及び機器管理プログラム
WO2023181241A1 (ja) * 2022-03-24 2023-09-28 日本電気株式会社 監視サーバ装置、システム、方法、及びプログラム

Similar Documents

Publication Publication Date Title
US11108859B2 (en) Intelligent backup and recovery of cloud computing environment
US11157373B2 (en) Prioritized transfer of failure event log data
US20120174112A1 (en) Application resource switchover systems and methods
US10489232B1 (en) Data center diagnostic information
US11290330B1 (en) Reconciliation of the edge state in a telemetry platform
US11874851B2 (en) Contextual replication profile creation based on data criticality
EP3591530B1 (en) Intelligent backup and recovery of cloud computing environment
US8930970B2 (en) Method and computer for obtaining using-frequency of application program
CN107544832A (zh) 一种虚拟机进程的监控方法、装置和系统
EP3956771B1 (en) Timeout mode for storage devices
JP7387469B2 (ja) 通信装置、監視サーバ及びログ収集方法
JP4609380B2 (ja) 仮想サーバ管理システムおよびその方法ならびに管理サーバ装置
EP2975524B1 (en) Information processing device
US11700178B2 (en) System and method for managing clusters in an edge network
US10462234B2 (en) Application resilience system and method thereof for applications deployed on platform
JP5642725B2 (ja) 性能分析装置、性能分析方法及び性能分析プログラム
JP2012168816A (ja) プロセス再起動装置、プロセス再起動方法およびプロセス再起動プログラム
US12242609B2 (en) Exact restoration of a computing system to the state prior to infection
JP5360000B2 (ja) 仮想サーバ管理システムおよびその方法ならびに管理サーバ装置
JP6065843B2 (ja) サービスレベル管理装置、プログラム、及び、方法
WO2020100634A1 (ja) 復旧支援装置、復旧支援方法及びプログラム
JP2014170448A (ja) レプリケーションシステム、業務処理システム、レプリケーション方法、及びプログラム
JP2018063518A5 (ja)
US12306698B2 (en) Method and system for end-to-end prediction of unexpected events occurred in a disaster recovery system
WO2025220098A1 (ja) システムコール収集システム、および、システムコール収集方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24936013

Country of ref document: EP

Kind code of ref document: A1