WO2022079921A1 - 検出装置、検出方法及び検出プログラム - Google Patents

検出装置、検出方法及び検出プログラム Download PDF

Info

Publication number
WO2022079921A1
WO2022079921A1 PCT/JP2020/039193 JP2020039193W WO2022079921A1 WO 2022079921 A1 WO2022079921 A1 WO 2022079921A1 JP 2020039193 W JP2020039193 W JP 2020039193W WO 2022079921 A1 WO2022079921 A1 WO 2022079921A1
Authority
WO
WIPO (PCT)
Prior art keywords
inference
detection device
rule
information
predicate
Prior art date
Application number
PCT/JP2020/039193
Other languages
English (en)
French (fr)
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 PCT/JP2020/039193 priority Critical patent/WO2022079921A1/ja
Priority to JP2022556827A priority patent/JPWO2022079921A1/ja
Priority to US18/024,778 priority patent/US20230316114A1/en
Publication of WO2022079921A1 publication Critical patent/WO2022079921A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems
    • 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
    • G06F21/577Assessing vulnerabilities and evaluating computer system security

Definitions

  • the present invention relates to a detection device, a detection method and a detection program.
  • MSS managed security service
  • SOC Security Operation Center
  • NW Network
  • a technique for estimating the NW configuration from passive information has been proposed.
  • a technique for estimating the NW configuration based on the information of the IP packet is known (see, for example, Non-Patent Document 1).
  • a technique for estimating the NW configuration based on the event log is known (see, for example, Non-Patent Document 2).
  • the conventional technique has a problem that it may be difficult to detect detailed changes in the NW composition in the organization from passive information.
  • Non-Patent Document 1 is an analysis technique of the Internet topology, and does not estimate the NW configuration in the organization.
  • the technique described in Non-Patent Document 2 performs estimation depending on an endpoint or a service, and may not be able to estimate the relationship between devices in detail.
  • the detection device is preset with a conversion unit that converts each of a plurality of pieces of information about the network into a predetermined form of inference rule, and the predetermined form of inference rule. It is characterized by having an inference unit that obtains an inference set that satisfies both of the inference rules.
  • FIG. 1 is a diagram illustrating an outline of a detection method according to the first embodiment.
  • FIG. 2 is a diagram showing an example of a NW configuration.
  • FIG. 3 is a diagram showing an example of an inference rule and a solution set.
  • FIG. 4 is a diagram showing a configuration example of the detection device according to the first embodiment.
  • FIG. 5 is a flowchart showing a processing flow of the detection device according to the first embodiment.
  • FIG. 6 is a diagram showing an example of a computer that executes a detection program.
  • FIG. 1 will be used to outline the detection method performed by the detection device.
  • FIG. 1 is a diagram illustrating an outline of a detection method according to the first embodiment.
  • the detection device 10 accepts the input of the security log (step S11). Further, the detection device 10 accepts the input of the NW configuration information (step S12).
  • “inference” in the embodiment is a term of logic and corresponds to reasoning or inference.
  • the security log is an example of information about NW.
  • the log and traffic data output by each NW device may be input to the detection device 10.
  • the detection device 10 performs predicate conversion on the security log and the NW configuration information (step S13, step S14).
  • the predicate conversion is a process performed in solution set programming (ASP), and is a process of converting predetermined information into a logical expression.
  • ASP solution set programming
  • the detection device 10 converts each of the plurality of pieces of information about the network into a predetermined form of inference rule, that is, a fact.
  • the detection device 10 operates an inference engine based on the predicate obtained by the predicate conversion and the preset inference rule (step S15).
  • An inference engine is an engine for performing inference in solution set programming. That is, the detection device 10 obtains the fact obtained by the conversion, the preset derivation rule, and the solution set satisfying the constraint rule by inference.
  • the detection device 10 outputs a detection result based on the solution set obtained by inference (step S16). For example, if no solution set is obtained by the detection device 10, it can be considered that the security log and the NW configuration information are different. For example, an analyst can use this to detect changes in the NW configuration.
  • FIG. 2 shows an example of the NW configuration that is the target of inference by the detection device 10.
  • FIG. 2 is a diagram showing an example of a NW configuration.
  • the NW has an IDS (Intrusion Detection System) 21 connected to the Internet, a proxy server 22 connected to the IDS 21, a terminal 31 connected to the proxy server 22, and a terminal 32.
  • IDS Intrusion Detection System
  • IDS21 and proxy server are located in dmz (DeMilitarized Zone). Further, the terminal 31 and the terminal 32 are arranged locally. local is a role area network constructed in an organization such as a company.
  • the NW configuration information indicates that there is a client whose address is "10.0.1.2" and a client whose address is "192.168.10.33".
  • the NW configuration information is, for example, information obtained from a customer by an analyst, and is not always accurate.
  • the detection device 10 has a first predicate indicating that the address "10.0.1.2" is a proxy and a second predicate indicating that the address "192.168.10.33” is a client based on the security log. It is assumed that the predicate is derived by inference. As shown in FIG. 2, “10.0.1.2” is the address of the proxy server 22. Further, “192.168.10.33” is the address of the terminal 31.
  • the NW configuration information indicates that the address "192.168.10.33" is the client. This is consistent with the second predicate indicating that the address "192.168.10.33" is a client.
  • the NW configuration information indicates that the address "10.0.1.2" is the client. Therefore, the detection device 10 does not include the first predicate indicating that the address "10.0.1.2" is a proxy and the predicate indicating that the address "10.0.1.2" is a client in the solution set.
  • a node being a client and a proxy is constrained by a constraint rule, which is one of the inference rules. The details of the derivation rule and the constraint rule for deriving the predicate will be described later.
  • the analyst can detect the change in the NW configuration by referring to the result of inference of a plurality of security logs having different output dates and times by the detection device 10.
  • the detection device 10 derives a third predicate indicating that the address "192.168.10.44" is a client based on the security log at a certain point in time, and the security log at a later point in time is obtained. Based on this, it is assumed that the detection device 10 derives a fourth predicate indicating that the address "192.168.10.44" is a proxy. However, these derived predicates are not included in the solution set because they are constrained by constraint rules.
  • FIG. 3 is a diagram showing an example of an inference rule and a solution set.
  • a program is a set of rules in solution set programming. Rules include facts and inference rules. Further, in the present embodiment, the inference rule includes a derivation rule and a constraint rule. In the following description, the program in solution set programming may be simply referred to as a program.
  • a literal is a positive or negative form of a predicate. Predicates prefixed with the symbol " ⁇ " are negative literals.
  • the predicate "located (192.168.10.33, local)” in Fig. 3 means “192.168.10.33 exists locally”. Also, the predicate “located (10.0.1.2, dmz)” means “10.0.1.2 exists in the dmz”. Also, the predicate “listen (10.0.1.2,8080)” means “10.0.1.2 is receiving on port 8080".
  • client (10.0.1.2) means “10.0.1.2 is the client”. Therefore, the fact “client (10.0.1.2) ⁇ " in FIG. 3 means that "" 10.0.1.2 is a client "is unconditionally correct.”
  • the detection device 10 converting information about NW such as a security log. For example, as shown in FIG. 3, the detection device 10 has at least information on an address existing as a node, information indicating an area on a network on which the address exists, and information associating an address with a listening port. Convert either to a predicate.
  • the conversion unit 131 obtains the predicate node by converting the information of the address existing as the node. Further, for example, the conversion unit 131 obtains the predicate located by converting the information indicating the area on the network where the address exists. Further, for example, the conversion unit 131 obtains the predicate listen by converting the information in which the address and the listening port are associated with each other.
  • the derivation rule is an inference rule for deriving a predicate.
  • the derivation rule is an example of the first inference rule.
  • the derivation rule "proxy (X) ⁇ listen (X, 8080)" in FIG. 3 means that "X received on port 8080 is a proxy”.
  • the detection device 10 applies the derivation rule "proxy (X) ⁇ listen (X, 8080)” to the fact “listen (10.0.1.2,8080) ⁇ ” to obtain the predicate "proxy (10.0.1.2)". Is derived.
  • the detection device 10 can apply the derivation rule "client (X) ⁇ located (X, local), not proxy (X)" to the fact “located (192.168.10.33, local) ⁇ ” or the like. Derive the predicate "client (192.168.10.33)".
  • the detection device 10 derives a combination of predicates as a candidate for a solution set from the predicate obtained by converting the information about the NW according to the derivation rule.
  • the derivation rule is not limited to the antecedent affirmative type shown in FIG. 3, and may be a consequent negative type that performs kinematic inference.
  • the predicate of the head of the derivation rule is a candidate for the predicate included in the solution set.
  • the constraint rule is an inference rule as a constraint.
  • the constraint rule is an example of the second inference rule. According to the constraint rule, a contradiction can be explicitly derived as an inference result.
  • the constraint rule " ⁇ node (N), located (N, X), located (N, Y), X ⁇ Y" shown in FIG. 3 states that "nodes N exist in regions X and Y that are different from each other. It means that.
  • the predicate constrained by the inference rule is a predicate that satisfies the body of the constraint rule.
  • a predicate that is not constrained by an inference rule is a predicate that does not satisfy the body of the constraint rule.
  • the detection device 10 uses the predicate “node (192.168.10.33)” based on the constraint rule “ ⁇ node (N), located (N, X), located (N, Y), X ⁇ Y”. ) ”And a set of predicates including the predicate“ node (10.0.1.2) ”are obtained as candidates for solution sets.
  • the detection device 10 determines the constraint rule " ⁇ node (N), located (located). Based on “N, X), located (N, Y), X ⁇ Y", the predicate "node (192.168.10.33)", the predicate "located (192.168.10.33,local)” and the predicate "located (192.168.10.33,dmz)” ) ⁇ ”is excluded from the solution set candidates as inconsistent combinations, and if there is no other solution set, it is output that the inference result is unsatisfactory.
  • the detection device 10 excludes the combination of predicates constrained by the constraint rule from the solution set derived by the derivation rule.
  • the predicate that is a candidate for the solution set is a predicate that is not constrained by at least one constraint rule, and may be excluded from the final solution set by combining a plurality of constraint rules.
  • the detection device 10 makes the predicate “client (10.0.1.2)” a candidate for the predicate to be included in the solution set. Further, when the fact “listen (10.0.1.2,8080) ⁇ " is obtained from the security log, the detection device 10 derives the predicate "proxy (10.0.1.2)” as a candidate for the predicate to be included in the solution set.
  • the constraint rule " ⁇ proxy (X), client (X)” means that "X cannot be both a proxy and a client”. Therefore, it can be said that the predicate "client (10.0.1.2)” and the predicate "proxy (10.0.1.2)” are inconsistent based on the constraint rule " ⁇ proxy (X), client (X)". In this way, by applying the constraint rule in the combination of these two predicates, the detection device 10 can detect the contradiction.
  • the solution set is a set of predicates inferred to be consistent by the detection device 10.
  • the solution set can be said to be the output of a program in solution set programming.
  • a solution set can be said to be a combination of predicates that satisfy facts and inference rules. Strictly speaking, the combination of predicates that can be a solution set theoretically satisfies certain properties. For example, predicates that may or may not be included in the solution set.
  • FIG. 4 is a diagram showing a configuration example of the detection device according to the first embodiment.
  • the detection device 10 receives input of information related to NW such as a security log, makes an inference, and outputs an inference result.
  • NW such as a security log
  • the detection device 10 includes an input / output unit 11, a storage unit 12, and a control unit 13.
  • the input / output unit 11 is an interface for inputting / outputting data.
  • the input / output unit 11 may be a communication interface such as a NIC (Network Interface Card) for performing data communication with another device via a network.
  • the input / output unit 11 may be an interface for connecting an input device such as a mouse and a keyboard, and an output device such as a display.
  • the storage unit 12 is a storage device for an HDD (Hard Disk Drive), SSD (Solid State Drive), optical disk, or the like.
  • the storage unit 12 may be a semiconductor memory in which data such as RAM (Random Access Memory), flash memory, NVSRAM (Non Volatile Static Random Access Memory) can be rewritten.
  • the storage unit 12 stores an OS (Operating System) and various programs executed by the detection device 10.
  • the storage unit 12 stores the rule information 121.
  • the rule information 121 is an inference rule including a derivation rule and a constraint rule.
  • the control unit 13 controls the entire detection device 10.
  • the control unit 13 is, for example, an electronic circuit such as a CPU (Central Processing Unit), an MPU (Micro Processing Unit), a GPU (Graphics Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or the like. It is an integrated circuit.
  • the control unit 13 has an internal memory for storing programs and control data that specify various processing procedures, and executes each process using the internal memory. Further, the control unit 13 functions as various processing units by operating various programs.
  • the control unit 13 has a conversion unit 131, an inference unit 132, and a detection unit 133.
  • the conversion unit 131 converts each of the plurality of information about the network into a predetermined form of inference rule, that is, a fact. For example, the conversion unit 131 converts information about the network into a predicate of solution set programming. Further, for example, the conversion unit 131 makes at least one of the information of the address existing as a node, the information indicating the area on the network where the address exists, and the information associating the address with the listening port as a fact. Convert.
  • the inference unit 132 obtains a combination of predicates satisfying a program consisting of facts and preset inference rules by inference. For example, the inference unit 132 obtains a predicate derived by an inference rule (for example, a derivation rule) from the predicate obtained by the conversion unit 131 as a candidate for a predicate to be included in the solution set. Further, for example, the inference unit 132 obtains as a solution set a combination of predicates obtained by the conversion unit 131 and predicates derived by the inference unit 132 that do not contradict the inference rule (for example, the constraint rule).
  • an inference rule for example, a derivation rule
  • client (10.0.1.2) ⁇ is an example of a predetermined form of inference rule.
  • the fact “listen (10.0.1.2,8080) ⁇ ” is an example of a preset inference rule.
  • client (10.0.1.2) and “proxy (10.0.1.2)” are examples of predicates derived based on the first inference rule (derivation rule). However, these predicates may be excluded from the final output solution set based on the second inference rule (constraint rule).
  • the detection device 10 can use the inference rules as shown in the following (1) to (5).
  • (1) to (5) are examples of derivation rules for deriving whether or not a node is a proxy.
  • Each argument of http_req corresponds to the source address, source port, destination address, destination port, and URL of the HTTP request from the left. That is, (4) states, "If the source address of the first HTTP request and the destination address YA of the second HTTP request match, and the URLs of both match, YA may be a proxy.” Means that. However, regarding (4), other conditions may be required for arguments other than YA such as XA and XP.
  • has_xff_header means that the X-Forwarded-For header is added to the HTTP request sent by X.
  • in_global (X) means that node X exists on the global area network.
  • FIG. 5 is a flowchart showing a processing flow of the detection device according to the first embodiment.
  • the detection device 10 accepts input of a plurality of NW information (step S101).
  • the detection device 10 converts each NW information into a predicate (step S102).
  • the plurality of NW information may be NW configuration information and a security log, or may be a plurality of security logs having different output dates and times.
  • the detection device 10 executes inference based on the predicate (step S103). For example, the detection device 10 derives a predicate from a fact based on a derivation rule, and obtains a combination of predicates as a candidate for a solution set. Further, for example, the detection device 10 excludes a solution set candidate including a combination of contradictory predicates based on a constraint rule.
  • the detection device 10 outputs the solution set obtained by inference (step S104).
  • the analyst can detect the change in NW composition by referring to the output solution set. For example, if no solution set is output, the analyst detects that the NW configuration has changed.
  • the conversion unit 131 converts information about the network into a predetermined form of inference rule (fact).
  • the inference unit 132 obtains a solution set satisfying a predetermined form of inference rule (fact) and a preset inference rule (derivation rule, constraint rule) by inference.
  • the detection device 10 converts the information about the network into an inference rule, it is possible to obtain the information about the network configuration from different information by a logical inference method.
  • detailed changes in the NW composition within the organization can be grasped from passive information.
  • the analyst may not be able to obtain detailed NW diagrams, etc. because the NW configuration is not accurately grasped at the customer's site and the NW configuration is confidential. Even in such a case, according to the present embodiment, the analyst can detect an error in the NW diagram from the limited available information such as a security log.
  • the analyst can grasp the required particle size of the NW configuration by setting an appropriate inference rule.
  • the conversion unit 131 converts information about the network into a predicate of solution set programming.
  • the inference unit 132 derives a predicate to be included in the solution set from the predicate obtained by the conversion unit 131 by a derivation rule, and obtains a combination of predicates as a candidate for the solution set. As a result, the detection device 10 can derive information that is not clearly included in the fact.
  • the inference unit 132 excludes the combination of predicates constrained by the constraint rule from the solution set candidates derived by the derivation rule. This allows the detection device 10 to exclude combinations that are inconsistent with the actual NW configuration contained in the facts.
  • the inference unit 132 may exclude the combination of predicates by an implicit constraint rule in addition to the explicitly set constraint rule. In this case, for example, the inference unit 132 excludes contradictory predicate combinations such as proxy (a) and ⁇ proxy (a).
  • the conversion unit 131 converts at least one of the information of the address existing as a node, the information indicating the area on the network where the address exists, and the information associated with the address and the listening port into a fact. Thereby, the detection device 10 can detect the change of the role from the client to the proxy or from the proxy to the client.
  • each component of each of the illustrated devices is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific forms of distribution and integration of each device are not limited to those shown in the figure, and all or part of them may be functionally or physically dispersed or physically distributed in arbitrary units according to various loads and usage conditions. Can be integrated and configured. Further, each processing function performed by each device is realized by a CPU (Central Processing Unit) and a program that is analyzed and executed by the CPU, or hardware by wired logic. Can be realized as. The program may be executed not only by the CPU but also by another processor such as a GPU.
  • CPU Central Processing Unit
  • the detection device 10 can be implemented by installing a detection program that executes the above detection process as package software or online software on a desired computer. For example, by causing the information processing device to execute the above detection program, the information processing device can be made to function as the detection device 10.
  • the information processing device referred to here includes a desktop type or notebook type personal computer.
  • the information processing device includes smartphones, mobile phones, mobile communication terminals such as PHS (Personal Handyphone System), and slate terminals such as PDAs (Personal Digital Assistants).
  • the detection device 10 can be implemented as a detection server device in which the terminal device used by the user is a client and the service related to the above detection process is provided to the client.
  • the inference server device is implemented as a server device that provides a detection service that inputs a security log and outputs a detection result.
  • the detection server device may be implemented as a Web server, or may be implemented as a cloud that provides the above-mentioned service related to the detection process by outsourcing.
  • FIG. 6 is a diagram showing an example of a computer that executes a detection program.
  • the computer 1000 has, for example, a memory 1010 and a CPU 1020.
  • the computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. Each of these parts is connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012.
  • the ROM 1011 stores, for example, a boot program such as a BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • the hard disk drive interface 1030 is connected to the hard disk drive 1090.
  • the disk drive interface 1040 is connected to the disk drive 1100.
  • a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100.
  • the serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120.
  • the video adapter 1060 is connected to, for example, the display 1130.
  • the hard disk drive 1090 stores, for example, the OS 1091, the application program 1092, the program module 1093, and the program data 1094. That is, the program that defines each process of the detection device 10 is implemented as a program module 1093 in which a code that can be executed by a computer is described.
  • the program module 1093 is stored in, for example, the hard disk drive 1090.
  • the program module 1093 for executing the same processing as the functional configuration in the detection device 10 is stored in the hard disk drive 1090.
  • the hard disk drive 1090 may be replaced by an SSD (Solid State Drive).
  • the setting data used in the processing of the above-described embodiment is stored as program data 1094 in, for example, a memory 1010 or a hard disk drive 1090. Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1090 into the RAM 1012 as needed, and executes the process of the above-described embodiment.
  • the program module 1093 and the program data 1094 are not limited to those stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). Then, the program module 1093 and the program data 1094 may be read from another computer by the CPU 1020 via the network interface 1070.
  • LAN Local Area Network
  • WAN Wide Area Network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

