WO2023181145A1 - リスク抽出装置、リスク抽出方法、リスク抽出プログラム - Google Patents

リスク抽出装置、リスク抽出方法、リスク抽出プログラム Download PDF

Info

Publication number
WO2023181145A1
WO2023181145A1 PCT/JP2022/013364 JP2022013364W WO2023181145A1 WO 2023181145 A1 WO2023181145 A1 WO 2023181145A1 JP 2022013364 W JP2022013364 W JP 2022013364W WO 2023181145 A1 WO2023181145 A1 WO 2023181145A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
type
scenario
attack
unit
Prior art date
Application number
PCT/JP2022/013364
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/JP2022/013364 priority Critical patent/WO2023181145A1/ja
Priority to JP2023560133A priority patent/JP7433551B1/ja
Publication of WO2023181145A1 publication Critical patent/WO2023181145A1/ja

Links

Images

Classifications

    • 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

Definitions

  • the present disclosure relates to a risk extraction device, a risk extraction method, and a risk extraction program.
  • Conventional technology involves first information that associates the devices that make up the threat analysis target system with the vulnerabilities contained in the devices, and the associated threats from the operator's perspective that are assumed in the devices and the threat analysis target system.
  • a threat analysis processing unit that associates vulnerabilities included in the device with threats in the threat analysis target system based on the second information obtained by the threat analysis processing unit; and outputs a relationship between the vulnerabilities and threats associated by the threat analysis processing unit.
  • a threat analysis system that includes a threat analysis result output unit (for example, Patent Document 1).
  • the above-mentioned threat analysis system analyzes the security vulnerabilities included in a certain device and the threats that are related to that device among the threats assumed from the operator's perspective in the system to be analyzed (hereinafter referred to as the target system). Output in association with. This makes it possible to speed up the extraction of combinations that can establish a causal relationship among the combinations of the vulnerability of the device and the unsafe state of the target system.
  • the above-mentioned threat analysis system cannot be applied unless it has access to the target system in operation. Specifically, it is necessary to execute test code on a running target system or request the running target system to provide software information. Such access is undesirable when the system is in production because it increases the possibility of system performance deterioration and malfunctions. The above problem is particularly serious in systems that require real-time performance and reliability.
  • the present disclosure has been made to solve the above-mentioned problems, and aims to enable risk extraction from both safety and security perspectives in a target system without accessing the target system.
  • a risk extraction device includes an input unit that receives input of a scenario including a state of a controlled object, a storage unit that stores in advance an attack method list that is information listing details of an attack, and a a first type assigning unit that receives the scenario and assigns a scenario type to the scenario according to a keyword included in the scenario; a second classification assigning section that assigns a second type to a risk; an extracting section that extracts as a risk a combination of the scenario type and the attack type that follows a predetermined causal relationship; and an output unit that outputs output information that is information listing the risks.
  • the risk extraction device of the present disclosure assigns a type to each scenario and attack content according to the keywords included therein, and determines whether a predetermined causal relationship is followed based on the assigned type. This makes it possible to extract risks using abstract design information such as scenarios and attack details, or design information written in natural language. Therefore, risks in the target system can be extracted from both the safety and security perspectives without accessing the target system.
  • FIG. 1 is a diagram showing a target system according to Embodiment 1.
  • FIG. 1 is a functional configuration diagram of a risk extraction device according to Embodiment 1.
  • FIG. 1 is a hardware configuration diagram of a risk extraction device according to Embodiment 1.
  • FIG. 3 is a diagram showing an attack method list according to the first embodiment.
  • FIG. 3 is a diagram showing first keyword information according to the first embodiment.
  • FIG. 7 is a diagram showing second keyword information according to the first embodiment.
  • FIG. 3 is a diagram showing a scenario according to the first embodiment.
  • FIG. 7 is a diagram showing first factor information according to the first embodiment.
  • FIG. 7 is a diagram showing second factor information according to the first embodiment.
  • FIG. 3 is a diagram showing extraction results by the extraction unit according to the first embodiment.
  • FIG. 7 is a diagram showing first keyword information according to Embodiment 2;
  • FIG. 7 is a diagram showing first factor information according to Embodiment 2;
  • FIG. 7 is a diagram showing second factor information according to Embodiment 2;
  • FIG. 7 is a diagram showing extraction results according to Embodiment 2;
  • FIG. 7 is a diagram showing output information according to Embodiment 2.
  • FIG. 7 is a diagram showing a risk extraction device according to Embodiment 3;
  • FIG. 7 is a diagram showing degree information according to Embodiment 3;
  • 7 is a diagram showing a priority calculation table according to Embodiment 3.
  • FIG. 7 is a diagram showing priority calculation results according to Embodiment 3;
  • FIG. 7 is a diagram showing output information according to Embodiment 3;
  • 7 is a flowchart showing the operation of the risk extraction device according to Embodiment 3.
  • FIG. 7 is a diagram showing a risk extraction device according to a fourth embodiment.
  • FIG. 7 is a diagram showing target system configuration information according to Embodiment 4;
  • FIG. 7 is a diagram showing search results according to Embodiment 4.
  • FIG. 7 is a diagram showing output information according to Embodiment 4.
  • 12 is a flowchart showing the operation of the risk extraction device according to Embodiment 4.
  • 10 is a flowchart showing the operation of a search unit according to Embodi
  • Embodiment 1 will be described in detail below based on the drawings. Note that in the first embodiment, a system equipped with ADAS (Advanced Driver Assistance Systems) is used as a target system, but the present disclosure is applicable not only to the above-mentioned target system but also to any target system.
  • ADAS Advanced Driver Assistance Systems
  • FIG. 1 is a diagram showing a target system according to the first embodiment.
  • the target system 100 includes a detection target 110 and a vehicle 120.
  • the detection target is a pedestrian or obstacle that should be avoided, or a road sign that provides information for traffic.
  • the vehicle includes a sensor 121, an ECU 122 (Electronic Control Unit), and a drive system 123.
  • ECU 122 Electronic Control Unit
  • drive system 123 The vehicle includes a sensor 121, an ECU 122 (Electronic Control Unit), and a drive system 123.
  • the sensors are a camera 121a, a radar 121b, and a lidar 121c, which generate detection information 124 by detecting a detection target in the detection area 130 and transmit it to the ECU 122.
  • the detection information 124 includes information on whether the detection target 110 exists or not, information on what the detected detection target 110 is (for example, a pedestrian, an obstacle, a road sign), and information based on the vehicle 120. This is information indicating the direction and distance in which the detection target 110 is located.
  • the ECU 122 controls the drive system 123 using the detection information 124 from the sensor 121. For example, when the sensor 121 generates detection information 124 indicating that a pedestrian is in the direction of travel and is close to the pedestrian, the ECU 122 controls the drive system 123 to prevent the vehicle 120 from colliding with the pedestrian. Instruct the driver to apply the brakes.
  • the drive system 123 is a device that receives a brake instruction from the ECU 122 and makes the wheels 125 stand still. Note that the drive system drives the wheels 125 in response to an operation (eg, accelerator pedal) from a driver (not shown).
  • an operation eg, accelerator pedal
  • FIG. 2 is a functional configuration diagram of the risk extraction device according to the first embodiment.
  • the risk extraction device 200 includes a storage section 201 , an input section 202 , a first classification section 203 , a second classification section 204 , an extraction section 205 , and an output section 206 .
  • FIG. 3 is a hardware configuration diagram of the risk extraction device 200 according to the first embodiment.
  • the risk extraction device 200 includes a calculation device 207, a storage device 208, an input/output device 209, and a bus 210.
  • the arithmetic unit 207, the storage device 208, and the input/output device 209 exchange information with each other via the bus 210.
  • the arithmetic unit 207 is, for example, a CPU (Central Processing Unit), a DSP (Digital Signal Processor), a GPU (Graphical Processing Unit), or an FPGA (File ld-Programmable Gated Array).
  • the first classification section 203, the second classification section 204, and the extraction section 205 are implemented as an arithmetic device 207.
  • the storage device 208 is a FLASH memory, an HDD (Hard Disk Drive), or an SSD (Solid State Drive).
  • the storage unit 201 is implemented as a storage device 208.
  • the input/output device 209 is, for example, a keyboard, mouse, or display.
  • the input section 202 and the output section 206 are implemented as an input/output device 209.
  • the storage unit 201 stores in advance an attack method list 211, first keyword information 212, and second keyword information 213.
  • FIG. 4 is a diagram showing an attack method list 211 according to the first embodiment.
  • the attack content 214 may be given an attack ID 215, which is an identifier for distinguishing it from other attack content 214, and is given an ID value with "attack" as a prefix.
  • the attack content 214 is the content of a generally assumed attack, and is written in natural language. In the first embodiment, it is assumed that the attack method list 211 stores M attack details 214.
  • the risk extraction device 200 is used to extract risks not only for the target system 100 illustrated in the first embodiment but also for any control.
  • a security expert should list a large number of attacks on sensors that are generally expected, not just the target system 100 shown in FIG. 1, and store them in the storage unit 201 before starting the development of the target system. Good. This work may be performed, for example, before the development of the target system 100 is planned.
  • FIG. 5 is a diagram showing the first keyword information 212 according to the first embodiment.
  • the first keyword information 212 includes a code 218 associated with each keyword 217 that is assumed to be included in the scenario 216 (code "1: unable to start control" or code “2: incorrect control start”). ”).
  • the keyword 217 may be given a keyword ID 219 to distinguish it from other keywords 217, and is given an ID value with "scenario_key" as a prefix.
  • the first keyword information 212 is used by the first type assigning unit 203 to generate a scenario type 220 (details will be described later). In the first embodiment, it is assumed that the first keyword information 212 stores I keywords 217.
  • FIG. 6 is a diagram showing the second keyword information 213 according to the first embodiment.
  • the second keyword information 213 is basically the same as the first keyword information 212, except that the target of the keyword 221 is not the scenario 216 but the attack content 214, and the associated code 222 is "3: The difference is that the ID value of the keyword ID 223 is "detection interference" or "4: false detection", and that "attack_key” is used as a prefix for the ID value of the keyword ID 223.
  • the second keyword information 213 is used by the second type assigning unit 204 to generate the attack type 224 (details will be described later). In the first embodiment, it is assumed that the second keyword information 213 stores J keywords 221.
  • the input unit 202 accepts input of a scenario 216.
  • the input section 202 passes the scenario 216 to the first classification section 203.
  • FIG. 7 is a diagram showing a scenario 216 according to the first embodiment.
  • the scenario 216 may be given a scenario ID 225, which is an identifier for distinguishing it from other scenarios 216, and is given an ID value with "scenario" as a prefix.
  • the scenario 216 describes, in natural language, the state of the controlled object and the flow leading to that state. Note that the controlled object corresponds to the vehicle 120, the drive system 123, the wheels 125, etc. in the first embodiment, but what it corresponds to is arbitrary depending on how you understand what "control" refers to.
  • the scenario 216 is information input by the designer, and describes an unsafe event assumed in the controlled object. In the first embodiment, it is assumed that N scenarios 216 are input to the input unit 202.
  • the first type assigning unit 203 receives the scenarios 216 from the input unit 202, generates a scenario type 220 according to the keyword 217 included in each of the scenarios 216, and assigns the scenario type 220 to each of the scenarios 216. This is factor information 226.
  • FIG. 8 is a diagram showing the first factor information 226 according to the first embodiment.
  • the scenario type 220 indicates either a first sign that a control that should be started cannot be started, or a second sign that a control that should not be started is started.
  • the code “1: Control cannot be started” indicates that the control to be started cannot be started.
  • the code “2: Incorrect start of control” indicates a type of control in which a control that should not be started is started.
  • the first type assigning unit 203 searches for a keyword 217 that appears in both the first keyword information 212 and the target scenario 216. For example, the keyword “not communicated” appears in scenerio01 and is also listed in the first keyword information 212. Further, the keyword “not communicated” is associated with the associated code "1: Control cannot be started” in the first keyword information 212. Therefore, the first type assigning unit 203 assigns the code "1: Control cannot be started” to scenario01.
  • the keywords 217 listed in the first keyword information 212 include, as shown in FIG. It can also be a keyword.
  • the first type assigning unit 203 (the second type assigning unit 204 to be described later) in the present disclosure assigns a type by associating it with a keyword, so the design of the target system 100 Information (for example, technical data written in natural language or a design model of the target system created by model-based development) can be utilized as the scenario 216 and attack method list 211 in the present disclosure.
  • the risk extraction device of the present disclosure can extract risks without accessing the target system 100 using the scenario 216 and attack method list 211 input by a designer or security expert.
  • the risk extraction device of the present disclosure can utilize the design document of the target system 100 as the scenario 216 and the attack method list 211 even in the design stage where the implementation of the target system 100 is not completed. Therefore, the risk extraction device of the present disclosure can extract risks using the scenario 216 and attack method list 211 input by the designer or security expert even at the design stage of the target system 100.
  • the second type assigning unit 204 reads the attack details 214 from the attack method list 211 stored in the storage unit 201, generates attack types 224 according to the keywords included in each of the attack details 214, and 214, it becomes second factor information 227.
  • FIG. 9 is a diagram showing the second factor information 227 according to the first embodiment.
  • the attack type 224 indicates either one or both of a third code in which an existing detection target 110 is not detected, and a fourth code in which a non-existent detection target 110 is detected.
  • the code "3: Detection interference” indicates a type in which the detection of the existing detection target 110 is not allowed.
  • “4: False detection” indicates a type in which a non-existent detection target 110 is detected.
  • the second type assigning unit 204 searches for a keyword 221 that appears in both the second keyword information 213 and the target attack content 214. For example, the keyword “obstruction” appears in attack03 and is also listed in the second keyword information 213. Further, the keyword 221 “disturbance” is associated with the associated code “3: detection disturbance” in the second keyword information 213. Therefore, the second type assigning unit 204 assigns the code "3: Detection interference” to attack03. Similarly, attack03 includes the keyword 221 “false detection”, and “false detection” is associated with the associated code “4: false detection” in the second keyword information 213, so attack03 includes The code “4: False detection” is also given.
  • the keywords 221 listed in the second keyword information 213 include keywords such as “shielding,” “jamming,” “deception,” “false detection,” “dummy,” and “spoofing.” But it's okay.
  • the extraction unit 205 extracts a combination of the first factor information 226 and the second factor information 227 that follows a predetermined causal relationship as a risk 228, and sends it to the output unit 206.
  • risk 228 refers to a combination of scenario 216 and attack content 214 that is determined to follow a predetermined causal relationship.
  • FIG. 10 is a diagram showing the extraction results by the extraction unit 205 according to the first embodiment.
  • combinations of the scenario 216 and the attack details 214 are listed in the form of a correspondence table between the scenario ID 225 and the attack ID 215. Since all combinations are listed, the total number is N ⁇ M.
  • an extraction result 229 is provided for each combination.
  • the extraction result 229 is a flag that takes a value of either TRUE or FALSE; TRUE indicates that the extraction target has been selected, and FALSE indicates that the extraction target has not been selected.
  • combinations for which the extraction result 229 is TRUE are those in which the scenario type 220 indicates the first code and the attack type 224 indicates the third code, or the scenario type 220 indicates the second code.
  • the above-mentioned conditions are set in advance for the extraction section.
  • the above-mentioned preset conditions correspond to a predetermined causal relationship.
  • the extraction unit 205 may be unable to start correct control as a result of detection being obstructed, or may start incorrect control as a result of being forced to detect a non-existent detection target.
  • the combination can be extracted as a risk 228.
  • the output unit 206 outputs output information 230 that is information listing the risks 228 extracted by the extraction unit 205.
  • the output information 230 is information that the designer views.
  • FIG. 11 is a diagram showing output information 230 according to the first embodiment.
  • only the extracted risks 228 that is, the extraction result 229 was TRUE in FIG. 10 are listed in the form of a correspondence table between the scenario ID 225 and the attack ID 215.
  • a scenario 216 and attack details 214 are also shown for easy viewing by the designer. The designer can understand the risks 228 by viewing this correspondence table. Specifically, the designer can grasp the details of an attack 214 that may be made against the ECU 122 and the accident (that is, scenario 216) that may result from the attack details 214.
  • FIG. 12 is a flowchart showing the operation of the risk extraction device 200 according to the first embodiment.
  • the storage unit 201 has previously stored an attack method list 211, first keyword information 212, and second keyword information 213 before starting the operation of FIG. 12.
  • the input unit 202 receives input of the scenario 216 (step S101).
  • the first type assigning unit 203 generates a scenario type 220 according to the keyword 217 included in the scenario 216, and assigns it to the scenario 216 as first factor information 226 (step S102).
  • the second type adding unit 204 generates an attack type 224 according to the keyword 221 included in the attack content 214, and sets it as second factor information 227 by adding it to the attack content 214 (step S103).
  • the extraction unit 205 extracts, as a risk 228, a combination of the first factor information 226 and the second factor information 227 that follows a predetermined causal relationship between the scenario type 220 and the attack type 224 (step S104).
  • the output unit 206 outputs output information 230, which is information listing the risks 228 extracted by the extraction unit 205 (step S105).
  • step S102 details of the operation of the first type assigning unit 203 (step S102) will be explained.
  • step S103 operation of the second type assigning unit 204 (step S103) is the same except that the scenario 216 is replaced with the attack content 214 and the first keyword information 212 is replaced with the second keyword information 213, so the explanation will be omitted. omitted.
  • FIG. 13 is a flowchart showing the operation of the first type assigning unit 203 according to the first embodiment.
  • the first classification section 203 selects one scenario from among the N scenarios 216 input from the input section 202 .
  • a scenario 216 selected by a variable n taking a value of 1 to N is shown.
  • the first type assigning unit 203 assigns 1 to the variable n and selects scenario01 in FIG. 7 (step S201).
  • the first type assigning unit 203 extracts a plurality of keywords from the target scenario 216 (step S202). This processing is realized by a process of dividing a sentence into words, which is already known in the world.
  • FIG. 13 is a flowchart showing the operation of the first type assigning unit 203 according to the first embodiment.
  • the first classification section 203 selects one scenario from among the N scenarios 216 input from the input section 202 .
  • a scenario 216 selected by a variable n taking a value of 1 to N is shown.
  • the first type assigning unit 203 assigns 1 to the variable k and initializes selection of the extracted keyword (step S203).
  • the first type assigning unit 203 selects one keyword 217 from the first keyword information 212.
  • the variable i which takes a value from 1 to I, indicates the keyword 217 selected from the first keyword information 212, and the selected keyword 217 is referred to as "keyword i.” That is, by assigning 1 to the variable i, scenario_key01 in FIG. 5 is selected (step S204).
  • the first type determination unit 203 reads the code 218 associated with the keyword k (step S206), and further, the read code 218 associated with the target scenario 216 has not been assigned yet (step S207), the read associated code 218 is assigned to the target scenario 216 (step S208). The associated code 218 is read out by referring to the first keyword information 212. If the variable i has not reached I, the first type assigning unit 203 adds 1 to the variable i (step S210) and returns to step S205. If variable i has reached I, it is determined whether variable k has reached K (step S211), and if not, 1 is added to variable k (step S212), and the process returns to step S204.
  • variable k has reached K
  • n has reached N
  • step S214 If the variables i, k, and n have reached I, K, and N, respectively, the operation in FIG. 13 ends.
  • step S104 details of the operation of the extraction unit 205 (step S104) will be explained.
  • FIG. 14 is a flowchart showing the operation of the extraction unit 205 according to the first embodiment.
  • the extraction unit 205 selects one of the first factor information 226 that has not been selected yet.
  • a scenario 216 selected by a variable n taking a value of 1 to N is shown.
  • the extraction unit 205 assigns 1 to the variable n and selects scenario01 in FIG. 8 (step S301).
  • one of the second factor information 227 that has not been selected yet is selected.
  • the content 214 of the selected attack is indicated by a variable m taking a value from 1 to M.
  • the first extraction unit 205 assigns 1 to the variable m and selects attack01 in FIG. 9 (step S302).
  • step S303 it is determined whether the combination follows a causal relationship by comparing the scenario type 220 and the attack type 224 (step S303 ), if it is determined that the combination follows a causal relationship, the combination is regarded as the risk 228 to be extracted (step S304).
  • step S305 if the variable m has not reached M (step S305), 1 is added to the variable m (step S306), and the process returns to step S303.
  • step S307 it is determined whether the variable n has reached N (step S307), and if it has, 1 is added to the variable n (step S308), and the process returns to step S302. If the variables m and n have reached M and N, respectively, the operation in FIG. 14 ends.
  • the first type assignment unit 203 assigns the scenario type 220 according to the keyword 217 included in the scenario 216, and assigns the scenario type 220 according to the keyword 217 included in the scenario 216.
  • the assigning unit 204 assigns an attack type 224 according to the keyword 221 included in the attack content 214, and the extracting unit 205 assigns a combination of the scenario type 220 and the attack type 224 that follows a predetermined causal relationship as a risk. Extract as 228. This takes as input design information such as scenarios and attack details, or written in natural language, and identifies combinations that follow predetermined causal relationships (hypotheses that are likely to hold) as risks. It can be extracted as Therefore, risk extraction from the viewpoints of both safety and security in the target system 100 can be performed without accessing the target system 100.
  • the scenario type 220 indicates either a first code that a control that should be started cannot be started or a second code that a control that should not be started is started, and the attack type 224 is , a third code that indicates that an existing detection target is not detected, and a fourth code that indicates that a non-existent detection target is detected, and the extraction unit 205 extracts the scenario type 220 from the first code. and the attack type 224 indicates the third code, or the scenario type 220 indicates the second code and the attack type 224 indicates the fourth code. It is determined that the combination follows the specified causal relationship.
  • Embodiment 2 the criteria for determining that a causal relationship is followed are that correct control cannot be started as a result of interference with detection of the detection target 110, or that incorrect control occurs as a result of detection of a detection target 110 that does not actually exist.
  • An example of using the criterion of whether either of the following is true is shown: ⁇ control is started''.
  • the type of related sensor 121 is used as another criterion. Note that the basic configuration and operating principle of the second embodiment are the same as those of the first embodiment, and what is substantially different is the content of information such as the first keyword information 212. I will only explain the contents.
  • FIG. 15 is a diagram showing the first keyword information 212 according to the second embodiment.
  • This embodiment is similar to the first embodiment in that a keyword ID 219, a keyword 217, and an associated code 218 are present as column items, but the values of these items are different.
  • the types of sensors 121 for example, camera 121a, radar 121b, lidar 121c
  • the keywords 217 are associated with the types of sensors 121.
  • Contains keywords such as:
  • the second keyword information 213 also has the same content as in FIG. 15.
  • the two pieces of duplicated information may be treated as the first keyword information 212 and the second keyword information 213, respectively, or one piece of information may be commonly referred to and the first keyword information 212 and the second
  • the keyword information 213 may also serve as the keyword information 213.
  • the first type assigning unit 203 and the second type assigning unit 204 generate types based on the type of the sensor 121 based on the information shown in FIG. be granted.
  • FIG. 16 is a diagram showing the first factor information 226 according to the second embodiment.
  • the difference from Embodiment 1 is the value of the scenario type 220.
  • scenerio01 includes the keyword "distance", but "distance” is associated with the associated code 218 "rider” in the first keyword information 212 shown in FIG. . Therefore, the first type assigning unit 203 generates and assigns "rider 121c" as the scenario type 220 to scenario01.
  • FIG. 17 is a diagram showing the second factor information 227 according to the second embodiment. Similar to the first factor information 226, the difference from the first embodiment is the attack type 224. For example, since attack07 includes the keyword "distance", the second type assigning unit 204 uses the keyword "rider 121c" based on the information shown in FIG. 15 similarly to the first type assigning unit 203. Generate a type value.
  • FIG. 18 is a diagram showing the extraction result 229 according to the second embodiment. For example, scenario01 and attack07 are given a common type of "rider 121c.” The extraction unit 205 in the second embodiment determines that such combinations in which the types of sensors 121 are common are combinations that follow a causal relationship.
  • FIG. 19 is a diagram showing output information 230 according to the second embodiment. In FIG. 19, only combinations for which the extraction result 229 in FIG. 18 is "TRUE" are listed.
  • the scenario type 220 and the attack type 224 indicate the type of the sensor 121
  • the extraction unit 205 extracts the scenario type 220 and the attack type.
  • a combination having the same value as 224 is determined to be a combination that follows a predetermined causal relationship.
  • a combination of the scenario 216 and the attack details 214 that are related to the same type of sensor 121 can be extracted as a risk 228.
  • Embodiment 3 In the third embodiment, an example will be shown in which the priority of risk countermeasures is also calculated. Note that the priority in the present disclosure is an index indicating which risk 228 the designer should prioritize in taking countermeasures.
  • FIG. 20 is a diagram showing a risk extraction device according to Embodiment 3.
  • degree information 231, priority calculation table 232, priority calculation unit 233, and priority 234 are newly added as constituent elements. Note that other components are basically the same as in the first embodiment.
  • the input unit 202 receives input of degree information 231 and passes it to the priority calculation unit 233.
  • the storage unit 201 stores a priority calculation table 232 in advance.
  • the priority calculation unit 233 calculates the priority 234 of the risk 228 from the degree information 231 and the priority calculation table 232, and passes it to the output unit 206.
  • the output unit 206 outputs output information 230 as information in which risks 228 and priorities 234 are associated with each other.
  • FIG. 21 is a diagram showing degree information 231 according to the third embodiment.
  • the degree information 231 is information input by the designer.
  • extracted risks 228 are shown in a correspondence table between scenario ID 225 and attack ID 215.
  • degree information 231 for each risk 228 is shown by providing degree information 231 as a column item in the correspondence table.
  • the degree information 231 includes at least one of the following: frequency 231a of encountering a situation in which scenario 216 may occur, possibility 231b of avoiding scenario 216 when the above situation is encountered, and severity of the potentially unsafe state 231c. Equipped with Here, regarding the frequency of encounter 231a, E1 has the least frequency and E4 has the highest frequency.
  • degree information 231 is shown only for the extracted risk 228, but this is because the risk 228 extracted by the risk extraction device 220 is displayed for the designer once, and the extracted risk 228 This can be achieved by prompting the designer to input degree information 231 for each (see the flowchart in FIG. 25 for specific procedures).
  • the degree information 231 may be input in units of scenarios 216 or attack details 214 instead of in units of risks 228.
  • the priority calculation unit 233 calculates the priority 234 having the same value for the risks 228 that include the same scenario 216.
  • FIG. 22 is a diagram showing a priority calculation table 232 according to the third embodiment.
  • the priority calculation table 232 is input in advance by the designer.
  • QM has the lowest priority
  • D has the highest priority (in the order of QM, A, B, C, and D).
  • the priority calculation unit 232 calculates the priority 234 by indexing the priority calculation table 232 using the degree information 231.
  • the priority calculation unit 233 may calculate the priority 234 by substituting the value of the degree information 231 into a predetermined formula, for example.
  • FIG. 23 is a diagram showing priority calculation results according to the first embodiment.
  • extracted risks 228 are shown in a correspondence table between scenario ID 225 and attack ID 215.
  • the priority 234 calculated for each risk 228 is shown by providing the priority 234 as a column item in the correspondence table.
  • the risk 228 consisting of the combination of scenario01 and attack07 has an encounter frequency 231a of E2, a possibility of avoidance 231b of C3, and an unsafe state severity level 231c of S3.
  • the priority calculation unit 233 calculates that the priority 234 is B, and the result is shown in FIG.
  • FIG. 24 is a diagram showing output information 230 according to the third embodiment.
  • the difference from the first embodiment is that priority 234 is newly added as a column item.
  • the output unit 206 outputs the risk 228 received from the extraction unit 205 and the priority 234 received from the priority calculation unit 233 in association with each other.
  • FIG. 25 is a flowchart showing the operation of the risk extraction device 200 according to the third embodiment. It is assumed that the storage unit 201 has previously stored the priority calculation table 232 before starting the operation in FIG. 25.
  • the steps added from the first embodiment are S401 and S402.
  • the input unit 202 receives input of degree information 231 for each of the extracted risks 228 (step S401).
  • the priority calculation unit 233 receives the degree information 231 from the input unit 202, and calculates the priority 234 of the risk 228 using the degree information 231 and the priority calculation table 232 (step S402).
  • the output unit associates and outputs the risk 228 received from the extraction unit 205 and the priority 234 received from the priority calculation unit 233 (step S105).
  • the input unit 202 includes the frequency 231a of encountering a situation in which the scenario 216 can occur, and the possibility 231b of avoiding the scenario 216 when the situation is encountered.
  • the risk extraction device 200 receives the degree information 231 from the input unit 202 and determines the priority of the risk 228 from the degree information 231.
  • the output unit 206 includes a priority calculation unit 233 that calculates a priority level 234, and an output unit 206 receives the priority level 234 from the priority calculation unit 233, and outputs the priority level 234 in association with each risk 228. This allows the designer to prioritize and take countermeasures for the risks 228 with a high priority level 234.
  • Embodiment 4 it is assumed that the target system 100 is developed by model-based development, and each of the extracted risks 228 may be related to any part of the design model created by the designer. information indicating whether there is a property is added to the output information 230.
  • FIG. 26 is a diagram showing a risk extraction device 200 according to the fourth embodiment.
  • target system configuration information 235, third keyword information 236, search section 237, and relationship information 238 are newly added as components, but the other components are the same as in Embodiment 3. Same as 3. Note that other components are basically the same as in the third embodiment.
  • the input unit 202 receives input of target system configuration information 235 and passes it to the search unit 237.
  • the storage unit 201 stores third keyword information 236 in advance.
  • the search unit 237 searches for relationship information 238 related to each of the risks 228 from the target system configuration information 235 and the third keyword information 236, and passes it to the output unit 206 (the relationship information 238 will be explained later). do).
  • the output unit 206 outputs output information 230 as information in which the risk 228 and relationship information 238 are associated with each other.
  • FIG. 27 is a diagram showing target system configuration information 235 according to the fourth embodiment.
  • the target system configuration information 235 is information indicating the configuration of the target system 100.
  • the target system configuration information 235 is information input by the designer, and includes, for example, STAMP (Systems-Theoretic Accident Model and Processes)/STPA (Systems-Theoretic Process Analyzes). is) by the designer in the process of conducting safety analysis. Created.
  • the target system configuration information 235 is preferably created in a format that is easy for machines to handle, such as XML (Extensible Markup Language).
  • the target system configuration information 235 indicates that the target system 100 is composed of a detection target 110, a camera 121a, a radar 121b, a lidar 121c, an ECU 122, and a drive system 123. It includes relationship information 238 that is information indicating an output relationship or an effect relationship.
  • the content of the third keyword information 236 is the same as the content of the first keyword information 212 (FIG. 15) shown in the description of the second embodiment.
  • FIG. 28 is a diagram showing search results according to the fourth embodiment.
  • the extracted risks 228 are shown in a correspondence table between the scenario ID 225 and the attack ID 215.
  • relationship information 238 related to each of the extracted risks 228.
  • the search unit 237 searches whether a common keyword exists between the extracted risk 228 and the relationship information 238. For example, as shown in FIG. 4, the keyword 217 "brake instruction" exists in scenario01. As shown in FIG. 12, this keyword 217 is common to brake instruction 239, which is relationship information 238 between ECU 122 and drive system 123. Therefore, in the search results shown in FIG. 13, the brake instruction 239 is shown as the related relationship information 238 for all risks 228 including scenario01.
  • the search unit 237 uses the third keyword information 236 to determine whether a keyword associated with the same type of sensor 121 exists between the extracted risk 228 and the relationship information 238. search for.
  • attack03 includes the keyword 217 "indication”.
  • this keyword 217 is associated with the associated symbol 218, "camera 121a.”
  • Other keywords 217 associated with the associated symbol "camera 121a” include, for example, "camera” and "photography.”
  • these keywords 217 include camera information 240, which is relationship information between the camera 121a and the ECU 122, and photographing results 241, which is relationship information 238 between the detection target 110 and the camera 121a. contains. Therefore, in the search results shown in FIG. 28, camera information 240 and photographing result 241 are shown as relationship information related to risk 228 including attack03.
  • FIG. 29 is a diagram showing output information 230 according to the fourth embodiment.
  • relationship information 238 is newly added as a column item compared to the third embodiment. In this way, by correlating and outputting the relationship information 238 that is likely to be related to the extracted risk 228, the designer can determine which part of the target system configuration information 235 is related to the risk 228. Here are some hints to help you find out what's going on.
  • FIG. 30 is a flowchart showing the operation of the risk extraction device 200 according to the fourth embodiment. Newly added steps compared to the third embodiment are step S501 and step S502.
  • the input unit 202 receives input of target system configuration information 235, and proceeds to step S102. Since the target system configuration information 235 is the same as the scenario 216 in the sense of a design document for the target system, it is preferable that the target system configuration information 235 is executed immediately before or after step S101.
  • the search unit 237 searches for relationship information 238 related to the risk 228 (step S107), and proceeds to step S105.
  • step S107 details of the operation of the search unit 237 (step S107) will be explained.
  • FIG. 31 is a flowchart showing the operation of the search unit 237 according to the fourth embodiment.
  • the search unit 237 selects one of the risks 228 that have not been selected yet (step S601).
  • the keyword included in the selected risk 228 is extracted, and it is determined which associated code the keyword is associated with in the third keyword information 236 (step S602).
  • one piece of relationship information 238 that has not yet been selected is selected (step S603).
  • a keyword included in the selected relationship information 238 is identified, and it is determined which associated code the keyword is associated with in the third keyword information 236 (step S604).
  • step S605 it is determined whether a common keyword or associated code exists between the selected risk 228 and the relationship information 238 (step S605), and if it is determined that there is a common keyword or associated code, the risk 228 and the relationship information 238 are It is assumed that the information 238 is related (step S606).
  • step S607 it is determined whether any unselected relationship information 238 remains (step S607), and if it is determined that any relationship information 238 remains, the process returns to step S603. If it is determined that the relationship information 238 does not remain, it is determined whether any unselected risks 228 remain (step S608), and if it is determined that the risks 228 remain, The process returns to step S601.
  • the input unit 202 receives input of the target system configuration information 235, which is information indicating the configuration of the target system 100, and the risk extraction device 200
  • the target system configuration information 235 is received from the input unit 202, and from the target system configuration information 235, relationships related to the risk 228 are selected from among the relationship information 238, which is information indicating input/output relationships or operational relationships between components.
  • the output unit 206 includes a search unit 237 that searches for gender information 238, and outputs the relationship information 238 in association with each of the risks 228. Thereby, the designer can quickly identify a portion of the target system 100 that is related to the extracted risk 228.
  • Target system 110 Detection target, 120 Vehicle, 121 Sensor, 121a Camera, 121b Radar, 121c Lidar, 122 ECU, 123 Drive system, 124 Detection information, 125 Wheel, 130 Detection area, 200 Risk extraction device, 201 Storage unit, 202 Input section, 203 First classification section, 204 Second classification section, 205 Extraction section, 206 Output section, 207 Arithmetic device, 208 Storage device, 209 Input/output device, 210 Bus, 211 Attack method list, 212 First keyword information, 213 Second keyword information, 214 Attack content, 215 Attack ID, 216 Scenario, 217 Keyword, 218 Associated code, 219 Keyword ID, 220 Scenario type, 221 Keyword, 222 associated with code, 223 keyword ID, 224 attack type, 225 scenario ID, 226 first factor information, 227 second factor information, 228 risk, 229 extraction result, 230 output information, 231 degree information, 231a Frequency of encounter, 231b Pos

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