検出装置(10)は、ネットワークに関する複数の情報のそれぞれを論理式に変換する。検出装置(10)は、論理式と推論規則を充足する解集合を推論によって得る。解集合を基にネットワーク構成の変化を検知することができる。

Description

検出装置、検出方法及び検出プログラム
 本発明は、検出装置、検出方法及び検出プログラムに関する。
 情報セキュリティサービスの1つにマネジメントセキュリティサービス(MSS:Managed Security Service)がある。MSSは、セキュリティオペレーションセンタ(SOC:Security Operation Center)により提供される商用サービスである。例えば、SOCは、MSSにおいて、顧客からセキュリティログを受け取り、高度な分析により、その中に潜むセキュリティ脅威等の発見を行っている。
 MSSにおける分析では、顧客のネットワーク(NW:Network)構成の把握が重要である。NW構成を推定するために、NWをアクティブにスキャンする方法が知られているが、アクティブなスキャンはNWに影響を与える場合がある。
 そこで、従来、パッシブな情報からNW構成を推定する技術が提案されている。例えば、IPパケットの情報を基にNW構成を推定する技術が知られている(例えば、非特許文献1を参照)。また、例えば、イベントログを基にNW構成を推定する技術が知られている(例えば、非特許文献2を参照)。
Eriksson, B., Barford, P. and Nowak, R.: Network Discovery from Passive Measurements, Proc. SIGCOMM'08, pp.291--302 (2008). Azodi, A., Cheng, F. and Meinel, C.: Event Driven Network Topology Discovery and Inventory Listing Using REAMS, Wireless Personal Communications, Volume 94, Issue 3, pp.415--430, DOI: 10.1007/s11277-0153061-3 (2017).
 しかしながら、従来の技術には、組織内の詳細なNW構成の変化をパッシブな情報から検出することが難しい場合があるという問題がある。
 例えば、非特許文献1に記載の技術はインターネットトポロジの解析技術であり、組織内のNW構成を推定するものではない。また、例えば、非特許文献2に記載の技術はエンドポイント又はサービスに寄った推定を行うものであり、機器同士の関係を詳細に推定することができない場合がある。
 上述した課題を解決し、目的を達成するために、検出装置は、ネットワークに関する複数の情報のそれぞれを所定の形式の推論規則に変換する変換部と、前記所定の形式の推論規則とあらかじめ設定された推論規則の両方を充足する解集合を推論によって得る推論部と、を有することを特徴とする。
 本発明によれば、組織内の詳細なNW構成の変化をパッシブな情報から検出することができる。
図1は、第1の実施形態に係る検出方法の概要を説明する図である。 図2は、NW構成の例を示す図である。 図3は、推論規則及び解集合の例を示す図である。 図4は、第1の実施形態に係る検出装置の構成例を示す図である。 図5は、第1の実施形態に係る検出装置の処理の流れを示すフローチャートである。 図6は、検出プログラムを実行するコンピュータの一例を示す図である。
 以下に、本願に係る検出装置、検出方法及び検出プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
[第1の実施形態]
 図1を用いて、検出装置によって実行される検出方法の概要を説明する。図1は、第1の実施形態に係る検出方法の概要を説明する図である。
 図1に示すように、まず、検出装置10は、セキュリティログの入力を受け付ける(ステップS11)。また、検出装置10は、NW構成情報の入力を受け付ける(ステップS12)。なお、実施形態における「推論」は、論理学の用語であり、reasoning又はinference等に相当する。
 ここで、セキュリティログは、NWに関する情報の一例である。検出装置10には、セキュリティログの代わりに各NW機器が出力するログ及びトラヒックデータ等が入力されてもよい。
 ここで、検出装置10は、セキュリティログとNW構成情報に対し述語変換を行う(ステップS13、ステップS14)。述語変換は、解集合プログラミング(ASP:Answer Set Programming)において行われる処理であって、所定の情報を論理式に変換する処理である。これにより、検出装置10は、ネットワークに関する複数の情報のそれぞれを所定の形式の推論規則、すなわちファクトに変換する。
 参考文献:clingo and gringo | Potassco, the Potsdam Answer Set Solving Collection, The University of Potsdam, available from < https://potassco.org/clingo/>
 次に、検出装置10は、述語変換によって得られた述語、及びあらかじめ設定された推論規則を基に、推論エンジンを動作させる(ステップS15)。推論エンジンは、解集合プログラミングにおける推論を実行するためのエンジンである。つまり、検出装置10は、変換によって得られるファクト、及びあらかじめ設定された導出ルール、制約ルールを充足する解集合を推論により得る。
 検出装置10は、推論によって得られた解集合に基づく検出結果を出力する(ステップS16)。例えば、検出装置10によって解集合が1つも得られなかった場合、セキュリティログとNW構成情報が相違しているとみなすことができる。例えば、分析官は、このことを利用してNW構成の変化を検出することができる。
 ここで、検出装置10による推論の対象となるNW構成の例を図2に示す。図2は、NW構成の例を示す図である。図2に示すように、NWは、インターネットに接続されたIDS(Intrusion Detection System)21、IDS21に接続されたプロキシサーバ22、プロキシサーバ22に接続された端末31及び端末32を有する。
 また、IDS21及びプロキシサーバはdmz(DeMilitarized Zone)に配置されている。また、端末31及び端末32は、localに配置されている。localは、例えば会社等の組織内において構築されるロールエリアネットワークである。
 また、NW構成情報には、アドレスが「10.0.1.2」であるclient、及びアドレスが「192.168.10.33」であるclientが存在していることが示されているものとする。ここで、NW構成情報は、例えば分析官が顧客から入手する情報であり、必ずしも正確であるとは限らないものとする。
 ここで、検出装置10は、セキュリティログを基に、アドレス「10.0.1.2」がproxyであることを示す第1の述語、及び、アドレス「192.168.10.33」がclientであることを示す第2の述語を推論により導出したものとする。図2に示すように、「10.0.1.2」は、プロキシサーバ22のアドレスである。また、「192.168.10.33」は端末31のアドレスである。
 NW構成情報には、アドレス「192.168.10.33」がclientであることが示されている。これは、アドレス「192.168.10.33」がclientであることを示す第2の述語と矛盾しない。
 一方、NW構成情報には、アドレス「10.0.1.2」がclientであることが示されている。このため、検出装置10は、アドレス「10.0.1.2」がproxyであることを示す第1の述語と、アドレス「10.0.1.2」がclientであることを示す述語を解集合に含めない。なお、ここでは、あるノードがclientかつproxyであることは、推論規則の1つである制約ルールによって制約されているものとする。また、述語を導出するための導出ルール及び制約ルールの詳細については後述する。
 また、例えば、検出装置10が出力日時が異なる複数のセキュリティログについて推論を行った結果を参照し、分析官はNW構成の変更を検出することができる。
 例えば、ある時点のセキュリティログを基に、検出装置10が、アドレス「192.168.10.44」がclientであることを示す第3の述語を導出したものとする、そして、さらに後の時点のセキュリティログを基に、検出装置10が、アドレス「192.168.10.44」がproxyであることを示す第4の述語を導出したものとする。しかし、これらの導出された述語は、制約ルールによって制約されるため、解集合に含まれない。
 ここで、図3を用いて、検出装置10による推論及び検出について詳細に説明する。図3は、推論規則及び解集合の例を示す図である。プログラムとは、解集合プログラミングにおけるルールの集合である。ルールには、ファクト及び推論規則が含まれる。さらに、本実施形態では、推論規則には、導出ルール及び制約ルールが含まれるものとする。なお、以降の説明では、解集合プログラミングにおけるプログラムを、単にプログラムと表記する場合がある。
 ここで、ルールにおけるボディは、左向き矢印の右側部分に相当する。また、ルールにおけるヘッドは、左向き矢印の左側部分に相当する。また、リテラルとは、述語の肯定形又は否定形である。先頭に記号「¬」が付された述語は否定形のリテラルである。
 ファクトは、ボディが空で、ヘッドが単一のリテラルのみのルールであり、前提なしでヘッドが真であることを意味する。例えば、述語「node(10.0.1.2)」は、「10.0.1.2がノードとして存在する」ことを意味する。このため、図3のファクト「node(10.0.1.2)←」は、「「10.0.1.2がノードとして存在すること」は無条件で正しい」ことを意味する。
 図3の述語「located(192.168.10.33,local)」は「192.168.10.33がlocalに存在する」ことを意味する。また、述語「located(10.0.1.2,dmz)」は、「10.0.1.2がdmzに存在する」ことを意味する。また、述語「listen(10.0.1.2,8080)」は、「10.0.1.2がポート8080で受信している」ことを意味する。
 また、述語「client(10.0.1.2)」は、「10.0.1.2がclientである」ことを意味する。このため、図3のファクト「client(10.0.1.2)←」は、「「10.0.1.2がclientであること」は無条件で正しい」ことを意味する。
 ファクトは、検出装置10がセキュリティログ等のNWに関する情報を変換することによって得られる。例えば、図3に示すように、検出装置10は、ノードとして存在するアドレスの情報、アドレスが存在するネットワーク上の領域を示す情報、アドレスとリッスンしているポートを対応付けた情報のうちの少なくともいずれかを述語に変換する。
 例えば、変換部131は、ノードとして存在するアドレスの情報を変換することで、述語nodeを得る。また、例えば、変換部131は、アドレスが存在するネットワーク上の領域を示す情報を変換することで、述語locatedを得る。また、例えば、変換部131は、アドレスとリッスンしているポートを対応付けた情報を変換することで、述語listenを得る。
 導出ルールは、述語を導出するための推論規則である。導出ルールは、第1の推論規則の一例である。例えば、図3の導出ルール「proxy(X)←listen(X,8080)」は、「ポート8080で受信しているXはproxyである」ことを意味する。
 例えば、検出装置10は、ファクト「listen(10.0.1.2,8080)←」に導出ルール「proxy(X)←listen(X,8080)」を適用することで、述語「proxy(10.0.1.2)」を導出する。
 また、例えば、検出装置10は、ファクト「located(192.168.10.33,local)←」等に導出ルール「client(X)←located(X,local),not proxy(X)」を適用することで、述語「client(192.168.10.33)」を導出する。
 このように、検出装置10は、NWに関する情報を変換して得られた述語から、導出ルールによって解集合の候補として述語の組み合わせを導出する。また、導出ルールは、図3に示した前件肯定型のものに限られず、対偶的な推論を行う後件否定型のものであってもよい。また、導出ルールのヘッドの述語は、解集合に含まれる述語の候補になる。
 また、制約ルールは、制約としての推論規則である。制約ルールは、第2の推論規則の一例である。制約ルールによれば、推論結果として明示的に矛盾を導出できる。
 ここで、図3に示す制約ルール「←node(N),located(N,X),located(N,Y),X≠Y」は、「ノードNが互いに異なる領域Xと領域Yに存在する」ことを意味する。なお、推論規則によって制約される述語とは、制約ルールのボディを満たす述語である。逆に、推論規則によって制約されない述語とは、制約ルールのボディを満たさない述語である。
 例えば、図3の例では、検出装置10は、制約ルール「←node(N),located(N,X),located(N,Y),X≠Y」に基づき、述語「node(192.168.10.33)」及び述語「node(10.0.1.2)」を含む述語の集合を解集合の候補として得る。
 仮に、ファクト「located(192.168.10.33,local)←」とファクト「located(192.168.10.33,dmz)←」の両方が存在する場合、検出装置10は、制約ルール「←node(N),located(N,X),located(N,Y),X≠Y」に基づき、述語「node(192.168.10.33)」、述語「located(192.168.10.33,local)」及び述語「located(192.168.10.33,dmz)←」を含む述語の組み合わせを矛盾する組み合わせとして解集合の候補から除外し、それ以外に解集合がない場合、推論結果として充足不可能であることを出力する。
 このように、検出装置10は、導出ルールによって導出された解集合から、制約ルールによって制約される述語の組み合わせを除外する。また、解集合の候補とされる述語は、少なくとも1つの制約ルールによって制約されない述語であり、複数の制約ルールを組み合わせることで最終的な解集合から除外される場合がある。
 ここで、NW構成情報からファクト「client(10.0.1.2)←」が得られる場合、検出装置10は、述語「client(10.0.1.2)」を解集合に含める述語の候補とする。また、セキュリティログからファクト「listen(10.0.1.2,8080)←」が得られる場合、検出装置10は、述語「proxy(10.0.1.2)」を解集合に含める述語の候補として導出する。
 また、制約ルール「←proxy(X),client(X)」は、「Xがproxyとclientの両方であることはない」ことを意味する。このため、述語「client(10.0.1.2)」と述語「proxy(10.0.1.2)」は、制約ルール「←proxy(X),client(X)」に基づき矛盾しているということができる。このように、これら2つの述語の組み合わせにおいて制約ルールを適用することで、検出装置10は矛盾を検出することができる。
 解集合は、検出装置10によって無矛盾であると推論された述語の集合である。また、解集合は、解集合プログラミングにおけるプログラムの出力ということができる。また、解集合は、ファクト及び推論規則を充足する述語の組み合わせということができる。また、厳密には、解集合となり得る述語の組み合わせは、理論的には一定の性質を満たしているものとなる。例えば、あってもなくてもよい述語は解集合に含まれない。
 1つのプログラムに対して複数の解集合が得られる場合や、解集合が1つも得られない場合(解なし)もある。例えば、導出ルールを基にファクトから導出される述語が存在せず、かつ全てのファクトが制約ルールに基づき矛盾しているとみなされた場合、解集合は1つも得られない。