リスク抽出装置(200)は、シナリオ(216)の入力を受け付け、シナリオ(216)に含まれるキーワードに応じたシナリオの種別(220)を付与する。リスク抽出装置(200)は、攻撃の内容(214)を列挙した情報である攻撃方法リスト(211)を予め記憶し、攻撃の内容(214)に含まれるキーワードに応じた攻撃の種別(224)を付与する。リスク抽出装置(200)は、シナリオの種別(220)と攻撃の種別(224)とが予め定めた因果関係に従う組合せをリスク(228)として抽出する。

Description

リスク抽出装置、リスク抽出方法、リスク抽出プログラム
 本開示は、リスク抽出装置、リスク抽出方法、リスク抽出プログラムに関する。
 複数の機器から構成されるシステムにおいては、各機器が保有するセキュリティ上の脆弱性がシステムを不安全な状態に至らしめることが無いようにする必要がある。そのためには、機器の脆弱性とシステムの不安全な状態との組合せのうち、因果関係が成立し得る組合せの抽出を迅速化することが求められる。
 従来技術としては、脅威分析対象システムを構成する機器と機器に含まれる脆弱性とが対応付けられた第1情報と、機器と脅威分析対象システムで想定される事業者視点の脅威とが対応付けられた第2情報とに基づいて、機器に含まれる脆弱性と脅威分析対象システムにおける脅威とを関連付ける脅威分析処理部と、脅威分析処理部により関連付けられた脆弱性と脅威との関係を出力する脅威分析結果出力部とを備える脅威分析システムがある(例えば、特許文献1)。