[第1の実施形態の構成]
 図4を用いて、第1の実施形態に係る検出装置の構成について説明する。図4は、第1の実施形態に係る検出装置の構成例を示す図である。検出装置10は、セキュリティログ等のNWに関する情報の入力を受け付け、推論を行い、推論結果を出力する。図1に示すように、検出装置10は、入出力部11、記憶部12及び制御部13を有する。
 入出力部11は、データの入出力を行うためのインタフェースである。例えば、入出力部11は、ネットワークを介して他の装置との間でデータ通信を行うためのNIC(Network Interface Card)等の通信インタフェースであってもよい。また、入出力部11は、マウス、キーボード等の入力装置、及びディスプレイ等の出力装置を接続するためのインタフェースであってもよい。
 記憶部12は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。なお、記憶部12は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。記憶部12は、検出装置10で実行されるOS(Operating System)や各種プログラムを記憶する。
 記憶部12は、ルール情報121を記憶する。ルール情報121は、導出ルール及び制約ルールを含む推論規則である。
 制御部13は、検出装置10全体を制御する。制御部13は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。また、制御部13は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部13は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部13は、変換部131、推論部132及び検出部133を有する。
 変換部131は、ネットワークに関する複数の情報のそれぞれを所定の形式の推論規則、すなわちファクトに変換する。例えば、変換部131は、ネットワークに関する情報を解集合プログラミングの述語に変換する。また、例えば、変換部131は、ノードとして存在するアドレスの情報、アドレスが存在するネットワーク上の領域を示す情報、アドレスとリッスンしているポートを対応付けた情報のうちの少なくともいずれかをファクトに変換する。
 推論部132は、ファクト及びあらかじめ設定された推論規則からなるプログラムを充足する述語の組み合わせを推論により得る。例えば、推論部132は、変換部131によって得られた述語から、推論規則(例えば、導出ルール)によって導出される述語を解集合に含める述語の候補として得る。また、例えば、推論部132は、変換部131によって得られた述語及び推論部132によって導出された述語のうち、推論規則(例えば、制約ルール)と矛盾しない述語の組み合わせを解集合として得る。
 図3の例では、ファクト「client(10.0.1.2)←」は所定の形式の推論規則の一例である。また、ファクト「listen(10.0.1.2,8080)←」はあらかじめ設定された推論規則の一例である。また、「client(10.0.1.2)」及び「proxy(10.0.1.2)」は、第1の推論規則(導出ルール)を基に導出された述語の一例である。ただし、これらの述語は、第2の推論規則(制約ルール)に基づき、最終的に出力される解集合から除外される場合がある。
(推論規則の例)
 図3等で例示したもの以外にも、検出装置10は、下記の(1)~(5)に示すような推論規則を用いることができる。(1)~(5)は、あるノードがプロキシであるか否かを導出するための導出ルールの例である。
(1)proxy(X)←tcp_dest(X,8080),not ¬proxy(X)
(2)proxy(X)←tcp_dest(X,8000),not ¬proxy(X)
(3)proxy(X)←has_xff_header(X)
(4)proxy(YA)←http_req(XA,XP,YA,YP,URL),http_req(YA,YP′,ZA,ZP,URL)
(5)¬proxy(X)←in_global(X)
 「not」は真でないこと(真であることが確認できないこと)を意味するので、例えば(1)は、「TCP通信の宛先がXのポート8080であり、Xがプロキシでないことが確認できなければ、Xはプロキシである」ことを意味する。
 http_reqの各引数は、左からHTTPリクエストの送信元アドレス、送信元ポート、宛先アドレス、宛先ポート、URLに相当する。つまり、(4)は、「第1のHTTPリクエストの送信元アドレスと第2のHTTPリクエストの宛先アドレスYAが一致し、かつ両者のURLが一致する場合、YAはプロキシである可能性がある」ことを意味する。ただし、(4)については、XA、XP等のYA以外の引数に他の条件が要求される場合がある。
 なお、has_xff_header(X)は、Xが送信するHTTPリクエストにX-Forwarded-Forヘッダが付加されていることを意味する。また、in_global(X)は、ノードXがグローバルエリアネットワーク上に存在することを意味する。