特開2019-145053号公報
 上記した脅威分析システムでは、ある機器に含まれるセキュリティ上の脆弱性と、脅威分析対象システム(以降、対象システムと呼ぶ)で想定される事業者視点の脅威のうちその機器と関係性のある脅威とを対応付けて出力する。これにより、機器の脆弱性と対象システムの不安全な状態との組合せのうち、因果関係が成立し得る組合せの抽出を迅速化できる。しかし、上記した脅威分析システムは、稼働中の対象システムにアクセスできないと適用できない。具体的には、稼働中の対象システム上で検査コードを実行したり、稼働中の対象システムに対してソフトウェア情報の提供を要求したりする必要がある。このようなアクセスは、システムを本番として運用中の場合、システムの性能低下や不具合発生の可能性を高めるため、好ましくない。上記問題は、特に、リアルタイム性や信頼性が要求されるシステムにおいて重大である。
 本開示は上述の課題を解決するためになされたもので、対象システムにおける安全性とセキュリティの両方の観点からのリスク抽出を、対象システムにアクセスすることなく行えるようにすることを目的とする。
 本開示に係るリスク抽出装置は、制御対象の状態を含むシナリオの入力を受け付ける入力部と、攻撃の内容を列挙した情報である攻撃方法リストを予め記憶する記憶部と、前記入力部から前記シナリオを受け取り、前記シナリオに含まれるキーワードに応じたシナリオの種別を前記シナリオに対して付与する第一の種別付与部と、前記攻撃の内容に含まれるキーワードに応じた攻撃の種別を前記攻撃の内容に対して付与する第二の種別付与部と、前記シナリオの種別と前記攻撃の種別との組合せのうち、予め定めた因果関係に従う組合せをリスクとして抽出する抽出部と、前記抽出部が抽出した前記リスクを列挙した情報である出力情報を出力する出力部と、を備える。
 本開示のリスク抽出装置は、シナリオと攻撃の内容それぞれについて、それらに含まれるキーワードに応じて種別を付与し、付与した種別に基づいて予め定めた因果関係に従うか判定する。これにより、シナリオや攻撃の内容といった抽象的な、あるいは自然言語で記述された設計情報を用いてリスクを抽出できる。そのため、対象システムにおける安全性とセキュリティの両方の観点からのリスク抽出を、対象システムにアクセスすることなく行える。