[第1の実施形態の処理]
 図5は、第1の実施形態に係る検出装置の処理の流れを示すフローチャートである。まず、検出装置10は、複数のNW情報の入力を受け付ける(ステップS101)。次に、検出装置10は、各NW情報を述語に変換する(ステップS102)。
 例えば、複数のNW情報は、NW構成情報とセキュリティログであってもよいし、出力日時が異なる複数のセキュリティログであってもよい。
 ここで、検出装置10は、述語を基に推論を実行する(ステップS103)。例えば、検出装置10は、導出ルールを基に、ファクトから述語を導出し、述語の組み合わせを解集合の候補として得る。また、例えば、検出装置10は、制約ルールを基に、矛盾する述語の組み合わせを含む解集合の候補を除外する。
 そして、検出装置10は、推論によって得られた解集合を出力する(ステップS104)。例えば、分析官は、出力された解集合を参照してNW構成の変化を検出することができる。例えば、解集合が1つも出力されなかった場合、分析官はNW構成が変化したことを検出する。
[第1の実施形態の効果]
 これまで説明してきたように、変換部131は、ネットワークに関する情報を所定の形式の推論規則(ファクト)に変換する。推論部132は、所定の形式の推論規則(ファクト)とあらかじめ設定された推論規則(導出ルール、制約ルール)とを充足する解集合を推論によって得る。このように、検出装置10は、ネットワークに関する情報を推論規則に変換するため、異なる情報から論理的な推論手法によりネットワーク構成に関する情報を得ることができる。この結果、本実施形態によれば、組織内の詳細なNW構成の変化をパッシブな情報から把握することができる。
 ここで、MSSを実施するにあたり、顧客先においてNW構成が正確に把握されていないことや、NW構成が社外秘であることから、分析官が詳細なNW図等を入手できない場合がある。そのような場合であっても、本実施形態によれば、分析官は、セキュリティログ等の入手可能な限られた情報からNW図の誤りを検出することができる。
 また、入手した情報に、記載に誤りがある、変更が反映されていない、分析に必要な情報が記載されていない、必要以上の情報が記載されている等の問題がある場合がある。そのような場合であっても、本実施形態によれば、適切な推論規則を設定しておくことにより、分析官は必要な粒度のNW構成を把握することができる。
 変換部131は、ネットワークに関する情報を解集合プログラミングの述語に変換する。推論部132は、変換部131によって得られた述語から、導出ルールによって解集合に含める述語を導出し、解集合の候補として述語の組み合わせを得る。これにより、検出装置10は、ファクトに明に含まれていない情報を導出することができる。
 推論部132は、導出ルールによって導出された解集合の候補から、制約ルールによって制約される述語の組み合わせを除外する。これにより、検出装置10は、ファクトに含まれる実際のNW構成と矛盾する組み合わせを除外することができる。
 なお、推論部132は、明示的に設定された制約ルール以外にも、暗黙的な制約ルールによって述語の組み合わせを除外してもよい。この場合、例えば、推論部132は、proxy(a)と¬proxy(a)といった、相反する述語の組み合わせを除外する。
 変換部131は、ノードとして存在するアドレスの情報、アドレスが存在するネットワーク上の領域を示す情報、アドレスとリッスンしているポートを対応付けた情報のうちの少なくともいずれかをファクトに変換する。これにより、検出装置10は、クライアントからプロキシ、又はプロキシからクライアントへの役割の変化を検出することができる。
[システム構成等]
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU(Central Processing Unit)及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。なお、プログラムは、CPUだけでなく、GPU等の他のプロセッサによって実行されてもよい。
 また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 一実施形態として、検出装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の検出処理を実行する検出プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の検出プログラムを情報処理装置に実行させることにより、情報処理装置を検出装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
 また、検出装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の検出処理に関するサービスを提供する検出サーバ装置として実装することもできる。例えば、推論サーバ装置は、セキュリティログを入力とし、検出結果を出力とする検出サービスを提供するサーバ装置として実装される。この場合、検出サーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の検出処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
 図6は、検出プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、検出装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、検出装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
 また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 10 検出装置
 11 入出力部
 12 記憶部
 13 制御部
 121 ルール情報
 131 変換部
 132 推論部

Claims (6)

  1.  ネットワークに関する複数の情報のそれぞれを所定の形式の推論規則に変換する変換部と、
     前記所定の形式の推論規則とあらかじめ設定された推論規則の両方を充足する解集合を推論によって得る推論部と、
     を有することを特徴とする検出装置。
  2.  前記変換部は、前記ネットワークに関する情報を解集合プログラミングの述語に変換し、
     前記推論部は、前記変換部によって得られた述語から、第1の推論規則によって解集合の候補として述語の組み合わせを導出することを特徴とする請求項1に記載の検出装置。
  3.  前記推論部は、前記第1の推論規則によって導出された解集合の候補から、第2の推論規則によって制約される述語の組み合わせを除外することを特徴とする請求項2に記載の検出装置。
  4.  前記変換部は、ノードとして存在するアドレスの情報、アドレスが存在するネットワーク上の領域を示す情報、アドレスとリッスンしているポートを対応付けた情報のうちの少なくともいずれかを論理式に変換することを特徴とする請求項1に記載の検出装置。
  5.  検出装置によって実行される検出方法であって、
     ネットワークに関する複数の情報のそれぞれを所定の形式の推論規則に変換する変換工程と、
     前記所定の形式の推論規則とあらかじめ設定された推論規則の両方を充足する解集合を推論によって得る推論工程と、
     を含むことを特徴とする検出方法。
  6.  コンピュータを、請求項1から4のいずれか1項に記載の検出装置として機能させるための検出プログラム。