実施の形態1に係る対象システムを示す図。 実施の形態1に係るリスク抽出装置の機能構成図。 実施の形態1に係るリスク抽出装置のハードウェア構成図。 実施の形態1に係る攻撃方法リストを示す図。 実施の形態1に係る第一のキーワード情報を示す図。 実施の形態1に係る第二のキーワード情報を示す図。 実施の形態1に係るシナリオを示す図。 実施の形態1に係る第一の因子情報を示す図。 実施の形態1に係る第二の因子情報を示す図。 実施の形態1に係る抽出部による抽出結果を示す図。 実施の形態1に係る出力情報を示す図。 実施の形態1に係るリスク抽出装置の動作を示すフローチャート。 実施の形態1に係る第一の種別付与部の動作を示すフローチャート。 実施の形態1に係る抽出部の動作を示すフローチャート。 実施の形態2に係る第一のキーワード情報を示す図。 実施の形態2に係る第一の因子情報を示す図。 実施の形態2に係る第二の因子情報を示す図。 実施の形態2に係る抽出結果を示す図。 実施の形態2に係る出力情報を示す図。 実施の形態3に係るリスク抽出装置を示す図。 実施の形態3に係る程度情報を示す図。 実施の形態3に係る優先度算出テーブルを示す図。 実施の形態3に係る優先度算出結果を示す図。 実施の形態3に係る出力情報を示す図。 実施の形態3に係るリスク抽出装置の動作を示すフローチャート。 実施の形態4に係るリスク抽出装置を示す図。 実施の形態4に係る対象システム構成情報を示す図。 実施の形態4に係る検索結果を示す図。 実施の形態4に係る出力情報を示す図。 実施の形態4に係るリスク抽出装置の動作を示すフローチャート。 実施の形態4に係る検索部の動作を示すフローチャート。
実施の形態1.
 以下、実施の形態1を図面に基づいて詳細に説明する。なお、実施の形態1では、対象システムとして、ADAS(Advanced Driver Assistance Systems)を搭載したシステムを題材として用いるが、本開示は上記題材に限らず、任意の対象システムに対して適用可能である。
 まず、対象システムの構成について説明する。
 図1は、実施の形態1に係る対象システムを示す図である。対象システム100は、検知対象110と、車両120と、を備える。
 検知対象は、回避すべき対象である歩行者や障害物、または交通のための情報を提供する道路標識である。
 車両は、センサ121と、ECU122(Electronic Control Unit)と、駆動系123と、を備える。
 センサは、カメラ121aと、レーダ121bと、ライダ121cであり、検知領域130に在る検知対象を検知することで検知情報124を生成しECU122に向けて送信する。検知情報124は、検知対象110が在るまたは無いという情報や、検知された検知対象110が何であるか(例えば歩行者か、障害物か、道路標識か)という情報や、車両120を基準として検知対象110が在る方向や距離を示す情報である。
 ECU122は、センサ121からの検知情報124を用いて駆動系123を制御する。例えば、ECU122は、歩行者が進行方向に居て、かつその距離が近いという検知情報124をセンサ121が生成した場合、車両120が歩行者に衝突することを回避するために、駆動系123に対してブレーキを指示する。
 駆動系123は、ECU122からのブレーキの指示を受けて車輪125を静止させる装置である。なお、駆動系は、図示しない運転手からの操作(アクセル等)を受けて、車輪125の駆動を行う。
 次に、リスク抽出装置の構成について説明する。
 図2は、実施の形態1に係るリスク抽出装置の機能構成図である。リスク抽出装置200は、記憶部201と、入力部202と、第一の種別付与部203と、第二の種別付与部204と、抽出部205と、出力部206と、を備える。
 図3は、実施の形態1に係るリスク抽出装置200のハードウェア構成図である。リスク抽出装置200は、演算装置207と、記憶装置208と、入出力装置209と、バス210と、を備える。演算装置207と、記憶装置208と、入出力装置209は、互いにバス210を介して情報の授受を行う。
 演算装置207は、例えばCPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphical Processing Unit)、FPGA(Field-Programmable Gated Array)である。第一の種別付与部203と、第二の種別付与部204と、抽出部205は、演算装置207として実装される。
 記憶装置208は、FLASHメモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)である。記憶部201は、記憶装置208として実装される。
 入出力装置209は、例えばキーボード、マウス、ディスプレイである。入力部202と、出力部206は、入出力装置209として実装される。
 図2の説明に戻る。記憶部201は、攻撃方法リスト211と、第一のキーワード情報212と、第二のキーワード情報213と、を予め記憶する。
 図4は、実施の形態1に係る攻撃方法リスト211を示す図である。攻撃の内容214は、他の攻撃の内容214と区別するための識別子である攻撃ID215が付与されても良く、「attack」を接頭語とするID値を付与している。攻撃の内容214は、一般的に想定される攻撃の内容であり、自然言語にて記述される。実施の形態1では、攻撃方法リスト211は、攻撃の内容214をM個記憶しているものとする。
 ここで、リスク抽出装置200は、実施の形態1において例示した対象システム100に限らず、任意の制御に対するリスク抽出のために用いられることを想定している。セキュリティの専門家は、図1に示した対象システム100に限らず一般的に想定されるセンサへの攻撃を多数列挙し、対象システムの開発の開始よりも前に記憶部201に記憶させておけば良い。この作業は、例えば対象システム100の開発が企画されるよりも以前に実施しても良い。
 図5は、実施の形態1に係る第一のキーワード情報212を示す図である。第一のキーワード情報212は、シナリオ216に含まれ得ると想定される各キーワード217に対して、連想される符号218(符号「一:制御開始できず」または符号「二:誤った制御の開始」)を対応付けた情報である。キーワード217は、他のキーワード217と区別するためのキーワードID219が付与されても良く、「scenario_key」を接頭語とするID値を付与している。第一のキーワード情報212は、第一の種別付与部203がシナリオの種別220を生成するために用いられる(詳細については後段で説明する)。実施の形態1では、第一のキーワード情報212は、キーワード217をI個記憶しているものとする。
 図6は、実施の形態1に係る第二のキーワード情報213を示す図である。第二のキーワード情報213は、第一のキーワード情報212と基本的に同様であるが、キーワード221の対象がシナリオ216ではなく攻撃の内容214である点、また連想される符号222は「三:検知妨害」または「四:誤検知」である点、キーワードID223のID値は接頭語として「attack_key」を用いている点が異なる。第二のキーワード情報213は、第二の種別付与部204が攻撃の種別224を生成するために用いられる(詳細については後段で説明する)。実施の形態1では、第二のキーワード情報213は、キーワード221をJ個記憶しているものとする。
 入力部202は、シナリオ216の入力を受け付ける。入力部202は、シナリオ216を第一の種別付与部203へと受け渡す。
 図7は、実施の形態1に係るシナリオ216を示す図である。シナリオ216は、他のシナリオ216と区別するための識別子であるシナリオID225が付与されても良く、「scenario」を接頭語とするID値を付与している。シナリオ216は、制御対象の至る状態とその状態に至る流れについて自然言語にて記述したものである。なお、制御対象とは、実施の形態1における車両120、駆動系123、車輪125などが相当するが、何に相当するかは「制御」が何を指すかという捉え方次第で任意である。シナリオ216は、設計者によって入力される情報であり、制御対象において想定される不安全な事象を記述したものである。実施の形態1では、入力部202は、シナリオ216がN個入力されたものとする。
 第一の種別付与部203は、入力部202からシナリオ216を受け取り、シナリオ216それぞれに含まれるキーワード217に応じてシナリオの種別220を生成し、シナリオ216それぞれに対して付与することで第一の因子情報226とする。
 図8は、実施の形態1に係る第一の因子情報226を示す図である。シナリオの種別220は、開始すべき制御を開始できないという第一の符号、または開始すべきでない制御を開始してしまうという第二の符号、のいずれか一方を示す。ここで、符号「一:制御開始できず」は、開始すべき制御を開始できないという種別を示す。また、符号「二:誤った制御の開始」は、開始すべきでない制御を開始してしまうという種別を示す。
 ここで、scenario01を例として、第一の種別付与部203がシナリオの種別220として符号「一:制御開始できず」を生成する仕組みについて説明する。第一の種別付与部203は、第一のキーワード情報212にも対象のシナリオ216にも共通して登場するキーワード217を探す。例えば「伝わらず」というキーワードは、scenario01にも登場すると共に、第一のキーワード情報212においても列挙されている。また、「伝わらず」というキーワードは、第一のキーワード情報212において、連想される符号「一:制御開始できず」と対応付けられている。よって、第一の種別付与部203は、scenario01に対して符号「一:制御開始できず」を付与する。
 なお、第一のキーワード情報212に列挙されるキーワード217は、図5に示したとおり、「制御を開始できず(開始してしまい)」、「指示されず(指示してしまい)」等のキーワードでも良い。
 このように、本開示における第一の種別付与部203(後に説明する第二の種別付与部204も同様)は、キーワードから連想して種別を付与するという方法であるため、対象システム100の設計情報(例えば自然言語により記述された技術資料や、モデルベース開発にて作成された対象システムの設計モデル)を本開示におけるシナリオ216や攻撃方法リスト211として活用可能である。つまり、本開示のリスク抽出装置は、対象システム100にアクセスせずとも、設計者やセキュリティの専門家から入力されたシナリオ216や攻撃方法リスト211を用いてリスクを抽出できる。
 また、本開示のリスク抽出装置は、対象システム100の実装が完了していない段階である設計段階においても、対象システム100の設計書をシナリオ216や攻撃方法リスト211として活用可能である。よって、本開示のリスク抽出装置は、対象システム100の設計段階においても、設計者やセキュリティの専門家から入力されたシナリオ216や攻撃方法リスト211を用いてリスクを抽出できる。
 図2の説明に戻る。第二の種別付与部204は、記憶部201が記憶する攻撃方法リスト211から攻撃の内容214を読み取り、攻撃の内容214それぞれに含まれるキーワードに応じて攻撃の種別224を生成し、攻撃の内容214それぞれに対して付与することで第二の因子情報227とする。
 図9は、実施の形態1に係る第二の因子情報227を示す図である。攻撃の種別224は、実在する検知対象110を検知させないという第三の符号、または実在しない検知対象110を検知させるという第四の符号、のいずれか一方または両方を示す。ここで、符号「三:検知妨害」は、実在する検知対象110の検知をさせないという種別を示す。また、「四:誤検知」は、実在しない検知対象110を検知させるという種別を示す。
 ここで、attack03を例として、第二の種別付与部204が攻撃の種別224として符号「三:検知妨害」と「四:誤検知」とを生成する仕組みについて説明する。第二の種別付与部204は、第二のキーワード情報213にも対象の攻撃の内容214にも共通して登場するキーワード221を探す。例えば「妨害」というキーワードは、attack03にも登場すると共に、第二のキーワード情報213においても列挙されている。また、「妨害」というキーワード221は、第二のキーワード情報213において、連想される符号「三:検知妨害」と対応付けられている。よって、第二の種別付与部204は、attack03に対して符号「三:検知妨害」を付与する。同様に、attack03は「誤検知」というキーワード221を含んでおり、「誤検知」は第二のキーワード情報213において連想される符号「四:誤検知」と対応付けられているから、attack03には符号「四:誤検知」も併せて付与する。
 なお、第二のキーワード情報213に列挙されるキーワード221は、図6に示したとおり、「遮蔽」、「ジャミング」、「欺瞞」、「誤検出」、「ダミー」、「なりすまし」等のキーワードでも良い。
 図2の説明に戻る。抽出部205は、第一の因子情報226と第二の因子情報227との組合せのうち、予め定めた因果関係に従う組合せをリスク228として抽出し、出力部206へと送る。本開示では、リスク228とは、シナリオ216と攻撃の内容214との組合せのうち、予め定めた因果関係に従うと判定された組合せを指す。
 図10は、実施の形態1に係る抽出部205による抽出結果を示す図である。図10では、シナリオID225と攻撃ID215との対応表という形で、シナリオ216と攻撃の内容214との組合せを列挙している。すべての組合せを列挙するため、総数はN×M個となる。また、組合せ毎に、抽出結果229を付与している。抽出結果229は、TRUEまたはFALSEのいずれかの値を取るフラグであり、TRUEは抽出対象となったこと、FALSEは抽出対象とならなかったことを示す。
 ここで、抽出結果229がTRUEとなっている組合せは、シナリオの種別220が第一の符号を示しかつ攻撃の種別224が第三の符号を示す、またはシナリオの種別220が第二の符号を示しかつ攻撃の種別224が第四の符号を示す、のいずれか一方を満たす組合せである。上述の条件は、抽出部に対して予め設定されているものとする。つまり、予め設定される上述の条件が、予め定めた因果関係に相当する。これにより、抽出部205は、検知を妨害された結果として正しい制御を開始できない、または実在しない検知対象を検知させられた結果として誤った制御を開始してしまう、のいずれか一方が成立し得る組合せを、リスク228として抽出できる。
 図2の説明に戻る。出力部206は、抽出部205により抽出されたリスク228を列挙した情報である出力情報230を出力する。出力情報230は、設計者が閲覧する情報である。
 図11は、実施の形態1に係る出力情報230を示す図である。図11では、シナリオID225と攻撃ID215との対応表という形で、抽出された(すなわち図10において抽出結果229がTRUEとなっていた)リスク228のみを列挙している。なお、設計者が閲覧し易いよう、併せてシナリオ216と攻撃の内容214も示している。設計者は、この対応表を閲覧することで、リスク228を把握することができる。具体的には、設計者は、ECU122に対して為され得る攻撃の内容214と、その攻撃の内容214により至り得る事故(すなわちシナリオ216)を把握することができる。特に、攻撃の内容214は、設計者ではなくセキュリティの専門家により列挙されていたものであるから、設計者が自身だけでは発想できなかったリスク228も出力情報231にリストアップされることが期待される。設計者は、リスク228を把握した際には、リスク低減策(例えば設計変更)を講じることができる。
 次に、リスク抽出装置200の動作について説明する。 
 図12は、実施の形態1に係るリスク抽出装置200の動作を示すフローチャートである。ここで、記憶部201は、図12の動作の開始前に、予め攻撃方法リスト211、第一のキーワード情報212、第二のキーワード情報213を記憶しているものとする。
 入力部202は、シナリオ216の入力を受け付ける(ステップS101)。第一の種別付与部203は、シナリオ216に含まれるキーワード217に応じてシナリオの種別220を生成し、シナリオ216に対して付与することで第一の因子情報226とする(ステップS102)。第二の種別付与部204は、攻撃の内容214に含まれるキーワード221に応じて攻撃の種別224を生成し、攻撃の内容214に対して付与することで第二の因子情報227とする(ステップS103)。抽出部205は、第一の因子情報226と第二の因子情報227との組合せのうち、シナリオの種別220と攻撃の種別224とが予め定めた因果関係に従う組合せをリスク228として抽出する(ステップS104)。出力部206は、抽出部205により抽出されたリスク228を列挙した情報である出力情報230を出力する(ステップS105)。
 次に、第一の種別付与部203の動作(ステップS102)の詳細について説明する。なお、第二の種別付与部204の動作(ステップS103)は、シナリオ216が攻撃の内容214に置き換わり、第一のキーワード情報212が第二のキーワード情報213に置き換わる以外は同様であるため、説明を省略する。
 図13は、実施の形態1に係る第一の種別付与部203の動作を示すフローチャートである。第一の種別付与部203は、入力部202から入力されたN個のシナリオ216の中から1つを選択する。図13では、1~Nの値を取る変数nにより選択したシナリオ216を示すものとする。第一の種別付与部203は、変数nに1を代入し、図7中のscenario01を選択する(ステップS201)。第一の種別付与部203は、対象のシナリオ216から複数のキーワードを抜き出す(ステップS202)。この処理は、既に世間で知られているような、文章を単語に分割する処理により実現される。図13では、抜き出されたキーワードの個数がK個だと仮定し、また1~Kの値を取る変数kにより抜き出したキーワードのうちのいずれを選択したのか示すものとし、選択されたキーワードを「キーワードk」と呼ぶ。第一の種別付与部203は、変数kに1を代入し、抜き出したキーワードの選択を初期化する(ステップS203)。次に、第一の種別付与部203は、第一のキーワード情報212の中からキーワード217を1つ選択する。ここで、1~Iの値を取る変数iにより第一のキーワード情報212の中から選択したキーワード217を示すものとし、選択されたキーワード217を「キーワードi」と呼ぶ。つまり、変数iに1を代入することにより、図5中のscenario_key01を選択する(ステップS204)。第一の種別判定部203は、キーワードkとキーワードiが一致した場合(ステップS205)、キーワードkから連想される符号218を読み出し(ステップS206)、さらに読み出した連想される符号218が対象のシナリオ216に未だ付与されていない場合(ステップS207)、読み出した連想される符号218を対象のシナリオ216に付与する(ステップS208)。連想される符号218の読み出しは、第一のキーワード情報212を参照することにより実施される。第一の種別付与部203は、変数iがIに達していない場合、変数iに1を加える(ステップS210)と共に、ステップS205へと戻る。変数iがIに達していた場合、変数kがKに達しているか判定し(ステップS211)、達していない場合は変数kに1を加える(ステップS212)と共に、ステップS204へと戻る。変数kがKに達していた場合、変数nがNに達しているか判定し(ステップS213)、達していない場合は変数nに1を加える(ステップS214)と共に、ステップS202へと戻る。変数i、k、nがそれぞれI、K、Nに達していた場合は、図13の動作を終了する。
 次に、抽出部205の動作(ステップS104)の詳細について説明する。
 図14は、実施の形態1に係る抽出部205の動作を示すフローチャートである。抽出部205は、まだ選択されていない第一の因子情報226から1つを選択する。図14では、1~Nの値を取る変数nにより選択したシナリオ216を示すものとする。抽出部205は、変数nに1を代入し、図8中のscenario01を選択する(ステップS301)。次に、まだ選択されていない第二の因子情報227から1つを選択する。図14では、1~Mの値を取る変数mにより選択した攻撃の内容214を示すものとする。第一の抽出部205は、変数mに1を代入し、図9中のattack01を選択する(ステップS302)。次に、選択した第一の因子情報226と第二の因子情報227との組合せについて、シナリオの種別220と攻撃の種別224とを比較することで因果関係に従う組合せであるか判定し(ステップS303)、因果関係に従うと判定された場合には当該組合せを抽出対象のリスク228と見做す(ステップS304)。次に、変数mがMに達していない場合、(ステップS305)、変数mに1を加える(ステップS306)と共に、ステップS303へと戻る。変数mがMに達していた場合、変数nがNに達しているか判定し(ステップS307)、達していた場合には変数nに1を加える(ステップS308)と共に、ステップS302へと戻る。変数m、nがそれぞれM、Nに達していた場合には、図14の動作を終了する。
 以上のように、実施の形態1に係るリスク抽出装置200によれば、第一の種別付与部203は、シナリオ216に含まれるキーワード217に応じたシナリオの種別220を付与し、第二の種別付与部204は、攻撃の内容214に含まれるキーワード221に応じた攻撃の種別224を付与し、抽出部205は、シナリオの種別220と攻撃の種別224とが予め定めた因果関係に従う組合せをリスク228として抽出する。これにより、シナリオや攻撃の内容といった抽象的な、あるいは自然言語で記述された設計情報をインプットとし、それらの組合せのうち、予め定めた因果関係(成立し得ると考えられる仮説)に従う組合せをリスクとして抽出できる。よって、対象システム100における安全性とセキュリティの両方の観点からのリスク抽出を、対象システム100にアクセスすることなく行える。
 また、シナリオの種別220は、開始すべき制御を開始できないという第一の符号、または開始すべきでない制御を開始してしまうという第二の符号、のいずれか一方を示し、攻撃の種別224は、実在する検知対象を検知させないという第三の符号、実在しない検知対象を検知させるという第四の符号、のいずれか一方または両方を示し、抽出部205は、シナリオの種別220が第一の符号を示しかつ攻撃の種別224が第三の符号を示す、またはシナリオの種別220が第二の符号を示しかつ攻撃の種別224が第四の符号を示す、のいずれか一方を満たす組合せを、予め定めた因果関係に従う組合せであると判定する。これにより、実在する検知対象110の検知を妨害された結果として正しい制御を開始できない、または実在しない検知対象110を検知させられた結果として誤った制御を開始してしまう、という具体的な因果関係の仮定に沿ってリスクを抽出できる。
 実施の形態2.
 実施の形態1では、因果関係に従うと判断する基準として、検知対象110の検知を妨害された結果として正しい制御を開始できない、または実際には存在しない検知対象110を検知させられた結果として誤った制御を開始してしまう、のいずれかが成立し得るかという基準を用いる例を示した。実施の形態2では、他の基準として、関係しているセンサ121の種類を基準として用いる例を示す。なお、実施の形態2は、基本的な構成や動作原理は実施の形態1と同一であり、実質的に異なるのは第一のキーワード情報212等の情報の中身であるため、それらの異なる情報の中身についてのみ説明していく。
 図15は、実施の形態2に係る第一のキーワード情報212を示す図である。列項目としてキーワードID219、キーワード217、連想される符号218が存在する点は実施の形態1と同様であるが、それらの項目の値が異なる。具体的には、実施の形態2では、連想される符号218としてセンサ121の種類(例えばカメラ121a、レーダ121b、ライダ121c)が格納されており、キーワード217としてはそれらセンサ121の種類を連想させるようなキーワードが格納されている。
 なお、実施の形態2では、第二のキーワード情報213も図15と同一の内容とする。実装上は、複製した2つの情報それぞれを第一のキーワード情報212と第二のキーワード情報213として扱っても良いし、1つの情報を共通的に参照して第一のキーワード情報212と第二のキーワード情報213を兼ねるようにしても良い。第一の種別付与部203と第二の種別付与部204は、図15に示した情報に基づいて、センサ121の種別を軸とした種別を生成し、それぞれシナリオ216と攻撃の内容214に対して付与する。
 図16は、実施の形態2に係る第一の因子情報226を示す図である。実施の形態1との差異は、シナリオの種別220の値である。例えば、scenario01には「距離」というキーワードが含まれているが、「距離」は図15にて示した第一のキーワード情報212では、連想される符号218の「ライダ」と対応付けられている。よって、第一の種別付与部203は、scenario01に対して「ライダ121c」をシナリオの種別220として生成し付与している。
 図17は、実施の形態2に係る第二の因子情報227を示す図である。第一の因子情報226と同様、実施の形態1との差異は、攻撃の種別224である。例えば、attack07は、「距離」というキーワードが含まれているため、第二の種別付与部204は第一の種別付与部203と同様に図15に示した情報に基づいて、「ライダ121c」という種別の値を生成する。
 図18は、実施の形態2に係る抽出結果229を示す図である。例えば、scenario01とattack07は、「ライダ121c」という共通の種別が付与されている。実施の形態2における抽出部205は、このようなセンサ121の種別が共通する組合せについて、因果関係に従う組合せであると判断する。
 図19は、実施の形態2に係る出力情報230を示す図である。図19では、図18にて抽出結果229が「TRUE」となっている組合せのみを列挙している。
 以上のように、実施の形態2に係るリスク抽出装置200によれば、シナリオの種別220と攻撃の種別224は、センサ121の種別を示し、抽出部205は、シナリオの種別220と攻撃の種別224との値が同一である組合せを、予め定めた因果関係に従う組合せであると判定する。これにより、同一のセンサ121の種別と関係しているシナリオ216と攻撃の内容214との組合せを、リスク228として抽出することができる。なお、実施の形態1と2では、異なる観点で因果関係に従う組合せであると判定しているが、これらの観点を組み合わせて判定しても良い。例えば、実施の形態1と2の両方の条件を満たす組合せのみ抽出することで、因果関係が成立する可能性がより高い組合せのみを厳選して抽出することができる。
 実施の形態3.
 実施の形態3では、リスク対策の優先度についても算出する例について示す。なお、本開示における優先度とは、設計者がいずれのリスク228について優先して対策を打つべきかを示す指数である。
 図20は、実施の形態3に係るリスク抽出装置を示す図である。実施の形態3では、実施の形態1と比較して、新たに程度情報231、優先度算出テーブル232、優先度算出部233、優先度234が構成要素として増えている。なお、他の構成要素については、基本的に実施の形態1と同一である。入力部202は、程度情報231の入力を受け付け、優先度算出部233へと受け渡す。記憶部201は、優先度算出テーブル232を予め記憶する。優先度算出部233は、程度情報231と優先度算出テーブル232からリスク228の優先度234を算出し、出力部206へと受け渡す。出力部206は、リスク228と優先度234とを対応付けた情報として出力情報230を出力する。
 図21は、実施の形態3に係る程度情報231を示す図である。程度情報231は、設計者によって入力される情報である。図21では、抽出されたリスク228を、シナリオID225と攻撃ID215との対応表で示している。また、図21では、対応表における列項目として程度情報231を設けることで、各リスク228に対する程度情報231を示している。程度情報231は、シナリオ216が起こり得る状況に遭遇する頻度231a、上記状況に遭遇した際にシナリオ216を回避できる可能性231b、至り得る不安全な状態の重大度231c、の少なくともいずれか1つを備える。ここで、遭遇する頻度231aは、E1が最も頻度が少なく、E4が最も頻度が高い。また、回避できる可能性231bは、C1が最も可能性が高く、C3が最も可能性が低い。また、不安全な状態の重大度231cは、S1が最も軽微であり、S3が最も重大である。なお、図21では抽出されたリスク228に対してのみ程度情報231が示されているが、これはリスク抽出装置220が抽出したリスク228を一旦設計者に向けて表示し、抽出されたリスク228それぞれに対して程度情報231を入力するよう設計者に促すことにより実現できる(具体的な手順については図25のフローチャートを参照)。ここで、程度情報231は、リスク228単位ではなく、シナリオ216単位、または攻撃の内容214単位で入力されても良い。例えば、シナリオ216単位で入力された場合、優先度算出部233は、同じシナリオ216を含むリスク228については同じ値の優先度234を算出する。
 図22は、実施の形態3に係る優先度算出テーブル232を示す図である。優先度算出テーブル232は、設計者によって予め入力される。ここで、QMが最も優先度が低く、Dが最も優先度が高い(QM、A、B、C、Dの順番である)。優先度算出部232は、程度情報231を用いて優先度算出テーブル232を索引することで優先度234を算出する。なお、優先度算出部233は、優先度算出テーブル232を用いる代わりに、例えば予め定められた数式に対して程度情報231の値を代入することで優先度234を算出しても良い。
 図23は、実施の形態1に係る優先度算出結果を示す図である。図23では、抽出されたリスク228を、シナリオID225と攻撃ID215との対応表で示している。また、図23では、対応表における列項目として優先度234を設けることで、各リスク228について算出された優先度234を示している。例えば、scenario01とattack07との組合せから成るリスク228は、図21で示した通り、遭遇する頻度231aはE2、回避できる可能性231bはC3、不安全な状態の重大度231cはS3であるから、優先度算出部233により図22の優先度算出テーブル232が用いられることにより優先度234はBであると算出され、その結果が図23に示されている。
 図24は、実施の形態3に係る出力情報230を示す図である。実施の形態1と異なる点は、優先度234が新たに列項目として追加されている点である。このように、出力部206は、抽出部205から受け取ったリスク228と、優先度算出部233から受け取った優先度234とを対応付けて出力する。
 次に、リスク抽出装置200の動作について説明する。
 図25は、実施の形態3に係るリスク抽出装置200の動作を示すフローチャートである。なお、記憶部201は、図25の動作の開始前に予め優先度算出テーブル232を記憶しているものとする。ここで、実施の形態1から追加されているステップはS401とS402である。ステップS104を終了すると、次に、入力部202は、抽出されたリスク228それぞれについて、程度情報231の入力を受け付ける(ステップS401)。次に、優先度算出部233は、入力部202から程度情報231を受け取り、程度情報231と優先度算出テーブル232を用いてリスク228の優先度234を算出する(ステップS402)。最後に、出力部は、抽出部205から受け取ったリスク228と、優先度算出部233から受け取った優先度234とを対応付けて出力する(ステップS105)。
 以上のように、実施の形態3に係るリスク抽出装置200によれば、入力部202は、シナリオ216が起こり得る状況に遭遇する頻度231a、状況に遭遇した際にシナリオ216を回避できる可能性231b、不安全な状態の重大度231c、の少なくともいずれか1つを備える程度情報231の入力を受け付け、リスク抽出装置200は、入力部202から程度情報231を受け取り、程度情報231からリスク228の優先度234を算出する優先度算出部233を備え、出力部206は、優先度算出部233から優先度234を受け取り、優先度234をリスク228それぞれに対応付けて出力する。これにより、設計者は、優先度234の高いリスク228について優先して対策を講じることができる。
 実施の形態4.
 実施の形態4では、対象システム100の開発がモデルベース開発により行われていることを想定し、抽出されたリスク228それぞれが、設計者が作成した設計モデルのいずれの箇所と関係している可能性があるかを示す情報を出力情報230に追加する。
 図26は、実施の形態4に係るリスク抽出装置200を示す図である。実施の形態3と比較して、新たに対象システム構成情報235、第三のキーワード情報236、検索部237、関係性情報238が構成要素として増えているが、その他の構成要素については実施の形態3と同一である。なお、他の構成要素については、基本的に実施の形態3と同一である。入力部202は、対象システム構成情報235の入力を受け付け、検索部237へと受け渡す。記憶部201は、第三のキーワード情報236を予め記憶する。検索部237は、対象システム構成情報235と第三のキーワード情報236から、リスク228それぞれに関係する関係性情報238を検索し、出力部206へと受け渡す(関係性情報238については後段で説明する)。出力部206は、リスク228と関係性情報238とを対応付けた情報として出力情報230を出力する。
 図27は、実施の形態4に係る対象システム構成情報235を示す図である。対象システム構成情報235は、対象システム100の構成を示す情報である。対象システム構成情報235は、設計者によって入力される情報であり、例えばSTAMP(Systems-Theoretic Accident Model and Processes)/STPA(System-Theoretic Process Analysis)に従って設計者が安全分析を行う過程で設計者により作成される。対象システム構成情報235は、機械が扱い易い形式、例えばXML(Extensible Markup Language)等で作成されると好適である。対象システム構成情報235は、対象システム100が、検知対象110、カメラ121a、レーダ121b、ライダ121c、ECU122、駆動系123、により構成されることを示しており、またそれらの構成要素間での入出力関係または作用関係を示す情報である関係性情報238を含んでいる。
 第三のキーワード情報236の内容は、実施の形態2の説明にて示した第一のキーワード情報212(図15)の内容と同一であるものとする。
 図28は、実施の形態4に係る検索結果を示す図である。図13では、抽出されたリスク228を、シナリオID225と攻撃ID215との対応表で示している。また、抽出されたリスク228それぞれに関係する関係性情報238を示している。検索部237は、抽出されたリスク228と、関係性情報238との間で、共通するキーワードが存在するかを検索する。例えば、scenario01には、図4にて示したとおり、ブレーキ指示というキーワード217が存在する。このキーワード217は、図12に示したとおり、ECU122と駆動系123との間の関係性情報238であるブレーキ指示239と共通する。よって、図13に示した検索結果では、scenario01を含むリスク228すべてに対して、関係する関係性情報238としてブレーキ指示239を示している。
 また、検索部237は、第三のキーワード情報236を用いて、抽出されたリスク228と、関係性情報238との間で、同一のセンサ121の種別と対応付けられたキーワードが存在するかを検索する。例えば、attack03には、図4にて示したとおり、「標示」というキーワード217が存在する。このキーワード217は、図15に示したとおり、連想される符号218の「カメラ121a」と対応付けられている。他に連想される符号の「カメラ121a」と対応付けられているキーワード217としては、例えば、「カメラ」と、「撮影」とが存在する。これらのキーワード217は、図27に示したとおり、カメラ121aとECU122との間の関係性情報であるカメラ情報240と、検知対象110とカメラ121aとの間の関係性情報238である撮影結果241とが含んでいる。よって、図28に示した検索結果では、attack03を含むリスク228に対して、関係する関係性情報としてカメラ情報240と撮影結果241を示している。
 図29は、実施の形態4に係る出力情報230を示す図である。ここで実施の形態3と比較して新たに追加している列項目として、関係性情報238がある。このように、抽出されたリスク228と関係している可能性が高い関係性情報238を対応付けて出力することで、設計者は対象システム構成情報235内のいずれの箇所がリスク228と関係しているのかを探すためのヒントとできる。
 次に、リスク抽出装置200の動作について説明する。
 図30は、実施の形態4に係るリスク抽出装置200の動作を示すフローチャートである。実施の形態3と比較して新たに追加されているステップは、ステップS501とステップS502である。ステップS101を終了すると、次に、入力部202は、対象システム構成情報235の入力を受け付け、ステップS102へと進む。対象システム構成情報235は、対象システムの設計書という意味ではシナリオ216と同じであるため、ステップS101の直前または直後に実施されることが好適である。ステップS402を終了すると、検索部237は、リスク228と関係する関係性情報238を検索し(ステップS107)、ステップS105へと進む。
 次に、検索部237の動作(ステップS107)の詳細について説明する。
 図31は、実施の形態4に係る検索部237の動作を示すフローチャートである。検索部237は、まだ選択されていないリスク228から1つを選択する(ステップS601)。次に、選択したリスク228に含まれているキーワードを抜き出し、そのキーワードが第三のキーワード情報236にていずれの連想する符号と対応付けられているか特定する(ステップS602)。次に、まだ選択されていない関係性情報238から1つを選択する(ステップS603)。次に、選択した関係性情報238に含まれているキーワードを特定し、そのキーワードが第三のキーワード情報236にていずれの連想する符号と対応付けられているか特定する(ステップS604)。次に、選択したリスク228と関係性情報238との間で、共通するキーワードまたは連想する符号が存在するか判定し(ステップS605)、存在すると判定された場合には当該リスク228と当該関係性情報238とが関係していると見做す(ステップS606)。次に、まだ選択されていない関係性情報238が残存しているか判定し(ステップS607),関係性情報238が残存していると判定された場合にはステップS603へと戻る。関係性情報238が残存していないと判定された場合には、まだ選択されていないリスク228が残存しているか判定し(ステップS608)、リスク228が残存していると判定された場合にはステップS601へと戻る。
 以上のように、実施の形態4に係るリスク抽出装置200によれば、入力部202は、対象システム100の構成を示す情報である対象システム構成情報235の入力を受け付け、リスク抽出装置200は、入力部202から対象システム構成情報235を受け取り、対象システム構成情報235の中から、構成要素間での入出力関係または作用関係を示す情報である関係性情報238のうち、リスク228と関係する関係性情報238を検索する検索部237を備え、出力部206は、検索部237から関係性情報238を受け取り、関係性情報238をリスク228それぞれに対応付けて出力する。これにより、設計者は、対象システム100のうち、抽出されたリスク228と関係している箇所を迅速に特定することができる。 
 100 対象システム、 110 検知対象、 120 車両、 121 センサ、 121a カメラ、 121b レーダ、 121c ライダ、 122 ECU、 123 駆動系、 124 検知情報、 125 車輪、 130 検知領域、 200 リスク抽出装置、 201 記憶部、 202 入力部、 203 第一の種別付与部、 204 第二の種別付与部、 205 抽出部、 206 出力部、 207 演算装置、 208 記憶装置、 209 入出力装置、 210 バス、 211 攻撃方法リスト、 212 第一のキーワード情報、 213 第二のキーワード情報、 214 攻撃の内容、 215 攻撃ID、 216 シナリオ、 217 キーワード、 218 連想される符号、 219 キーワードID、 220 シナリオの種別、 221 キーワード、 222 連想される符号、 223 キーワードID、 224 攻撃の種別、 225 シナリオID、 226 第一の因子情報、 227 第二の因子情報、 228 リスク、 229 抽出結果、 230 出力情報、 231 程度情報、 231a 遭遇する頻度、 231b 回避できる可能性、 231c 不安全な状態の重大度、 232 優先度算出テーブル、 233 優先度算出部、 234 優先度、 235 対象システム構成情報、 236 第三のキーワード情報、 237 検索部、 238 関係性情報、 239 ブレーキ指示、 240 カメラ情報、 241 撮影結果