PCT/JP2020/039193 2020-10-16 2020-10-16 検出装置、検出方法及び検出プログラム WO2022079921A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2020/039193 WO2022079921A1 (ja) 2020-10-16 2020-10-16 検出装置、検出方法及び検出プログラム
JP2022556827A JPWO2022079921A1 (ja) 2020-10-16 2020-10-16
US18/024,778 US20230316114A1 (en) 2020-10-16 2020-10-16 Detection device, detection method, and detection program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/039193 WO2022079921A1 (ja) 2020-10-16 2020-10-16 検出装置、検出方法及び検出プログラム

Publications (1)

Publication Number Publication Date
WO2022079921A1 true WO2022079921A1 (ja) 2022-04-21

Family

ID=81209063

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/039193 WO2022079921A1 (ja) 2020-10-16 2020-10-16 検出装置、検出方法及び検出プログラム

Country Status (3)

Country Link
US (1) US20230316114A1 (ja)
JP (1) JPWO2022079921A1 (ja)
WO (1) WO2022079921A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020005138A (ja) * 2018-06-28 2020-01-09 日本電信電話株式会社 障害影響範囲の推論装置、障害原因の推論装置、障害影響範囲の推論方法、障害原因の推論方法、及びプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020005138A (ja) * 2018-06-28 2020-01-09 日本電信電話株式会社 障害影響範囲の推論装置、障害原因の推論装置、障害影響範囲の推論方法、障害原因の推論方法、及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SUN, YANTAO ET AL.: "The physical topology discovery for switched Ethernet based on connections reasoning technique", INTERNATIONAL SYMPOSIUM ON COMMUNICATIONS AND INFORMATION TECHNOLOGY, 2005, pages 42 - 45, XP010875543, Retrieved from the Internet <URL:https://ieeexplore.ieee.org/abstract/document/1566795> [retrieved on 20210118], DOI: 10.1109/ISCIT.2005.1566795 *

Also Published As

Publication number Publication date
JPWO2022079921A1 (ja) 2022-04-21
US20230316114A1 (en) 2023-10-05

Similar Documents

Publication Publication Date Title
Hernández Ramos et al. Mqtt security: A novel fuzzing approach
US10255370B2 (en) Automated compliance checking through analysis of cloud infrastructure templates
US7702772B2 (en) Discovering and determining characteristics of network proxies
US10069835B2 (en) Third party program integrity and integration control in web-based applications
US20110055923A1 (en) Hierarchical statistical model of internet reputation
US11088952B2 (en) Network traffic control based on application path
US9880814B1 (en) Dynamic generation of plugins based on user-customized catalogs
EP3149894B1 (en) Assisting application classification using predicted subscriber behavior
US11128641B2 (en) Propagating belief information about malicious and benign nodes
Sandal et al. Reputation based attacker identification policy for multi-access edge computing in internet of things
US20150341358A1 (en) Method and system for determining trusted wireless access points
WO2022079921A1 (ja) 検出装置、検出方法及び検出プログラム
WO2022079920A1 (ja) 推論装置、推論方法及び推論プログラム
Shirani et al. An information theoretic framework for active de-anonymization in social networks based on group memberships
Ruzika et al. Min‐Max quickest path problems
He et al. Securing Cognitive Radio Vehicular Ad hoc Networks with Fog Computing.
Yi et al. Optimised approach for VNF embedding in NFV
US20230081612A1 (en) Third-party gateway for security and privacy
Fitzgerald et al. Aligning Semantic Web applications with network access controls
US11741228B2 (en) System for generating computing network segmentation and isolation schemes using dynamic and shifting classification of assets
EP2950591B1 (en) Method, system and computer program product for determining trusted wireless access points
US11843515B2 (en) Peer risk benchmarking using generative adversarial networks
US11411875B1 (en) Network traffic control based on application identifier
US20240007482A1 (en) Establishing dynamic edge points in a distributed network for agnostic data distribution and recovery
Srivastava et al. Service Selection using Ethereum

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: 20957750

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022556827

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20957750

Country of ref document: EP

Kind code of ref document: A1