Claims (7)

  1.  制御対象の状態を含むシナリオの入力を受け付ける入力部と、
     攻撃の内容を列挙した情報である攻撃リストを予め記憶する記憶部と、
     前記入力部から前記シナリオを受け取り、前記シナリオに含まれるキーワードに応じたシナリオの種別を前記シナリオに対して付与する第一の種別付与部と、
     前記攻撃の内容に含まれるキーワードに応じた攻撃の種別を前記攻撃の内容に対して付与する第二の種別付与部と、
     前記シナリオの種別と前記攻撃の種別との組合せのうち、予め定めた因果関係に従う組合せをリスクとして抽出する抽出部と、
     前記抽出部が抽出した前記リスクを列挙した情報である出力情報を出力する出力部と、
     を備えるリスク抽出装置。
  2.  前記シナリオの種別は、開始すべき制御を開始できないという第一の符号、または開始すべきでない制御を開始してしまうという第二の符号、のいずれか一方を示し、
     前記攻撃の種別は、実在する検知対象を検知させないという第三の符号、または実在しない検知対象を検知させるという第四の符号、のいずれか一方または両方を示し、
     前記抽出部は、前記シナリオの種別が前記第一の符号を示しかつ前記攻撃の種別が前記第三の符号を示す、または前記シナリオの種別が前記第二の符号を示しかつ前記攻撃の種別が前記第四の符号を示す、のいずれか一方を満たす組合せを、前記予め定めた因果関係に従う組合せであると判定する、
     ことを特徴とする請求項1に記載のリスク抽出装置。
  3.  前記シナリオの種別と前記攻撃の種別は、それぞれセンサの種別を示し、
     前記抽出部は、前記シナリオの種別と前記攻撃の種別とが同一の値である組合せを、前記予め定めた因果関係に従う組合せであると判定する、
     ことを特徴とする請求項1に記載のリスク抽出装置。
  4.  前記シナリオが起こり得る状況に遭遇する頻度、前記状況に遭遇した際に前記シナリオを回避できる可能性、前記状態の重大度、の少なくともいずれか1つを備える程度情報を、前記入力部から受け取り、前記程度情報から前記リスクの優先度を算出する優先度算出部を備え、
     前記入力部は、前記程度情報の入力を受け付け、
     前記出力部は、前記優先度算出部から前記優先度を受け取り、前記優先度を前記リスクそれぞれに対応付けて出力する、
     ことを特徴とする請求項1から請求項3のいずれか1項に記載のリスク抽出装置。
  5.  前記制御対象を備えるシステムである対象システムの構成を示す情報である対象システム構成情報を、前記入力部から受け取り、前記対象システム構成情報の中から、前記構成要素間での入出力関係または作用関係を示す情報である関係性情報のうち、前記リスクと関係する前記関係性情報を検索する検索部を備え、
     前記入力部は、前記対象システム構成情報の入力を受け付け、
     前記出力部は、前記検索部から前記関係性情報を受け取り、前記関係性情報を前記リスクそれぞれに対応付けて出力する、
     ことを特徴とする請求項1から請求項4のいずれか1項に記載のリスク抽出装置。
  6.  入力部と記憶部と第一の種別付与部と第二の種別付与部と出力部とを備えるリスク抽出装置によるリスク抽出方法であり、
     前記入力部が、制御対象の状態を含むシナリオの入力を受け付け、
     前記記憶部が、攻撃の内容を列挙した情報である攻撃リストを予め記憶し、
     前記第一の種別付与部が、前記シナリオに含まれるキーワードに応じたシナリオの種別を前記シナリオに対して付与し、
     前記第二の種別付与部が、前記攻撃の内容に含まれるキーワードに応じた攻撃の種別を前記攻撃の内容に対して付与し、
     前記抽出部が、前記シナリオの種別と前記攻撃の種別との組合せのうち、予め定めた因果関係に従う組合せをリスクとして抽出し、
     前記出力部が、抽出した前記リスクを列挙した情報である出力情報を出力する、
     リスク抽出方法。
  7.  制御対象の状態を含むシナリオの入力を受け付ける入力処理と、
     攻撃の内容を列挙した情報である攻撃リストを予め記憶する記憶処理と、
     前記シナリオに含まれるキーワードに応じたシナリオの種別を前記シナリオに対して付与することで第一の因子情報とする第一の種別付与処理と、
     前記攻撃の内容に含まれるキーワードに応じた攻撃の種別を前記攻撃の内容に対して付与することで第二の因子情報とする第二の種別付与処理と、
     前記第一の因子情報と前記第二の因子情報との組合せのうち、前記シナリオの種別と前記攻撃の種別とが予め定めた因果関係に従う組合せをリスクとして抽出する抽出処理と、
     前記抽出部が抽出した前記リスクを列挙した情報である出力情報を出力する出力処理と、
     をコンピュータに実行させるためのリスク抽出プログラム。
PCT/JP2022/013364 2022-03-23 2022-03-23 リスク抽出装置、リスク抽出方法、リスク抽出プログラム WO2023181145A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2022/013364 WO2023181145A1 (ja) 2022-03-23 2022-03-23 リスク抽出装置、リスク抽出方法、リスク抽出プログラム
JP2023560133A JP7433551B1 (ja) 2022-03-23 2022-03-23 リスク抽出装置、リスク抽出方法、リスク抽出プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/013364 WO2023181145A1 (ja) 2022-03-23 2022-03-23 リスク抽出装置、リスク抽出方法、リスク抽出プログラム

Publications (1)

Publication Number Publication Date
WO2023181145A1 true WO2023181145A1 (ja) 2023-09-28

Family

ID=88100225

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/013364 WO2023181145A1 (ja) 2022-03-23 2022-03-23 リスク抽出装置、リスク抽出方法、リスク抽出プログラム

Country Status (2)

Country Link
JP (1) JP7433551B1 (ja)
WO (1) WO2023181145A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007058514A (ja) * 2005-08-24 2007-03-08 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
WO2014208427A1 (ja) * 2013-06-24 2014-12-31 日本電信電話株式会社 セキュリティ情報管理システム及びセキュリティ情報管理方法
JP2019192101A (ja) * 2018-04-27 2019-10-31 矢崎総業株式会社 脆弱性情報生成装置および脆弱性評価装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10812510B2 (en) 2018-01-12 2020-10-20 The Boeing Company Anticipatory cyber defense

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007058514A (ja) * 2005-08-24 2007-03-08 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
WO2014208427A1 (ja) * 2013-06-24 2014-12-31 日本電信電話株式会社 セキュリティ情報管理システム及びセキュリティ情報管理方法
JP2019192101A (ja) * 2018-04-27 2019-10-31 矢崎総業株式会社 脆弱性情報生成装置および脆弱性評価装置

Also Published As

Publication number Publication date
JP7433551B1 (ja) 2024-02-19
JPWO2023181145A1 (ja) 2023-09-28

Similar Documents

Publication Publication Date Title
CN101359351B (zh) 针对恶意行为的多层语义标注及检测方法
US8407799B2 (en) Software behavior modeling device, software behavior modeling method, software behavior verification device, and software behavior verification method
CN105511944A (zh) 一种云系统内部虚拟机的异常检测方法
US11663105B2 (en) String pattern matching for multi-string pattern rules in intrusion detection
WO2019072158A1 (zh) 安全控制方法及计算机系统
US8813229B2 (en) Apparatus, system, and method for preventing infection by malicious code
CN112686036B (zh) 风险文本识别方法、装置、计算机设备及存储介质
US20190260797A1 (en) Method and system for verifying validity of detection result
CN105260659A (zh) 一种基于qemu的内核级代码重用型攻击检测方法
CN111508588B (zh) 训练装置、训练方法和计算机可读记录介质
CN114598504B (zh) 一种风险评估方法、装置、电子设备及可读存储介质
CN107194252A (zh) 一种完全上下文敏感的程序控制流完整性保护方法和系统
AU2013370768B2 (en) Method and apparatus for controlling invoking of hardware instruction
JP2021099582A (ja) 情報処理装置、情報処理方法、及びプログラム
JPWO2019176603A1 (ja) 異常診断システム及び異常診断方法
Fenzl et al. Continuous fields: Enhanced in-vehicle anomaly detection using machine learning models
JP7433551B1 (ja) リスク抽出装置、リスク抽出方法、リスク抽出プログラム
CN106293667B (zh) 一种应用程序修改检测方法及装置
CN114490302B (zh) 一种基于大数据分析的威胁行为分析方法及服务器
WO2020137847A1 (ja) アタックツリー生成装置、アタックツリー生成方法およびアタックツリー生成プログラム
Kashiyama et al. Study on cyber‐security for IoT edge utilizing pattern match accelerator
JP7000271B2 (ja) 車両不正アクセス対策装置、及び車両不正アクセス対策方法
WO2019142469A1 (ja) セキュリティ設計装置、セキュリティ設計方法およびセキュリティ設計プログラム
CN114285639B (zh) 一种网站安全防护方法及装置
CN111191683A (zh) 基于随机森林和贝叶斯网络的网络安全态势评估方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2023560133

Country of ref document: JP

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

Ref document number: 22933291

Country of ref document: EP

Kind code of ref document: A1