WO2024070859A1 - 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム - Google Patents

攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム Download PDF

Info

Publication number
WO2024070859A1
WO2024070859A1 PCT/JP2023/034149 JP2023034149W WO2024070859A1 WO 2024070859 A1 WO2024070859 A1 WO 2024070859A1 JP 2023034149 W JP2023034149 W JP 2023034149W WO 2024070859 A1 WO2024070859 A1 WO 2024070859A1
Authority
WO
WIPO (PCT)
Prior art keywords
attack
anomaly
electronic control
predicted
log
Prior art date
Application number
PCT/JP2023/034149
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
Priority claimed from JP2023124179A external-priority patent/JP2024052532A/ja
Application filed by 株式会社デンソー filed Critical 株式会社デンソー
Publication of WO2024070859A1 publication Critical patent/WO2024070859A1/ja

Links

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/55Detecting local intrusion or implementing counter-measures

Definitions

  • This disclosure relates to a technology for analyzing attacks against electronic control systems mounted on devices such as automobiles and other mobile objects, and relates to an attack analysis device, an attack analysis method, and an attack analysis program.
  • V2X vehicle-to-vehicle communication and vehicle-to-infrastructure communication
  • Patent Document 1 describes a method for collecting detected abnormality data and identifying the type of attack that corresponds to the abnormality by comparing the combination of items in which the abnormality was detected with an abnormality detection pattern that has been specified in advance for each attack.
  • Patent Document 2 also discloses a device that, when an electronic control device detects an abnormality, uses the results of a determination of whether the defense functions and functions other than the defense functions installed in the electronic control device are normal or abnormal to determine measures to block unauthorized information, thereby preventing the intrusion of unauthorized information.
  • the present inventors have found the following problems.
  • security logs that indicate anomalies detected in an electronic control system and the location within the electronic control system where the anomalies were detected, and attack/anomaly relationship information that indicates combinations of anomalies that are predicted to occur if the electronic control system is subjected to a cyber-attack
  • further improvements are required in the accuracy of the estimation and the amount of calculations required for the estimation.
  • One aspect of the present disclosure aims to improve the accuracy of estimating cyber attacks on electronic control systems.
  • Another aspect of the present disclosure aims to reduce the amount of calculations required to estimate a cyber-attack that has been sustained on an electronic control system.
  • An attack analysis device is an attack analysis device that analyzes attacks against an electronic control system mounted on a mobile body, and includes a log acquisition unit that acquires a security log indicating an abnormality detected in the electronic control system and the position within the electronic control system where the abnormality was detected; an index acquisition unit that acquires an index indicating the internal state and/or external state of the mobile body when the abnormality occurred; an attack/anomaly relationship information storage unit that stores attack/anomaly relationship information indicating the relationship between predicted attack information indicating an attack that the electronic control system may be subjected to, predicted anomaly information indicating an abnormality predicted to occur when the attack is received, and predicted anomaly location information indicating the position within the electronic control system where the predicted anomaly will occur; an attack estimation unit that estimates an attack received by the electronic control system based on the security log, the attack/anomaly relationship information, and the index; and an output unit that outputs attack information indicating the estimated attack.
  • the attack analysis device disclosed herein estimates attacks using indicators indicating the internal and/or external state of the mobile object when an anomaly occurs, in addition to security logs and attack/anomaly related information, thereby improving the accuracy of the estimation and/or reducing the amount of calculation required for the estimation.
  • FIG. 1 is an explanatory diagram showing the positional relationship between an attack analysis device and an electronic control system according to each embodiment
  • FIG. 2 is a block diagram showing an example of the configuration of an electronic control system S.
  • FIG. 3 is an explanatory diagram showing the contents of a security log;
  • FIG. 4 is a block diagram showing a configuration example of an attack analysis device according to each embodiment;
  • FIG. 5 is an explanatory diagram illustrating the concept of situation information.
  • FIG. 6 is an explanatory diagram illustrating the concept of attack/anomaly relationship information.
  • FIG. 7a is an explanatory diagram illustrating a specific example of an attack estimation method of the attack analysis device according to each embodiment
  • FIG. 7b is an explanatory diagram illustrating a specific example of an attack estimation method of the attack analysis device according to each embodiment
  • FIG. 7c is an explanatory diagram illustrating a specific example of an attack estimation method of the attack analysis device according to each embodiment
  • FIG. 7D is an explanatory diagram illustrating a specific example of an attack estimation method of the attack analysis device according to each embodiment
  • FIG. 8 is a flowchart illustrating the operation of the attack analysis device according to each embodiment.
  • FIG. 9 is a block diagram showing an outline of an entire system including an attack analysis device according to the first embodiment
  • FIG. 9 is a block diagram showing an outline of an entire system including an attack analysis device according to the first embodiment
  • FIG. 10 is a block diagram illustrating an example of the configuration of an attack analysis device according to the first embodiment
  • FIG. 11 is an explanatory diagram showing the relationship between individual positions and common positions of ECUs
  • FIG. 12 is an explanatory diagram showing a vehicle situation determination condition table
  • FIG. 13 is an explanatory diagram showing a power supply state determination table
  • FIG. 14 is an explanatory diagram showing an attack estimation matching table
  • FIG. 15 is an explanatory diagram showing a method for reducing the computation load when using an attack estimation matching table.
  • FIG. 16 is a timing chart illustrating the operation of the attack analysis device according to the first embodiment
  • FIG. 17 is a block diagram illustrating a configuration example of an attack analysis device or an attack analysis system according to a second embodiment
  • FIG. 18 is a diagram illustrating an electronic control system that is an analysis target of an attack analysis device according to a second embodiment
  • FIG. 19 is a diagram illustrating an example of an ECU, an entry point, and an external connection destination according to a second embodiment
  • FIG. 20 is a diagram illustrating an example of a traveling situation/attack relationship table according to the second embodiment
  • FIG. 21 is a diagram illustrating an example of a traveling situation/attack relationship table according to the second embodiment
  • FIG. 22 is a block diagram illustrating a configuration example of an entry point candidate generation unit according to a second embodiment
  • FIG. 23 is a block diagram illustrating a configuration example of an attack estimation unit according to a second embodiment
  • FIG. 24 is a diagram illustrating an example of an attack/anomaly relationship table according to the second embodiment
  • FIG. 25 is a diagram illustrating an example of an attack/anomaly relationship table according to the second embodiment
  • FIG. 26 is a block diagram illustrating a configuration example of an estimation result verification unit according to a second embodiment
  • FIG. 27 is a flowchart showing the operation of the attack analysis system of the second embodiment
  • FIG. 28 is a block diagram illustrating a configuration example of an attack analysis system according to a first modification of the second embodiment
  • FIG. 29 is an explanatory diagram illustrating the arrangement of an attack analysis device according to a modified example of the second embodiment
  • FIG. 30 is a block diagram illustrating a configuration example of an attack analysis system according to a second modification of the second embodiment
  • FIG. 31 is a block diagram illustrating a configuration example of an attack analysis system according to a third modification of the second embodiment
  • FIG. 32 is a block diagram showing a configuration example of an attack analysis device according to a third embodiment
  • FIG. 33 is a diagram for explaining a table stored in a storage unit according to the third embodiment
  • FIG. 34 is a diagram for explaining a method for determining whether a security log is a false positive log according to the third embodiment
  • FIG. 35 is a diagram illustrating an example of an attack/anomaly relationship table according to the third embodiment
  • FIG. 36 is a flowchart illustrating the operation of the attack analysis device of the third embodiment
  • FIG. 37 is a flowchart illustrating the operation of the attack analysis device of the third embodiment.
  • FIG. 38 is a diagram for explaining a table stored in a storage unit according to a modified example of the third embodiment
  • FIG. 39 is a diagram for explaining a method for determining whether a security log is a false positive log according to a modified example of the third embodiment
  • FIG. 40 is a diagram for explaining a method for determining whether a security log is a false positive log according to a modified example of the third embodiment
  • FIG. 41 is a flowchart illustrating the operation of an attack analysis device according to a modified example of the third embodiment.
  • Configurations and methods described in the dependent claims of the claims are optional configurations and methods in the invention described in the independent claims of the claims.
  • Configurations and methods of the embodiments that correspond to the configurations and methods described in the dependent claims, as well as configurations and methods described only in the embodiments without being described in the claims, are optional configurations and methods in the present invention.
  • Configurations and methods described in the embodiments when the description of the claims is broader than the description of the embodiments are also optional configurations and methods in the present invention, in the sense that they are examples of the configurations and methods of the present invention. In either case, by being described in the independent claims of the claims, they become essential configurations and methods of the present invention.
  • the configurations disclosed in each embodiment are not exclusive to each embodiment, but can be combined across the embodiments. For example, a configuration disclosed in one embodiment may be combined with another embodiment. Also, the configurations disclosed in each of the multiple embodiments may be collected and combined.
  • the attack analysis device 10 is a device that analyzes attacks against the electronic control system S. More specifically, it is a device that receives a security log generated by a security sensor of the electronic control device 20 that constitutes the electronic control system S, and analyzes attacks against the electronic control system S based on the security log.
  • the attack analysis devices 11 to 13 of each embodiment are collectively referred to as the attack analysis device 10.
  • the attack analysis device 10 is "mounted” on a vehicle, which is a “mobile body”, together with an electronic control device 20 constituting an electronic control system S, and as shown in Fig. 1(c), the electronic control device 20 constituting an electronic control system S is “mounted” on a vehicle, which is a “mobile body”, and the attack analysis device 10 is realized by a server device or SOC (Security Operation Center) or the like provided outside the vehicle.
  • SOC Security Operation Center
  • an attack analysis device 10a which is a part of the attack analysis device 10
  • an attack analysis device 10b which is the remaining part of the attack analysis device 10
  • the electronic control device 20 is abbreviated as ECU (Electronic Control Unit) 20.
  • ECU Electronic Control Unit 20.
  • Mobile object refers to an object that can move, and can move at any speed. It also includes cases where the mobile object is stationary. For example, it includes, but is not limited to, automobiles, motorcycles, bicycles, pedestrians, ships, aircraft, and objects mounted on these.
  • “Mounted” includes not only the case where the device is directly fixed to the moving body, but also the case where the device is not fixed to the moving body but moves with the moving body, such as the case where the device is carried by a person riding on the moving body, or the case where the device is mounted on cargo placed on the moving body.
  • Fig. 1(a) is an example in which an independent attack analysis device 10 is provided inside the electronic control system S, or the function of the attack analysis device 10 is built into at least one of the ECUs 20 constituting the electronic control system S.
  • the example shown in Fig. 1(b) is an example in which the attack analysis device 10 is provided outside the electronic control system S, but from the viewpoint of the connection form, it is substantially the same as Fig. 1(a).
  • the attack analysis device 10 and the ECU 20 are connected via an in-vehicle communication network such as a Controller Area Network (CAN) or a Local Interconnect Network (LIN).
  • CAN Controller Area Network
  • LIN Local Interconnect Network
  • connection refers to a state in which data can be exchanged, and includes not only cases in which different hardware is connected via a wired or wireless communication network, but also cases in which virtual machines realized on the same hardware are virtually connected to each other.
  • the attack analysis device 10 and the electronic control system S are connected via a communication network using a wireless communication method such as IEEE802.11 (Wi-Fi (registered trademark)), IEEE802.16 (WiMAX (registered trademark)), W-CDMA (Wideband Code Division Multiple Access), HSPA (High Speed Packet Access), LTE (Long Term Evolution), LTE-A (Long Term Evolution Advanced), 4G, or 5G.
  • a wireless communication method such as IEEE802.11 (Wi-Fi (registered trademark)), IEEE802.16 (WiMAX (registered trademark)), W-CDMA (Wideband Code Division Multiple Access), HSPA (High Speed Packet Access), LTE (Long Term Evolution), LTE-A (Long Term Evolution Advanced), 4G, or 5G.
  • DSRC Dedicated Short Range Communication
  • a wired communication method can be used instead of a wireless communication method.
  • a LAN Local Area Network
  • the Internet or a fixed telephone line can be used.
  • the cyber attack can be analyzed without delay within the attacked vehicle without communicating with external devices, allowing for a more rapid response to the cyber attack.
  • the electronic control system S is described as an in-vehicle system mounted on a vehicle, but the electronic control system S is not limited to an in-vehicle system and may be applied to any electronic control system consisting of multiple ECUs.
  • the electronic control system S may be mounted on a stationary or fixed object instead of a moving object.
  • a part of the attack analysis device 10 may be provided in a server device, and the remaining part may be provided in a mobile body or other device.
  • the attack analysis device 10a can be, for example, a device including a situation estimation unit 104 described below, and the attack analysis device 10b can be a device including an attack estimation unit 106 described below.
  • the attack analysis device 10 can also determine whether an anomaly indicated in a received security log is an anomaly caused by a cyber-attack or an anomaly caused by a reason other than a cyber-attack, and in the former case, analyze the cyber-attack based on the security log, but in the latter case, treat it as a false positive log and do not analyze the cyber-attack.
  • a part having such a function can be defined as a log determination device.
  • the log determination device is an example of a device that includes the situation estimation unit 104.
  • the log determination device may be provided in the preceding stage of the processing of the attack analysis device 10, or may be included in the attack analysis device 10. Although not shown in FIG. 1, in the cases of FIG. 1(a) and FIG. 1(b), the log determination device is also mounted on the vehicle. In contrast, in the case of FIG. 1(c), the log determination device may be provided in a server device, which is the attack analysis device 10, or only the log determination device may be provided on the vehicle. In this case, the former is arranged as shown in FIG. 1(c), and the latter is arranged as shown in FIG. 1(d).
  • FIG. 2 is a diagram showing an example of the configuration of the electronic control system S.
  • the electronic control system S is composed of a plurality of ECUs 20 and an in-vehicle network (i.e., NW1 to NW3) that connects these ECUs.
  • Fig. 2 illustrates eight ECUs (i.e., ECUs 20a to 20h), but the electronic control system S is naturally composed of any number of ECUs.
  • the ECU 20 or each ECU 20 will be used when describing a single or multiple electronic control devices as a whole, and the ECU 20a, ECU 20b, ECU 20c, ... will be used when describing each individual electronic control device specifically.
  • each ECU 20 is connected via an in-vehicle communication network or the like as described in the explanation of FIG. 1(a) and FIG. 1(b).
  • the electronic control system S shown in FIG. 2 includes an integrated ECU 20a, an external communication ECU 20b, zone ECUs (i.e., ECUs 20c and 20d), and individual ECUs (i.e., ECUs 20e to 20h).
  • zone ECUs i.e., ECUs 20c and 20d
  • individual ECUs i.e., ECUs 20e to 20h.
  • the integrated ECU 20a is an ECU that has the function of controlling the entire electronic control system S, and also has a gateway function that mediates communication between each ECU 20.
  • the integrated ECU 20a is sometimes called a gateway ECU (i.e., G-ECU) or a mobility computer (i.e., MC).
  • the integrated ECU 20a may also be a relay device or a gateway device.
  • the external communication ECU 20b is an ECU having a communication unit that communicates with an external device provided outside the vehicle, for example, in each embodiment, the server device 30.
  • the communication method used by the external communication ECU 20b is the wireless communication method or the wired communication method described in the description of FIG.
  • a plurality of external communication ECUs 20b may be provided.
  • the integrated ECU 20a may include the function of the external communication ECU 20b.
  • the zone ECUs are ECUs equipped with a gateway function that is appropriately arranged according to the location and function of the individual ECUs described below.
  • the zone ECU 20c is an ECU with a gateway function that mediates communication between the individual ECUs 20e and 20f arranged at the front of the vehicle and other ECUs
  • the zone ECU 20d is an ECU with a gateway function that mediates communication between the individual ECUs 20g and 20h arranged at the rear of the vehicle and other ECUs 20.
  • the zone ECUs i.e., ECUs 20c and 20d
  • the individual ECUs 20e and 20f are connected to the zone ECU 20c via network 2 (NW2 in FIG. 2), and the individual ECUs 20g and 20h are connected to the zone ECU 20d via network 3 (NW3 in FIG. 2).
  • the individual ECUs can be configured with ECUs having any desired functions.
  • they can be drive system electronic control devices that control the engine, steering, brakes, etc., vehicle body electronic control devices that control meters, power windows, etc., information system electronic control devices such as navigation devices, or safety control system electronic control devices that perform control to prevent collisions with obstacles or pedestrians.
  • the ECUs may not be parallel to each other, but may be classified as master and slave. Note that, depending on the functions realized by each individual ECU (i.e., ECUs 20e to 20h), necessary sensors may be connected to each individual ECU (i.e., ECUs 20e to 20h).
  • sensors include, but are not limited to, a speed sensor, an acceleration sensor, an angular velocity sensor, a temperature sensor, a seat sensor, and a voltmeter.
  • these sensors may be connected to the integrated ECU 20a or the zone ECU (i.e., ECUs 20c, 20d) instead of to each individual ECU (i.e., ECUs 20e to 20h).
  • Each ECU 20 may be a physically independent electronic control device, or a virtualized electronic control device realized using virtualization technology. If each ECU 20 is realized on different hardware, it is sufficient that they are connected via a wired or wireless communication method, and if multiple virtualized electronic control devices are realized on the same hardware, it is sufficient that the virtualized electronic control devices are virtually connected to each other.
  • the attack analysis device 10 is provided inside the electronic control system S, and is realized by an integrated ECU 20a or an individual ECU 20e, for example, as shown in Fig. 2.
  • the individual ECU 20e may be an ECU dedicated to the attack analysis device 10.
  • the attack analysis device 10 is provided outside the electronic control system S, and is realized by a server device 30 as shown in Fig. 2. In this case, the server device 30 receives the security log transmitted via the external communication ECU 20b.
  • Each ECU 20 has a security sensor, and the security sensor generates a security log when it detects an abnormality occurring in the ECU 20 or in the network connected to the ECU 20.
  • the security log will be described in detail in the next section. It is not necessary for all the ECUs 20 to be equipped with a security sensor.
  • FIG. 3 is a diagram showing the contents of the security log generated by the security sensor of the ECU 20. As shown in FIG.
  • the security log has the following fields: an ECU ID indicating the identification information of the ECU in which the security sensor is mounted, a sensor ID indicating the identification information of the security sensor, an event ID indicating the identification information of an event related to an abnormality detected by the security sensor, a counter indicating the number of times the event has occurred, a timestamp indicating the time when the event occurred, and context data indicating details of the security sensor output.
  • the security log may further have a header that stores information indicating the protocol version and the state of each field.
  • the IdsM Instance ID corresponds to the ECU ID
  • the Sensor Instance ID corresponds to the sensor ID
  • the Event Definition ID corresponds to the event ID
  • the Count corresponds to the counter
  • the Timestamp corresponds to the timestamp
  • the Context Data corresponds to the context data
  • the Protocol Version and Protocol Header correspond to the header.
  • FIG. 3 is an example of an abnormality log that is generated when an abnormality occurs
  • a normal log that is generated when no abnormality occurs may have the same specifications as FIG. 3.
  • abnormal logs and normal logs can be distinguished by using different event IDs when an abnormality occurs and when an event is successful.
  • a flag in the header indicating the presence or absence of context data
  • abnormal logs and normal logs can be distinguished by checking the flag.
  • FIG. 3 shows a security log generated by a physically independent ECU 20, it may also be a security log generated by a virtual ECU.
  • the security log generated by the security sensor is called an SEv, and the refined and accurate security log is called a QSEv.
  • the security sensor of the individual ECU in FIG. 2 i.e., ECUs 20e to 20h
  • an intrusion detection system manager i.e., IdsM
  • IdsM intrusion detection system manager
  • the security log in this embodiment is a concept that includes both an SEv and a QSEv.
  • the security log in each embodiment may be a log generated by an in-vehicle SIEM (Security Information and Event Management) function that collects and manages information about events that occur within the electronic control system.
  • SIEM Security Information and Event Management
  • the security log may be referred to as an abnormality log, since it notifies of abnormalities.
  • the security log may be referred to as a vehicle log, since it is generated in the vehicle.
  • a false positive log refers to a security log in which a detected event indicated in the security log is an event caused by something other than a cyber-attack on the electronic control system S.
  • False positive logs include security logs in which an event indicates an abnormality (also referred to as an abnormality log or an abnormal security log), as well as security logs in which an event indicates a non-abnormality or success (also referred to as a normal log or a successful security log). Examples of detected events include input of a correct or incorrect password, and an example of an event not caused by a cyber-attack is a user operation.
  • attention is focused on the false positive log of the abnormal log, but the false positive log of the normal log may be used.
  • the configuration of the attack analysis device 10 will be described with reference to Fig. 4.
  • the attack analysis device 10 has a log acquisition unit 101, an index acquisition unit 102, a situation information storage unit 103, a situation estimation unit 104, an attack/anomaly relationship information storage unit 105, an attack estimation unit 106, a matching degree calculation unit 107, and an output unit 108.
  • the log acquisition unit 101 "acquires" a security log indicating an abnormality detected in the electronic control system S and the location within the electronic control system S where the abnormality was detected. For example, when the security log of Fig. 3 is received, the type of abnormality is indicated in the event ID and context data, and the location where the abnormality was detected is indicated in the ECU ID and sensor ID.
  • "obtain” includes not only obtaining by receiving from another device or block, but also obtaining by generating by oneself.
  • the indicator acquisition unit 102 "acquires" an indicator indicating the internal state and/or external state of the vehicle "when an abnormality occurs.”
  • the indicator may be information indicating the internal or external state of the vehicle, such as the outputs of various sensors connected to the individual ECUs (i.e., ECUs 20e to 20h), a CAN frame, various information received from an external device, position information and time information received by a GPS receiver, etc. Specific examples of the indicator are as follows.
  • Indicators indicating internal conditions output of on-board sensors, vehicle power supply status, communication network status, diagnostic information regarding the vehicle, ECU status, location information, information to identify the vehicle
  • Indicators indicating external condition information outside temperature, outside humidity, weather, known patterns of false positive log occurrence, conditions for disabling security event logs, operating status of external devices outside the vehicle. Specific examples of indicators and details of examples of use of the indicators will be described in each embodiment. here, "When an abnormality occurs" is not limited to a time or a time instant, but may be any time instant as long as the occurrence of an abnormality is a condition, a trigger, or a subject of evaluation.
  • a time or a time instant it may be a time (or a time instant) close to the occurrence of the abnormality, such as the time (or a time instant) when a security log indicating the abnormality was generated or the time (or a time instant) when a security log was received, or even the time (or a time instant) immediately before the occurrence of the abnormality.
  • the term "internal state” refers to various states that depend on a moving body, such as the operating state of a vehicle, the state of the vehicle itself or the parts that constitute the vehicle, or the state of functions that the vehicle has. The location of the vehicle is also included in the internal state because it indicates the state in which the vehicle itself is physically located at a specific position.
  • the term “external state” refers to various states that can be conceived without the presence of a moving body, and includes, for example, the outside temperature, the time (or the time of day), or the operating state of a device outside the moving body.
  • the log acquisition unit 101 and the index acquisition unit 102 may be configured as a single acquisition unit.
  • the index may include the security log acquired by the log acquisition unit 101.
  • the security log can also be evaluated as an index indicating the internal and external states of the vehicle.
  • the log acquisition unit 101 may be configured to output the security log as an index to the index acquisition unit 102.
  • the situation information storage unit 103 stores situation information indicating the relationship between the index and the corresponding situation.
  • FIG. 5 is a diagram for explaining the concept of situation information.
  • Fig. 5(a) there may be a relationship in which situations A to D are determined in response to a combination of indicators a to d.
  • Fig. 5(b) there may be a relationship in which a situation (y) is determined when an indicator (x) is determined.
  • a situation information is referred to as situation information. Specific examples of situation information will be described in each embodiment.
  • the situation estimation unit 104 estimates a "situation" of the vehicle corresponding to the index, using the index acquired by the index acquisition unit 102 and the situation information stored in the situation information storage unit 103. For example, in Fig. 5(a) , when the indexes acquired by the index acquisition unit 102 are index a, index c, and index d, situation B is estimated as the situation. A specific example of situation estimation will be described in each embodiment.
  • the "situation" of a moving object may be any fact that is inferred from an indicator and is related to the moving object.
  • the estimation in the situation estimation unit 104 is not limited to one stage, but may be multiple stages.
  • a first situation i.e., a primary intermediate fact
  • a second situation i.e., a secondary intermediate fact
  • a two-stage estimation is performed
  • a one-stage estimation is performed.
  • the attack/anomaly relationship information storage unit 105 stores an attack/anomaly relationship table that indicates the relationship between cyber attacks and anomalies that occur in the electronic control system S. More specifically, the attack/anomaly relationship table indicates the relationship between predicted attack information that indicates attacks that the electronic control system S may be subjected to, predicted anomaly information that indicates anomalies that are predicted to occur if attacked, and predicted anomaly position information that indicates the position within the electronic control system where the predicted anomaly will occur.
  • FIG. 6 is a diagram for explaining the concept of an attack/anomaly relationship table (corresponding to "attack/anomaly relationship information") used in each embodiment.
  • the attack/anomaly relationship table shown in FIG. 6 indicates, for each type of cyber-attack (e.g., attacks A to X), anomalies that will occur when the electronic control system S is subjected to a cyber-attack (corresponding to "predicted anomaly information") and the location where the anomaly will occur (corresponding to "predicted anomaly location information").
  • a cyber-attack it is expected that, for example, multiple anomalies will occur at one or multiple locations.
  • the attack/anomaly relationship table indicates a combination of multiple anomalies that will occur when an attack occurs and the location where the anomaly occurs.
  • the predicted attack information includes the type of cyber-attack (e.g., attacks A to X) as well as the assumed starting point and target points of the attack in the event of a cyber-attack, but this is just one example.
  • the information may be only the type of cyber-attack, only the starting point of the attack, only the target point of the attack, only the starting point of the attack and the target point of the attack, only the starting point of the attack, the intermediate point and the target point of the attack, or other information related to the cyber-attack.
  • the predicted abnormality location, attack starting point location, and attack target location use identifiers expressed in hexadecimal, and each identifier represents a location.
  • the location corresponding to an identifier may be a specific location or an abstract location. Examples of specific locations include the type of each ECU 20 and the type of security sensor. Examples of the former include 0000 for the external, 0x01 for the external communication ECU 20b, 0x02 for the integrated ECU 20a, and 0x03 for the zone ECU 20c. Examples of abstract locations include the hierarchy in which each ECU 20 exists, the network to which each ECU 20 is connected, and the functions and characteristics of the ECU 20.
  • attack origin of attack A is outside the electronic control system S
  • the target of attack is the external communication ECU 20b.
  • the attack origin may be a position inside the electronic control system S, or it may be outside the electronic control system S.
  • the attack origin being outside the electronic control system S means that the cyber-attack is coming from outside the vehicle.
  • the attack/anomaly relationship table in Figure 6 has a table format, but any format of database is acceptable.
  • the name of the attack/anomaly relationship table is also arbitrary.
  • the attack/anomaly relationship table may be called a pattern matching table (or PMT) or anomaly detection pattern.
  • the attack/anomaly relationship table can create and generate anomaly occurrence patterns by simulating which security sensors of which ECUs 20 will detect anomalies in which order in the event of an attack, based on the arrangement of the ECUs 20 constituting the electronic control system S, the connection relationships of the ECUs 20 (also called network topology), and the arrangement of the security sensors provided in the ECUs 20. Furthermore, the table may be based on information regarding the monitoring targets of the security sensors and the rules for monitoring the security sensors.
  • the method for creating and generating the attack/anomaly relationship table is not limited to this method. For example, AI or machine learning may be used.
  • the table may also be generated using anomaly occurrence patterns of security sensors in past attacks.
  • the attack/anomaly relationship table in FIG. 6 has predicted attack information and predicted anomaly information, but in addition to this, it may further have predicted non-anomalous information indicating non-anomalous events predicted to occur in the event of an attack, and predicted non-anomalous position information indicating the position within the electronic control system where the predicted non-anomalous event will occur.
  • the attack/anomaly relationship table may be configured to indicate the relationships between predicted attack information, predicted anomaly information, predicted abnormal position information, predicted non-anomalous information, and predicted non-anomalous position information.
  • the predicted abnormal position information and the predicted non-anomalous position information may be integrated into one predicted position information.
  • normal logs may be used in addition to abnormal logs as security logs that are pattern matched with the attack/anomaly relationship table.
  • a security log determined to be a false positive abnormal log or a false positive normal log may not be used for attack inference.
  • weighting may be applied to predicted anomaly information and predicted non-anomaly information in the attack/anomaly relationship table that correspond to an anomaly indicated by a security log determined to be a false positive abnormal log or a non-anomaly indicated by a security log determined to be a false positive normal log.
  • the attack estimation unit 106 estimates an attack that the electronic control system S has received based on the security log acquired by the log acquisition unit 101, the attack/anomaly relationship table stored in the attack/anomaly relationship information storage unit 105, and the index acquired by the index acquisition unit 102. More specifically, the attack estimation unit 106 estimates an attack that the electronic control system S has received based on the situation estimated by the situation estimation unit 104 using the index. When the situation estimation unit 104 is a separate device, the attack estimation unit 106 also serves as a situation acquisition unit that receives the situation.
  • "based on” includes not only the direct use of indicators, but also the indirect use of indicators, i.e., the inference (or presumption) of intermediate facts from indicators and the inference (or presumption) of an attack using the intermediate facts.
  • the attack estimation unit 106 estimates, as the attack to be estimated, for example, an attack type and/or an attack path.
  • the attack path can be estimated by using the predicted attack information in the attack/anomaly relationship table. For example, if the predicted attack information indicates the attack starting point location and the attack target location, the attack starting point location and the attack target location are regarded as the attack path. If the predicted attack information indicates the attack starting point location, intermediate location, and attack target location, the attack starting point location, intermediate location, and attack target location may be regarded as the attack path, or the attack starting point location and the attack target location may be regarded as the attack path.
  • an attack/anomaly relationship table in which neither the attack starting point position nor the attack target position is indicated in the predicted attack information may be used.
  • the predicted anomaly position in the attack/anomaly relationship table is regarded as the attack path.
  • this attack type is estimated by comparing the security log with the attack/anomaly relationship table, it is estimated that the ECU 20a, NW1, ECU 20c, NW2, and ECU 20f are the attack path.
  • the attack direction in the estimated attack path may be estimated using data indicating the direction of communication included in the context data of the security log. For example, when the communication direction indicated by the data included in the context data of the security log is the direction from the ECU 20a to the ECU 20f, the attack direction may be estimated to be the direction from the ECU 20a to the ECU 20f. When data indicating communication in the direction from ECU 20a to ECU 20f and data indicating communication in the direction from ECU 20f to ECU 20a are included in the context data of the security log, it may be estimated that the attack direction is in both directions, from ECU 20a to ECU 20f and from ECU 20f to ECU 20a. In an attack/anomaly relationship table in which the predicted attack information does not indicate either the attack starting point position or the attack target position, the attack type included in the predicted attack information may be referred to as a predicted anomaly occurrence pattern of the attack path.
  • attack estimation unit 106 An example of an attack estimation method performed by the attack estimation unit 106 will be described below with reference to FIGS. First, a specific example of a normal attack estimation method not based on indicators will be described with reference to FIG. Assume that the security log acquired by the log acquisition unit 101 indicates that anomalies B, C, and D were detected at the position 0x02, for example. Meanwhile, in the attack/anomaly relationship table in Fig. 6, the predicted attack information corresponding to the predicted anomaly position information of 0x02 and the predicted anomaly information of anomalies B, C, and D is attack C. Therefore, the attack estimation unit 106 estimates that attack C has occurred.
  • Example 1 As in the example described above in Fig. 5, it is assumed that situation B is estimated by the situation estimation unit 104 using the index acquired by the index acquisition unit 102. In situation B, it is assumed that the location of 0x03, for example, is not related to a cyber attack. In this case, the attack estimation unit 106 does not use for attack estimation the "part" of (a) that includes the location of 0x03 in the predicted anomaly location information in the attack/anomaly relationship table in Fig. 7a, and the "part" of (b) that includes the location of 0x03 in the predicted attack information.
  • the attack estimation unit 106 can reduce the amount of calculations required for attack estimation by performing attack estimation without using the attack/anomaly relationship table for the portion estimated not to be related to a cyber-attack.
  • attack estimation can be performed even if the resources allocated to the attack analysis device 10 are small.
  • the term "part" includes not only a part of one piece of attack/anomaly relationship information, but also at least one piece of a plurality of pieces of attack/anomaly relationship information.
  • Not used for attack estimation includes not only cases where it is not actively used for attack estimation, but also cases where a part that includes a location estimated to be related to an attack by referring to an indicator is used as predicted abnormal location information or predicted attack information for attack estimation, and the other parts are not used passively for attack estimation.
  • the attack estimation unit 106 may "not use for attack estimation" the "portions" of the attack/anomaly relationship table in FIG. 7a that include anomaly A in the predicted anomaly information, i.e., the portions of anomaly A at the positions 0x01, 0x02, and 0x03.
  • attack estimation unit 106 may "not use for attack estimation" the portion of anomaly C at location 0x03 in the attack/anomaly relationship table in FIG. 7a.
  • an attack/anomaly relationship table may be prepared for each situation, and a corresponding attack/anomaly relationship table may be selected depending on the situation.
  • an attack/anomaly relationship table may be prepared that excludes predicted attack information, predicted anomaly location information, and predicted anomaly information that correspond to positions and/or anomalies that are presumed not to be related to a cyber attack.
  • Example 2 Although the first embodiment is a case where a position not related to a cyber attack is estimated from a situation, it can also be applied to a case where a position related to a cyber attack is estimated from a situation.
  • situation B it is assumed that the position of 0x02 is estimated to be related to a cyber attack.
  • the attack estimation unit 106 uses the "part" of (c) that includes the position of 0x02 in the predicted anomaly position information and the "part" of (d) that includes the position of 0x02 in the predicted attack information in the attack/anomaly relationship table in FIG.
  • the operation of the attack estimation unit 106 in a case where a specific position in a certain situation is estimated to be related to a cyber-attack has been described, but it can also be applied to a case where a specific anomaly in a certain situation is estimated to be related to a cyber-attack.
  • a specific anomaly in a certain situation is estimated to be related to a cyber-attack.
  • the attack estimation unit 106 may "use for attack estimation" the "portions" of the attack/anomaly relationship table in FIG. 7b that include anomaly A and anomaly B in the predicted anomaly information, that is, the portions of anomaly A and anomaly B at the respective positions 0x01, 0x02, and 0x03.
  • attack estimation unit 106 may "use for attack estimation" the portion of the attack/anomaly relationship table in FIG. 7b that corresponds to anomalies A and B at locations 0x01 and 0x02.
  • an attack/anomaly relationship table may be prepared for each situation, and a corresponding attack/anomaly relationship table may be selected depending on the situation.
  • an attack/anomaly relationship table may be prepared that consists only of predicted attack information, predicted anomaly location information, and predicted anomaly information that correspond to positions and/or anomalies presumed to be related to a cyber attack.
  • an attack is inferred without using the attack/anomaly relationship table of the part that is inferred not to be related to a cyber-attack.
  • an attack is inferred by weighting the attack/anomaly relationship table of the "part" that is inferred not to be related to a cyber-attack.
  • the attack estimation unit 106 weights (w) the pattern (e) including the position of 0x01 as predicted anomaly position information in the attack/anomaly relationship table in FIG. 7c, and/or the pattern (f) including the position of 0x01 as predicted attack information.
  • the patterns (e) and (f) are multiplied by a coefficient of 0 ⁇ w ⁇ 1, here 0.5. The value of the coefficient can be appropriately determined in light of the degree of unrelatedness to a cyber attack.
  • the matching degree can be calculated, for example, by dividing the inner product of the vector value of the attack/anomaly relationship table for the estimated attack and the vector value of the security log indicating the detected attack by the sum of the vector values of the attack/anomaly relationship table before weighting for the estimated attack, but is not limited to this.
  • the matching degree is calculated by a matching degree calculation unit 107 described later.
  • Matching degree (vector value of attack-anomaly relationship table) * (vector value of security log) / (vector value of attack-anomaly relationship table before weighting) (* denotes an inner product.)
  • the attack estimation unit 106 estimates that attack A has occurred. Then, the matching degree can be calculated as follows.
  • the weighting in the attack/anomaly relationship table in Figure 7c indicates the proportion of anomalies at each location that are related to a cyber attack, so the matching degree calculated with weighting added can be said to represent the certainty that an estimated cyber attack has occurred.
  • the matching degree without weighting is 1, meaning that the possibility of attack A occurring is evaluated as 100%, whereas the matching degree with weighting is 0.5, meaning that the possibility of attack A occurring is evaluated as 50%.
  • the security log acquired by the log acquisition unit 101 indicates that anomalies A and C were detected at the position 0x01.
  • the attack/anomaly relationship table of Fig. 7c there is no predicted attack information in which the predicted anomaly position information is 0x01 and the predicted anomaly information completely matches anomalies A and C, but the closest predicted attack information is attack A. Therefore, the attack estimation unit 106 estimates that attack A has occurred. Then, the matching degree can be calculated as follows.
  • the matching degree without weighting is 0.66, meaning that the possibility of attack A occurring is evaluated as 66%, whereas the matching degree with weighting is 0.33, meaning that the possibility of attack A occurring is evaluated as 33%.
  • the weighting has the significance of reducing the contribution of predicted anomaly information or predicted anomaly location information of a location that is estimated not to be related to an attack in a situation to the matching degree.
  • the attack estimation unit 106 uses the weighted attack/anomaly relationship table to estimate an attack, thereby making it possible to estimate an attack while taking into account the degree of association with a cyber attack.
  • an attack/anomaly relationship table may be prepared for each situation, and a corresponding attack/anomaly relationship table may be selected depending on the situation.
  • an attack/anomaly relationship table may be prepared in which weighting is applied to predicted attack information, predicted anomaly location information, and predicted anomaly information that correspond to positions and/or anomalies that are presumed not to be related to cyber attacks.
  • Example 4 In Examples 1 to 3, the attack was inferred by modifying the attack/anomaly relationship table with a focus on the location where anomalies occurred in relation to a cyber-attack. In this example, the attack is inferred by focusing on the anomaly that occurred.
  • the situation estimation unit 104 estimates the cause of the anomaly as a situation based on the index acquired by the index acquisition unit 102. Then, if the estimated situation is not a cyber attack, the attack estimation unit 106 determines that the anomaly indicated by the security log is a false positive log generated by detecting an anomaly different from an anomaly caused by an attack on the electronic control system S, and does not estimate an attack using the false positive log.
  • attack inference can be performed even if the resources allocated to the attack analysis device 10 are small.
  • Example 4 instead of using false positive logs to make an attack inference, as described in Example 3, an attack inference is made using false positive logs, but by modifying the attack/anomaly relationship table, an attack inference can be made that takes into account the degree to which the false positive logs are related to a cyber attack. For example, if the anomaly indicated by the false positive log is anomaly C that occurred at position 0x01, weighting (w) is applied to the portion (g) in the attack-anomaly relationship table in Fig. 7d, i.e., the pattern of anomaly C at position 0x01. The weighting method is the same as in the third embodiment.
  • the part that has the function of determining whether or not a log is a false positive, as described in Example 4, corresponds to the log determination device.
  • the matching degree calculation unit 107 calculates the matching degree of a combination of anomalies and their positions in the security log when the combination is not exactly the same as a combination of predicted anomaly information and predicted anomaly position information.
  • the matching degree refers to the degree of agreement between the anomaly indicated by the security log and the anomaly indicated by the predicted anomaly information.
  • the output unit 108 outputs “attack information” indicating the attack estimated by the attack estimation unit 106.
  • the attack information is, for example, an attack type and/or an attack path.
  • the attack information may further include the matching degree calculated by the matching degree calculation unit 107.
  • "attack information" may be any information related to an attack, such as the type and category of the attack, the attack path such as the starting point of the attack or the target of the attack, or the damage caused by the attack.
  • Fig. 8 not only shows an attack analysis method executed by the attack analysis device 10, but also shows the processing procedure of an attack analysis program that can be executed by the attack analysis device 10.
  • the order of these processes is not limited to the order shown in Fig. 8. In other words, the order may be changed as long as there are no constraints such as a relationship in which a certain step utilizes the results of the previous step. The same applies to the flowcharts and timing charts subsequent to Fig. 8.
  • the attack analysis device 10 has an attack/anomaly relationship information storage unit 105 that stores an attack/anomaly relationship table that shows the relationship between predicted attack information indicating attacks that the electronic control system may be subjected to, predicted anomaly information indicating anomalies predicted to occur when the electronic control system is attacked, and predicted anomaly location information indicating the location within the electronic control system where the predicted anomaly will occur.
  • the log acquisition unit 101 of the attack analysis device 10 acquires a security log indicating an abnormality detected in the electronic control system S and the location within the electronic control system S where the abnormality was detected (S101).
  • the index acquisition unit 102 acquires an index indicating the internal state and/or the external state of the vehicle when an abnormality occurs (S102).
  • the situation estimation unit 104 estimates the vehicle situation corresponding to the indicator acquired in S102 (S103).
  • the attack on the electronic control system S is estimated based on the security log acquired in S101, the attack/anomaly relationship table stored in the attack/anomaly relationship information storage unit 105, and the index acquired in S102 (S104). In the case of based on the index, for example, the attack on the electronic control system S is estimated based on the vehicle situation estimated in S103 (S104).
  • the output unit 108 outputs attack information indicating the attack estimated in S104 (S105).
  • an attack is inferred based on an index in addition to the security log and the attack/anomaly relationship table, thereby improving the efficiency of calculations for inferring a cyber-attack that an electronic control system has received.
  • the situation of the corresponding vehicle is estimated based on the indicators, and an attack estimation is performed based on the situation in addition to the security log and the attack/anomaly relationship table, so that the calculations required for attack estimation can be selected and executed depending on the situation, further improving the efficiency of calculations to estimate cyber attacks that have been received by the electronic control system.
  • Embodiment 1 This embodiment is mainly based on the description of Japanese Patent Application No. 2022-158597.
  • the attack analysis device of this embodiment is referred to as an attack analysis device 11 .
  • the overall system 1 includes a vehicle (e.g., an automobile) and an external server 30, and the vehicle and the external server 30 are configured to communicate with each other via a wireless communication network (e.g., the Internet, etc.), for example.
  • a wireless communication network e.g., the Internet, etc.
  • the vehicle is equipped with a vehicle control system S (i.e., an electronic control system that controls the operation of the vehicle) that is subject to cyber attacks
  • vehicle control system S i.e., an electronic control system that controls the operation of the vehicle
  • the external server 30 is equipped with an attack analysis device 11 that analyzes cyber attacks against the vehicle control system S.
  • the attack analysis device 11 may be installed in the vehicle.
  • the vehicle control system S is equipped with multiple electronic control devices (hereinafter, ECU) 20.
  • ECU is an abbreviation for Electronic Control Unit.
  • various sensors, switches, etc. i.e., sensors 21
  • the sensors, switches, etc. that constitute the sensors 21 are connected to the ECU 20.
  • a signal serving as an index showing the state of each component of the vehicle detected by the sensors 21 (i.e., a vehicle situation determination signal described later, hereinafter corresponding to "index") is input to the vehicle control system S.
  • the vehicle situation determination signal is transmitted to the attack analysis device 11 of the external server 30.
  • the index is a signal capable of estimating a vehicle situation showing the state of the vehicle described later.
  • the vehicle situation obtained as a result of the estimation may be transmitted to the attack analysis device 11 of the external server 30.
  • a security sensor installed in each ECU 20 detects the occurrence of an abnormality due to the cyber-attack and generates a vehicle log (i.e., an abnormality log that is a signal indicating the abnormality, collectively referred to as a "security log"), and this vehicle log is then transmitted to the attack analysis device 11 in the external server 30.
  • the vehicle control system S is a system that controls the operation of the vehicle, and each ECU 20 is connected via a bus (not shown) etc. In other words, each ECU 20 is connected via an in-vehicle network.
  • each ECU 20 can be controlled individually, and as described below, it can be changed to a stopped or sleep state depending on the vehicle situation (i.e., the vehicle state defined according to each vehicle situation determination signal) that indicates the overall state of the vehicle.
  • stop refers to a state in which no power is supplied to the ECU 20
  • switch refers to a state in which the ECU 20 pauses normal operation and waits for normal operation to begin until, for example, a wake-up signal is input. In the sleep state, lower power is supplied than during normal operation, which contributes to power saving.
  • the ECU 20 arranged in the vehicle control system S is equipped with the security sensor that monitors the inside of the ECU 20 and the network to which the ECU 20 is connected.
  • the security sensor detects an abnormality that has occurred inside the ECU 20 or in the network, it generates the vehicle log as a security log.
  • the vehicle log includes abnormality information (corresponding to "abnormality”) indicating the abnormality detected by the security sensor, and abnormality position information (corresponding to "position”) indicating the position where the abnormality detected by the security sensor occurred.
  • the vehicle log may further include identification information for identifying the vehicle control system S, identification information of the security sensor that detected the abnormality, identification information of the ECU 20 in which the security sensor is mounted, the time when the abnormality was detected, the number of times when the abnormality was detected, the order in which the abnormality was detected, the contents of the data received before the abnormality was detected, and information on the IP addresses (e.g., source and destination), etc.
  • the attack analysis device 11 is a device that analyzes a cyber attack based on vehicle logs, etc. generated in the vehicle when the vehicle (more specifically, the vehicle control system S) is subjected to a cyber attack.
  • the attack analysis device 11 is a well-known electronic processing device equipped with a CPU, and memories such as ROM and RAM.
  • the attack analysis device 11 is a device equipped with a well-known microcomputer (not shown).
  • the memory is not limited to memory within the microcomputer, but may be various types of storage devices outside the microcomputer (e.g., a hard disk, etc.).
  • the various functions executed by the electronic control unit (ECU 20) and the electronic processing device are realized by the CPU executing a program stored in a non-transient physical recording medium.
  • the memory corresponds to the non-transient physical recording medium that stores the program. Furthermore, the execution of this program results in the execution of a method corresponding to the program.
  • the memory stores not only various programs (e.g., programs that analyze cyber attacks) but also various data (e.g., various tables) that are used when executing the various programs.
  • programs e.g., programs that analyze cyber attacks
  • data e.g., various tables
  • the method of realizing the various functions of the electronic control unit (ECU20) and electronic processing device is not limited to software, and some or all of the elements may be realized using one or more pieces of hardware.
  • the electronic circuits may be realized by digital circuits that include multiple logic circuits, or analog circuits, or a combination of these.
  • the attack analysis device 11 functionally comprises an abnormality log acquisition unit 111, an index acquisition unit 112, a vehicle situation relationship table storage unit 113, an equipment state estimation unit 114, an attack/abnormality relationship table storage unit 115, an attack estimation unit 116, a matching degree calculation unit 117, and an output unit 118.
  • the abnormality log acquisition unit 111 (corresponding to the "log acquisition unit") is configured to receive a vehicle log transmitted from the vehicle.
  • the vehicle log includes abnormality information indicating the content of an abnormality caused by a cyber attack detected by the security sensor, and abnormality location information indicating the location where the abnormality occurred.
  • the abnormality information is information that indicates the type of abnormality. Furthermore, the abnormality location information includes information that indicates the location of which ECU 20 is abnormal, and information that indicates the location of which bus connected to the ECU 20 is abnormal.
  • abnormalities in the ECU 20 include abnormalities in the information (i.e., frames) transmitted and received between the ECUs 20 (i.e., frame abnormalities), abnormalities in the bus (i.e., bus abnormalities), and host-type abnormalities.
  • the abnormalities include various abnormalities caused by cyber attacks on the vehicle control system S, such as frame abnormalities, bus abnormalities, and host-type abnormalities.
  • the abnormality information includes types of abnormality such as abnormality A to abnormality D. Furthermore, the positions of the abnormality include, for example, the first layer to the third layer. Note that the number of types of abnormality and the number of layers are not limited to this.
  • the first to third layers are a classification of ECUs 20 that operate in the same way in the vehicle situation, for example, into three common types.
  • the classification is for ECUs 20 that operate in the same way in the power on and off states.
  • the off state includes the sleep state.
  • each ECU ⁇ to ⁇ is assigned an identification number (i.e., an identification number for an individual position).
  • ECU ⁇ and ECU ⁇ have the same power on/off operation in the vehicle situation (i.e., the vehicle situation), so they are given the same identification number (i.e., an identification number indicating a shared position), for example 0x01, as the first-layer ECU 20.
  • an identification number indicating a common position for example, 0x02
  • ECU ⁇ and ECU ⁇ have the same power on/off operation in the vehicle situation, they are assigned an identification number indicating the same common position as the ECU 20 in the third layer, for example, 0x03.
  • the first to third layers in which the ECUs 20 are standardized are given as an example here, it is also possible to simply indicate the location of the abnormality by the location of each ECU 20 (for example, an identification number indicating an individual location) without standardization.
  • the index acquisition unit 112 (corresponding to the "index acquisition unit") is configured to receive a vehicle situation determination signal transmitted from a vehicle, as shown in FIG.
  • this vehicle situation determination signal is a signal that serves as an indicator of the state of each component of the vehicle detected by the sensors 21, and is used to estimate the vehicle situation based on the vehicle situation determination condition table (see Figure 12) described later.
  • the device state estimation unit 114 (corresponding to a "situation estimation unit") is configured to estimate the vehicle situation. Specifically, the device state estimation unit 114 is configured to use the vehicle situation determination signal received by the index acquisition unit 112 to estimate a vehicle situation indicating the overall state of the vehicle based on a vehicle situation determination condition table (see Figure 12) described later.
  • the device state estimation unit 114 is also configured to estimate the power state (corresponding to the "situation") of each ECU 20, specifically, whether each ECU is on or off, based on the vehicle situation and a power state determination table (see FIG. 13) described below. Note that the estimation of whether each ECU 20 is on or off may be performed by the attack estimation unit 116.
  • the attack estimation unit 116 (corresponding to the “attack estimation unit”) is configured to estimate the attack path and attack type of a cyber attack. Specifically, the attack estimation unit 116 is configured to estimate the attack path and the attack type based on the power on/off information (corresponding to the "situation") of each ECU 20 obtained based on the vehicle situation estimated by the device state estimation unit 114 and the vehicle log information (i.e., the abnormality position information of each layer commonized with the abnormality information such as abnormality A to abnormality D) obtained from the abnormality log acquisition unit 111. The procedure of this estimation will be described in detail later.
  • the matching degree calculation unit 117 calculates a matching degree indicating the degree of match between the combination of the anomaly information and the anomaly position information and the combination of the predicted anomaly information and the predicted anomaly position information shown in FIG. 14, which will be described later.
  • the degree of matching can be expressed as a percentage (e.g., a percentage) of the degree of anomaly matching, for example, by comparing the combination of anomalies indicated by the actually acquired vehicle log with the combination of anomalies in the predicted anomaly patterns in the matching table for estimating attack paths, which will be described later.
  • the matching degree is 100%, and if only three anomalies match, the matching degree is 75%, or 3/4 of 100%.
  • the degree of matching may be expressed, for example, by a numerical value obtained by dividing the difference between the number of abnormalities indicated by the vehicle log and the number of abnormalities indicated by the predicted abnormality pattern by the number of abnormalities indicated by the vehicle log or the number of abnormalities indicated by the predicted abnormality pattern.
  • the output unit 118 (corresponding to the “output unit”) is configured to output the estimation result estimated by the attack estimation unit 116 and the calculation result calculated by the matching degree calculation unit 117 .
  • the vehicle situation relationship table storage unit 113 is set in a memory, and stores a vehicle situation determination condition table as shown in FIG. 12 and a power supply state determination table indicating the power supply state of the ECU 20 for each vehicle situation as shown in FIG. 13.
  • the vehicle situation determination condition table is a table in which indicators indicating the state of each component of the vehicle are arranged horizontally (column arrangement direction: column direction) in the figure, and the overall state of the vehicle (e.g., driving state, etc.) is arranged vertically (row arrangement direction: row direction) in the figure.
  • the indicators indicating the state of each component of the vehicle are items corresponding to the situation determination signals indicating the state of each component obtained from the sensors 21. Examples of such indicators include vehicle speed, mode (e.g., driving mode or diagnostic mode), occupants (e.g., number of occupants), battery voltage, charging state, shift position, etc.
  • the vehicle situation indicates the overall state of the vehicle identified by the indicator.
  • vehicle situations include at least one of the following: driving in the city, driving at high speed, parked with occupants, parked with no occupants, driving autonomously, driving with low battery, slowing down, reversing, undergoing fault diagnosis, and a default state other than the above-mentioned exemplary states.
  • the default state may be, for example, an undeterminable state, an unclear situation state, or other initial setting state that is set in advance.
  • it can be determined, for example, from map data that the vehicle is traveling in a specific urban area or traveling at less than a specific speed.
  • it can be determined that the vehicle is traveling on an expressway or traveling at a speed above a specific speed.
  • the vehicle is in autonomous driving mode, it can be determined.
  • the battery level is low while the vehicle is traveling, it can be determined that the battery level is below a specific level while the vehicle is traveling.
  • the speed indicates a speed below a specific speed.
  • each vehicle situation can be estimated from the state of each configuration specified by the vehicle situation determination signal (for example, the state indicated by each indicator such as vehicle speed and shift position).
  • the power supply state determination table is a table in which the power supply on (ON) and off (OFF) states of each ECU 20 (e.g., ECUs A to J) are arranged horizontally in the figure, and each vehicle situation is arranged vertically in the figure.
  • ECU A and ECU F, and ECUC and ECU H can be regarded as ECUs 20 in the same layer.
  • the attack/anomaly relationship table storage unit 115 (corresponding to the “attack/anomaly relationship information storage unit”) is set in a memory, and the attack/anomaly relationship table storage unit 115 stores a matching table for estimating an attack path (corresponding to the “attack/anomaly relationship information”) as shown in FIG. 14.
  • the matching table for estimating attack paths is a table in which predicted anomaly information corresponding to the type of anomaly detected by the security sensor and predicted anomaly position information corresponding to the position of anomalies indicating each layer including each ECU 20 are arranged horizontally in the figure, and types of cyber attacks and cyber attack paths are arranged vertically in the figure.
  • the predicted anomaly information is arranged according to the predicted anomaly position corresponding to each layer.
  • predicted anomaly information is information that indicates the type of anomaly that is predicted to occur if a cyber-attack actually occurs
  • predicted anomaly location information is information that indicates the location of an anomaly that is predicted to occur if a cyber-attack actually occurs.
  • the types of abnormalities are, for example, abnormalities A to D, and the locations of the abnormalities are the layers (for example, the first to third layers) that include each ECU 20.
  • the types of cyber attacks i.e., attack types
  • attack types are, for example, attacks A to X
  • the path of the attack is, for example, the attack path (i.e., the estimated path) defined by the location of the starting point of the attack and the location of the target of the attack.
  • Attacks A to X include various types of well-known cyber attacks.
  • a matching table for estimating an attack path is a table that shows the relationship between the type of anomaly, the location of the anomaly, and the attack type and attack path when an anomaly occurs that is indicated by the type of anomaly, such as anomaly A to D, and the location of the anomaly, such as each layer, and the attack type and attack path are determined.
  • attack path estimation matching table it is possible to determine (i.e., estimate) the attack type and attack path from the type of anomaly and the location of the anomaly.
  • the attack type and attack path are estimated by comparing the match state between the combination of anomaly information indicating the actual type of anomaly contained in the vehicle log and anomaly location information indicating the location where the anomaly occurred, and the combination of predicted anomaly information and predicted anomaly location information in the matching table for estimating the attack path.
  • ⁇ Basic estimation method> a basic estimation method for estimating an attack type and an attack path will be described.
  • vehicle logs are analyzed for all ECUs 20 (hence layers). For example, the location and type of an abnormality are obtained from a group of vehicle logs in a certain time frame (i.e., a group of vehicle logs to be analyzed and required for analyzing an attack), and it is confirmed which position in the attack estimation matching table (i.e., which position in each column in each row of the table) this actual abnormality corresponds to.
  • the pattern of abnormalities in the actual vehicle logs i.e., the actual abnormality pattern that indicates the arrangement of whether or not there are actual abnormalities
  • the attack estimation matching table e.g., the arrangement pattern of ⁇ (i.e., circles) in each row.
  • the attack estimation matching table to compare the actual abnormality pattern with the predicted abnormality pattern in the attack estimation matching table, it is possible to estimate the attack type and attack route.
  • the attack type and attack path can be identified from the attack estimation matching table. Note that if the actual abnormality pattern and the predicted abnormality pattern do not match perfectly, the attack type and attack path can be estimated according to the degree of match.
  • Step 1 Acquire a group of vehicle logs (i.e., one or more vehicle logs) that serve as input for estimating an attack path.
  • Step 2 Next, estimate the attack path by following the steps (2-1) to (2-5) below.
  • (2-1) One vehicle log is retrieved, and it is analyzed to determine which ECU 20 (thus, which layer) of the security sensor the vehicle log indicates is abnormal (i.e., the location and type of the abnormality).
  • the attack estimation matching table is referenced to identify which ECU 20 (and therefore which layer) in the column direction (horizontal direction) of the attack estimation matching table the security sensor is abnormal (i.e., which column the abnormality relates to).
  • Step 3 After all vehicle logs have been collated, the stored attack path candidates are stored as the estimated attack path results. Note that the attack path candidates indicate the attack path candidates before the output is finalized, and if multiple identical attack path candidates are estimated, the later estimated attack path candidates are not stored.
  • Step 4 the stored attack paths are output as estimation results.
  • ⁇ Estimation method according to power supply state> The main steps in this estimation method are similar to the processing described above in the ⁇ Basic estimation method>.
  • Step 1 Acquire a group of vehicle logs (i.e., one or more vehicle logs) that serve as input for estimating an attack path.
  • Step 2 Next, estimate the attack path by following the steps (2-1) to (2-7) below.
  • (2-1) One vehicle log is retrieved, and it is analyzed to determine which ECU 20 (thus, which layer) of the security sensor the vehicle log indicates is abnormal (i.e., the location and type of the abnormality).
  • the vehicle log to be analyzed is a vehicle log corresponding to abnormalities A to D of the ECU 20 that is thought to have been turned off and not in operation
  • the subsequent processes e.g., processes in (2-3) to (2-6)
  • the process returns to (step 1) above to analyze the next vehicle log.
  • the analysis of the vehicle log in the area enclosed by the dashed line in FIG. 15 is omitted.
  • the attack estimation matching table is referenced to identify which ECU 20 (and therefore which layer) in the column direction (i.e., horizontal direction) of the attack estimation matching table the security sensor is abnormal (i.e., which column the abnormality relates to).
  • Step 3 After all vehicle logs have been collated, the stored attack path candidates are stored as the estimated attack path results. Note that the attack path candidates indicate the attack path candidates before the output is finalized, and if multiple identical attack path candidates are estimated, the later estimated attack path candidates are not stored.
  • Step 4 the estimated attack path is output. Therefore, when the result of checking all vehicle logs shows that the actual vehicle logs match anomalies A, C, and D in the first layer, for example, as in attack A in Fig. 15 (i.e., 100% match), it can be estimated that the cyber attack is an attack path with the attack starting point 0000 and the attack target 0x01. It can also be estimated that the cyber attack is attack A.
  • the pattern of the combination of abnormality information and abnormality location information in the actual vehicle log i.e., the actual abnormality pattern
  • the pattern in each row of the attack estimation matching table i.e., the predicted abnormality pattern
  • the degree of matching can be determined to be low. For example, if only two out of three match, the degree of matching can be considered to be 2/3.
  • attack estimation matching table contains anomalies (i.e., anomalies in the actual anomaly pattern) in the attack estimation matching table, and the location of the anomaly is on the second layer and the types of anomalies correspond to anomaly A, anomaly B, and anomaly C
  • attack types or attack paths are estimated to be attack B, attack C, and attack D.
  • the matching degree is estimated to be 2/3 for attack B, 2/3 for attack C, and 3/3 for attack D (i.e., 100%).
  • the index acquisition unit 112 receives a vehicle situation determination signal from the vehicle control system S of the vehicle (S111).
  • the abnormality log acquisition unit 111 receives a vehicle log including abnormality information and abnormality position information from the vehicle control system S of the vehicle (S112).
  • the device state estimation unit 114 uses the vehicle situation determination condition table to estimate the vehicle situation based on the vehicle situation determination signal (S113).
  • the attack estimation unit 116 uses the attack estimation matching table to compare the combination of the type of abnormality and the position of the abnormality contained in the vehicle log obtained from the abnormality log acquisition unit 111 with multiple predicted abnormality patterns that are predicted to occur in the event of a cyber attack (i.e., by matching the combination of the type of abnormality and the position of the abnormality contained in the vehicle log with the predicted abnormality patterns in the attack estimation matching table), thereby estimating the attack path and attack type of the cyber attack (S114).
  • the calculation range for the estimation is set by identifying the power-off ECU 20 from the power state determination table based on the vehicle situation estimated by the device state estimation unit 114, and omitting processing unnecessary for estimating the attack path, etc., based on the power-off ECU 20.
  • the analysis of this attack is skipped. Also, for example, as in the box surrounded by the dashed line in FIG. 15, the analysis of the vehicle log of the security sensor located in the powered-off ECU 20 (and therefore, for example, the third layer) is skipped.
  • the power on/off state of each ECU 20 is determined according to the vehicle situation, and the ECU 20 corresponding to each layer is determined as shown in the table in FIG. 11.
  • the estimation results such as the attack path estimated by the attack estimation unit 116 and the vehicle situation estimated by the device state estimation unit 114 are output to the matching degree calculation unit 117.
  • the matching degree calculation unit 117 calculates the matching degree by the various methods described above (S115).
  • the ECU 20 that was powered off when the vehicle log was generated is identified from the vehicle situation. If there is an ECU 20 that was powered off, it is not included in the calculation of the matching degree.
  • the estimated results of the attack path, etc. and the matching degree are output to the output unit 118, and the analysis results (i.e., the estimated results of the attack path, etc. and the matching degree) are output from the output unit 118 to a specified device outside the attack analysis device 11 (for example, a storage device of the external server 30, etc.).
  • a specified device outside the attack analysis device 11 for example, a storage device of the external server 30, etc.
  • the attack path and/or attack type of a cyber attack can be estimated by comparing the abnormality information and abnormality location information contained in the vehicle log with multiple predicted abnormality patterns that are predicted to occur in the event of a cyber attack.
  • the scope of the estimation is determined based on the vehicle situation, so the necessary calculations can be selected and performed depending on the vehicle situation. This makes it possible to increase the efficiency of calculations when estimating attack paths, etc., and reduce the calculation load.
  • the range of estimation for estimating attack paths, etc. can be set based on the power on/off state of the ECU 20 obtained from the vehicle situation. For example, for the vehicle log of an ECU 20 that is powered off, calculations for estimating attack paths, etc. can be omitted. This can increase the calculation efficiency when estimating attack paths, etc., and reduce the calculation load.
  • the predicted abnormality pattern is linked to the attack origin ECU 20 and the attack target ECU 20. If the attack origin ECU 20 or the attack target ECU 20 is included in the power-off ECU 20 in the vehicle situation when the abnormality is detected, the process of estimating the attack path, etc., can be skipped for the predicted abnormality pattern linked to the power-off ECU 20.
  • a table showing the relationship between the attack path and/or attack type, predicted anomaly information indicating the type of anomaly predicted to occur in the event of a cyber-attack, and predicted anomaly location information indicating the location of the anomaly predicted to occur in the event of a cyber-attack can be used as an attack estimation matching table used when estimating an attack path, etc.
  • an attack estimation matching table e.g., an attack estimation matching table in which combinations of anomaly types and anomaly locations are shared
  • the degree of matching can indicate the degree of similarity between the information contained in the vehicle log and the predicted abnormality pattern.
  • the vehicle situation may be at least one of the following: city driving, high-speed driving at or above a predetermined speed, stopped with an occupant present, stopped with no occupant present, automatic driving, when the remaining battery charge drops below a predetermined level while driving, slowly moving at or below a predetermined speed, reversing, charging, fault diagnosis, a default state other than the above-mentioned various states, etc.
  • the vehicle situation is not limited to these examples, and may include various vehicle situations that indicate the state of the vehicle (for example, the moving state or use state of the vehicle).
  • a vehicle is used as an example of a device equipped with an electronic control system S that is subject to cyber attacks, but the invention is not limited to this and can be applied to any electronic control system equipped with multiple ECUs.
  • the electronic control system S may be an electronic control system mounted on any mobile body, or may be mounted on a stationary body rather than a mobile body.
  • the attack analysis device 11 is mounted on an external server, but a part or the entire attack analysis device 11 may also be mounted on a vehicle.
  • the ECUs are shared, but they do not have to be shared. In this case, for example, an attack estimation matching table in which each ECU is arranged in place of each layer in FIG. 14 can be used.
  • the contents inferred from this disclosure include at least one of the attack path and attack type of a cyber attack.
  • the attack analysis apparatus 11 described in the present disclosure may be realized by a special purpose computer provided by configuring a processor and memory programmed to perform one or more functions embodied in a computer program.
  • the attack analysis device 11 described in this disclosure may be realized by a dedicated computer provided by configuring a processor with one or more dedicated hardware logic circuits.
  • the attack analysis device 11 described in the present disclosure may be realized by one or more dedicated computers configured by combining a processor and memory programmed to execute one or more functions with a processor configured by one or more hardware logic circuits.
  • the computer program may be stored in a computer-readable non-transitory tangible recording medium as instructions executed by a computer.
  • the method for realizing the functions of each part included in the attack analysis device 11 does not necessarily have to include software, and all of the functions may be realized using one or more pieces of hardware.
  • the present disclosure can also be realized in various forms, such as a device that includes the attack analysis device 11 as a component, a program for causing the computer of the attack analysis device 11 to function, a non-transient tangible recording medium such as a semiconductor memory on which this program is recorded, and a processing method of the attack analysis device 11 (e.g., an attack analysis method).
  • An attack analysis device (11) that analyzes a cyber attack based on an abnormality occurring in an electronic control system (S) when the electronic control system is subjected to a cyber attack
  • the electronic control device (20) included in the electronic control system has a power state that can be individually controlled and can be changed to a stopped or sleep state depending on a situation that indicates the state of the device in which the electronic control system is installed, an abnormality log acquisition unit (111) configured to acquire an abnormality log including information on a type of the abnormality and a location of the abnormality generated when the abnormality occurs in the electronic control system; an attack estimation unit (116) configured to estimate an attack path and/or an attack type of the cyber-attack by comparing information included in the abnormality log acquired by the abnormality log acquisition unit with one or more predicted abnormality patterns indicating a combination of the abnormalities predicted to occur in the event of the cyber-attack; Equipped with When the estimation is performed by the attack estimation unit, a calculation range for performing the estimation is determined based on the situation of the device. Attack analysis equipment.
  • invention 2 The attack analysis device according to claim 1, An index acquisition unit (112) configured to acquire an index capable of estimating the situation of the device from the device; an apparatus state estimation unit (114) configured to estimate the situation of the apparatus from the indicator; Further equipped with When the estimation is performed by the attack estimation unit, a calculation range for performing the estimation is determined based on the situation of the device estimated by the device state estimation unit. Attack analysis equipment.
  • invention 3 The attack analysis device according to claim 1, A calculation range for performing the estimation is set based on the stopped or sleep state of the power state of the electronic control device obtained from the situation of the device. Attack analysis equipment.
  • invention 4 The attack analysis device according to claim 3, With respect to the abnormality log of the electronic control device in the power supply state of the stopped or the sleep state, the process of making the estimation is omitted by comparing the abnormality log with the predicted abnormality pattern. Attack analysis equipment.
  • the attack analysis device (Invention 5) The attack analysis device according to claim 1, The predicted abnormality pattern is linked to the electronic control device at a predicted attack point indicating the starting point of the cyber attack, When the electronic control device at the predicted attack site is included in the electronic control device in the stopped or sleep state in the situation of the device when the abnormality is detected, the predicted abnormality pattern associated with the electronic control device in the stopped or sleep state is compared with the abnormality log to omit the process of making the estimation. Attack analysis equipment.
  • the attack analysis device (Invention 6) The attack analysis device according to claim 1,
  • the predicted abnormality pattern is linked to the electronic control device of a predicted attack target that indicates a target of the cyber attack,
  • the electronic control device that is the target of the predicted attack is included in the electronic control device that is in the stopped or sleep state in the situation of the device when the abnormality is detected, the predicted abnormality pattern associated with the electronic control device that is in the stopped or sleep state is compared with the abnormality log to omit the process of making the estimation. Attack analysis equipment.
  • invention 7 The attack analysis device according to claim 1, Among the predicted abnormality patterns, for the predicted abnormality pattern corresponding to the electronic control device that is in the stopped or sleep state in the situation of the device when the abnormality is detected, the process of making the estimation is omitted by comparing it with the abnormality log. Attack analysis equipment.
  • the attack analysis device is a table configured to indicate predicted anomaly information indicating the anomaly predicted to occur when the cyber-attack is received, and a predicted anomaly position indicating a position of the anomaly predicted to occur when the cyber-attack is received,
  • the attack path and/or the attack type of the cyber attack are estimated by comparing the abnormality log. Attack analysis equipment.
  • invention 9 The attack analysis device according to claim 1, and calculating a matching degree indicating a degree of similarity between information included in the abnormality log and the predicted abnormality pattern. Attack analysis equipment.
  • the attack analysis device When the device is a vehicle, the situation of the vehicle is at least one of the following: driving in a city, driving at a high speed of a predetermined speed or more, stopped with an occupant, stopped without an occupant, driving automatically, when the battery level drops below a predetermined level while driving, driving slowly at a speed less than a predetermined speed, driving backward, charging, undergoing a fault diagnosis, and a default state other than the various states. Attack analysis equipment.
  • invention 12 The attack analysis device according to claim 2, and determining the situation of the device from the index based on a table in which the index corresponds to the situation of the device. Attack analysis equipment.
  • the attack analysis device according to claim 1, The method is configured to estimate the attack path and/or the attack type of the cyber attack from the information included in the abnormality log based on a table that corresponds the information included in the abnormality log acquired by the abnormality log acquisition unit and the predicted abnormality pattern that is predicted to occur in the event of the cyber attack. Attack analysis equipment.
  • An attack analysis device As the table, a table showing a relationship between the attack path and/or the attack type, predicted anomaly information indicating the anomaly predicted to occur when the cyber-attack is received, and a predicted anomaly location indicating the location of the anomaly predicted to occur when the cyber-attack is received is used,
  • the attack path and/or the attack type of the cyber attack is estimated from a combination of the predicted anomaly information and the predicted anomaly position corresponding to a combination of the type of the anomaly and the position of the anomaly. Attack analysis equipment.
  • An attack analysis method for analyzing a cyber-attack based on an abnormality occurring in an electronic control system (S) when the electronic control system is subjected to a cyber-attack comprising:
  • the electronic control device (20) included in the electronic control system has a power state that can be individually controlled and can be changed to a stopped or sleep state depending on a situation that indicates the state of the device in which the electronic control system is installed,
  • An abnormality log is obtained when the abnormality occurs in the electronic control system, the abnormality log including information on the type of the abnormality and the location of the abnormality (S112).
  • a calculation range for performing the estimation is determined based on the situation of the device (S114). Attack analysis method.
  • the electronic control device (20) included in the electronic control system has a power state that can be individually controlled and can be changed to a stopped or sleep state depending on a situation that indicates the state of the device in which the electronic control system is installed,
  • An abnormality log is obtained when the abnormality occurs in the electronic control system, the abnormality log including information on the type of the abnormality and the location of the abnormality (S112).
  • attack path and/or attack type of the cyber-attack is estimated by comparing the information included in the acquired abnormality log with one or more predicted abnormality patterns indicating a combination of the abnormalities predicted to occur in the event of the cyber-attack, a calculation range for performing the estimation is determined based on the situation of the device (S114). Attack analysis program.
  • Embodiment 2 This embodiment is mainly based on the description of Japanese Patent Application No. 2022-157432.
  • the attack analysis device of this embodiment is referred to as an attack analysis device 12 .
  • the attack analysis device 12 of this embodiment will be described with reference to FIG. 17.
  • the attack analysis device 12 is a device that analyzes attacks against an electronic control system S installed in a mobile object described later.
  • the attack analysis device 12 includes an entry point candidate generation unit 120, an attack estimation unit 220, and an estimation result verification unit 320.
  • a device having the attack estimation unit 220 is referred to as an attack analysis device, and the entry point candidate generation unit 120, the attack estimation unit 220, and the estimation result verification unit 320 are collectively referred to as an attack analysis system. Therefore, FIG. 17 is also a diagram showing the attack analysis system 1 of this embodiment.
  • the electronic control system S that is subject to a cyber attack is an on-board system installed in a vehicle.
  • the attack analysis device 12 of this embodiment is assumed to be installed outside the vehicle, as shown in FIG. 1(c).
  • the electronic control system S will be described with reference to Fig. 18.
  • the electronic control system S is composed of multiple electronic control units (hereinafter, ECUs).
  • ECUs electronice control units
  • the electronic control system S has ECU-1 to 5, and each ECU is connected via an in-vehicle network.
  • the ECUs constituting the electronic control system S are equipped with security sensors that monitor the inside of the ECUs and the network to which the ECUs are connected.
  • the security sensor detects an abnormality that has occurred inside the ECU or in the network, it generates a security log and outputs it to the entry point candidate generation unit 120 described below.
  • the log generated and output by the security sensor is referred to as the security log.
  • the security log includes abnormality information indicating the abnormality detected by the security sensor and abnormality position information indicating the position where the abnormality detected by the security sensor occurred.
  • the security log may further include identification information that specifies the electronic control system S, identification information of the security sensor that detected the abnormality, identification information of the ECU in which the security sensor is mounted, the time when the abnormality was detected, the number of times when the abnormality was detected, the order in which the abnormality was detected, the contents of the data received before the abnormality was detected, and information on the IP addresses (i.e., the source and destination), etc.
  • the electronic control system S is connected to external destinations using a wireless communication method or a wired communication method.
  • the external destinations of the electronic control system S are composed of AP-1 to AP-5.
  • Examples of external destinations include a HEMS (Home Energy Management System), a desk lamp, a roadside unit, a non-contact charger, other vehicles, a diagnostic device, and an OEM center.
  • each of ECU1 to ECU5 becomes entry points EP1 to EP5, respectively.
  • the entry point may be identified by an interface.
  • Each ECU may be a physical ECU or a virtual ECU.
  • the interfaces shown in the middle column are entry points, and the ECUs having the entry points are shown in the left column.
  • the multimedia ECU has Wi-Fi, Bluetooth (registered trademark), and USB as interfaces, so each interface is an entry point.
  • the ECU shown in the left column may be defined as the entry point, or the combination of the interface shown in the center column and the ECU shown in the left column may be defined as the entry point, as in Fig. 19 .
  • FIG. 20 is a diagram showing an example of a driving situation/attack relationship table (corresponding to "driving situation/abnormality relationship information").
  • the driving situation/attack relationship table shown in FIG. 20 the external connection destination (corresponding to "connection destination information") and the entry point of the attack predicted from the connection destination (corresponding to "predicted entry point") in the electronic control system S shown in FIG. 18 are stored in association with the driving situation of the vehicle when the abnormality occurs, that is, the driving situation corresponding to the entry point (corresponding to "predicted driving situation”). That is, for each external connection destination, the driving situation of the vehicle when the connection destination can be connected is associated.
  • FIG. 20 the driving situation/attack relationship table
  • the external connection destinations that can be connected in each driving state are all of AP-1 to AP-5 in the case of driving situation C1, AP-1, AP-3, and AP-5 in the case of driving situation C2, and AP-3 and AP-5 in the case of driving situation C3.
  • driving conditions include not only the internal conditions while the vehicle is driving, such as the behavior, operation, and mode of the vehicle itself, but also the external conditions while the vehicle is driving, such as the ambient temperature, position, and time of day of the vehicle.
  • FIG. 21 is a diagram showing the presence or absence of connection possibility depending on the vehicle speed for external connection destinations such as a HEMS, a desk lamp, another vehicle, a diagnostic device for maintenance work at a vehicle dealership, and a roadside device. That is, this is an example in which the driving situation is the "speed" of the vehicle.
  • the speeds shown in the figure may be classified according to the connection possibility of the connection destination, for example, 0 km/h is a stop, 0 km/h or more and less than 20 km/h is a low speed, and 20 km/h or more is a high speed. Note that an upper limit may be set for the high speed depending on the performance of the device to be connected. In this case, the high speed may be set in multiple stages.
  • speed may refer to not only the speed in the narrow sense indicated by the distance traveled per unit time, but also information that can indirectly specify the speed in the narrow sense, such as the time required per unit distance, position information between two points and the required time, etc. Alternatively, it may be defined as a range of speeds.
  • the driving status/attack relationship table By using the driving status/attack relationship table, it is possible to identify or narrow down external connection destinations and entry points using the vehicle's driving status when an abnormality occurs. For example, since a vehicle cannot connect to a power station while it is moving, if an abnormality occurs in a moving vehicle, the possibility of an attack from a power station can be eliminated or evaluated as being unlikely. In addition to obtaining the vehicle speed as speed information, it can also be obtained as the transition of position information or the state of the gear shift that reflects the vehicle's driving status.
  • the vehicle's driving condition is distinguished by temperature, for example the air temperature around the vehicle or the temperature of the components that make up the vehicle
  • connections that do not work at the temperature when an abnormality occurs can be excluded from being the source of a cyber attack.
  • a connection destination that is not operating at the time the abnormality occurs can be excluded from the source of the attack.
  • the driving state of a vehicle is distinguished according to its geographic location, it is possible to exclude from the source of an attack connection destinations that do not exist economically or legally depending on the country or state in which the vehicle is driving when an abnormality occurs.
  • FIGs 20 and 21 there is usually a one-to-one correspondence between external connection destinations that are the source of a cyber attack and entry points, but an entry point may cover multiple external connection destinations.
  • the driving condition/attack relationship tables in Figures 20 and 21 correspond to the situation information described using Figure 5.
  • the vehicle's driving condition at the time of the abnormality occurrence corresponds to an "indicator”
  • the entry point and external connection destination correspond to a "situation.”
  • the driving condition/attack relationship table is used to estimate the entry point corresponding to the driving condition based on the input driving condition.
  • the entry point candidate generation unit 120 includes an input unit 121, a driving condition/attack-related information storage unit 122, an entry point candidate estimation unit 123, and an output unit 124.
  • the input unit 121 (corresponding to the "log acquisition unit” and “index acquisition unit”) acquires a security log indicating an abnormality detected by the electronic control system S, and the vehicle's driving conditions (corresponding to the "index”) "when the abnormality occurred.” For example, it may acquire the driving conditions at the time indicated by a timestamp included in the security log that identifies when the abnormality occurred.
  • the driving conditions are acquired from various sensors and ECUs inside the vehicle.
  • the driving situation/attack relationship information storage unit 122 is a storage unit that stores a driving situation/attack relationship table (corresponding to "driving situation/attack relationship information") that indicates the relationship between predicted entry points, which are the entry points of predicted attacks, and predicted driving situations corresponding to the predicted entry points.
  • driving situation/attack relationship information a driving situation/attack relationship table that indicates the relationship between predicted entry points, which are the entry points of predicted attacks, and predicted driving situations corresponding to the predicted entry points.
  • the entry point candidate estimation unit 123 (corresponding to a "situation estimation unit") estimates external connection destinations and entry point candidates (corresponding to "situations") that may be connected in the driving conditions acquired by the input unit 121 based on the driving condition/attack relationship table stored in the driving condition/attack relationship information storage unit 122.
  • the entry point candidate estimation unit 123 identifies AP-1, AP3, and AP-5 as possible connection destinations for the electronic control system S in that driving condition, and identifies EP-1, EP-3, and EP-5 as possible entry point candidates.
  • the output unit 124 outputs the security log acquired by the input unit 121 and the entry point candidates estimated by the entry point candidate estimation unit 123 to the attack estimation unit 220 described below.
  • the security log may be directly input to the attack estimation unit 220 described below without being obtained from the input unit 121.
  • the output unit 124 outputs the entry point candidates to the attack estimation unit 220.
  • the attack estimation unit 220 includes an input unit 221, an attack/anomaly relationship information storage unit 222, an estimation unit 223, a matching degree calculation unit 224, and an output unit 225.
  • the input unit 221 obtains security logs and entry point candidates from the entry point candidate generation unit 120.
  • the attack/anomaly relationship information storage unit 222 is a storage unit that stores an attack/anomaly relationship table (corresponding to "attack/anomaly relationship information").
  • the attack/anomaly relationship table is a table that shows the relationship between predicted attack information indicating attacks that the electronic control system S may be subjected to, predicted anomaly information indicating anomalies predicted to occur in the electronic control system in the event of a cyber attack, and predicted anomaly position information indicating the position within the electronic control system S where the predicted anomaly will occur.
  • FIG. 24 is a diagram showing an example of an attack/abnormality relationship table.
  • the attack/abnormality relationship table shown in FIG. 24 shows, for each type of attack (e.g., attack A to attack L), the abnormality that will occur when the electronic control system S is attacked (corresponding to "predicted abnormality information") and the location at which the abnormality will occur (corresponding to "predicted abnormality location information") among ECU-1 to ECU-5.
  • the attack/abnormality relationship table shows combinations of multiple abnormalities that will occur when an attack occurs and their locations.
  • FIG. 24 further shows the correspondence between the type of attack and the entry point expected in the event of the attack.
  • the "predicted attack information" is composed of an attack type and an entry point, but may also include other information. For example, it may include an attack path including an attack starting point location and an attack target location. However, if the attack path is included, the attack starting point location may be substituted without providing a separate entry point column. In other words, if the attack starting point location is an interface or ECU that constitutes an entry point, these become the entry point.
  • the estimation unit 223 estimates the attack that the electronic control system S has received based on the security log and the attack/anomaly relationship table input from the input unit 221. At this time, the estimation unit 223 estimates the attack using the part of the attack/anomaly relationship table that includes the entry point candidates input from the input unit 221. Specifically, the attack having a combination of predicted anomaly information and predicted anomaly location information that corresponds to the combination of anomaly information and anomaly location information included in one or more security logs is identified using the attack/anomaly relationship table narrowed down by the entry point candidates. "Corresponding to a combination" means that the combination is the same or similar.
  • the number of columns of predicted attack information to be compared with security logs can be reduced, thereby improving the efficiency of estimating attacks.
  • the entry point is either EP-1, EP-3, or EP-5. Therefore, only attacks A, B, F, G, K, and L whose entry points are EP-1, EP-3, or EP-5 are targeted for analysis.
  • an attack/anomaly relationship table may be created for each entry point candidate.
  • the attack/anomaly relationship tables for entry points EP-1, EP-3, and EP-5 are selected, and attacks that combine predicted anomaly information are identified from these tables.
  • the entry point candidates estimated based on the driving conditions may be used to verify the estimated attack instead of narrowing down the targets for matching in the attack/anomaly relationship table.
  • the verification is performed by the estimation result verification unit 320.
  • the estimation unit 223 identifies the closest combination from among the combinations of predicted anomaly information and predicted anomaly location included in the attack/anomaly relationship table. Then, the attack type that indicates the closest combination is estimated to be an attack that has been received by the electronic control system.
  • the estimation unit 223 may estimate that the type of attack received by the electronic control system is either attack A or attack B.
  • the estimation unit 223 may further estimate future anomalies that may occur in the electronic control system S or future attacks that may occur from the difference between the combination of the anomaly information and the anomaly position information and the combination of the predicted anomaly information and the predicted anomaly position information. For example, if the number of anomalies indicated by the anomaly information is smaller than the number of anomalies indicated by the predicted anomaly information, there is a risk that anomalies not included in the anomalies indicated by the predicted anomaly information may occur in the future. Therefore, the estimation unit 223 estimates that the difference between the anomaly indicated by the predicted anomaly information and the anomaly indicated by the anomaly information is an anomaly that will occur in the electronic control system in the future. In such a case, the output unit 225, described later, may output future anomaly information indicating the difference between the anomaly indicated by the predicted anomaly information and the anomaly indicated by the anomaly information.
  • the estimation unit 223 estimates attacks that the electronic control system S may be subjected to in the future, assuming abnormalities that may occur in the future.
  • the output unit 225 which will be described later, may output future attack information indicating that the attack type included in the attack information is an attack that the electronic control system will be subjected to in the future.
  • the matching degree calculation unit 224 calculates the matching degree of a combination of anomaly information and anomaly position information when the combination of predicted anomaly information and predicted anomaly position information is not exactly the same as the combination of these.
  • the matching degree is represented, for example, by a numerical value obtained by dividing the difference between the number of anomalies indicated by the anomaly information and the number of anomalies indicated by the predicted anomaly information by the number of anomalies indicated by the anomaly information or the predicted anomaly information.
  • the output unit 225 outputs "attack information" indicating the attack estimated by the estimation unit 223 to the estimation result verification unit 320 described below.
  • the attack information may further include the matching degree calculated by the matching degree calculation unit 224.
  • the output unit 225 may output attack information that includes future attack information or future abnormality information.
  • the inference result verification unit 320 includes an attack information acquisition unit 321 and a verification unit 322.
  • the attack information acquisition unit 321 acquires the attack information output from the output unit 225.
  • the verification unit 322 verifies the contents included in the attack information. For example, the verification unit 322 verifies the accuracy of the estimation result of the attack estimation unit 220 from the matching degree included in the attack information. For example, if the matching degree is lower than a predetermined matching degree, the verification unit 322 determines that the estimation result by the attack estimation unit 220 is incorrect. Alternatively, the verification unit 322 may instruct the attack estimation unit 220 to perform another analysis together with the estimation results of past or future security logs.
  • the verification unit 322 may further verify the accuracy of the attack/anomaly relationship table from the degree of matching. For example, if estimation results with low degrees of matching occur consecutively, it determines that the association between the predicted anomaly information and the predicted anomaly location information contained in the attack/anomaly relationship table is not accurate, and that the table needs to be reset or updated.
  • the input unit 121 of the entry point candidate generation unit 120 acquires a security log indicating an abnormality detected in the electronic control system S, and the vehicle driving conditions when the abnormality occurred (S121).
  • the entry point candidate estimation unit 123 estimates entry point candidates that are candidates for the entry point of an attack in the driving conditions acquired in S121 based on the driving conditions/attack relationship table stored in the driving conditions/attack relationship information storage unit 122 (S122).
  • the output unit 124 outputs the security log and the entry point candidates estimated in S122 (S123).
  • the input unit 221 of the attack estimation unit 220 acquires the security log and the entry point candidates output in S123 (S124).
  • the estimation unit 223 estimates the attack that the electronic control system has received based on the attack/anomaly relationship information including the entry point candidate in the predicted attack information and the security log (S125).
  • the matching degree calculation unit 224 calculates the matching degree between the predicted anomaly information and the predicted anomaly position information and the anomaly information and the anomaly position information (S126).
  • the output unit 225 outputs attack information indicating the estimated attack, including the matching degree (S127).
  • the attack information acquisition unit 321 of the estimation result verification unit 320 acquires the attack information output in S127 (S128).
  • the verification unit 322 acquires the attack information, it verifies the attack estimation result included in the attack information (S129).
  • attack analysis device 12 of the present disclosure when an electronic control system is attacked, entry point candidates are estimated using the vehicle's running conditions when an abnormality occurs, and the attack is estimated by narrowing down the entry point candidates. This makes it possible to efficiently analyze attacks and reduce the processing load. Furthermore, according to the attack analysis device 12 of the present disclosure, attacks are inferred using an attack/anomaly relationship table in which the contents of predicted anomalies are associated with entry points. However, when estimation is performed using an attack/anomaly relationship table that has been narrowed down in advance to entry point candidates, predicted attack information that is not actually relevant can be excluded from the estimation target in advance, which results in improved accuracy in attack estimation. Furthermore, since attacks are inferred using an attack/anomaly relationship table in which the contents of predicted anomalies are associated with entry points, it is also possible to output entry point information as well as attack information as an inferred result.
  • the entry point candidate generation unit 120 and at least a part of the estimation result verification unit 320 are provided in a device different from the device in which the attack estimation unit 220 is provided. In this section, differences from the second embodiment will be mainly described. Note that the configurations and operations of the entry point candidate generation unit 120, the attack estimation unit 220, and the estimation result verification unit 320 are the same as those of the second embodiment, and therefore descriptions thereof will be omitted.
  • FIG. 28 is a diagram showing an example of an attack analysis system including an attack analysis device 12 of variant example 1.
  • the attack analysis device 12 includes only an attack estimation unit 220, and the entry point candidate generation unit 120 and the estimation result verification unit 320 are provided in the verification device 21.
  • the attack analysis device 12 and the verification device 21 are collectively referred to as the attack analysis system 2.
  • FIG. 29 is a diagram illustrating the attack analysis device 12 of Modification 1. As shown in FIG. 29, in Modification 1, a server device located outside the vehicle is the attack analysis device 12, and a verification device 21 is installed in the vehicle.
  • the input unit 221 of the attack analysis device 12 obtains, from the verification device 21 mounted on the vehicle, a security log indicating an abnormality detected in the electronic control system S, and entry point candidates that are candidates for the entry point of an attack in the driving conditions of the vehicle when the abnormality occurred.
  • the entry point candidates and security logs output from the entry point candidate generation unit 120 are transmitted to the attack estimation unit 220 via a wireless communication network.
  • the attack information output from the attack estimation unit 220 is transmitted to the estimation result verification unit 320 via a wireless communication network. Therefore, although not shown in FIG. 29, the attack analysis device 12 and the verification device 21 may be equipped with a wireless communication unit and an antenna, or the output unit 124 of the entry point candidate generation unit 120 and the attack information acquisition unit 321 of the estimation result verification unit 320 may have the function of a wireless communication unit.
  • the process of estimating the cyber-attack that the electronic control system S has received i.e., the process in the attack estimation unit 220, places the heaviest load on the system. Therefore, by providing the server device with an attack analysis device 12 that has the attack estimation unit 220, it is possible to significantly reduce the load on the vehicle.
  • FIG. 30 shows a second modification of the second embodiment.
  • the attack analysis device 12 includes an entry point candidate generation unit 120 in addition to an attack estimation unit 220.
  • the attack analysis device 12 may be a server device, as in the configuration shown in FIG. 29, but the attack analysis device 12 may be a device mounted on a vehicle, and the verification device 21 may be realized as a server device.
  • the attack estimation result by the attack estimation unit 220 is verified by the server device.
  • the server device in order to verify the estimated results of attacks in multiple electronic control systems, it becomes possible to determine, for example, whether or not the attack/anomaly relationship table needs to be reset or updated by comparing it with the estimated results in other electronic control systems.
  • FIG. 31 also shows a third modification of the second embodiment.
  • the attack analysis device 12 includes an inference result verification unit 320 in addition to the attack estimation unit 220.
  • the entry point candidate generation unit 120 is provided in the entry point candidate generation device 21.
  • the attack analysis device 12 having the same arrangement as in FIG. 29, that is, the attack estimation unit 220 and the inference result verification unit 320 with a large processing load, is a server device.
  • the index acquisition unit 102, the situation information storage unit 103, and the situation estimation unit 104 may be provided in the vehicle, and the log acquisition unit 101, the attack/anomaly relationship information storage unit 105, and the attack estimation unit 106 may be provided in the server device.
  • An attack analysis device that analyzes attacks against an electronic control device system installed in a mobile object, an acquisition unit (121) that acquires a security log indicating an abnormality detected in the electronic control system and a traveling state of the moving object when the abnormality occurs; a driving situation/attack relationship information storage unit (122) for storing driving situation/attack relationship information indicating a relationship between a predicted entry point, which is a predicted entry point of an attack, and a predicted driving situation corresponding to the predicted entry point; an entry point candidate estimation unit (123) that estimates an entry point candidate that is a candidate for an entry point of an attack in the driving situation based on the driving situation/attack relationship information; an attack/anomaly relationship information storage unit (222) for storing attack/anomaly relationship information indicating the relationship between predicted attack information indicating an attack that the electronic control system may be subjected to, predicted anomaly information indicating an anomaly that is predicted to occur if the electronic control system is subjected to the attack, and predicted anomaly position information indicating a position within the electronic control system
  • the traveling conditions include one or more of a group consisting of a position of the moving object, an air temperature around the moving object, and a time or a time of day;
  • An attack analysis device according to claim 1.
  • the driving situation/attack relationship information further includes destination information that is a destination of the predicted entry point.
  • An attack analysis device according to claim 1.
  • the attack analysis device is mounted on a moving object.
  • An attack analysis device that analyzes attacks against an electronic control device system installed in a mobile object, an acquisition unit (221) that acquires a security log indicating an abnormality detected in the electronic control system and an entry point candidate that is a candidate for an entry point of an attack in a running state of the moving object when the abnormality occurs; an attack/anomaly relationship information storage unit (222) for storing attack/anomaly relationship information indicating a correspondence between predicted attack information indicating an attack that the electronic control system may be subjected to, predicted anomaly information indicating an anomaly that is predicted to occur if the electronic control system is subjected to the attack, and predicted anomaly position information indicating a position within the electronic control system where the predicted anomaly will occur; an estimation unit (223) that estimates an attack that the electronic control system has received based on the attack/anomaly relationship information including the entry point candidate in the predicted attack information and the security log; and an output unit (225) that outputs attack information indicating the estimated attack. Attack analysis device (12).
  • the attack analysis device includes: a driving situation/attack relationship information storage unit (122) for storing driving situation/attack relationship information indicating a relationship between a predicted entry point, which is a predicted entry point of an attack, and a predicted driving situation corresponding to the predicted entry point; an attack/anomaly relationship information storage unit (222) for storing attack/anomaly relationship information indicating a relationship between predicted attack information indicating an attack that the electronic control system may be subjected to, predicted anomaly information indicating an anomaly that is predicted to occur when the electronic control system is subjected to the attack, and predicted anomaly position information indicating a position within the electronic control system where the predicted anomaly will occur;
  • the attack analysis method includes: A security log indicating an abnormality detected in the electronic control system and a traveling condition of the mobile object when the abnormality occurred are acquired (S121); Based on the driving situation and attack relation information, an entry point candidate that
  • An attack analysis program executable by an attack analysis device that analyzes attacks against an electronic control device system installed in a mobile object includes: a driving situation/attack relationship information storage unit (122) for storing driving situation/attack relationship information indicating a relationship between a predicted entry point, which is a predicted entry point of an attack, and a predicted driving situation corresponding to the predicted entry point; an attack/anomaly relationship information storage unit (222) for storing attack/anomaly relationship information indicating a relationship between predicted attack information indicating an attack that the electronic control system may be subjected to, predicted anomaly information indicating an anomaly that is predicted to occur when the electronic control system is subjected to the attack, and predicted anomaly position information indicating a position within the electronic control system where the predicted anomaly will occur;
  • the attack analysis program A security log indicating an abnormality detected in the electronic control system and a traveling condition of the mobile object when the abnormality occurred are acquired (S121); Based on the driving situation and attack relation information, an entry point candidate that is a
  • Embodiment 3 The attack analysis device of this embodiment is referred to as an attack analysis device 13 .
  • the attack analysis device 13 includes a log acquisition unit 131, an erroneous operation frequency information acquisition unit 132, a storage unit 133, a false positive log determination unit 134, an attack/anomaly relationship information storage unit 135, an attack estimation unit 136, and an output unit 138.
  • the log acquisition unit 131, the erroneous operation frequency information acquisition unit 132, the storage unit 133, and the false positive log determination unit 134 constitute the log determination device 23.
  • the log determination device 23 may be included in the attack analysis device 13 as a part of the attack analysis device 13, or as shown in FIG. 29 and FIG. 31 of the second embodiment, the log determination device 23 may be mounted on the vehicle, and an attack determination device having blocks other than the log determination device 23 may be realized in a server device outside the vehicle.
  • the log acquisition unit 131 (corresponding to the "log acquisition unit” and “index acquisition unit") acquires the security log (corresponding to the "security log” and "index”) generated by the security sensor mounted in the ECU 20.
  • the configuration of the electronic control system S is as explained in FIG. 2, and the contents of the security log are as explained in FIG. 3.
  • the log acquisition unit 131 acquires the security logs by receiving them via a communication network using a wireless communication method.
  • the log acquisition unit 131 may acquire multiple aggregated security logs together, or may acquire the generated security logs sequentially.
  • the attack analysis device 13 may further include a log storage unit (not shown) that temporarily stores the security logs acquired by the log acquisition unit 131.
  • the false positive log determination unit 134 (corresponding to a "situation estimation unit") estimates whether the cause of the abnormality indicated by the security log acquired by the log acquisition unit 131 is a cyber attack (corresponding to a "situation") based on the "frequency" at which the security log (corresponding to an "indicator") was generated. If the cause of the abnormality indicated by the security log is not a cyber attack, the security log is determined to be a false positive log.
  • a false positive log refers to a security log generated by detecting an abnormality other than an abnormality caused by the electronic control system S being attacked.
  • the false positive log determination unit 134 estimates whether the cause of the abnormality indicated by the security log acquired by the log acquisition unit 131 is an incorrect operation by the vehicle user (corresponding to a "situation") based on the "frequency" at which the security log was generated. If the cause of the abnormality indicated by the security log is an incorrect operation by the vehicle user, the security log is determined to be a false positive log. As described above, there is a one-to-one correspondence between the estimation result of whether the cause of the abnormality indicated by the security log is a cyber-attack (specifically, the estimation result of whether it is a user's misoperation) and whether the security log is a false positive log.
  • the operation of the false positive log determination unit 134 which involves estimating whether it is a cyber-attack (specifically, estimating whether it is a user's misoperation), will be omitted, and the false positive log determination unit 134 will be described as determining whether it is a false positive log.
  • "frequency" is indicated by, for example, the number of times, the time, the period, etc. at which a security log is generated.
  • a security log contains the time at which an event occurred. Therefore, the false positive log determination unit 134 can determine the frequency at which a security log was generated based on the timestamp contained in the security log. Alternatively, the frequency at which a security log was generated may be determined based on the time at which the log acquisition unit 131 received the security log.
  • the false positive log determination process in the false positive log determination unit 134 uses the information stored in the storage unit 133.
  • the storage unit 133 is a memory unit that stores information used to determine false positive logs.
  • FIG. 33 is a diagram showing an example of information stored in the storage unit 133. A table showing the correspondence between event IDs and reference frequencies, which will be described later, is stored here.
  • the event ID stored in the storage unit 133 is an event ID that indicates identification information of an event related to an abnormality that may occur due to an erroneous operation by a “user” of the electronic control system S, among the event IDs.
  • the term "user” includes not only the owner of the electronic control system, but also a person who uses the electronic control system temporarily.
  • the reference frequency stored in the storage unit 133 is a frequency that serves as a criterion for determining whether a security log is a false positive log.
  • a period and a number of times are stored as the reference frequency, but this is not limited to these.
  • the security sensor detects an abnormality caused by such an incorrect operation and generates a security log.
  • the security sensor detects an abnormality caused by such an incorrect operation and generates a security log.
  • an event ID indicating an event related to an abnormality that may occur due to a user error is stored in the storage unit 133.
  • the false positive log determination unit 134 performs a process of determining whether or not the security log is a false positive log when the event ID included in the security log acquired by the log acquisition unit 131 is the same as the event ID stored in the storage unit 133.
  • no process is performed to determine whether or not they are false positive logs, which reduces the amount of processing involved in the log determination process.
  • the false positive log determination unit 134 infers that the cause of the abnormality indicated by the security log is an incorrect operation by the vehicle user, and determines that the security log is a false positive log.
  • "more than” includes both cases where the same value as the comparison target is included and cases where the same value is not included.
  • the storage unit 133 stores the time (e.g., 10 s) and the number of times (e.g., 3 times) as the reference frequency of security logs for event ID (A). This indicates that the number of security logs generated in 10 s is 3.
  • the false positive log determination unit 134 determines whether the frequency at which security logs were generated is less than 3 times in 10 s.
  • FIG. 34 The process of determining whether a security log is a false positive log will be described using FIG. 34.
  • security logs are generated six times in 10 seconds, which is a higher frequency than the reference frequency. Therefore, it is presumed that the cause of the abnormality indicated by the security log is a cyber attack (i.e., it is presumed that it is not a user misoperation), and it is determined that none of the security logs shown in FIG. 34(a) are false positive logs.
  • security logs are generated two times in 10 seconds, which is lower than the reference frequency.
  • the cause of the abnormality indicated by the security log is not a cyber attack (i.e., it is presumed that it is a user misoperation), and it is determined that none of the security logs shown in FIG. 34(b) are false positive logs.
  • the frequency of security logs generated within 10 seconds from the time the first security log was generated is compared with the standard frequency.
  • the frequency of security logs is not limited to the frequency from the time the first security log was generated.
  • the frequency of security logs generated within 10 seconds from the time the last security log was generated may be compared with the standard frequency.
  • the frequency of security logs generated within 10 seconds from the time each security log was generated may be calculated, and each frequency may be compared with the standard frequency.
  • the frequency at which security logs are generated is described as the number of times that security logs are generated within a specified period, but this is not limited to this.
  • the cycle at which security logs are generated may be used as the frequency.
  • the cycle at which erroneous operations are repeated is likely not to be very short.
  • the electronic control system S is subjected to a brute force attack or DoS attack using mechanical processing, the cycle at which security logs are generated is likely to be extremely short. Therefore, the cycle at which security logs are generated may be used as the frequency to determine whether a security log is a false positive log.
  • FIG. 33 illustrates an example table showing the correspondence between event IDs and standard frequencies, but the event IDs and standard frequencies may also be associated with ECU-IDs and stored.
  • ECU 20a and ECU 20c may generate security logs with the same event ID (A).
  • security logs generated in different ECUs are generated by detecting different abnormalities. Therefore, even if two security logs have the same event ID (A), one security log may have been generated by the security sensor detecting an abnormality caused by an attack, while the other security log may have been generated by detecting an abnormality caused by an incorrect operation. Therefore, in addition to the event IDs and standard frequencies, ECU-IDs may also be associated and stored.
  • the security logs acquired by the log acquisition unit 131 may contain a mixture of security logs with various event IDs, but security logs with different event IDs are logs that were generated by detecting different abnormalities. Therefore, the false positive log determination unit 134 determines whether a security log is a false positive log by determining whether the frequency at which security logs with a common event ID were generated is lower than the standard frequency associated with the event ID stored in the storage unit 133. In addition, if an ECU-ID is stored in the storage unit 133, it determines whether a security log is a false positive log by determining whether the frequency at which security logs with a common ECU-ID were generated is lower than the standard frequency associated with the event ID and ECU-ID stored in the storage unit 133.
  • the false positive log determination unit 134 outputs the determination result to the attack estimation unit 136. For example, when the false positive log determination unit 134 determines that a security log is a false positive log, it outputs the security log with a flag indicating that the security log is a false positive log as false positive information.
  • the false positive information may be added by being stored in the context data of the security log shown in FIG. 3, for example. In this way, by adding a flag to the security log as false positive information, it becomes possible to easily distinguish between security logs generated by an attack and security logs generated by a user's incorrect operation.
  • the false positive log determination unit 134 assigns false positive information to a security log that has been determined to be a false positive log, but the false positive information may be assigned to a security log that the false positive log determination unit 134 determines is not a false positive log. In this case, the false positive information indicates information indicating that the security log to which the information has been assigned is not a false positive log.
  • the false positive log determination unit 134 may output identification information of a security log determined to be a false positive log to the attack inference unit 136 .
  • the attack estimation unit 136 can identify security logs that are not used for attack estimation (i.e., false positive logs), and can omit attack estimation that is less necessary.
  • the operation error frequency information acquisition unit 132 acquires operation error frequency information indicating the "frequency" of the user's operation error. Based on this operation error frequency information, the reference frequency stored in the storage unit 133 is updated.
  • the frequency of operational errors tends to differ from user to user. For example, user a tends to make two or three operational errors within one minute, while another user b may make ten or more operational errors within one minute. As a result, it is possible that the security log of user a may be determined to be a false positive log, while the security log of user b may not be determined to be a false positive log. Therefore, it is desirable to set a standard frequency appropriate to the user by acquiring information on the frequency of operational errors when a user makes an operational error and updating the standard frequency based on the frequency of the user's operational errors.
  • the attack/anomaly relationship information storage unit 135 stores an attack/anomaly relationship table that indicates the relationship between cyber attacks and anomalies that occur in the electronic control system S.
  • the attack/anomaly relationship table is as explained in FIG. 6, so FIG. 6 and its explanation will be quoted below.
  • the attack estimation unit 136 estimates the attack that the electronic control system S has received based on the security log acquired by the log acquisition unit 131, the attack/anomaly relationship table stored in the attack/anomaly relationship information storage unit 135, and the judgment result of the false positive log judgment unit 134.
  • the attack estimation unit 136 uses the attack/anomaly relationship table of FIG. 35.
  • the attack estimation unit 136 multiplies a pattern in which the predicted anomaly location information is 0x02 and the predicted anomaly information is anomaly B by, for example, a weight of 0.5. Then, by using this corrected attack/anomaly relationship table for attack estimation, it is possible to evaluate the attack estimation score in the case where a false positive log occurs lower than the attack estimation score in the case where a false positive log does not occur.
  • the coefficient to be multiplied for weighting may be determined by quantitatively evaluating the judgment results of the false positive log judgment unit 134 and determining the value of the coefficient based on the evaluation results. For example, multiple reference frequencies may be prepared, the frequency at which security logs were generated within a specified period may be classified in relation to the multiple reference frequencies, and a coefficient determined according to the classification results may be used.
  • the attack estimation unit 136 may not use the attack/anomaly relationship table and may not perform attack estimation. For example, if the false positive log determination unit 134 outputs a determination result that the security log indicating anomaly B that occurred at 0x02 is a false positive log that is not caused by a cyber attack, the attack estimation unit 136 may not perform attack estimation using the false positive log.
  • the log acquisition unit 131 acquires a security log generated when a security sensor mounted on each of the multiple ECUs 20 constituting the electronic control system S detects an abnormality (S131).
  • the false positive log determination unit 134 determines whether the security log acquired in S131 is a false positive log (S132). Specifically, it determines whether the security log is a false positive log based on the frequency at which the security log was generated. A specific flow of S132 will be described later with reference to FIG. 37.
  • the false positive log determination unit 134 assigns false positive information to the security log determined to be a false positive log (S134).
  • the operation error frequency information acquisition section 132 acquires operation error frequency information indicating the frequency with which the user has performed an operation error (S135). Based on the operation error frequency information acquired in S135, the storage unit 133 updates the reference frequency (S136).
  • the false positive determination unit 134 transmits the security log that is determined to be a false positive log and to which the false positive information has been added (S137).
  • the attack estimation unit 136 modifies the attack/anomaly relationship table based on the false positive information (S138). The attack estimation unit 136 then performs attack estimation using the modified attack/anomaly relationship table, and the output unit 138 outputs attack information indicating the estimated attack (S139).
  • the false positive log determination unit 134 determines whether the event ID in the security log is the same as the event ID stored in the storage unit 133 (S231). Here, if the event ID contained in the security log is different from the event ID stored in the storage unit 133 (S231: N), it is determined that the security log is not a false positive log (S232).
  • the false positive log determination unit 134 further determines whether the frequency of the security log is lower than the standard frequency (S233). If the frequency of the security log is lower than the reference frequency (S233: Y), the false positive log determination unit 134 determines that the security log is a false positive log (S234). On the other hand, if the frequency of the security log is higher than the reference frequency (S233: N), the false positive log determining unit 134 determines that the security log is not a false positive log (S232). Then, the false positive log determining unit 134 outputs the determination result (S235).
  • the attack analysis device 13 that analyzes attacks using security logs can eliminate false positive logs or lower the evaluation of false positive logs, and can analyze attacks using security logs other than false positive logs, thereby improving the accuracy of attack analysis.
  • the log receiving unit 131 of this modified example acquires security logs indicating that a specified event has been successful in the electronic control system S, in addition to security logs generated when a security sensor detects an abnormality.
  • security logs indicating that a specified event has been successful in the electronic control system S
  • these will be referred to as abnormal security logs and successful security logs, respectively.
  • the false positive log determination unit 134 performs a false positive log determination using the information stored in the storage unit 133.
  • FIG. 38 shows an example of a table stored in the storage unit 133 of this embodiment.
  • the storage unit 133 shown in FIG. 38 stores a table showing the correspondence between the event ID, the reference frequency, and the event ID of the successful security log (hereinafter, the successful event ID).
  • the successful event ID is an event ID indicating the identification information of an event that may be successful when the user of the electronic control system S performs a correct operation after an incorrect operation by the user. For example, it is conceivable that a correct password entry or authentication operation is performed after an incorrect operation such as a user of a vehicle equipped with the electronic control system S incorrectly entering a password required for connecting to Wi-Fi (registered trademark), or a worker at a maintenance shop or dealer performs an incorrect authentication operation. In this way, when a correct password entry or authentication operation is performed, a security log indicating that the event is successful is generated. Therefore, a successful event ID indicating an event that may occur after a user's incorrect operation is stored in the storage unit 133.
  • the false positive log determination unit 134 determines whether the abnormal security log is a false positive log based on the frequency with which abnormal security logs were generated before the successful security log.
  • a success event ID is associated with event IDs (A) and (C), but no success event ID is associated with event ID (B).
  • event ID a security log for a success event may not be acquired, so not all event IDs are associated with a success event ID. Therefore, when a success event ID is not associated, such as with event ID (B), a method similar to that of embodiment 3 is used to determine whether the security log is a false positive log.
  • FIG. 39 The process of determining whether a security log in this modified example is a false positive log will be described using FIG. 39.
  • five abnormal security logs with event ID (A) were generated in the 10 seconds prior to the time when a successful security log with event ID (D) was generated, and the frequency is higher than the reference frequency. Therefore, it is determined that none of the abnormal security logs shown in FIG. 39(a) are false positive logs.
  • two abnormal security logs were generated in the 10 seconds prior to the time when a successful security log was generated, and the frequency is lower than the reference frequency. Therefore, it is determined that all of the abnormal security logs shown in FIG. 39(b) are false positive logs.
  • the successful security log in addition to the abnormal security log, may also be determined to be a false positive log. Also, in the example shown in Fig. 39(b), in addition to the abnormal security log, the successful security log may also be determined to be a false positive log. In other words, false positive determination may be performed on security logs that include both abnormal security logs and successful security logs.
  • the false positive log determination unit 134 of this modified example may further not determine that an abnormal security log generated immediately before a successful security log is a false positive log, even if the frequency of abnormal security logs is lower than the reference frequency. It takes a certain amount of time for a user to perform an operation. Therefore, if a successful security log is generated immediately after an abnormal security log is generated, that is, if the time from when an abnormality occurs to when a successful event occurs is shorter than the time it takes for the user to perform an operation, it is highly likely that the abnormality was not caused by a user's incorrect operation, but by an attack using mechanical processing. Therefore, the false positive log determination unit 134 may not determine that an abnormal security log generated during a specified period prior to the time when a successful security log was generated is a false positive log.
  • abnormal security logs are generated twice in the 10 seconds prior to the time the successful security log was generated, and the frequency is lower than the reference frequency.
  • an abnormal security log is generated in a specified period (1 second in FIG. 40) prior to the time the successful security log was generated. Therefore, of the abnormal security logs, log L1 is determined to be a false positive log, but log L2 is not determined to be a false positive log.
  • the attack analysis device 13 of this modified example executes the processes shown in FIG. 36, similar to the attack analysis device 13 of embodiment 3. However, in the attack analysis device 13 of this modified example, the process of determining whether or not a log is a false positive in S132 differs from that of embodiment 3. Therefore, the process of determining whether or not a log is a false positive in this modified example will be explained using FIG. 41. Note that the processes in FIG. 41 that are common to FIG. 37 are given the same reference numerals as FIG. 37.
  • the false positive log determination unit 134 determines whether the event ID in the security log is the same as the event ID stored in the storage unit 133 (S231). Here, if the event ID contained in the security log is different from the event ID stored in the storage unit 133 (S231: N), it is determined that the security log is not a false positive log (S232).
  • the false positive log determination unit 134 further determines whether or not a successful event ID associated with the event ID is stored in the storage unit 133 (S331). If a successful event ID associated with the event ID is stored in the storage unit 133 (S331: Y), it is further determined whether the log acquisition unit 131 has acquired a successful security log having the successful event ID (S332). Here, if the log acquisition unit 131 has acquired a success security log, it is determined whether or not the frequency of abnormal security logs generated before the success security log is lower than a reference frequency (S233).
  • the false positive log determining unit 134 determines that the security log is a false positive log (S234). Furthermore, if the frequency of the security log is higher than the reference frequency (S233: N), the false positive log determining unit 134 determines that the security log does not contain a false positive log (S232).
  • An attack analysis device for analyzing attacks against an electronic control system (S) mounted on a moving object, a log acquisition unit (101) that acquires a security log indicating an abnormality detected in the electronic control system and a position within the electronic control system where the abnormality was detected; an index acquisition unit (102) that acquires an index indicating an internal state and/or an external state of the moving body when the abnormality occurs; an attack/anomaly relationship information storage unit (105) for storing attack/anomaly relationship information indicating the relationship between predicted attack information indicating an attack that the electronic control system may be subjected to, predicted anomaly information indicating an anomaly that is predicted to occur if the electronic control system is subjected to the attack, and predicted anomaly position information indicating a position within the electronic control system where the predicted anomaly will occur; an attack estimation unit (106) for estimating an attack that has been received by the electronic control system based on the security log, the attack/anomaly relationship information, and the indicator; and an output unit (108) that outputs attack information indicating the
  • the apparatus further includes a situation estimation unit (104) for estimating a situation of the moving object corresponding to the indicator based on the indicator,
  • the attack estimation unit estimates an attack that the electronic control system has received based on the security log, the attack/anomaly relationship information, and the situation.
  • An attack analysis device according to claim 1.
  • the attack estimation unit does not use a portion of the attack/anomaly relationship information that includes a position in the electronic control system that is estimated not to be related to the attack in the situation as the predicted anomaly position information or the predicted attack information for estimating an attack;
  • An attack analysis device according to claim 1 or 2.
  • the attack estimation unit does not use a portion of the attack/anomaly relationship information that includes an anomaly in the electronic control system that is estimated not to be related to the attack in the situation as the predicted anomaly information for estimating an attack;
  • An attack analysis device according to any one of claims 1 to 3.
  • the attack estimation unit uses a portion of the attack/anomaly relationship information including a position in the electronic control system that is estimated to be related to the attack in the situation as the predicted anomaly position information or the predicted attack information for attack estimation; 3.
  • An attack analysis device according to claim 1 or 2.
  • the attack estimation unit uses a portion of the attack/anomaly relationship information that includes an anomaly in the electronic control system that is estimated to be related to the attack in the situation as the predicted anomaly information for estimating the attack;
  • An attack analysis device according to any one of claims 1 to 2 or 5.
  • the attack estimation unit uses the attack/anomaly relationship information obtained by weighting a portion of the attack/anomaly relationship information that includes a position in the electronic control system that is estimated not to be related to the attack in the situation as the predicted anomaly information or the predicted anomaly position information, for attack estimation.
  • An attack analysis device according to any one of claims 1 to 6.
  • the attack estimation unit uses the attack/anomaly relationship information obtained by weighting a portion of the attack/anomaly relationship information that includes, as the predicted anomaly information, an anomaly in the electronic control system that is estimated not to be related to the attack in the situation; and An attack analysis device according to any one of claims 1 to 7.
  • the situation estimation unit estimates whether the cause of the anomaly indicated by the security log is a cyber-attack, and if the cause of the anomaly is not a cyber-attack, determines that the security log is a false positive log; the attack estimation unit does not perform attack estimation using the security log that is the false positive log;
  • An attack analysis device according to any one of claims 1 to 9.
  • the indicators also include the security log acquired by the log acquisition unit.
  • An attack analysis device according to any one of claims 1 to 10.
  • the situation estimation unit estimates a vehicle situation, which is a state of operation and/or traveling of the moving object, based on the indicator, and estimates a power supply state of one or more electronic control devices constituting the electronic control system from the vehicle situation;
  • the attack estimation unit does not use a portion of the attack/anomaly relationship information that includes a position in the electronic control system that is estimated not to be related to the attack as the predicted anomaly position information or the predicted attack information based on the power supply state for attack estimation.
  • An attack analysis device according to any one of claims 1 to 4.
  • the indicator is at least one of the speed, mode, number of occupants, battery voltage, charge state, and shift position of the vehicle. 13.
  • An attack analysis device according to claim 12.
  • the situation estimation unit estimates an entry point candidate that is a candidate for an entry point of an attack based on the indicator; the attack estimation unit uses a portion of the attack/anomaly relationship information that includes the entry point candidate as the predicted attack information for attack estimation.
  • An attack analysis device according to any one of claims 1 to 2 or 5 to 6.
  • the indicator is a speed of the moving object. 15.
  • An attack analysis device according to claim 14.
  • the indicator is at least one of a position of the moving object, an air temperature around the moving object, and a time or a time of day.
  • An attack analysis device according to claim 14 or 15.
  • the situation estimation unit estimates whether the cause of the abnormality indicated by the security log is a cyber-attack based on a frequency at which the security log was generated as the indicator, and if the cause of the abnormality is not a cyber-attack, determines that the security log is a false positive log; the attack estimation unit uses, for attack estimation, the attack/anomaly relationship information obtained by weighting (w) the predicted anomaly information corresponding to the anomaly indicated by the security log at the position in the electronic control system indicated by the security log, which is the false positive log, among the attack/anomaly relationship information.
  • An attack analysis device according to any one of claims 1 to 2 or 7 to 9.
  • the situation estimation unit estimates whether or not the cause of the anomaly indicated by the security log is a cyber-attack based on a frequency at which the security log was generated as the indicator, and if the cause is not a cyber-attack, determines that the security log is the false positive log; the attack estimation unit does not perform attack estimation using the security log that is the false positive log;
  • An attack analysis device according to any one of claims 1 to 2 or 10.
  • the situation estimation unit estimates whether or not the cause of the abnormality indicated by the security log is an erroneous operation by a user of the moving object based on a frequency at which the security log was generated as the indicator, and if the cause is an erroneous operation by the user, determines that the security log is the false positive log; 19.
  • An attack analysis device according to claim 17 or 18.
  • the situation estimation unit estimates that the cause of the abnormality indicated by the security log is an erroneous operation by a user of the mobile object. 20.
  • An attack analysis device according to claim 19.
  • An attack analysis device for analyzing attacks against an electronic control system (S) mounted on a moving object, a log acquisition unit (101) that acquires a security log indicating an abnormality detected in the electronic control system and a position within the electronic control system where the abnormality was detected; a situation acquisition unit (106) that acquires a situation of the moving body estimated from an index indicating an internal state and/or an external state of the moving body when the abnormality occurs; an attack/anomaly relationship information storage unit (105) for storing attack/anomaly relationship information indicating the relationship between predicted attack information indicating an attack that the electronic control system may be subjected to, predicted anomaly information indicating an anomaly that is predicted to occur when the electronic control system is subjected to the attack, and predicted anomaly position information indicating a position within the electronic control system where the predicted anomaly will occur; an attack estimation unit (106) that estimates an attack that the electronic control system has received based on the security log, the attack/anomaly related information, and the situation; and an output unit (108) that
  • invention 22 The attack analysis device is provided outside the moving body. An attack analysis device according to any one of claims 1 to 21.
  • the attack analysis device is mounted on a moving object.
  • the attack analysis device includes: an attack/abnormality relationship information storage unit (105) for storing attack/abnormality relationship information indicating a relationship between predicted attack information indicating an attack that the electronic control system may receive, predicted abnormality information indicating an abnormality that is predicted to occur when the electronic control system receives the attack, and predicted abnormality position information indicating a position in the electronic control system where the predicted abnormality will occur;
  • the attack analysis method includes: Obtaining a security log indicating an abnormality detected in the electronic control system and a location within the electronic control system where the abnormality was detected (S101); Acquire an index indicating an internal state and/or an external state of the moving object when the abnormality occurs (S102); Inferring an attack that the electronic control system has received based on the security log, the attack/anomaly relationship information, and the indicator (S104); Outputting attack information indicating the estimated attack (S
  • the attack analysis device includes: an attack/abnormality relationship information storage unit (105) for storing attack/abnormality relationship information indicating a relationship between predicted attack information indicating an attack that the electronic control system may receive, predicted abnormality information indicating an abnormality that is predicted to occur when the electronic control system receives the attack, and predicted abnormality position information indicating a position in the electronic control system where the predicted abnormality will occur;
  • the attack analysis program Obtaining a security log indicating an abnormality detected in the electronic control system and a location within the electronic control system where the abnormality was detected (S101); Acquire an index indicating an internal state and/or an external state of the moving object when the abnormality occurs (S102); Inferring an attack that the electronic control system has received based on the security log, the attack/anomaly relationship information, and the indicator (S104); Outputting attack information indicating the estimated attack (S105); Attack analysis
  • the block diagrams used to explain the embodiments classify and organize the device configuration by function.
  • the blocks showing each function are realized by any combination of hardware or software.
  • such block diagrams can also be understood as disclosures of method inventions and program inventions that realize the methods.
  • N is an integer used in each embodiment and in the claims are used to distinguish between two or more configurations or methods of the same type, and do not limit the order or superiority or inferiority.
  • Each embodiment is based on an attack analysis device for analyzing cyber attacks against electronic control systems installed in vehicles, but this disclosure also includes dedicated or general-purpose devices other than for vehicles, unless otherwise limited by the claims.
  • examples of the form of the attack analysis device of the present disclosure include the following.
  • Examples of the component include a semiconductor element, an electronic circuit, a module, and a microcomputer.
  • Examples of semi-finished products include an electronic control unit (ECU) and a system board. Finished product forms include mobile phones, smartphones, tablets, personal computers (PCs), workstations, and servers. Other examples include devices with communication functions, such as video cameras, still cameras, and car navigation systems.
  • the attack analysis device disclosed herein is expected to be used, particularly on the server side, for the purpose of providing various services. In providing such services, the attack analysis device disclosed herein will be used, the method disclosed herein will be used, and/or the program disclosed herein will be executed.
  • the present disclosure can be realized not only by dedicated hardware having the configurations and functions described in each embodiment, but also by a combination of a program for realizing the present disclosure recorded on a recording medium such as a memory or hard disk, and general-purpose hardware having a dedicated or general-purpose CPU and memory capable of executing the program.
  • Programs stored in non-transient physical recording media e.g., external storage devices (e.g., hard disks, USB memory, CDs/BDs, etc.) or internal storage devices (e.g., RAM, ROM, etc.)
  • non-transient physical recording media e.g., external storage devices (e.g., hard disks, USB memory, CDs/BDs, etc.) or internal storage devices (e.g., RAM, ROM, etc.)
  • non-transient physical recording media e.g., external storage devices (e.g., hard disks, USB memory, CDs/BDs, etc.) or internal storage devices (e.g., RAM, ROM, etc.)
  • RAM random access memory
  • ROM read only memory
  • the attack analysis device disclosed herein is intended primarily for analyzing attacks received by electronic control systems mounted on automobiles, but may also be intended for analyzing attacks against normal systems not mounted on automobiles.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

電子制御システムに対する攻撃を分析する攻撃分析装置であって、電子制御システムで検出された異常及び位置を示すログを取得するログ取得部(101)と、異常が発生したときの移動体の内部状態又は/及び外部状態を示す指標を取得する指標取得部(102)と、電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、予測される異常が発生する位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)と、ログ及び攻撃・異常関係情報に加えて、指標に基づき、受けた攻撃を推定する攻撃推定部(106)と、推定された攻撃を示す攻撃情報を出力する出力部(108)と、を有する。

Description

攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム 関連出願の相互参照
 本出願は、2022年9月30日に出願された日本特許出願番号2022-158597号、2022年9月30日に出願された日本特許出願番号2022-157432号、及び2023年7月31日に出願された日本特許出願番号2023-124179号に基づくもので、ここにその記載内容を援用する。
 本開示は、主に自動車をはじめとする移動体等の装置に搭載された電子制御システムに対する攻撃を分析する技術であって、攻撃分析装置、攻撃分析方法、及び攻撃分析プログラムに関する。
 近年、車車間通信や路車間通信のようなV2Xをはじめ、運転支援や自動運転制御を行う技術が注目されている。これに伴い、車両が通信機能を備えるようになり、いわゆる車両のコネクティッド化が進んでいる。この結果、車両が不正アクセスといったサイバー攻撃を受ける可能性が増加している。そのため、車両に対するサイバー攻撃を分析して、その対応策を構築することが必要とされている。
 車両に発生した異常を検知して、検知した異常に基づいてサイバー攻撃を分析する手法として、様々なものがある。例えば、特許文献1には、検知した異常データを収集するとともに、異常が検出された項目の組み合わせと、攻撃毎に予め特定された異常検出パターンとを照合して、異常に対応する攻撃の種別を特定することが記載されている。
 また、特許文献2には、電子制御装置が異常を検出した場合に、電子制御装置に搭載された防御機能や防御機能以外の機能が正常であるか異常であるかの判定結果を用いて、不正な情報を遮断するための措置を決定することで、不正な情報の侵入を防止する装置が開示されている。
特開2020-123307号公報 特開2022-017873号公報
 本発明者らは、詳細な検討の結果、以下の課題を知見した。
 電子制御システムにおいて検出された異常及び異常が検出された電子制御システム内の位置を示すセキュリティログと、電子制御システムがサイバー攻撃を受けた場合に発生することが予測される異常の組み合わせを示す攻撃・異常関係情報を用いて電子制御システムが受けた攻撃を推定する場合、推定の精度や推定に必要な演算量に関しさらなる改善が求められる。
 本開示の一局面は、電子制御システムが受けたサイバー攻撃の推定の精度を上げることを目的としている。
 また、本開示の一局面は、電子制御システムが受けたサイバー攻撃の推定に必要な演算量を削減することを目的としている。
 以上の2つの目的は、いずれか一方のみ達成される場合の他、両方が達成される場合もあることに留意すべきである。
 本開示の一態様による攻撃分析装置は、移動体に搭載された電子制御システムに対する攻撃を分析する攻撃分析装置であって、前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得するログ取得部と、前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標を取得する指標取得部と、前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部と、前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記指標に基づき、前記電子制御システムが受けた攻撃を推定する攻撃推定部と、推定された前記攻撃を示す攻撃情報を出力する出力部と、を有する。
 このような構成により、本開示の攻撃分析装置は、セキュリティログ及び攻撃・異常関係情報に加えて、異常が発生したときの移動体の内部状態又は/及び外部状態を示す指標を用いて攻撃を推定するので、推定の精度を上げること、又は/及び、推定に必要な演算量を削減すること、ができる。
 なお、請求の範囲に付した括弧内の番号は、本発明と後述の実施形態との対応関係を示すものであり、本発明を限定する趣旨ではない。
 本開示についての上記目的およびその他の目的、特徴や利点は、添付の図面を参照しながら下記の詳細な記述により、より明確になる。その図面は、
図1は、各実施形態の攻撃分析装置と電子制御システムの位置関係を示す説明図であり、 図2は、電子制御システムSの構成例を示すブロック図であり、 図3は、セキュリティログの内容を示す説明図であり、 図4は、各実施形態の攻撃分析装置の構成例を示すブロック図であり、 図5は、シチュエーション情報の概念を説明する説明図であり、 図6は、攻撃・異常関係情報の概念を説明する説明図であり、 図7aは、各実施形態の攻撃分析装置の攻撃推定方法の具体例を説明する説明図であり、 図7bは、各実施形態の攻撃分析装置の攻撃推定方法の具体例を説明する説明図であり、 図7cは、各実施形態の攻撃分析装置の攻撃推定方法の具体例を説明する説明図であり、 図7dは、各実施形態の攻撃分析装置の攻撃推定方法の具体例を説明する説明図であり、 図8は、各実施形態の攻撃分析装置の動作を説明するフローチャートであり、 図9は、実施形態1の攻撃分析装置を備えたシステム全体の概略を示すブロック図であり、 図10は、実施形態1の攻撃分析装置の構成例を示すブロック図であり、 図11は、ECUの個別位置と共通化位置との関係を示す説明図であり、 図12は、車両シチュエーション判定条件テーブルを示す説明図であり、 図13は、電源状態判定用テーブルを示す説明図であり、 図14は、攻撃推定用マッチングテーブルを示す説明図であり、 図15は、攻撃推定用マッチングテーブルを用いた場合の演算負荷を軽減する方法を示す説明図であり、 図16は、実施形態1の攻撃分析装置の動作を説明するタイミングチャートであり、 図17は、実施形態2の攻撃分析装置又は攻撃分析システムの構成例を示すブロック図であり、 図18は、実施形態2の攻撃分析装置の分析対象である電子制御システムを説明する図であり、 図19は、実施形態2のECU、エントリポイント及び外部接続先の例を説明する図であり、 図20は、実施形態2の走行状況・攻撃関係テーブルの例を説明する図であり、 図21は、実施形態2の走行状況・攻撃関係テーブルの例を説明する図であり、 図22は、実施形態2のエントリポイント候補生成部の構成例を示すブロック図であり、 図23は、実施形態2の攻撃推定部の構成例を示すブロック図であり、 図24は、実施形態2の攻撃・異常関係テーブルの例を説明する図であり、 図25は、実施形態2の攻撃・異常関係テーブルの例を説明する図であり、 図26は、実施形態2の推定結果検証部の構成例を示すブロック図であり、 図27は、実施形態2の攻撃分析システムの動作を示すフローチャートであり、 図28は、実施形態2の変形例1の攻撃分析システムの構成例を示すブロック図であり、 図29は、実施形態2の変形例の攻撃分析装置の配置を説明する説明図であり、 図30は、実施形態2の変形例2の攻撃分析システムの構成例を示すブロック図であり、 図31は、実施形態2の変形例3の攻撃分析システムの構成例を示すブロック図であり、 図32は、実施形態3の攻撃分析装置の構成例を示すブロック図であり、 図33は、実施形態3の保存部に保存されているテーブルを説明する図であり、 図34は、実施形態3のセキュリティログが偽陽性ログであるか否かを判定する方法を説明する図であり、 図35は、実施形態3の攻撃・異常関係テーブルの例を説明する図であり、 図36は、実施形態3の攻撃分析装置の動作を説明するフローチャートであり、 図37は、実施形態3の攻撃分析装置の動作を説明するフローチャートであり、 図38は、実施形態3の変形例の保存部に保存されているテーブルを説明する図であり、 図39は、実施形態3の変形例のセキュリティログが偽陽性ログであるか否かを判定する方法を説明する図であり、 図40は、実施形態3の変形例のセキュリティログが偽陽性ログであるか否かを判定する方法を説明する図であり、 図41は、実施形態3の変形例の攻撃分析装置の動作を説明するフローチャートである。
 以下、本開示の例示的な実施形態について図面を参照しながら説明する。
 なお、以下に示す本発明とは、請求の範囲に記載された発明を意味するものであり、以下の実施形態に限定されるものではない。また、少なくともダブルクォーテーション内の語句は、請求の範囲に記載された語句を意味し、同じく以下の実施形態に限定されるものではない。
 請求の範囲の従属項に記載の構成及び方法は、請求の範囲の独立項に記載の発明において任意の構成及び方法である。従属項に記載の構成及び方法に対応する実施形態の構成及び方法、並びに請求の範囲に記載がなく実施形態のみに記載の構成及び方法は、本発明において任意の構成及び方法である。請求の範囲の記載が実施形態の記載よりも広い場合における実施形態に記載の構成及び方法も、本発明の構成及び方法の例示であるという意味で、本発明において任意の構成及び方法である。いずれの場合も、請求の範囲の独立項に記載することで、本発明の必須の構成及び方法となる。
 実施形態に記載した効果は、本発明の例示としての実施形態の構成を有する場合の効果であり、必ずしも本発明が有する効果ではない。
 複数の実施形態(変形例も含む。以下同様。)がある場合、各実施形態に開示の構成は各実施形態のみで閉じるものではなく、実施形態をまたいで組み合わせることが可能である。例えば一の実施形態に開示の構成を、他の実施形態に組み合わせてもよい。また、複数の実施形態それぞれに開示の構成を集めて組み合わせてもよい。
 本開示に記載した課題は公知の課題ではなく、本発明者が独自に知見したものであり、本開示の構成及び方法とともに発明の進歩性を肯定する事実である。
1.各実施形態の前提となる構成等
(1)攻撃分析装置10と電子制御システムSの位置関係
 図1を参照して、各実施形態の攻撃分析装置10と電子制御システムSの位置関係を説明する。
 攻撃分析装置10は、電子制御システムSに対する攻撃を分析する装置である。より具体的には、電子制御システムSを構成する電子制御装置20のセキュリティセンサで生成されたセキュリティログを受信し、セキュリティログに基づいて電子制御システムSに対する攻撃を分析する装置である。ここでは各実施形態の攻撃分析装置11~13を総称して、攻撃分析装置10として説明する。
 図1(a)や図1(b)に示すように、攻撃分析装置10が電子制御システムSを構成する電子制御装置20とともに“移動体”である車両に“搭載”されている場合と、図1(c)に示すように、電子制御システムSを構成する電子制御装置20が“移動体”である車両に“搭載”され、攻撃分析装置10が車両の外部に設けられたサーバ装置やSOC(Security Operation Center)等で実現する場合と、が想定される。さらに、攻撃分析装置10の一部である攻撃分析装置10aが“移動体”である車両に“搭載”されており、攻撃分析装置10の残部である攻撃分析装置10bが車両の外部に設けられている場合が想定される。以下、電子制御装置20をECU(Electronic Control Unit)20と略する。
 ここで、
 “移動体”とは、移動可能な物体をいい、移動速度は任意である。また移動体が停止している場合も当然含む。例えば、自動車、自動二輪車、自転車、歩行者、船舶、航空機、及びこれらに搭載される物を含み、またこれらに限らない。
 “搭載”される、とは、移動体に直接固定されている場合の他、移動体に固定されていないが移動体と共に移動する場合も含む。例えば、移動体に乗った人が所持している場合、移動体に載置された積荷に搭載されている場合、が挙げられる。
 図1(a)に示す例は、電子制御システムSの内部に独立した攻撃分析装置10を設けた例、又は電子制御システムSを構成するECU20の少なくとも1つに攻撃分析装置10の機能を内蔵したものである。図1(b)に示す例は、電子制御システムSの外部に攻撃分析装置10を設けた例であるが、接続の形態の視点からは、実質的には図1(a)と同じである。
 すなわち、図1(a)や図1(b)の場合、攻撃分析装置10とECU20とは、例えばCAN(Controller Area Network)、LIN(Local Interconnect Network)といった車載通信ネットワークを介して接続されている。あるいは、Ethernet(登録商標)、Wi-Fi(登録商標)、Bluetooth(登録商標)等、有線無線を問わず任意の通信方式を用いて接続されてもよい。なお、接続とは、データのやり取りが可能な状態をいい、異なるハードウェアが有線又は無線の通信ネットワークを介して接続されている場合はもちろん、同一のハードウェア上で実現された仮想マシン同士が仮想的に接続されている場合も含む。
 図1(c)及び図1(d)の場合は電子制御システムSの外部に攻撃分析装置10の全部又は一部を設けたものであるが、攻撃分析装置10は車両の外部に設けられているので、接続の形態は通常図1(a)や図1(b)とは異なる。攻撃分析装置10と電子制御システムSとは、例えば、IEEE802.11(Wi-Fi(登録商標))、IEEE802.16(WiMAX(登録商標))、W-CDMA(Wideband Code Division Multiple Access)、HSPA(High Speed Packet Access)、LTE(Long Term Evolution)、LTE-A(Long Term Evolution Advanced)、4G、5G等の無線通信方式を用いた通信ネットワークを介して接続されている。あるいは、DSRC(Dedicated Short Range Communication)を用いることができる。車両が駐車場に駐車されていたり、修理工場に収容されている場合は、無線通信方式に代えて、有線通信方式を用いることができる。例えば、LAN(Local Area Network)やインターネット、固定電話回線を用いることができる。
 図1(a)や図1(b)の場合、外部の装置との間で通信を行うことなく、攻撃を受けた車両内で遅滞なくサイバー攻撃の分析を行うことができ、サイバー攻撃に対する対応をより迅速に行うことができる。
 これに対し、図1(c)や図1(d)の場合、例えばサーバ装置の豊富なリソースを利用してサイバー攻撃の分析を行うことができる。さらに、既存の車両に新たな装置やプログラムを実装することなく、サーバ装置で集中的にサイバー攻撃の分析を行うことができる。
 以下の各実施形態では、図1(c)に示す配置の場合を前提として説明する。
 各実施形態では、電子制御システムSは車両に搭載された車載システムである例を挙げて説明するが、電子制御システムSは車載システムに限定されるものではなく、複数のECUからなる任意の電子制御システムに適用することができる。例えば、電子制御システムSは、移動体ではなく静止体や固定物に搭載されるものであってもよい。
 また、攻撃分析装置10の一部をサーバ装置に設け、残部を移動体やその他の装置に設けるようにしてもよい。
 なお、図1(d)において、攻撃分析装置10aは、例えば後述のシチュエーション推定部104を含む装置、攻撃分析装置10bは、後述の攻撃推定部106を含む装置とすることができる。
 また、攻撃分析装置10は、受信したセキュリティログが示す異常が、サイバー攻撃を受けたことによって発生する異常か、それともサイバー攻撃以外の理由によって発生した異常かを判定し、前者の場合はセキュリティログに基づきサイバー攻撃の分析を行い、後者の場合は偽陽性ログであるとしてサイバー攻撃の分析を行わないようにすることができる。このような機能を有する部分を、ログ判定装置と定義することができる。ログ判定装置は、シチュエーション推定部104を含む装置の一例である。
 ログ判定装置は、攻撃分析装置10の処理の前段に設けてもよいし、攻撃分析装置10に含めるようにしてもよい。図1には図示していないが、図1(a)及び図1(b)の場合は、ログ判定装置も車両に搭載されることになる。これに対し、図1(c)の場合は、ログ判定装置を攻撃分析装置10であるサーバ装置等に設けてもよいし、ログ判定装置のみを車両に設けてもよい。この場合、前者は図1(c)、後者は図1(d)に示す配置となる。
(2)電子制御システムSの構成
 図2は、電子制御システムSの構成例を示す図である。電子制御システムSは、複数のECU20、及びこれらを接続する車載ネットワーク(すなわち、NW1~NW3)から構成されている。図2は8つのECU(すなわち、ECU20a~ECU20h)を例示しているが、当然のことながら、電子制御システムSは任意の数のECUから構成される。以後の説明では、単数又は複数の電子制御装置全体を包括して説明する場合はECU20や各ECU20、個々の電子制御装置を特定して説明する場合はECU20a、ECU20b、ECU20c、・・・のように記載している。
 図2の場合、各ECU20間は、図1(a)及び図1(b)の説明で記載した車載通信ネットワーク等を介して接続されている。
 図2に示す電子制御システムSは、統合ECU20a、外部通信ECU20b、ゾーンECU(すなわち、ECU20c,20d)、及び個別ECU(すなわち、ECU20e~20h)を含んでいる。
 統合ECU20aは、電子制御システムS全体を制御する機能を備えるとともに、各ECU20間の通信を仲介するゲートウェイ機能を備えたECUである。統合ECU20aは、ゲートウェイECU(すなわち、G-ECU)、モビリティコンピュータ(すなわち、MC)と呼ばれることもある。また、統合ECU20aは、中継装置やゲートウェイ装置であってもよい。
 外部通信ECU20bは、車両の外部に設けられた外部装置、例えば各実施形態ではサーバ装置30と通信を行う通信部を有するECUである。外部通信ECU20bが用いる通信方式は、図1(c)の説明で記載した無線通信方式や有線通信方式である。
 なお、複数の通信方式を実現するため、外部通信ECU20bを複数設けるようにしてもよい。また、外部通信ECU20bを設ける代わりに、統合ECU20aが外部通信ECU20bの機能を内包してもよい。
 ゾーンECU(すなわち、ECU20c,20d)は、後述の個別ECUが配置される場所や機能に応じて適宜配置されたゲートウェイ機能を備えたECUである。例えば、ゾーンECU20cは、車両の前方に配置された個別ECU20e及び個別ECU20fと他のECU20との通信を仲介するゲートウェイ機能を有するECU、ゾーンECU20dは、車両の後方に配置された個別ECU20g及び個別ECU20hと他のECU20との通信を仲介するゲートウェイ機能を有するECU、である。ゾーンECU(すなわち、ECU20c,20d)は、ドメインコンピュータ(すなわち、DC)と呼ばれることもある。ゾーンECU20cには、ネットワーク2(図2のNW2)を介して個別ECU20e及び個別ECU20fが接続され、ゾーンECU20dには、ネットワーク3(図2のNW3)を介して個別ECU20g及び個別ECU20hが接続されている。
 個別ECU(すなわち、ECU20e~20h)は任意の機能を有するECUで構成することができる。例えば、エンジン、ハンドル、ブレーキ等の制御を行う駆動系電子制御装置、メータやパワーウインドウ等の制御を行う車体系電子制御装置、ナビゲーション装置等の情報系電子制御装置、あるいは、障害物や歩行者との衝突を防止するための制御を行う安全制御系電子制御装置が挙げられる。また、ECU同士が並列ではなく、マスタとスレーブとに分類されていてもよい。
 なお、各個別ECU(すなわち、ECU20e~20h)で実現する機能に応じて、各個別ECU(すなわち、ECU20e~20h)に必要なセンサを接続してもよい。例えば、速度センサ、加速度センサ、角速度センサ、温度センサ、シートセンサ、電圧計が挙げられるが、これらに限らない。また、これらのセンサを、各個別ECU(すなわち、ECU20e~20h)ではなく、統合ECU20aやゾーンECU(すなわち、ECU20c,20d)に接続してもよい。
 なお、各ECU20は、物理的に独立した電子制御装置の他、仮想化技術を用いて実現した仮想化電子制御装置であってもよい。また、各ECU20は、異なるハードウェアでそれぞれ実現されている場合は有線又は無線の通信方式を介して接続されていればよく、同一のハードウェア上で複数の仮想化電子制御装置が実現されている場合は、仮想化電子制御装置同士が仮想的に接続されていればよい。
 図1(a)の場合、攻撃分析装置10は電子制御システムSの内部に設けられ、例えば図2のように、統合ECU20aや個別ECU20eで攻撃分析装置10を実現している。個別ECU20eで実現する場合は、個別ECU20eを攻撃分析装置10の専用のECUとしてもよい。
 図1(c)の場合、攻撃分析装置10は電子制御システムSの外部に設けられ、例えば図2のようにサーバ装置30で攻撃分析装置30を実現している。この場合、サーバ装置30は、外部通信ECU20bを介して送信されたセキュリティログを受信している。
 各ECU20は、セキュリティセンサを有しており、セキュリティセンサは、ECU20やECU20に接続されたネットワークに発生した異常を検知した場合に、セキュリティログを生成する。セキュリティログの詳細は次項で説明する。
 なお、必ずしも全てのECU20がセキュリティセンサを備えていなくてもよい。
(3)セキュリティログの詳細
 図3は、ECU20のセキュリティセンサが生成したセキュリティログの内容を示す図である。
 セキュリティログは、セキュリティセンサが搭載されているECUの識別情報を示すECU ID、セキュリティセンサの識別情報を示すセンサID、セキュリティセンサが検知した異常に関するイベントの識別情報を示すイベントID、イベントの発生回数を示すカウンタ、イベントの発生時刻を示すタイムスタンプ、及びセキュリティセンサの出力の詳細を示すコンテキストデータ、の各フィールドを有する。セキュリティログは、さらに、プロトコルのバージョンや、各フィールドの状態を示す情報を格納したヘッダを有していてもよい。
 AUTOSAR(AUTomotive Open System ARchitecture)で定めた仕様によれば、IdsM Instance IDがECU ID、Sensor Instance IDがセンサID、Event Definition IDがイベントID、Countがカウンタ、Timestampがタイムスタンプ、Context Dataがコンテキストデータ、Protocol VersionやProtocol Header がヘッダ、にそれぞれ相当する。
 なお、図3は異常が発生した場合に生成される異常ログの例であるが、異常が発生していない場合(例えば、イベントが成功した場合)に生成される正常ログも図3と同じ仕様としてもよい。その場合、例えば、異常が発生した場合とイベントが成功した場合とで異なるイベントIDを使用することで、異常ログと正常ログとを識別することができる。また、ヘッダにコンテキストデータの有無を示すフラグを設定することにより、かかるフラグを確認することで、異常ログと正常ログとを識別してもよい。
 また、図3は物理的に独立したECU20が生成したセキュリティログであるが、仮想ECUが生成したセキュリティログであってもよい。
 なお、セキュリティセンサが生成したセキュリティログはSEv、絞り込み済の的確なセキュリティログはQSEv、と呼ばれる。例えば、図2の個別ECU(すなわち、ECU20e~20h)のセキュリティセンサはSEvを生成して図示しない侵入検知システムマネージャ(すなわち、IdsM)にレポートし、IdsMでSEvが認定フィルタを通過して指定された基準を満たした場合にQSEvとして侵入検知レポータから車両の外部に送信される。本実施形態のセキュリティログは、SEv及びQSEvのいずれも含む概念である。
 また、各実施形態のセキュリティログは、車載SIEM(Security Information and Event Management)と呼ばれる、電子制御システム内で発生したイベントに関する情報を収集して管理する機能によって生成されるログであってもよい。
 なお、以下の各実施形態、特に実施形態1においては、セキュリティログが異常を通知することに着目し、異常ログと称することがある。また、セキュリティログが車両で生成されることに着目し、車両ログと称することがある。
 また、以下の各実施形態、特に実施形態3においては、偽陽性ログに着目している。偽陽性ログとは、セキュリティログで示されている検出されたイベントが、電子制御システムSに対するサイバー攻撃以外に起因するイベントである場合の当該セキュリティログをいう。偽陽性ログには、イベントが異常を示す場合のセキュリティログ(この他、異常ログ、又は異常セキュリティログと称することがある。)の他、イベントが非異常又は成功を示す場合のセキュリティログ(この他、正常ログ、又は成功セキュリティログと称することがある。)も含まれる。検出されたイベントの例として、正しい又は誤ったパスワードの入力、サイバー攻撃に起因しない場合の例として、ユーザの操作、が挙げられる。
 実施形態3においては、異常ログの偽陽性ログに着目しているが、正常ログの偽陽性ログを用いるようにしてもよい。
(4)攻撃分析装置10の構成
 図4を参照して、攻撃分析装置10の構成を説明する。攻撃分析装置10は、ログ取得部101、指標取得部102、シチュエーション情報保存部103、シチュエーション推定部104、攻撃・異常関係情報保存部105、攻撃推定部106、マッチング度算出部107、出力部108、を有する。
 ログ取得部101は、電子制御システムSで検出された異常及び異常が検出された電子制御システムS内の位置を示すセキュリティログを“取得する”。例えば、図3のセキュリティログを受信した場合、イベントIDやコンテキストデータに異常の種類が示され、ECU IDやセンサIDに異常が検出された位置が示されている。
 ここで、“取得する”とは、他の装置やブロックから受信することにより取得する場合の他、自らが生成することにより取得する場合も含む。
 指標取得部102は、“異常が発生したとき”の車両の内部状態又は/及び外部状態を示す指標を“取得する”。
 指標は、例えば個別ECU(すなわち、ECU20e~20h)に接続された各種センサの出力、CANフレーム、外部装置から受信した各種情報、GPS受信機で受信した位置情報や時刻情報等、車両の内部状態又は車両の外部状態を示す情報であればよい。指標の具体例は、以下の通りである。
 (a)内部状態を示す指標
 車載のセンサの出力、車両の電源状態、通信ネットワークの状態、車両に関する診断情報、ECUの状態、位置情報、車両を特定する情報
 (b)外部状態情報を示す指標
 外気温、外湿度、天候、既知の偽陽性ログ発生パターン、セキュリティイベントログを無効にする条件、車両外部の外部装置の稼働状態
 指標の具体例及び指標の利用例の詳細は、各実施形態で説明する。
 ここで、
 “異常が発生したとき”とは、時間や時刻に限らず、異常の発生が条件、契機、又は評価の対象となっていればよい。また、時間や時刻の場合は、異常が発生した時間(又は時刻)の他、異常を示すセキュリティログが生成された時間(又は時刻)やセキュリティログを受信した時間(又は時刻)、さらには異常発生の直前の時間(又は時刻)のように、異常発生時に近接した時間(又は時刻)であってもよい。
 “内部状態”とは、移動体に依存する各種状態をいい、例えば、車両の動作状態、車両自身若しくは車両を構成する部品の状態、又は車両が有する機能の状態をいう。車両の位置も、車両自身が物理的に特定の位置に置かれた状態を示すので、内部状態に含まれる。
 “外部状態”とは、移動体がなくても観念できる各種状態をいい、例えば外気温、時間(又は時刻)、又は移動体外部の装置の動作状態等が含まれる。
 ログ取得部101と指標取得部102は、1つの取得部として構成してもよい。
 なお、指標に、ログ取得部101で取得したセキュリティログを含めるようにしてもよい。すなわち、セキュリティログを用いて車両の内部状態や外部状態を推定することができる場合は、セキュリティログも車両の内部状態や外部状態を示す指標と評価できるからである。この場合、例えば図1のように、ログ取得部101から指標取得部102に対し、指標としてのセキュリティログを出力するよう構成すればよい。
 シチュエーション情報保存部103は、指標及び指標と対応するシチュエーションとの関係を示すシチュエーション情報を保存する。
 図5は、シチュエーション情報の概念を説明する図である。
 例えば、図5(a)のように、指標a~dの組み合わせに対応して、シチュエーションA~Dが決まるという関係を有する場合がある。あるいは、図5(b)のように、指標(x)を決めると、シチュエーション(y)が定まるという関係を有する場合がある。このように、単数若しくは複数の指標が示す事実から、シチュエーションという中間事実が推定できる場合、指標とシチュエーションとの関係を図5(a)のようなテーブル、図5(b)のようなグラフ又は数式で表すことができる。これらの関係を示す情報をシチュエーション情報と称する。
 シチュエーション情報の具体例は、各実施形態で説明する。
 シチュエーション推定部104は、指標取得部102で取得した指標、及びシチュエーション情報保存部103に保存したシチュエーション情報を用いて、指標に対応する車両の“シチュエーション”を推定する。例えば、図5(a)において、指標取得部102で取得した指標が、指標a、指標c、及び指標dであった場合、シチュエーションとしてシチュエーションBが推定される。
 シチュエーションの推定の具体例は、各実施形態で説明する。
 ここで、移動体の“シチュエーション”とは、指標から推定される事実であって移動体と関連する事実であればよい。
 なお、シチュエーション推定部104における推定は、1段階に限らず、多段階であってもよい。例えば、指標から第1のシチュエーション(つまり、1次中間事実)を推定し、第1のシチュエーションから第2のシチュエーション(つまり、2次中間事実)を推定してもよい。後述の実施形態1では2段階の推定を、実施形態2では1段階の推定を行っている。
 攻撃・異常関係情報保存部105は、サイバー攻撃と電子制御システムSで発生する異常との関係を示す攻撃・異常関係テーブルを保存する。より具体的には、攻撃・異常関係テーブルは、電子制御システムSが受ける可能性のある攻撃を示す予測攻撃情報と、攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、予測される異常が発生する電子制御システム内の位置を示す予測異常位置情報と、の関係を示している。
 図6は、各実施形態で用いる攻撃・異常関係テーブル(“攻撃・異常関係情報”に相当)の概念を説明する図である。
 図6に示す攻撃・異常関係テーブルでは、サイバー攻撃の種別(例えば、攻撃A~X)毎に、電子制御システムSがサイバー攻撃を受けた場合に生じる異常(“予測異常情報”に相当)と、異常が発生する位置(“予測異常位置情報”に相当)を示している。サイバー攻撃を受けた場合、例えば単数若しくは複数の位置で複数の異常が発生することが想定される。したがって、攻撃・異常関係テーブルは、攻撃を受けた場合に生じる複数の異常と、異常が発生した位置との組み合わせを示すものであることが好ましい。
 なお、図6に示す例では、予測攻撃情報として、サイバー攻撃の種別(例えば、攻撃A~X)に加え、当該サイバー攻撃を受けた場合に想定される攻撃の起点位置及び攻撃の対象位置を含んでいるが、これは一例である。例えば、サイバー攻撃の種別のみ、攻撃起点位置のみ、攻撃対象位置のみ、攻撃起点位置及び攻撃対象位置のみ、攻撃起点位置及び経由位置及び攻撃対象位置のみ、であってもよいし、サイバー攻撃に関連するこれら以外の情報であってもよい。
 図6では、予測異常位置、攻撃起点位置、攻撃対象位置は、16進数で示される識別子を用いているが、それぞれの識別子が位置を表している。また、識別子に対応する位置は、具体的な位置であっても抽象的な位置であってもよい。具体的な位置の例として、各ECU20の種別やセキュリティセンサの種別が挙げられる。前者の例として、0000が外部、0x01が外部通信ECU20b、0x02が統合ECU20a、0x03がゾーンECU20cのように定めることができる。抽象的な位置の例として、各ECU20が存在する階層、各ECU20が接続されたネットワーク、ECU20の機能や特性が挙げられる。
 図6において、例えば、攻撃種別が攻撃Aであるサイバー攻撃を受けた場合、電子制御システムSでは、外部通信ECU20bにおいて、異常A、異常C、及び異常Dの異常が発生することが予測される。また、攻撃Aの攻撃起点位置は電子制御システムSの外部であり、攻撃対象位置は外部通信ECU20bである。なお、攻撃起点位置は、電子制御システムS内部の位置である場合の他、電子制御システムSの外部である場合が想定される。攻撃起点位置が電子制御システムSの外部であるとは、車外からサイバー攻撃を受けている場合である。
 図6の攻撃・異常関係テーブルはデータ形式がテーブル形式となっているが、任意の形式のデータベースであればよい。また、攻撃・異常関係テーブルの名称は任意である。例えば攻撃・異常関係テーブルは、パターンマッチングテーブル(又は、PMT)や、異常検出パターンと呼ばれることもある。
 攻撃・異常関係テーブルは、電子制御システムSを構成するECU20の配置、ECU20の接続関係(ネットワークトポロジともいう。)、ECU20に設けられているセキュリティセンサの配置に基づき、ある攻撃があった場合にどのECU20のどのセキュリティセンサがどの順に異常を検知するかのシミュレーションを行うことで、異常発生のパターンを作成・生成することができる。さらに、セキュリティセンサの監視対象やそのルールに関する情報に基づいてもよい。
 もっとも攻撃・異常関係テーブルの作成・生成はこの方法に限られない。例えばAIや機械学習を用いてもよい。また、過去の攻撃におけるセキュリティセンサの異常発生パターンを用いて生成してもよい。
 図6の攻撃・異常関係テーブルは、予測攻撃情報と予測異常情報を有しているが、これに加えて、攻撃を受けた場合に発生することが予測される非異常イベントを示す予測非異常情報と、予測される非異常イベントが発生する電子制御システム内の位置を示す予測非異常位置情報をさらに有していてもよい。つまり、攻撃・異常関係テーブルは、予測攻撃情報と、予測異常情報と、予測異常位置情報と、予測非異常情報と、予測非異常位置情報との関係を示すよう構成されてもよい。この場合、予測異常位置情報と予測非異常位置情報は統合して一つの予測位置情報としてもよい。
 この場合、攻撃・異常関係テーブルとパターンマッチングされるセキュリティログとして、異常ログに加え正常ログを用いるようにしてもよい。
 また、偽陽性の異常ログや偽陽性の正常ログと判定されたセキュリティログを攻撃推定に用いないようにしてもよい。あるいは、偽陽性の異常ログと判定されたセキュリティログが示す異常や、偽陽性の正常ログと判定されたセキュリティログが示す非異常に対応する攻撃・異常関係テーブルの予測異常情報や予測非異常情報に対して重みづけを行うようにしてもよい。
 攻撃推定部106は、ログ取得部101で取得したセキュリティログ、及び攻撃・異常関係情報保存部105に保存している攻撃・異常関係テーブルに加えて、指標取得部102で取得した指標に“基づき”、電子制御システムSが受けた攻撃を推定する。より具体的には、指標を用いてシチュエーション推定部104で推定したシチュエーションに基づき、電子制御システムSが受けた攻撃を推定する。シチュエーション推定部104が別装置である場合、攻撃推定部106はシチュエーションを受信するシチュエーション取得部を兼ねる。
 ここで、“基づき”とは、指標を直接用いる場合の他、指標を間接的に用いる場合も含む。すなわち、指標から中間事実を推認(又は推定)し、推認(又は推定)された中間事実を用いて攻撃を推定する場合も含まれる。
 攻撃推定部106は、推定する攻撃として、例えば攻撃種別及び/又は攻撃経路を推定する。
 このうち、攻撃経路を推定するには、攻撃・異常関係テーブルの予測攻撃情報を用いればよい。例えば、予測攻撃情報に攻撃起点位置及び攻撃対象位置が示されている場合は、攻撃起点位置及び攻撃対象位置をもって攻撃経路とする。予測攻撃情報に攻撃起点位置、経由位置、及び攻撃対象位置が示されている場合は、攻撃起点位置、経由位置、及び攻撃対象位置をもって攻撃経路としても、攻撃起点位置及び攻撃対象位置をもって攻撃経路としてもよい。
 攻撃経路を推定するのに、予測攻撃情報に攻撃起点位置及び攻撃対象位置のいずれも示していない攻撃・異常関係テーブルを用いてもよい。この場合、攻撃・異常関係テーブルにおける予測異常位置をもって攻撃経路とする。例えば、図2の構成図におけるECU20a、NW1、ECU20c、NW2、ECU20fを予測異常位置とする攻撃種別については、これらの予測異常位置をもって攻撃経路とする。この攻撃種別が、セキュリティログと攻撃・異常関係テーブルとの比較により推定された場合、ECU20a、NW1、ECU20c、NW2、ECU20fが攻撃経路であると推定する。推定した攻撃経路における攻撃方向は、セキュリティログのコンテキストデータに含まれる通信の方向を示すデータを用いて推定してもよい。例えば、セキュリティログのコンテキストデータに含まれるデータが示す通信の方向が、ECU20aからECU20fへの方向である場合、攻撃方向はECU20aからECU20fへの方向である推定してもよい。ECU20aからECU20fへの方向の通信を示すデータ及びECU20fからECU20aへの方向の通信を示すデータがセキュリティログのコンテキストデータに含まれる場合、攻撃方向はECU20aからECU20fに向かう方向及びECU20fからECU20aに向かう方向の双方向であると推定してもよい。予測攻撃情報に攻撃起点位置及び攻撃対象位置のいずれも示していない攻撃・異常関係テーブルにおいて、予測攻撃情報に含まれる攻撃種別を攻撃経路の予測異常発生パターンと称してもよい。
 以下、攻撃推定部106の攻撃推定方法の例を図6及び図7を用いて説明する。
 まず、図6を用いて、指標に基づかない通常の攻撃推定方法の具体例を説明する。
 ログ取得部101で取得したセキュリティログが、例えば0x02の位置で異常B、C、Dが検出されたことを示していたとする。これに対し、図6の攻撃・異常関係テーブルにおいて、予測異常位置情報が0x02かつ予測異常情報が異常B、C、Dに対応する予測攻撃情報は、攻撃Cである。そこで、攻撃推定部106は、攻撃Cがあったと推定する。
 次に、図7a、図7b、図7c、及び図7dを用いて、指標に基づく各実施形態の攻撃推定方法の具体例を説明する。いずれの実施例も、攻撃・異常関係テーブルを修正して攻撃推定を行う例である。
 (実施例1)
 先に図5で説明した例の通り、指標取得部102で取得した指標を用いて、シチュエーション推定部104でシチュエーションBが推定されたとする。そして、シチュエーションBにおいて、例えば0x03の位置はサイバー攻撃とは関連しないと推定されるとする。この場合、攻撃推定部106は、図7aの攻撃・異常関係テーブルのうち0x03の位置を予測異常位置情報に含む(a)の“部分”や、0x03の位置を予測攻撃情報に含む(b)の“部分”を、“攻撃推定に用いない”ようにする。
 このように、攻撃推定部106でサイバー攻撃に関連しないと推定される部分の攻撃・異常関係テーブルを用いずに攻撃推定を行うことにより、攻撃推定に必要な演算を少なくすることができる。特に、攻撃分析装置10が車両に搭載されている場合、攻撃分析装置10に割当てられるリソースが少ない場合であっても、攻撃推定を行うことができる。
 ここで、
 “部分”とは、一つの攻撃・異常関係情報のうちの一部分である場合の他、複数の攻撃・異常関係情報のうちの少なくとも1つである場合も含む。
 “攻撃推定に用いない”とは、積極的に攻撃推定に用いない場合の他、指標を参照して攻撃と関連すると推定される位置を予測異常位置情報又は予測攻撃情報として含む部分を攻撃推定に用いることにより、その他の部分を消極的に攻撃推定に用いていない場合も含む。
 なお、図7aにおいては、あるシチュエーションにおいて特定の位置がサイバー攻撃と関連しないと推定される場合の攻撃推定部106の動作を説明したが、あるシチュエーションにおいて特定の異常がサイバー攻撃と関連しないと推定される場合にも適用できる。例えば、シチュエーションBにおいて、異常Aはサイバー攻撃とは関連しないと推定されるとする。この場合、攻撃推定部106は、図7aの攻撃・異常関係テーブルのうち異常Aを予測異常情報に含む“部分”、すなわち0x01、0x02、0x03のそれぞれの位置の異常Aの部分を、“攻撃推定に用いない”ようにしてもよい。
 また、特定の位置及び特定の異常がサイバー攻撃と関連しないと推定される場合にも適用できる。例えば、シチュエーションBにおいて、0x03の位置の異常Cはサイバー攻撃とは関連しないと推定されるとする。この場合、攻撃推定部106は、図7aの攻撃・異常関係テーブルのうち0x03の位置の異常Cの部分を、“攻撃推定に用いない”ようにしてもよい。
 以上の例は、1つの攻撃・異常関係テーブルの一部を用いない例であるが、シチュエーション毎に攻撃・異常関係テーブルを準備し、シチュエーションに応じて対応する攻撃・異常関係テーブルを選択するようにしてもよい。すなわち、それぞれのシチュエーション毎に、サイバー攻撃と関連しないと推定される位置及び/又は異常に対応する予測攻撃情報、予測異常位置情報、及び予測異常情報を除いた攻撃・異常関係テーブルを準備してもよい。
 (実施例2)
 実施例1は、シチュエーションからサイバー攻撃と関連しない位置を推定する場合であるが、シチュエーションからサイバー攻撃と関連する位置を推定する場合にも適用することができる。例えば、シチュエーションBにおいて、0x02の位置はサイバー攻撃と関連すると推定されるとする。この場合、攻撃推定部106は、図7bの攻撃・異常関係テーブルのうち0x02の位置を予測異常位置情報に含む(c)の“部分”や、0x02の位置を予測攻撃情報に含む(d)の“部分”を、“攻撃推定に用いる”ようにする。
 このように、攻撃推定部106でサイバー攻撃に関連すると推定される部分の攻撃・異常関係テーブルを用いて攻撃推定を行うことにより、攻撃推定に必要な演算を少なくすることができる。特に、攻撃分析装置10が車両に搭載されている場合、攻撃分析装置10に割当てられるリソースが少ない場合であっても、攻撃推定を行うことができる。
 ここで、“攻撃推定に用いる”とは、積極的に攻撃推定に用いる場合の他、指標を参照して攻撃と関連しないと推定される位置を予測異常位置情報又は予測攻撃情報として含む部分を攻撃推定に用いないことにより、その他の部分を消極的に攻撃推定に用いる場合も含む。
 なお、図7bにおいては、あるシチュエーションにおいて特定の位置がサイバー攻撃と関連すると推定される場合の攻撃推定部106の動作を説明したが、あるシチュエーションにおいて特定の異常がサイバー攻撃と関連すると推定される場合にも適用できる。例えば、シチュエーションBにおいて、異常A及び異常Bはサイバー攻撃と関連すると推定されるとする。この場合、攻撃推定部106は、図7bの攻撃・異常関係テーブルのうち異常A及び異常Bを予測異常情報に含む“部分”、すなわち0x01、0x02、0x03のそれぞれの位置の異常A及び異常Bの部分を、“攻撃推定に用いる”ようにしてもよい。
 また、特定の位置及び特定の異常がサイバー攻撃と関連する推定される場合にも適用できる。例えば、シチュエーションBにおいて、0x01及び0x02の位置の異常A及び異常Bはサイバー攻撃とは関連すると推定されるとする。この場合、攻撃推定部106は、図7bの攻撃・異常関係テーブルのうち0x01及び0x02の位置の異常A及び異常Bの部分を、“攻撃推定に用いる”ようにしてもよい。
 以上の例は、1つの攻撃・異常関係テーブルの一部を用いる例であるが、シチュエーション毎に攻撃・異常関係テーブルを準備し、シチュエーションに応じて対応する攻撃・異常関係テーブルを選択するようにしてもよい。すなわち、それぞれのシチュエーション毎に、サイバー攻撃と関連すると推定される位置及び/又は異常に対応する予測攻撃情報、予測異常位置情報、及び予測異常情報のみからなる攻撃・異常関係テーブルを準備してもよい。
 (実施例3)
 実施例1は、サイバー攻撃と関連しないと推定される部分の攻撃・異常関係テーブルを用いずに攻撃推定を行った。本実施例は、サイバー攻撃と関連しないと推定される“部分”の攻撃・異常関係テーブルに重みづけを行なって、攻撃推定を行うものである。
 実施例1と同様、シチュエーションBにおいて、例えば0x01の位置はサイバー攻撃とは関連しないと推定されるとする。そこで、攻撃推定部106は、図7cの攻撃・異常関係テーブルのうち0x01の位置を予測異常位置情報として含む(e)のパターン、又は/及び0x01の位置を予測攻撃情報として含む(f)のパターンに対して重みづけ(w)を行う。例えば、図7cにおいて、(e)及び(f)のパターンに対し0≦w<1の係数、ここでは0.5を乗ずる。係数の値は、サイバー攻撃と関連しない程度に照らして適宜決めることができる。
 このような重みづけを行った攻撃・異常関係テーブルでは、攻撃の推定とともに、当該攻撃を受けている確度を示すマッチング度を求めることができる。マッチング度は、例えば、推定された攻撃における攻撃・異常関係テーブルのベクトル値と検出した攻撃を示すセキュリティログのベクトル値の内積を、推定された攻撃における重みづけ前の攻撃・異常関係テーブルのベクトル値の総和で除した値で求めることができるが、これに限られない。マッチング度の算出は、後述のマッチング度算出部107で行う。
 マッチング度=(攻撃・異常関係テーブルのベクトル値)*(セキュリティログのベクトル値)/(重みづけ前の攻撃・異常関係テーブルのベクトル値)
 (*は内積を表す。)
 なお、重みづけを行っていない場合のマッチング度は、以下のように計算できる。
 マッチング度=(攻撃・異常関係テーブルのベクトル値)*(セキュリティログのベクトル値)/(攻撃・異常関係テーブルのベクトル値)
 例えば、ログ取得部101で取得したセキュリティログが、0x01の位置で異常A、C、Dが検出されたことを示していたとする。この場合、図7cの攻撃・異常関係テーブルにおいて、予測異常位置情報が0x01かつ予測異常情報が異常A、C、Dに対応する予測攻撃情報は、攻撃Aである。そこで、攻撃推定部106は、攻撃Aがあったと推定する。そして、マッチング度は、以下のように計算できる。
 マッチング度=0.5×1(異常A)+0.5×1(異常C)+0.5×1(異常D)/(1(異常A)+1(異常B)+1(異常C))=1.5/3=0.5
 これに対して、重みづけを行っていない場合のマッチング度は、
 マッチング度=1×1(異常A)+1×1(異常C)+1×1(異常D)/(1(異常A)+1(異常B)+1(異常C))=3/3=1.0
 図7cの攻撃・異常関係テーブルの重みづけは、それぞれの位置における異常がサイバー攻撃と関連する割合を示すものであるから、重みづけを加味して計算したマッチング度は、推定したサイバー攻撃があったことの確度を表しているといえる。つまり、この例において、重みづけを行っていない場合のマッチング度は1、すなわち攻撃Aがあった可能性を100%と評価しているのに対し、重みづけを行っている場合のマッチング度は0.5、すなわち攻撃Aがあった可能性を50%と評価していることになる。
 別の例として、例えば、ログ取得部101で取得したセキュリティログが、0x01の位置で異常A、Cが検出されたことを示していたとする。この場合、図7cの攻撃・異常関係テーブルにおいて、予測異常位置情報が0x01かつ予測異常情報が異常A、Cに完全に一致する予測攻撃情報は存在しないが、最も近い予測攻撃情報は攻撃Aである。そこで、攻撃推定部106は、攻撃Aがあったと推定する。そして、マッチング度は、以下のように計算できる。
 マッチング度=0.5×1(異常A)+0.5×1(異常C)+0.5×0(異常D)/(1(異常A)+1(異常B)+1(異常C))=1.0/3=0.33
 これに対して、重みづけを行っていない場合のマッチング度は、
 マッチング度=1×1(異常A)+1×1(異常C)+1×0(異常D)/(1(異常A)+1(異常B)+1(異常C))=2/3=0.66
 つまり、この例において、重みづけを行っていない場合のマッチング度は0、66、すなわち攻撃Aがあった可能性を66%と評価しているのに対し、重みづけを行っている場合のマッチング度は0.33、すなわち攻撃Aがあった可能性を33%と評価していることになる。
 このように、重みづけは、シチュエーションにおいて攻撃と関連しないと推定される位置の予測異常情報又は予測異常位置情報のマッチング度に対する寄与を下げるという意義がある。
 そして、攻撃推定部106で、重みづけを行った攻撃・異常関係テーブルを用いて攻撃推定を行うことにより、サイバー攻撃との関連の程度を加味して攻撃推定を行うことができる。
 以上の例は、1つの攻撃・異常関係テーブルに対し重みづけを行う例であるが、シチュエーション毎に攻撃・異常関係テーブルを準備し、シチュエーションに応じて対応する攻撃・異常関係テーブルを選択するようにしてもよい。すなわち、それぞれのシチュエーション毎に、サイバー攻撃と関連しないと推定される位置及び/又は異常に対応する予測攻撃情報、予測異常位置情報、及び予測異常情報に対し重みづけを行った攻撃・異常関係テーブルを準備してもよい。
 (実施例4)
 実施例1~3は、サイバー攻撃との関係で異常が発生する位置に視点を置いて攻撃・異常関係テーブルを修正した上で攻撃推定を行うものであった、本実施例は、発生した異常に視点を置いて攻撃推定を行うものである。
 指標取得部102で取得した指標に基づき、シチュエーション推定部104はシチュエーションとして異常の原因を推定する。そして、推定されたシチュエーションが、サイバー攻撃ではない原因であった場合、攻撃推定部106は、セキュリティログが示す異常が、電子制御システムSが攻撃を受けたことによって発生する異常とは異なる異常を検知することによって生成された偽陽性ログであると判定し、偽陽性ログを用いた攻撃推定を行わない。
 このように、偽陽性ログを用いた攻撃推定を行わないことにより、攻撃推定に必要な演算を少なくすることができる。特に、攻撃分析装置10が車両に搭載されている場合、攻撃分析装置10に割当てられるリソースが少ない場合であっても、攻撃推定を行うことができる。
 なお、実施例4で説明した状況において、偽陽性ログを用いて攻撃推定を行わないことに代えて、実施例3で説明したように、偽陽性ログを用いて攻撃推定は行うが、攻撃・異常関係テーブルを修正することにより、偽陽性ログがサイバー攻撃と関連する程度を加味した攻撃推定を行うことができる。
 例えば、偽陽性ログが示す異常が、0x01の位置で発生した異常Cであった場合、図7dの攻撃・異常関係テーブルのうち(g)の部分、すなわち0x01の位置における異常Cのパターンに対して重みづけ(w)を行う。重みづけの方法は、実施例3と同様である。
 なお、実施例4で説明した偽陽性ログか否かの判定までの機能を有する部分は、ログ判定装置に相当する。
 図4に戻り、マッチング度算出部107は、セキュリティログの異常及び異常の位置の組み合わせと予測異常情報及び予測異常位置情報の組み合わせとが全く同じではない場合に、これらの組み合わせのマッチング度を算出する。マッチング度は、セキュリティログが示す異常と、予測異常情報が示す異常との一致の程度をいう。
 出力部108は、攻撃推定部106が推定した攻撃を示す“攻撃情報”を出力する。攻撃情報は、例えば攻撃種別及び/又は攻撃経路である。攻撃情報はさらに、マッチング度算出部107が算出したマッチング度を含んでもよい。
 ここで、“攻撃情報”とは、攻撃の種類・種別の他、攻撃の起点や攻撃の対象等の攻撃経路、又は攻撃によって発生する被害、といった攻撃に関連する任意の情報であればよい。
(5)攻撃分析装置10の動作
 次に、図8を参照して、攻撃分析装置10の動作を説明する。図8は、攻撃分析装置10で実行される攻撃分析方法を示すだけでなく、攻撃分析装置10で実行可能な攻撃分析プログラムの処理手順を示すものでもある。そして、これらの処理は、図8に示した順序には限定されない。すなわち、あるステップでその前段のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えてもよい。図8以降のフローチャートやタイミングチャートにおいても同様である。
 攻撃分析装置10は、電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、予測される異常が発生する電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係テーブルを保存する攻撃・異常関係情報保存部105を有している。
 攻撃分析装置10のログ取得部101は、電子制御システムSで検出された異常及び異常が検出された電子制御システムS内の位置を示すセキュリティログを取得する(S101)。
 指標取得部102は、異常が発生したときの車両の内部状態又は/及び外部状態を示す指標を取得する(S102)。
 シチュエーション推定部104は、S102で取得した指標に対応する車両のシチュエーションを推定する(S103)。
 S101で取得したセキュリティログ、及び攻撃・異常関係情報保存部105に保存している攻撃・異常関係テーブルに加えて、S102で取得した指標に基づき、電子制御システムSが受けた攻撃を推定する(S104)。指標に基づく場合として、例えば、S103で推定した車両のシチュエーションに基づき、電子制御システムSが受けた攻撃を推定する(S104)。
 出力部108は、S104で推定された攻撃を示す攻撃情報を出力する(S105)。
(6)小括
 以上、各実施形態の攻撃分析装置10によれば、セキュリティログ及び攻撃・異常関係テーブルに加えて指標に基づき攻撃推定を行うので、電子制御システムが受けたサイバー攻撃を推定する計算の効率を高めることができる。
 また、指標に基づき、対応する車両のシチュエーションを推定し、セキュリティログ及び攻撃・異常関係テーブルに加えてシチュエーションに基づき攻撃推定を行うので、シチュエーションに応じて攻撃推定に必要な演算を選択して実行することができ、電子制御システムが受けたサイバー攻撃を推定する計算の効率をより高めることができる。
2.実施形態1
 本実施形態は、主として特願2022-158597の記載に基づくものである。
 本実施形態の攻撃分析装置を攻撃分析装置11とする。
(1)全体構成の概略
 まず、本実施形態の攻撃分析装置11を含む全体システムの概略の構成について説明する。
 図9に示すように、本実施形態では、全体システム1として、車両(例えば、自動車)と外部サーバ30とを備えており、車両と外部サーバ30とは、例えば無線を利用した無線通信ネットワーク(例えば、インターネット等)を介して通信を行うように構成されている。
 車両には、サイバー攻撃を受ける対象である車両制御システムS(即ち、車両の動作を制御する電子制御システム)が搭載されており、外部サーバ30には、車両制御システムSに対するサイバー攻撃の分析を行う攻撃分析装置11を備えている。なお、攻撃分析装置11は、車両に搭載されていてもよい。
 車両制御システムSは、複数の電子制御装置(以下、ECU)20を備えている。なお、ECUは、Electronic Control Unitの略である。また、車両制御システムSには、車両制御システムSの各構成の状態を検出するために、各種のセンサやスイッチ等(即ち、センサ類21)が接続されている。具体的には、センサ類21を構成するセンサやスイッチ等は、ECU20に接続されている。
 車両制御システムSには、センサ類21によって検出された車両の各構成の状態を示す指標となる信号(即ち、後述する車両シチュエーション判定用信号、以上“指標”に相当)が入力される。車両シチュエーション判定用信号は、外部サーバ30の攻撃分析装置11に送信される。なお、指標とは、本実施形態においては、後述する車両の状態を示す車両シチュエーションを推定可能な信号である。
 なお、指標を用いた車両シチュエーションの推定を車両で行う場合は、推定の結果得られた車両シチュエーションが、外部サーバ30の攻撃分析装置11に送信されてもよい。
 また、後述するように、車両制御システムSでは、サイバー攻撃を受けた場合に、各ECU20に設置されたセキュリティセンサ(図示せず)が、サイバー攻撃による異常の発生を検知して車両ログ(即ち、異常を示す信号である異常ログ、以上“セキュリティログ”に相当)を生成するので、この車両ログが、外部サーバ30の攻撃分析装置11に送信される。
 <車両制御システムについて>
 車両制御システムSは、車両の動作を制御するシステムであり、各ECU20は、バス(図示せず)等を介して接続されている。つまり、各ECU20は車載ネットワークを介して接続されている。
 また、各ECU20は、電源状態が個別に制御可能であり、後述するように、車両の全体的な状態を示す車両シチュエーション(即ち、各車両シチュエーション判定用信号に応じて規定される車両の状態)に応じて、停止又はスリープの状態に変化が可能なものである。
 ここで、停止とは、ECU20に電源が供給されない状態であり、スリープとは、ECU20が通常の動作が休止した状態であり、例えばウェイクアップ信号等が入力されるまでは、通常の動作を待機する状態である。なお、スリープの状態では、通常の動作の際に供給される電力より低い電力が供給されるので、省電力に寄与する。
 車両制御システムSに配置されたECU20には、ECU20内部やECU20が接続されたネットワークを監視する前記セキュリティセンサが搭載される。セキュリティセンサが、ECU20内部又はネットワークに発生した異常を検知すると、セキュリティログとして前記車両ログを生成する。
 ここでは、車両ログは、セキュリティセンサが検知した異常を示す異常情報(“異常”に相当)と、セキュリティセンサが検知した異常が発生した位置を示す異常位置情報(“位置”に相当)を含む。なお、車両ログには、さらに、車両制御システムSを特定する識別情報、異常を検知したセキュリティセンサの識別情報、セキュリティセンサが搭載されたECU20の識別情報、異常を検知した時刻、異常を検知した回数、異常を検知した順番、異常の検知前に受信したデータの内容やIPアドレス(例えば、送信元及び送信先)の情報等を含んでもよい。
 <攻撃分析装置について>
 攻撃分析装置11は、車両(詳しくは、車両制御システムS)がサイバー攻撃を受けた際に、車両において生成された車両ログ等に基づいて、サイバー攻撃を分析する装置である。
 攻撃分析装置11は、周知の、CPUや、ROM、RAM等のメモリなどを備えた電子処理装置である。つまり、攻撃分析装置11は、周知のマイクロコンピュータ(図示せず)を備えた装置である。なお、メモリとしては、マイクロコンピュータ内のメモリに限らず、マイクロコンピュータ外の各種の記憶装置(例えば、ハードディスク等)が挙げられる。
 電子制御装置(ECU20)や電子処理装置により実行される各種機能は、CPUが非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、メモリが、プログラムを格納した非遷移的実体的記録媒体に該当する。また、このプログラムが実行されることで、プログラムに対応する方法が実行される。
 なお、メモリには、各種のプログラム(例えば、サイバー攻撃の分析を行うプログラム)だけではなく、各種のプログラムを実行する際に使用される各種のデータ(例えば、各種のテーブル)が記憶されている。
 電子制御装置(ECU20)や電子処理装置の各種機能を実現する手法はソフトウェアに限るものではなく、その一部又は全部の要素について、一つあるいは複数のハードウェアを用いて実現してもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は多数の論理回路を含むデジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現してもよい。
(2)攻撃分析装置11の構成及び機能
 次に、攻撃分析装置11の機能的な構成について説明する。
 本実施形態では、攻撃分析装置11は、図10に示すように、機能的に、異常ログ取得部111、指標取得部112、車両シチュエーション関係テーブル保存部113、装置状態推定部114、攻撃・異常関係テーブル保存部115、攻撃推定部116、マッチング度算出部117、及び出力部118を備える。
 以下、各構成について説明する。
 a)異常ログ取得部111(“ログ取得部”に相当)は、車両から送信された車両ログを受信するように構成されている。この車両ログには、上述したように、セキュリティセンサが検知したサイバー攻撃による異常の内容を示す異常情報と、その異常が発生した位置を示す異常位置情報が含まれる。
 なお、異常情報とは、どのような異常かを示す内容である。また、異常位置情報には、どのECU20の異常かの位置を示す情報や、ECU20に接続されるどのバスが異常かの位置を示す情報が含まれる。
 前記ECU20の異常としては、例えば、ECU20間で送受信される情報(即ち、フレーム)の異常(即ち、フレーム異常)や、バスの異常(即ち、バス異常)や、ホスト型異常等が挙げられる。つまり、前記異常としては、フレーム異常やバス異常やホスト型異常のように、車両制御システムSに対するサイバー攻撃により発生した各種の異常が挙げられる。
 本実施形態では、後述するように(例えば、図14参照)、異常情報として、異常A~異常D等の異常の種類が挙げられる。また、異常の位置としては、例えば第一層~第三層が挙げられる。なお、異常の種類の数や各層の数は、これに限定されるものではない。
 ここで、第一層~第三層について、図11に基づいて説明する。
 この第一層~第三層は、複数のECU20について、車両のシチュエーションにおいて同じ動作をするものを、例えば3種に共通化して区分したものである。つまり、ECU20の電源状態のオン、オフの動作が同じものを区分したものである。なお、オフにはスリープの状態も含むとする。
 例えば図11に示すように、ECU20として、例えば複数のECUα~εを例に挙げ、各ECUα~εに、それぞれ識別番号(即ち、個別位置の識別番号)が付与されている場合を例に挙げて説明する。
 ECUα及びECUβは、車両のシチュエーション(即ち、車両シチュエーション)において、電源のオン、オフの動作が同じなので、第一層のECU20として、同じ識別番号(即ち、共通化位置を示す識別番号)として、例えば0x01を付与する。
 また、ECUγは、電源のオン、オフの動作が同じECU20は無いので、第二層のECU20として、共通化位置を示す識別番号として、例えば0x02を付与する。
 さらに、ECUδ及びECUεは、車両シチュエーションにおいて、電源のオン、オフの動作が同じなので、第三層のECU20として、同じ共通化位置を示す識別番号として、例えば0x03を付与する。
 なお、ここでは、各ECU20を共通化した第一層~第三層を例に挙げたが、共通化を行わずに、単に異常位置を各ECU20の位置(例えば、個別位置を示す識別番号)で示してもよい。
 b)指標取得部112(“指標取得部”に対応)は、前記図10に示すように、車両から送信された車両シチュエーション判定用信号を受信するように構成されている。
 この車両シチュエーション判定用信号は、上述したように、センサ類21によって検出された車両の各構成の状態を示す指標となる信号であり、後述する車両シチュエーション判定条件テーブル(図12参照)に基づいて、車両シチュエーションを推定するために用いられる。
 c)装置状態推定部114(“シチュエーション推定部”に相当)は、車両シチュエーションを推定するように構成されている。
 具体的には、装置状態推定部114は、指標取得部112にて受信した車両シチュエーション判定用信号を用い、後述する車両シチュエーション判定条件テーブル(図12参照)に基づいて、車両の全体的な状態を示す車両シチュエーションを推定するように構成されている。
 また、装置状態推定部114では、車両シチュエーションに基づいて、後述する電源状態判定用テーブル(図13参照)に基づいて、各ECU20の電源状態(“シチュエーション”に相当)、具体的には各ECUのオン、オフを推定するように構成されている。なお、各ECU20のオン、オフの推定は、攻撃推定部116にて実施してもよい。
 d)攻撃推定部116(“攻撃推定部”に相当)は、サイバー攻撃の攻撃経路の推定や攻撃種別の推定を行うように構成されている。
 具体的には、攻撃推定部116は、装置状態推定部114にて推定された車両シチュエーションに基づいて得られた各ECU20の電源のオン、オフの情報(“シチュエーション”に相当)と、異常ログ取得部111から得られた車両ログの情報(即ち、異常A~異常D等の異常情報と共通化された各層の異常位置情報)と、に基づいて、攻撃経路の推定や攻撃種別の推定を行うように構成されている。なお、この推定の手順については、後に詳述する。
 e)マッチング度算出部117は、異常情報及び異常位置情報の組み合わせと、後述する図14の予測異常情報及び予測異常位置情報の組み合わせと、について、これらの組み合わせ一致の程度を示すマッチング度を算出する。
 マッチング度は、例えば、実際に取得された車両ログが示す異常の組み合わせと、後述する攻撃経路推定用マッチングテーブルの予測異常パターンにおける異常の組み合わせと、を比較し、異常の一致の程度の割合(例えば、%)で表現することができる。
 例えば、車両ログの4個の異常と、予測異常パターンにおける4個の異常とが完全に一致する場合には、マッチング度は100%であり、また、3個の異常しか一致しない場合には、マッチング度は、100%の3/4の75%である。
 また、これ以外に、マッチング度として、例えば、車両ログが示す異常の数と予測異常パターンが示す異常の数との差分を、車両ログが示す異常の数又は予測異常パターンが示す異常の数で除算した数値によって表してもよい。
 f)出力部118(“出力部”に相当)は、攻撃推定部116にて推定された推定結果と、マッチング度算出部117にて算出された算出結果と、を出力するように構成されている。
 g)車両シチュエーション関係テーブル保存部113は、メモリに設定されており、車両シチュエーション関係テーブル保存部113には、図12に示すような車両シチュエーション判定条件テーブルと、図13に示すような車両シチュエーション別のECU20の電源状態を示す電源状態判定用テーブルと、が保存されている。
 <車両シチュエーション判定条件テーブルについて>
 次に、車両シチュエーション判定条件テーブルについて、図12に基づいて説明する。
 図12に示すように、車両シチュエーション判定条件テーブルは、同図の横方向(列の配列方向:列方向)に沿って、車両の各構成の状態を示す指標が配置され、同図の縦方向(行の配列方向:行方向)に沿って、車両の全体的な状態(例えば、走行等の状態)が配列されたテーブルである。
 前記車両の各構成の状態を示す指標とは、センサ類21から得られた各構成の状態を示すシチュエーション判定用信号に対応した項目である。この指標としては、例えば、車両速度、モード(例えば、運転のモードやダイアグのモード)、乗員(例えば、乗員の数)、バッテリ電圧、充電状態、シフト位置等が挙げられる。
 前記車両シチュエーションとは、前記指標によって特定される車両の全体の状態を示すものである。この車両シチュエーションとしては、例えば、市街走行中、高速走行中、停車中であって乗員有りの場合、停車中であって乗員無しの場合、自動運転中、走行中でバッテリ残量低下時、徐行中、後進中、故障診断中、前記各例示の種類の状態以外のデフォルトの状態のうち、少なくとも1種の状態等が挙げられる。
 なお、デフォルトの状態としては、例えば、判定不能な状態や、シチュエーション不明な状態など、予め設定された初期設定の状態が挙げられる。
 なお、市街走行中は、例えば、地図データにより所定の市街を走行中であることや、所定の速度未満で走行中であることから判断できる。高速走行中は、高速道路を走行中や所定の速度以上の条件で判断できる。自動運転中は、自動運転を設定するモードにより判断できる。走行中でバッテリ残量低下時は、走行中においてバッテリ残量が所定以下の条件から判断できる。徐行中は、所定の速度未満の低速を示す速度の条件から判断できる。
 従って、車両シチュエーション判定条件テーブルを用いることにより、車両シチュエーション判定用信号によって特定される各構成の状態(例えば、車両速度やシフト位置などの各指標が示す状態)から、各車両シチュエーションを推定することができる。
 <電源状態判定用テーブルについて>
 次に、電源状態判定用テーブルについて、図13に基づいて説明する。
 図13に示すように、電源状態判定用テーブルは、同図の横方向に沿って、各ECU20(例えば、ECUA~J)の電源のオン(ON)、オフ(OFF)の状態が配列され、同図の縦方向に沿って、各車両シチュエーションが配列されたテーブルである。
 従って、電源状態判定用テーブルを用いることにより、各車両シチュエーションから、各ECUA~Jの電源のオン、オフの状態が分かるようになっている。
 なお、各ECUA~Jにおいて、各車両シチュエーションに応じた電源のオン、オフの状態が同じものが、同じ層に含まれるものである。例えば、ECUAとECUFや、ECUCとECUHを、それぞれ同じ層のECU20と見なすことができる。
 <攻撃経路推定用マッチングテーブルについて>
 h)攻撃・異常関係テーブル保存部115(“攻撃・異常関係情報保存部”に相当)は、メモリに設定されており、攻撃・異常関係テーブル保存部115には、図14に示すような攻撃経路推定用マッチングテーブル(“攻撃・異常関係情報”に相当)が保存されている。
 攻撃経路推定用マッチングテーブルとは、同図の横方向に沿って、セキュリティセンサによって検出される異常の種類に対応する予測異常情報や、各ECU20を含む各層を示す異常の位置に対応する予測異常位置情報が配列され、同図の縦方向に沿って、サイバー攻撃の種別や、サイバー攻撃の経路が配列されたテーブルである。なお、予測異常情報は、各層に対応する予測異常位置に応じて配置されている。
 なお、予測異常情報とは、サイバー攻撃を実際に受けた場合に発生することが予測される異常の種類を示す情報であり、予測異常位置情報とは、サイバー攻撃を実際に受けた場合に発生することが予測される異常の位置を示す情報である。
 前記異常の種類とは、例えば、異常A~Dであり、異常の位置とは、各ECU20を含む各層(例えば、第一層~第三層)である。また、サイバー攻撃の種別(即ち、攻撃種別)とは、例えば、攻撃A~攻撃Xであり、攻撃の経路とは、例えば、攻撃の起点となる位置と、攻撃先である攻撃対象の位置とで規定される攻撃経路(即ち、推定経路)である。なお、攻撃A~攻撃Xとしては、公知の各種のサイバー攻撃が挙げられる。
 また、攻撃起点や攻撃対象の0x01~0x03は、上述したように(図11参照)、共通化された第一層~第三層の識別番号を示し、0000は、車外を示している。
 このように、攻撃経路推定用マッチングテーブルとは、異常A~D等の異常の種類と各層のような異常の位置とによって示される異常が発生したときに、攻撃種別や攻撃経路が決まるような場合に、異常の種類及び異常の位置と、攻撃種別及び攻撃経路と、の関係を示すテーブルである。
 従って、攻撃経路推定用マッチングテーブルを用いることにより、異常の種類及び異常の位置から、攻撃種別及び攻撃経路を求める(即ち、推定する)ことができる。
(3)攻撃種別及び攻撃経路の推定方法
 次に、攻撃推定用マッチングテーブルを用いて、攻撃種別及び攻撃経路を推定する方法について、図15に基づいて説明する。
 本実施形態では、車両ログに含まれる実際の異常の種類を示す異常情報と異常が発生した位置を示す異常位置情報との組み合わせと、攻撃経路推定用マッチングテーブルの予測異常情報と予測異常位置情報との組み合わせと、の一致の状態を比較することにより、攻撃種別及び攻撃経路を推定する。以下、具体的に説明する。
 <基本の推定方法>
 まず、攻撃種別や攻撃経路を推定する際の基本となる推定方法について説明する。
 この推定方法では、全てのECU20(従って、層)について車両ログの解析を行う。例えば、ある時間枠の区間の車両ログ群(即ち、攻撃の分析に必要な解析対象の車両ログ群)から、異常の位置や異常の種類を求め、この実際の異常が、攻撃推定用マッチングテーブルのどの位置(即ち、テーブルの例えば各行における各欄のどの位置)の異常に対応する異常かを確認する。
 これにより、攻撃推定用マッチングテーブルの予測異常パターン(例えば、各行における○(即ち、丸)の配列パターン)に対応するような実際の車両ログの異常のパターン(即ち、実際の異常の有無の配置を示す実際の異常パターン)が分かる。
 従って、攻撃推定用マッチングテーブルを利用して、実際の異常パターンと攻撃推定用マッチングテーブルの予測異常パターンとを比較することにより、攻撃種別や攻撃経路を推定することができる。
 例えば、実際の異常パターンと予測異常パターンとが完全に一致した場合に、攻撃推定用マッチングテーブルから、攻撃種別や攻撃経路を特定することができる。なお、実際の異常パターンと予測異常パターンとが完全に一致しない場合には、一致の程度に応じて、攻撃種別や攻撃経路を推定することができる。
 以下、上述した処理の一例を示すが、この例に限られるものではない。なお、ここでは、攻撃経路を例に挙げて説明する。
 (ステップ1)攻撃経路の推定の入力となる車両ログ群(即ち、1以上の車両ログ)を取得する。
 (ステップ2)次に、下記(2-1)~(2-5)の手順で、攻撃経路を推定する。
  (2-1)車両ログを1件取り出し、どのECU20(従って、どの層)のセキュリティセンサの異常を示す車両ログであるか(即ち、どの異常の位置及び異常の種類であるか)を解析する。
  (2-2)次に、攻撃推定用マッチングテーブルを参照し、攻撃推定用マッチングテーブルの列方向(横方向)のどのECU20(従って、どの層)のセキュリティセンサの異常であるか(即ち、どの列に関する異常であるか)を特定する。
  (2-3)次に、特定した列について、攻撃推定用マッチングテーブルの行方向(縦方向)に沿って、異常の有無を照合してゆき、○(即ち、丸)がついた行に達したら、その攻撃経路を攻撃経路候補として記憶する。
  (2-4)次に、上述した(2-3)の処理を、行方向の末端まで(即ち、攻撃経路の数分)繰り返して実施する。
  (2-5)前記(ステップ1)に戻り、次の車両ログの照合を行う。
 (ステップ3)次に、車両ログを全件照合したら、記憶していた攻撃経路候補を攻撃経路の推定結果として格納する。なお、攻撃経路候補は、出力が確定する前の攻撃経路の候補を示し、同じ攻撃経路候補が複数推定された場合には、後に推定された攻撃経路候補を記憶しないようにする。
 (ステップ4)次に、格納された攻撃経路を推定結果として出力する。
 <電源の状態に応じた推定方法>
 この推定方法における主な手順は、前記<基本の推定方法>で述べた処理と同様であり、ここでは、主として、本実施形態の要部である、ECU20の電源のオン、オフに対応して実施される攻撃種別や攻撃経路の推定方法について詳しく説明する。
 この推定方法では、例えば、図15の破線で囲む欄のように、電源オフのECU20(従って、層)が、攻撃対象(又は攻撃起点)に含まれる場合には、この攻撃の分析はスキップする。つまり、電源オフのECU20はサイバー攻撃の攻撃起点や攻撃対象となり得ないことに照らせば、これらのECU20はサイバー攻撃と関連しないと推定されるから、スキップすることができる。
 また、例えば、図15の一点鎖線で囲む欄のように、電源オフのECU20(従って、例えば第三層)に関する異常A~Dに対応する車両ログの分析はスキップする。つまり、電源オフのECU20からは、車両ログが発生し得ないことに照らせば、これらのECU20はサイバー攻撃と関連しないと推定されるから、スキップすることができる。
 以下、順を追って具体的な一例を説明するが、下記の処理に限定されるものではない。なお、ここでは、攻撃経路を例に挙げて説明する。
 (ステップ1)攻撃経路の推定の入力となる車両ログ群(即ち、1以上の車両ログ)を取得する。
 (ステップ2)次に、下記の(2-1)~(2-7)手順で、攻撃経路を推定する。
  (2-1)車両ログを1件取り出し、どのECU20(従って、どの層)のセキュリティセンサの異常を示す車両ログであるか(即ち、どの異常の位置及び異常の種類であるか)を解析する。
  (2-2)前記(2-1)の処理の結果、解析対象の車両ログが、電源オフにより稼働していなかったと考えられるECU20の異常A~Dに対応する車両ログである場合には、以降の処理(例えば、(2-3)~(2-6)の処理)をスキップし、前記(ステップ1)に戻って、次の車両ログの解析を行う。つまり、例えば、図15の一点鎖線で囲まれる範囲の車両ログの分析を省略する。
  (2-3)次に、攻撃推定用マッチングテーブルを参照し、攻撃推定用マッチングテーブルの列方向(即ち、横方向)のどのECU20(従って、どの層)のセキュリティセンサの異常であるか(即ち、どの列に関する異常であるか)を特定する。
  (2-4)次に、特定した列について、攻撃推定用マッチングテーブルの行方向(即ち、縦方向)に沿って、異常の有無を照合してゆき、○(即ち、丸)がついた行に達したら、その攻撃経路を攻撃経路候補として記憶する。
  (2-5)前記(2-4)の処理の実行中に、攻撃起点のECU20(従って、層)、又は、攻撃対象のECU20(従って、層)のいずれかが電源オフだった場合には、異常の有無の照合をスキップする。つまり、例えば、図15の破線で囲まれる範囲の攻撃の分析は省略する。
  (2-6)次に、上述した(2-4)~(2-5)の処理を、行方向の末端まで(即ち、攻撃経路の数分)繰り返して実施する。
  (2-7)前記(ステップ1)に戻り、次の車両ログの照合を行う。
 (ステップ3)次に、車両ログを全件照合したら、記憶していた攻撃経路候補を攻撃経路の推定結果として格納する。なお、攻撃経路候補は、出力が確定する前の攻撃経路の候補を示し、同じ攻撃経路候補が複数推定された場合には、後に推定された攻撃経路候補を記憶しないようにする。
 (ステップ4)次に、攻撃経路の推定結果を出力する。
 従って、車両ログを全件照合した結果、実際の車両ログが、例えば、図15の攻撃Aのように、第1層において、異常A、異常C、異常Dと一致する場合(即ち、100%一致の場合)には、サイバー攻撃が、攻撃起点が0000で、攻撃対象が0x01の攻撃経路であると推定することができる。また、サイバー攻撃が、攻撃Aであると推定することができる。
 つまり、実際の車両ログの異常情報と異常位置情報の組み合わせのパターン(即ち、実際の異常パターン)が、攻撃推定用マッチングテーブルの各1行分におけるパターン(即ち、予測異常パターン)と一致する場合に、予測異常パターンに対応する攻撃経路や攻撃種別を好適に推定することができる。
 また、例えば、車両ログが、攻撃推定用マッチングテーブルの各1行分のパターンの一部としか一致しない場合には、マッチング度が低いと判断することができる。例えば、3つのうち2つしか一致しない場合には、2/3のマッチング度とみなすことができる。
 さらに、例えば、取得された車両ログによる異常(即ち、実際の異常パターンにおける異常)が、攻撃推定用マッチングテーブルにおいて、異常の位置が第二層、異常の種類が異常A、異常B、異常Cに対応する3個の場合には、攻撃推定用マッチングテーブルの予測異常パターンを参照すると、攻撃種別(又は攻撃経路)として、攻撃B、攻撃C、攻撃Dが推定される。
 この場合は、マッチング度は、攻撃Bが2/3、攻撃Cが2/3、攻撃Dが3/3(即ち、100%)であると推定される。
(4)処理内容
 次に、攻撃分析装置11によって実施される処理内容について、図16のタイミングチャートに基づいて説明する。
 指標取得部112は、車両の車両制御システムSから車両シチュエーション判定用信号を受信する(S111)。
 異常ログ取得部111は、車両の車両制御システムSから、異常情報及び異常位置情報を含む車両ログを受信する(S112)。
 装置状態推定部114は、車両シチュエーション判定条件テーブルを用いて、車両シチュエーション判定用信号に基づいて、車両のシチュエーションを推定する(S113)。
 攻撃推定部116では、攻撃推定用マッチングテーブルを用い、異常ログ取得部111から得られた車両ログに含まれる異常の種類及び異常の位置の組み合わせと、サイバー攻撃を受けた場合に発生することが予測される複数の予測異常パターンと、を比較することにより(即ち、車両ログに含まれる異常の種類及び異常の位置の組み合わせを、攻撃推定用マッチングテーブルの予測異常パターンと照合することにより)、サイバー攻撃の攻撃経路や攻撃種別を推定する(S114)。
 特に本実施形態では、上述したように、攻撃推定部116によって攻撃経路等の推定を行う場合には、当該推定を行う演算範囲を、装置状態推定部114によって推定された車両シチュエーションに基づいて電源状態判定用テーブルから電源オフのECU20を特定し、その電源オフのECU20に基づいて、攻撃経路等の推定に不要な処理を省略するようにする。
 つまり、前記図15の破線で囲む欄のように、電源オフのECU20(従って、層)が、攻撃対象(又は攻撃起点)に含まれる場合には、この攻撃の分析はスキップする。また、例えば、前記図15の一点鎖線で囲む欄のように、電源オフのECU20(従って、例えば第三層)に配置されるセキュリティセンサの車両ログの分析はスキップする。
 なお、前記電源状態判定用テーブルに示すように、各ECU20の電源のオン、オフの状態は、車両シチュエーションに対応して定まっており、また、図11に示すテーブルに示すように、各層に対応するECU20は定まっている。
 攻撃推定部116で推定された攻撃経路等の推定結果と、装置状態推定部114で推定された車両シチュエーションは、マッチング度算出部117に出力される。
 マッチング度算出部117では、マッチング度を、上述した各種の方法によって算出する(S115)。
 また、車両シチュエーションから車両ログの生成時に電源オフとなっていたECU20を特定する。そして、電源オフとなっていたECU20があれば、マッチング度の算出の際に含めないようにする。
 次に、攻撃経路等の推定結果とマッチング度とを出力部118に出力し、出力部118から、その分析結果(即ち、攻撃経路等の推定結果とマッチング度)を、攻撃分析装置11外の所定の装置(例えば、外部サーバ30の記憶装置等)に出力する。
(5)効果
 (a)本実施形態によれば、車両ログに含まれる異常情報及び異常位置情報と、サイバー攻撃を受けた場合に発生することが予測される複数の予測異常パターンと、を比較することにより、サイバー攻撃の攻撃経路及び/又は攻撃種別を推定することができる。
 また、攻撃経路等の推定を行う場合には、当該推定を行う範囲を、車両シチュエーションに基づいて判断するので、車両シチュエーションに応じて必要な演算を選択して実施することができる。これにより、攻撃経路等の推定する際の計算効率を高めることができるので、演算の負荷を軽減することができる。
 詳しくは、本実施形態では、車両シチュエーションから得られたECU20の電源のオン、オフの状態に基づいて、攻撃経路等の推定する際の推定を行う範囲を設定することができる。例えば、電源がオフのECU20の車両ログに関しては、攻撃経路等の推定のための演算を省略することができる。これにより、攻撃経路等を推定する際の計算効率を高めることができるので、演算の負荷を軽減することができる。
 (b)本実施形態では、予測異常パターンは、攻撃起点のECU20及び攻撃対象のECU20に紐付けされている。そして、異常を検知した際の車両シチュエーションにおいて電源オフのECU20に、攻撃起点のECU20又は攻撃対象のECU20が含まれている場合には、電源オフのECU20に紐付けされた予測異常パターンについては、攻撃経路等の推定を行う処理をスキップすることができる。
 (c)本実施形態では、予測異常パターンのうち、異常を検知した際の車両シチュエーションにおいて電源オフのECU20に対応する予測異常パターンについては、攻撃経路等の推定を行う処理をスキップすることができる。
 (d)本実施形態では、攻撃経路等を推定する際に用いる攻撃推定用マッチングテーブルとして、攻撃経路及び/又は攻撃種別と、サイバー攻撃を受けた際に発生することが予測される異常の種類を示す予測異常情報及びサイバー攻撃を受けた際に発生することが予測される前記異常の位置を示す予測異常位置情報と、の関係を示すテーブルを用いることができる。
 従って、実際に取得された異常の種類及び異常の位置の組み合わせ(例えば、実際の異常パターン)に対応する攻撃推定用マッチングテーブル(例えば、異常の種類及び異常の位置の組み合わせが共有化された攻撃推定用マッチングテーブル)の予測異常情報及び予測異常位置情報の組み合わせ(例えば、予測異常パターン)から、サイバー攻撃の攻撃経路や攻撃種別を推定することができる。
 (e)本実施形態では、マッチング度によって、車両ログに含まれる情報と予測異常パターンとの間の類似度を示すことができる。
 (f)本実施形態では、車両シチュエーションとして、市街走行中、所定の速度以上の高速走行中、乗員がある場合の停車中、乗員が無い場合の停車中、自動運転中、走行中のバッテリ残量の所定以下の低下時、所定の速度以下の徐行中、後進中、充電中、故障診断中、前記各種の状態以外のデフォルトの状態など、のうち、少なくとも1種の状態を採用できる。なお、車両シチュエーションとしては、これらの例に限定されるものではなく、車両の状態(例えば、車両の移動状態や使用状態等)を示す各種の車両シチュエーションが挙げられる。
(6)本実施形態の変形例
 以上、本開示の実施形態について説明したが、本開示は、上記実施形態に限定されることなく、種々の形態を採り得ることは言うまでもない。以下の変形例は、本実施形態は勿論、他の実施形態の変形例とすることができる。
 (2a)本実施形態では、サイバー攻撃を受ける電子制御システムSを搭載した装置として車両を例に挙げたが、それに限定されるものではなく、複数のECUを備えた任意の電子制御システムに適用することができる。
 例えば、電子制御システムSは、任意の移動体に搭載される電子制御システムであってもよく、あるいは、移動体ではなく静止体に搭載されるものであってもよい。
 (2b)本実施形態では、外部サーバに攻撃分析装置11を搭載した例を挙げたが、車両に、攻撃分析装置11の一部又は全体を搭載するようにしてもよい。
 (2c)本実施形態では、ECUの共通化を行ったが、共通化を行わなくてもよい。この場合は、例えば図14の各層に代えて各ECUを配置した攻撃推定用マッチングテーブルを用いることができる。
 (2d)本開示にて推定される内容としては、サイバー攻撃の攻撃経路及び攻撃種別の少なくとも一方が挙げられる。
 (2e)本開示に記載の攻撃分析装置11は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサおよびメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。
 あるいは、本開示に記載の攻撃分析装置11は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。
 もしくは、本開示に記載の攻撃分析装置11は、一つ乃至複数の機能を実行するようにプログラムされたプロセッサおよびメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。
 また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されてもよい。攻撃分析装置11に含まれる各部の機能を実現する手法には、必ずしもソフトウェアが含まれている必要はなく、その全部の機能が、一つあるいは複数のハードウェアを用いて実現されてもよい。
 (2f)上述した攻撃分析装置11の他、当該攻撃分析装置11を構成要素とする装置、当該攻撃分析装置11のコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移有形記録媒体、攻撃分析装置11の処理方法(例えば、攻撃分析方法)など、種々の形態で本開示を実現することもできる。
 (2g)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記各実施形態の構成の一部を省略してもよい。また、上記各実施形態の構成の少なくとも一部を、他の実施形態の構成に対して付加または置換してもよい。
(7)本実施形態から把握される発明
 以下、少なくとも本実施形態の開示から把握される発明を列挙する。
(発明1)
 電子制御システム(S)がサイバー攻撃を受けた際に、前記電子制御システムにおいて発生する異常に基づいて、前記サイバー攻撃を分析する攻撃分析装置(11)であって、
 前記電子制御システムに含まれる電子制御装置(20)は、電源状態が個別に制御可能で、前記電子制御システムが搭載された装置の状態を示すシチュエーションに応じて停止又はスリープの状態に変化が可能なものであり、
 前記電子制御システムにおいて前記異常が発生した際に生成される前記異常の種類及び前記異常の位置の情報を含む異常ログを取得するように構成された異常ログ取得部(111)と、
 前記異常ログ取得部にて取得した前記異常ログに含まれる情報と、前記サイバー攻撃を受けた場合に発生することが予測される前記異常の組み合わせを示す1又は複数の予測異常パターンと、を比較することにより、前記サイバー攻撃の攻撃経路及び/又は攻撃種別を推定するように構成された攻撃推定部(116)と、
 を備え、
 前記攻撃推定部によって前記推定を行う場合には、当該推定を行う演算範囲を、前記装置の前記シチュエーションに基づいて判断するように構成された、
 攻撃分析装置。
(発明2)
 発明1に記載の攻撃分析装置であって、
 前記装置から当該装置の前記シチュエーションを推定可能な指標を取得するように構成された指標取得部(112)と、
 前記装置の前記シチュエーションを、前記指標から推定するように構成された装置状態推定部(114)と、
 をさらに備え、
 前記攻撃推定部によって前記推定を行う場合には、当該推定を行う演算範囲を、前記装置状態推定部によって推定された前記装置の前記シチュエーションに基づいて判断するように構成された、
 攻撃分析装置。
(発明3)
 発明1に記載の攻撃分析装置であって、
 前記装置の前記シチュエーションから得られた前記電子制御装置の前記電源状態の前記停止又は前記スリープの状態に基づいて、前記推定を行う演算範囲を設定するように構成された、
 攻撃分析装置。
(発明4)
 発明3に記載の攻撃分析装置であって、
 前記電源状態が前記停止又は前記スリープの状態の前記電子制御装置の前記異常ログに関しては、前記予測異常パターンと比較することによって前記推定を行う処理を省略するように構成された、
 攻撃分析装置。
(発明5)
 発明1に記載の攻撃分析装置であって、
 前記予測異常パターンは、前記サイバー攻撃の起点を示す予測攻撃地点の前記電子制御装置に紐付けされており、
 前記異常を検知した際の前記装置の前記シチュエーションにおいて前記停止又は前記スリープの状態である前記電子制御装置に、前記予測攻撃地点の前記電子制御装置が含まれている場合は、前記停止又は前記スリープの状態である前記電子制御装置に紐付けされた前記予測異常パターンについては、前記異常ログと比較することによって前記推定を行う処理を省略するように構成された、
 攻撃分析装置。
(発明6)
 発明1に記載の攻撃分析装置であって、
 前記予測異常パターンは、前記サイバー攻撃の対象を示す予測攻撃対象の前記電子制御装置に紐付けされており、
 前記異常を検知した際の前記装置の前記シチュエーションにおいて前記停止又は前記スリープの状態である前記電子制御装置に、前記予測攻撃対象の前記電子制御装置が含まれている場合は、前記停止又は前記スリープの状態である前記電子制御装置に紐付けされた前記予測異常パターンについては、前記異常ログと比較することによって前記推定を行う処理を省略するように構成された、
 攻撃分析装置。
(発明7)
 発明1に記載の攻撃分析装置であって、
 前記予測異常パターンのうち、前記異常を検知した際の前記装置の前記シチュエーションにおいて前記停止又は前記スリープの状態である前記電子制御装置に対応する前記予測異常パターンについては、前記異常ログと比較することによって前記推定を行う処理を省略するように構成された、
 攻撃分析装置。
(発明8)
 発明1に記載の攻撃分析装置であって、
 前記予測異常パターンが、前記サイバー攻撃を受けた際に発生することが予測される前記異常を示す予測異常情報と、前記サイバー攻撃を受けた際に発生することが予測される前記異常の位置を示す予測異常位置と、を示すように構成されたテーブルを用い、
前記異常ログと比較することにより、前記サイバー攻撃の前記攻撃経路及び/又は前記攻撃種別を推定するように構成された、
 攻撃分析装置。
(発明9)
 発明1に記載の攻撃分析装置であって、
 前記異常ログに含まれる情報と前記予測異常パターンとの間の類似の程度を示すマッチング度を算出するように構成された、
 攻撃分析装置。
(発明10)
 発明9に記載の攻撃分析装置であって、
 前記異常ログ取得部にて取得した前記異常ログに含まれる情報と、前記サイバー攻撃を受けた場合に発生することが予測される前記予測異常パターンと、を比較し、前記異常ログに含まれる情報と前記予測異常パターンとの一致の程度に基づいて、前記マッチング度を算出するように構成された、
 攻撃分析装置。
(発明11)
 発明1に記載の攻撃分析装置であって、
 前記装置が車両である場合に、当該車両の前記シチュエーションは、市街走行中、所定の速度以上の高速走行中、乗員がある場合の停車中、乗員が無い場合の停車中、自動運転中、走行中のバッテリ残量の所定以下の低下時、所定の速度未満の徐行中、後進中、充電中、故障診断中、前記各種の状態以外のデフォルトの状態、のうち、少なくとも1種の状態である、
 攻撃分析装置。
(発明12)
 発明2に記載の攻撃分析装置であって、
 前記指標と前記装置の前記シチュエーションとを対応させたテーブルに基づいて、前記指標から前記装置の前記シチュエーションを求めるように構成された、
 攻撃分析装置。
(発明13)
 発明1に記載の攻撃分析装置であって、
 前記異常ログ取得部にて取得した前記異常ログに含まれる情報と、前記サイバー攻撃を受けた場合に発生することが予測される前記予測異常パターンと、を対応させたテーブルに基づいて、前記異常ログに含まれる情報から前記サイバー攻撃の前記攻撃経路及び/又は前記攻撃種別を推定するように構成された、
 攻撃分析装置。
(発明14)
 発明13に記載の攻撃分析装置であって、
 前記テーブルとして、前記攻撃経路及び/又は前記攻撃種別と、前記サイバー攻撃を受けた際に発生することが予測される前記異常を示す予測異常情報及び前記サイバー攻撃を受けた際に発生することが予測される前記異常の位置を示す予測異常位置と、の関係を示すテーブルを用い、
 前記異常の種類及び前記異常の位置の組み合わせに対応する前記予測異常情報及び前記予測異常位置の組み合わせから、前記サイバー攻撃の前記攻撃経路及び/又は前記攻撃種別を推定するように構成された、
 攻撃分析装置。
(発明15)
 電子制御システム(S)がサイバー攻撃を受けた際に、前記電子制御システムにおいて発生する異常に基づいて、前記サイバー攻撃を分析する攻撃分析方法であって、
 前記電子制御システムに含まれる電子制御装置(20)は、電源状態が個別に制御可能で、前記電子制御システムが搭載された装置の状態を示すシチュエーションに応じて停止又はスリープの状態に変化が可能なものであり、
 前記電子制御システムにおいて前記異常が発生した際に生成される前記異常の種類及び前記異常の位置の情報を含む異常ログを取得し(S112)、
 前記取得した前記異常ログに含まれる情報と、前記サイバー攻撃を受けた場合に発生することが予測される前記異常の組み合わせを示す1又は複数の予測異常パターンと、を比較することにより、前記サイバー攻撃の攻撃経路及び/又は攻撃種別を推定する場合には、当該推定を行う演算範囲を、前記装置の前記シチュエーションに基づいて判断する(S114)、
 攻撃分析方法。
(発明16)
 電子制御システム(S)がサイバー攻撃を受けた際に、前記電子制御システムにおいて発生する異常に基づいて、前記サイバー攻撃を分析する攻撃分析装置(11)で実行可能な攻撃分析プログラムであって、
 前記電子制御システムに含まれる電子制御装置(20)は、電源状態が個別に制御可能で、前記電子制御システムが搭載された装置の状態を示すシチュエーションに応じて停止又はスリープの状態に変化が可能なものであり、
 前記電子制御システムにおいて前記異常が発生した際に生成される前記異常の種類及び前記異常の位置の情報を含む異常ログを取得し(S112)、
 前記取得した前記異常ログに含まれる情報と、前記サイバー攻撃を受けた場合に発生することが予測される前記異常の組み合わせを示す1又は複数の予測異常パターンと、を比較することにより、前記サイバー攻撃の攻撃経路及び/又は攻撃種別を推定する場合には、当該推定を行う演算範囲を、前記装置の前記シチュエーションに基づいて判断するように構成された(S114)、
 攻撃分析プログラム。
 
3.実施形態2
 本実施形態は、主として特願2022-157432の記載に基づくものである。
 本実施形態の攻撃分析装置を攻撃分析装置12とする。
(1)攻撃分析装置10の全体構成
 図17を参照して、本実施形態の攻撃分析装置12を説明する。攻撃分析装置12は、後述する移動体に設けられた電子制御システムSに対する攻撃を分析する装置である。攻撃分析装置12は、エントリポイント候補生成部120、攻撃推定部220、及び推定結果検証部320を備える。以下の実施形態では、攻撃推定部220を有する装置を攻撃分析装置と称し、エントリポイント候補生成部120、攻撃推定部220、及び推定結果検証部320をまとめて攻撃分析システムと称する。したがって、図17は、本実施形態の攻撃分析システム1を示す図でもある。
 以下に説明する本実施形態では、サイバー攻撃を受ける電子制御システムSは、車両に設けられた車載システムである例を挙げて説明する。また、本実施形態の攻撃分析装置12は、図1(c)のように、車両の外部に設けられているとする。
(2)電子制御システムS及び各種テーブルについて
 図18を参照して、電子制御システムSについて説明する。電子制御システムSは、複数の電子制御装置(以下、ECU)から構成される。図18に示す例では、電子制御システムSはECU-1~5を有しており、それぞれのECUは車載ネットワークを介して接続されている。
 電子制御システムSを構成するECUには、ECU内部やECUが接続されたネットワークを監視するセキュリティセンサが搭載される。セキュリティセンサがECU内部又はネットワークに発生した異常を検知すると、セキュリティログを生成して、後述するエントリポイント候補生成部120に出力する。以下、セキュリティセンサが生成して出力するログを、セキュリティログと称する。セキュリティログは、セキュリティセンサが検知した異常を示す異常情報と、セキュリティセンサが検知した異常が発生した位置を示す異常位置情報を含む。セキュリティログはさらに、電子制御システムSを特定する識別情報、異常を検知したセキュリティセンサの識別情報、セキュリティセンサが搭載されたECUの識別情報、異常を検知した時刻、異常を検知した回数、異常を検知した順番、異常の検知前に受信したデータの内容やIPアドレス(すなわち、送信元及び送信先)の情報、等を含んでもよい。
 電子制御システムSは、無線通信方式又は有線通信方式を用いて外部の接続先に接続される。図18に示す例では、電子制御システムSの外部の接続先は、AP-1~AP-5から構成されている。外部の接続先としては、例えば、HEMS(Home Energy Management System)、電気スタンド、路側機、非接触充電、他の車両、診断機、及びOEMセンタ等があげられる。
 電子制御システムSが接続先からサイバー攻撃を受けた場合、攻撃の侵入箇所であるエントリポイントを特定することで、攻撃経路や被害箇所を精度よく推定することができる。図18では、電子制御システムSがサイバー攻撃を受けた場合、各ECU1~ECU5がそれぞれエントリポイントEP1~EP5となる例を示した。この他、エントリポイントをインターフェースで特定してもよい。各ECUは物理的なECUの他、仮想ECUであってもよい。
 図19を参照して、エントリポイントの具体例を説明する。
 図19の右欄に示す外部接続先からの攻撃の場合、中欄に示すインターフェースがエントリポイントであり、当該エントリポイントを備えるECUが左欄に示されている。同図に示す例では、マルチメディアECUはインターフェースとして、Wi-Fi、Bluetooth(登録商標)及びUSBを備えているため、各インターフェースがそれぞれエントリポイントとなる。
 なお、左欄で示されるECUをエントリポイントと定義してもよい。あるいは図19のように、中欄に示すインターフェース及び左欄に示すECUの組をエントリポイントと定義してもよい。
 図20は、走行状況・攻撃関係テーブル(“走行状況・異常関係情報”に相当)の一例を示す図である。図20に示す走行状況・攻撃関係テーブルには、図18に示した電子制御システムSにおける、外部の接続先(“接続先情報”に相当)及び当該接続先からの予測される攻撃のエントリポイント(“予測エントリポイント”に相当)と、異常発生時における車両の走行状況、すなわちエントリポイントに対応する走行状況(“予測走行状況”に相当)とが対応付けて保存されている。すなわち、外部の接続先ごとに、当該接続先と接続することができる場合の車両の走行状況が対応付けられている。図20の例では、各走行状態において接続することができる外部の接続先は、走行状況C1の場合AP-1~AP-5のすべてであり、走行状況C2の場合AP-1、AP-3およびAP-5であり、走行状況C3の場合AP-3およびAP-5である。
 ここで、“走行状況”とは、移動体自体の挙動や動作、モードなど、走行時の内部状況の他、移動体の周囲温度や位置、時刻など、走行時の外部状況も含む。
 図21は、外部の接続先としての、HEMS、電気スタンド、他車両、車両販売店における整備作業用の診断機、及び路側機について、車両の速度による接続可能性の有無を示す図である。つまり、走行状況が車両の“速度”の場合の例である。同図に示す速度は、接続先の接続可能性に応じて区分すれば良いが、例えば、時速0kmを停止、時速0kmより大きく20km未満を低速、時速20km以上を高速とする。なお、接続先の装置の性能に応じて高速に上限を設定してもよい。その場合、高速を複数段階設定してもよい。
 ここで、“速度”とは、単位時間あたりの走行距離で示される狭義の速度の他、単位距離当たりに要する時間、2点間の位置情報と所要時間等、間接的に狭義の速度を特定できる情報であればよい。あるいは、速度の幅でもって定義してもよい。
 走行状況・攻撃関係テーブルを用いることで、異常発生時における車両の走行状況を用いて、外部の接続先およびエントリポイントを特定又は絞り込むことができる。例えば、車両の走行中には電気スタンドに接続することができないため、走行中の車両に異常が生じた場合、電気スタンドからの攻撃の可能性を排除または可能性が低いと評価することができる。なお、車両の速度は、速度情報として取得するほか、位置情報の推移や、車両の走行状態を反映する変速ギアの状態などとして取得することもできる。
 車両の走行状態を温度により区別する場合、例えば車両の周囲の気温や車両を構成する部材の温度とした場合、異常発生時における温度において動作しない接続先をサイバー攻撃の攻撃元から排除することができる。
 車両の走行状態を時間若しくは時刻により区別する場合、異常発生時刻において動作していない接続先を攻撃元から排除することができる。
 車両の走行状態を地理的な位置により区別する場合、異常発生時に走行中の国や州などにより、経済的または法規的に存在しない接続先を攻撃元から排除することができる。
 なお、図20および図21に示すように、通常、サイバー攻撃の攻撃元となる外部接続先とエントリポイントとは一対一で対応しているが、エントリポイントが複数の外部接続先をカバーしていてもよい。
 図20及び図21の走行状況・攻撃関係テーブルは、図5を用いて説明したシチュエーション情報に対応する。また、走行状況・攻撃関係テーブル中、異常発生時の車両の走行状況は“指標”に相当し、エントリポイントや外部接続先は“シチュエーション”に相当する。つまり、走行状況・攻撃関係テーブルは、入力された走行状況に基づき、走行状況に対応するエントリポイントを推定するために用いられる。
(3)エントリポイント候補生成部120の構成
 図22を参照して、エントリポイント候補生成部120を説明する。エントリポイント候補生成部120は、入力部121、走行状況・攻撃関係情報保存部122、エントリポイント候補推定部123、及び、出力部124を備える。
 入力部121(“ログ取得部”、“指標取得部”に相当)は、電子制御システムSで検出された異常を示すセキュリティログ、及び“異常が発生したとき”の車両の走行状況(“指標”に相当)を取得する。例えば、セキュリティログに含まれる異常発生時を特定するタイムスタンプで示された時刻の走行状況を取得するようにしてもよい。走行状況は、車両内の各種センサやECUから取得する。
 走行状況・攻撃関係情報保存部122は、予測される攻撃のエントリポイントである予測エントリポイントと、予測エントリポイントに対応する予測走行状況との関係を示す走行状況・攻撃関係テーブル(“走行状況・攻撃関係情報”に相当)を保存する保存部である。
 エントリポイント候補推定部123(“シチュエーション推定部”に相当)は、走行状況・攻撃関係情報保存部122に保存された走行状況・攻撃関係テーブルに基づき、入力部121が取得した走行状況において接続可能性がある外部接続先及びエントリポイント候補(“シチュエーション”に相当)を推定する。
 たとえば、図20の走行状況・攻撃関係テーブルを用いる場合、セキュリティログにおける異常発生時の走行状況がC2であるとき、エントリポイント候補推定部123は、当該走行状況において電子制御システムSの接続可能性がある接続先として、AP-1、AP3、及びAP-5を特定し、可能性のあるエントリポイント候補として、EP-1、EP-3、及びEP-5を特定する。
 出力部124は、入力部121で取得したセキュリティログ、及びエントリポイント候補推定部123により推定されたエントリポイント候補を、後述する攻撃推定部220に出力する。
 なお、セキュリティログを入力部121から取得することなく、後述の攻撃推定部220に直接入力するようにしてもよい。その場合、出力部124は、エントリポイント候補を攻撃推定部220に出力する。
(4)攻撃推定部220の構成
 図23を参照して、攻撃推定部220を説明する。攻撃推定部220は、入力部221、攻撃・異常関係情報保存部222、推定部223、マッチング度算出部224、及び、出力部225を備える。
 入力部221は、エントリポイント候補生成部120から、セキュリティログ及びエントリポイント候補を取得する。
 攻撃・異常関係情報保存部222は、攻撃・異常関係テーブル(“攻撃・異常関係情報”に相当)を保存する保存部である。攻撃・異常関係テーブルは、電子制御システムSが受ける可能性のある攻撃を示す予測攻撃情報と、サイバー攻撃を受けた場合に電子制御システムにおいて発生することが予測される異常を示す予測異常情報と、予測される異常が発生する電子制御システムS内の位置を示す予測異常位置情報との関係を示すテーブルである。
 図24は、攻撃・異常関係テーブルの一例を示す図である。図24に示す攻撃・異常関係テーブルでは、攻撃の種別(例えば、攻撃A~攻撃L)毎に、電子制御システムSが当該攻撃を受けた場合に生じる異常(“予測異常情報”に相当)と、異常が発生する位置(“予測異常位置情報”に相当)がECU-1~ECU-5のいずれであるかを示している。図24に示すように、攻撃を受けた場合、複数の場所で複数の異常が発生することが想定される。したがって、攻撃・異常関係テーブルは、攻撃を受けた場合に生じる複数の異常と、それらの位置との組み合わせを示すものであることが好ましい。
 図24はさらに、攻撃の種別と、当該攻撃を受けた場合に想定されるエントリポイントとの対応関係を示している。
 本実施形態では、“予測攻撃情報”は、攻撃種別とエントリポイントで構成されるが、その他の情報を含んでもよい。例えば、攻撃起点位置と攻撃対象位置とを含む攻撃経路を含んでいてもよい。もっとも、攻撃経路を含む場合は、エントリポイントの欄を別途設けることなく、攻撃起点位置で代用してもよい。すなわち、攻撃起点位置がエントリポイントを構成するインターフェースやECUである場合は、これらがエントリポイントとなる。
 例えば、攻撃種別が攻撃Aである攻撃を受けた場合、電子制御システムSでは、ECU-1において、異常A、C、D及びEが発生し、ECU-3において、異常A及びBが発生することが予測される。また、攻撃Aの攻撃の起点となるエントリポイントはEP-1であることも予測される。
 推定部223は、入力部221から入力されたセキュリティログ及び攻撃・異常関係テーブルに基づき、電子制御システムSが受けた攻撃を推定する。この際、攻撃・異常関係テーブルのうち、入力部221から入力されたエントリポイント候補を含む部分を用いて攻撃を推定する。具体的には、エントリポイント候補で絞り込まれた攻撃・異常関係テーブルを用いて、単数又は複数のセキュリティログに含まれる異常情報及び異常位置情報の組み合わせに対応する予測異常情報及び予測異常位置情報の組み合わせを有する攻撃を特定する。組み合わせに対応するとは、組み合わせが一致する、又は類似する組み合わせであることをいう。
 このように、エントリポイント候補で絞り込まれた攻撃・異常関係テーブルを用いれば、セキュリティログとの照合の対象となる予測攻撃情報のコラムの数を削減することができ、攻撃を推定する効率を向上させることができる。
 たとえば、図20に示す例の場合、異常発生時における走行状況がC2であるとき、エントリポイントはEP-1,EP-3,及びEP-5のいずれかである。そこで、エントリポイントがEP-1,EP-3,またはEP-5である攻撃A,B,F,G,K,Lのみを分析の対象とする。このように、異常発生時の走行状況に基づいてエントリポイント候補を推定することで、図24の攻撃・異常関係テーブルの分析対象を当該エントリポイント候補に対応する攻撃に限定することができる。
 なお、攻撃・異常関係テーブルは、エントリポイント候補ごとに作成してもよい。この場合、図25に示すように、エントリポイントがEP-1、EP-3及びEP-5の攻撃・異常関係テーブルを選択して、これらのテーブルの中から予測異常情報の組み合わせの攻撃を特定する。
 なお、走行状況に基づいて推定したエントリポイント候補は、攻撃・異常関係テーブルの照合対象を絞り込むために用いる代わりに、推定された攻撃の検証に用いてもよい。検証は、推定結果検証部320で行う。
 なお、異常情報及び異常位置情報の組み合わせと全く同じ予測異常情報及び予測異常位置の組み合わせが攻撃・異常関係テーブルに存在しない場合、推定部223は、攻撃・異常関係テーブルに含まれる予測異常情報及び予測異常位置の組み合わせの中から、最も近い組み合わせを特定する。そして、最も近い組み合わせを示す攻撃種別を、電子制御システムが受けた攻撃であると推定する。
 なお、最も近い組み合わせが複数(例えば、攻撃A、攻撃B)存在する場合には、推定部223は、電子制御システムが受けた攻撃の種別が攻撃A又は攻撃Bのいずれかであると推定してもよい。
 推定部223はさらに、異常情報及び異常位置情報の組み合わせと予測異常情報及び予測異常位置情報の組み合わせとの差分から、電子制御システムSに将来発生する異常や、将来受ける攻撃を推定してもよい。例えば、異常情報が示す異常の数が、予測異常情報が示す異常の数よりも少ない場合、予測異常情報が示す異常のうち、異常情報が示す異常に含まれていない異常が将来的に発生するおそれがある。そこで、推定部223は、予測異常情報が示す異常と異常情報が示す異常との差分が、電子制御システムに将来発生する異常であると推定する。このような場合、後述する出力部225は、予測異常情報が示す異常と異常情報が示す異常との差分を示す将来異常情報を出力してもよい。
 また、異常情報が示す異常の数が、予測異常情報が示す異常の数よりも少ない場合、異常情報が示す異常が攻撃を受ける前段階で発生する異常であり、将来的に攻撃を受けて更なる異常が発生する可能性がある。そこで、推定部223は、将来発生する可能性のある異常を前提に、電子制御システムSが将来的に受ける可能性がある攻撃を推定する。このような場合、後述する出力部225は、攻撃情報に含まれる攻撃種別が、電子制御システムが将来受ける攻撃であることを示す将来攻撃情報を出力してもよい。
 マッチング度算出部224は、異常情報及び異常位置情報の組み合わせと予測異常情報及び予測異常位置情報の組み合わせとが全く同じではない場合に、これらの組み合わせのマッチング度を算出する。マッチング度は、例えば、異常情報が示す異常の数と、予測異常情報が示す異常の数との差分を、異常情報又は予測異常情報が示す異常の数で除算した数値によって表される。
 出力部225は、推定部223が推定した攻撃を示す“攻撃情報”を、後述する推定結果検証部320に出力する。攻撃情報はさらに、マッチング度算出部224が算出したマッチング度を含んでもよい。
 また、上述したとおり、推定部223が、電子制御システムに将来発生する異常や、電子制御システムSが将来的に受ける可能性がある攻撃を推定した場合には、出力部225は将来攻撃情報又は将来異常情報を含む攻撃情報を出力してもよい。
(5)推定結果検証部320の構成
 図26を参照して、推定結果検証部320を説明する。推定結果検証部320は、攻撃情報取得部321、及び検証部322を備える。
 攻撃情報取得部321は、出力部225から出力された攻撃情報を取得する。
 検証部322は、攻撃情報に含まれる内容を検証する。例えば、検証部322は、攻撃情報に含まれるマッチング度から、攻撃推定部220の推定結果の確度を検証する。例えば、検証部322は、マッチング度が所定のマッチング度よりも低い場合には、攻撃推定部220による推定結果は正しくないと判定する。あるいは、過去又は将来のセキュリティログの推定結果と併せて再度、分析を行うことを攻撃推定部220に指示をしてもよい。
 検証部322はさらに、マッチング度から、攻撃・異常関係テーブルの確度を検証してもよい。例えば、マッチング度が低い推定結果が連続して発生している場合には、攻撃・異常関係テーブルに含まれる予測異常情報と予測異常位置情報との対応付けが正確ではなく、テーブルの再設定や更新が必要であると判定する。
(6)攻撃分析装置11の動作
 次に、図27を参照して、攻撃分析装置12の動作を説明する。なお、攻撃分析装置12の動作は、攻撃分析システム1の動作であるとも観念できる。
 エントリポイント候補生成部120の入力部121は、電子制御システムSで検出された異常を示すセキュリティログ、及び異常が発生したときの車両の走行状況を取得する(S121)。
 エントリポイント候補推定部123は、走行状況・攻撃関係情報保存部122に保存している走行状況・攻撃関係テーブルに基づき、S121で取得した走行状況における攻撃のエントリポイントの候補であるエントリポイント候補を推定する(S122)。
 出力部124は、セキュリティログと、S122で推定されたエントリポイント候補を出力する(S123)。
 攻撃推定部220の入力部221は、S123で出力されたセキュリティログとエントリポイント候補を取得する(S124)。
 推定部223は、エントリポイント候補を予測攻撃情報に含む攻撃・異常関係情報及びセキュリティログに基づき、電子制御システムが受けた攻撃を推定する(S125)。このとき、マッチング度算出部224は、攻撃・異常関係テーブルに保存された予測異常情報及び予測異常位置情報の組み合わせと、セキュリティログに含まれる異常情報及び異常位置情報との組み合わせとに差分がある場合、予測異常情報及び予測異常位置情報と、異常情報及び異常位置情報とのマッチング度を算出する(S126)。
 そして、出力部225は、マッチング度を含め、推定された攻撃を示す攻撃情報を出力する(S127)。
 推定結果検証部320の攻撃情報取得部321は、S127で出力された攻撃情報を取得する(S128)。
 検証部322は、攻撃情報を取得すると、攻撃情報に含まれる攻撃推定結果を検証する(S129)。
(7)小括
 以上、本開示の攻撃分析装置12によれば、電子制御システムが攻撃を受けた場合に、異常発生時における車両の走行状況を用いてエントリポイント候補を推定し、エントリポイント候補に絞って攻撃を推定する。これにより、攻撃の分析を効率化して処理負荷を軽減することが可能になる。
 また、本開示の攻撃分析装置12によれば、予測される異常の内容とエントリポイントが対応付けられた攻撃・異常関係テーブルを用いて攻撃を推定するのであるが、予めエントリポイント候補で絞った攻撃・異常関係テーブルを用いて推定した場合、本来該当しない予測攻撃情報を予め推定対象から外すことができるため、結果として攻撃の推定精度を高めることができる。
 さらに、予測される異常の内容とエントリポイントが対応付けられた攻撃・異常関係テーブルを用いて攻撃を推定するので、攻撃情報に加えエントリポイントの情報を推定結果として出力することも可能となる。
(8)変形例
 実施形態2の変形例は、エントリポイント候補生成部120、及び推定結果検証部320の少なくとも一部が、攻撃推定部220が設けられる装置とは異なる装置に設けられる構成である。本項では、実施形態2との相違点を中心に説明する。なお、エントリポイント候補生成部120、攻撃推定部220、及び推定結果検証部320の各構成や動作は第2の実施形態と同じであるため、説明は省略する。
 図28は、変形例1の攻撃分析装置12を備える攻撃分析システムの一例を示す図である。図28の例では、攻撃分析装置12は攻撃推定部220のみを備え、エントリポイント候補生成部120、及び推定結果検証部320は、検証装置21に設けられる。攻撃分析装置12及び検証装置21を併せて、攻撃分析システム2とする。
 図29は、変形例1の攻撃分析装置12を説明する図である。図29に示すとおり、変形例1では、車両の外部に配置されたサーバ装置が攻撃分析装置12であり、車両には検証装置21が搭載される。
 この場合、攻撃分析装置12の入力部221は、車両に搭載された検証装置21から、電子制御システムSで検出された異常を示すセキュリティログ、及び異常が発生したときの車両の走行状況における攻撃のエントリポイントの候補であるエントリポイント候補を取得する。
 変形例1では、エントリポイント候補生成部120から出力されたエントリポイント候補及びセキュリティログは、無線通信ネットワークを介して攻撃推定部220に送信される。同様に、攻撃推定部220から出力された攻撃情報は、無線通信ネットワークを介して推定結果検証部320に送信される。したがって、図29には図示していないが、攻撃分析装置12及び検証装置21は無線通信部及びアンテナを備えてもよく、あるいは、エントリポイント候補生成部120の出力部124、及び推定結果検証部320の攻撃情報取得部321が、無線通信部としての機能を有していてもよい。
 攻撃分析システムで実行される処理では、電子制御システムSが受けたサイバー攻撃を推定する処理、すなわち、攻撃推定部220における処理が最も負荷が高い。そこで、サーバ装置が攻撃推定部220を有する攻撃分析装置12を備えることにより、車両における負荷を大幅に低減することが可能となる。
 図30は、実施形態2の変形例2を示している。変形例2では、攻撃分析装置12は、攻撃推定部220に加えて、エントリポイント候補生成部120を備えている。この場合、図29に示す構成と同様、攻撃分析装置12はサーバ装置であってもよいが、攻撃分析装置12は車両に搭載される装置であって、検証装置21がサーバ装置として実現されてもよい。この場合、攻撃推定部220による攻撃推定結果の検証がサーバ装置で行われる。サーバ装置では、複数の電子制御システムにおける攻撃の推定結果を検証するため、例えば、攻撃・異常関係テーブルの再設定や更新が必要かどうかを、他の電子制御システムにおける推定結果と比較して判定することが可能となる。
 また、図31は、実施形態2の変形例3を示している。変形例3では、攻撃分析装置12は、攻撃推定部220に加えて、推定結果検証部320を備えている。そして、エントリポイント候補生成部120は、エントリポイント候補生成装置21に設けられる。変形例3では、図29と同様の配置、すなわち処理負荷が大きい攻撃推定部220及び推定結果検証部320を有する攻撃分析装置12はサーバ装置であることが好ましい。
 以上の変形例は、他の実施形態や変形例にも適用可能である。すなわち、図4において、例えば、指標取得部102、シチュエーション情報保存部103、及びシチュエーション推定部104を車両に、ログ取得部101、攻撃・異常関係情報保存部105、及び攻撃推定部106をサーバ装置に設けるようにしてもよい。
(9)本実施形態から把握される発明
 以下、少なくとも本実施形態の開示から把握される発明を列挙する。
(発明1)
 移動体に設けられた電子制御装置システムに対する攻撃を分析する攻撃分析装置であって、
 前記電子制御システムで検出された異常を示すセキュリティログ、及び前記異常が発生したときの前記移動体の走行状況を取得する取得部(121)と、
 予測される攻撃のエントリポイントである予測エントリポイントと、前記予測エントリポイントに対応する予測走行状況との関係を示す走行状況・攻撃関係情報を保存する走行状況・攻撃関係情報保存部(122)と、
 前記走行状況・攻撃関係情報に基づき、前記走行状況における攻撃のエントリポイントの候補であるエントリポイント候補を推定するエントリポイント候補推定部(123)と、
 前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(222)と、
 前記エントリポイント候補を前記予測攻撃情報に含む前記攻撃・異常関係情報及び前記セキュリティログに基づき、前記電子制御システムが受けた攻撃を推定する推定部(223)と、
 推定された攻撃を示す攻撃情報を出力する出力部(225)と、を有する、
 攻撃分析装置(12)。
(発明2)
 前記走行状況は、前記移動体の速度である、
 発明1記載の攻撃分析装置。
(発明3)
 前記走行状況は、前記移動体の位置、前記移動体の周囲の気温、及び時間若しくは時刻からなる群のうち、一または複数を含む、
 発明1記載の攻撃分析装置。
(発明4)
 前記走行状況・攻撃関係情報は、さらに、前記予測エントリポイントの接続先である接続先情報を有する、
 発明1記載の攻撃分析装置。
(発明5)
 当該攻撃分析装置は、前記移動体の外部に設けられている、
 発明1~4いずれかに記載の攻撃分析装置。
(発明6)
 当該攻撃分析装置は、移動体に搭載されている、
 発明1~4いずれかに記載の攻撃分析装置。
(発明7)
 移動体に設けられた電子制御装置システムに対する攻撃を分析する攻撃分析装置であって、
 前記電子制御システムで検出された異常を示すセキュリティログ、及び前記異常が発生したときの前記移動体の走行状況における攻撃のエントリポイントの候補であるエントリポイント候補を取得する取得部(221)と、
 前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の対応関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(222)と、
 前記エントリポイント候補を前記予測攻撃情報に含む前記攻撃・異常関係情報及び前記セキュリティログに基づき、前記電子制御システムが受けた攻撃を推定する推定部(223)と、
 推定された攻撃を示す攻撃情報を出力する出力部(225)と、を有する、
 攻撃分析装置(12)。
(発明8)
 移動体に設けられた電子制御装置システムに対する攻撃を分析する攻撃分析装置で実行される攻撃分析方法であって、
 前記攻撃分析装置は、
  予測される攻撃のエントリポイントである予測エントリポイントと、前記予測エントリポイントに対応する予測走行状況との関係を示す走行状況・攻撃関係情報を保存する走行状況・攻撃関係情報保存部(122)と、
  前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(222)と、を有し、
 当該攻撃分析方法は、
  前記電子制御システムで検出された異常を示すセキュリティログ、及び前記異常が発生したときの前記移動体の走行状況を取得し(S121)、
  前記走行状況・攻撃関係情報に基づき、前記走行状況における攻撃のエントリポイントの候補であるエントリポイント候補を推定し(S122)、
  前記エントリポイント候補を前記予測攻撃情報に含む前記攻撃・異常関係情報及び前記セキュリティログに基づき、前記電子制御システムが受けた攻撃を推定し(S125)、
  推定された攻撃を示す攻撃情報を出力する(S127)、
 攻撃分析方法。
(発明9)
 移動体に設けられた電子制御装置システムに対する攻撃を分析する攻撃分析装置で実行可能な攻撃分析プログラムであって、
 前記攻撃分析装置は、
  予測される攻撃のエントリポイントである予測エントリポイントと、前記予測エントリポイントに対応する予測走行状況との関係を示す走行状況・攻撃関係情報を保存する走行状況・攻撃関係情報保存部(122)と、
  前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(222)と、を有し、
 当該攻撃分析プログラムは、
  前記電子制御システムで検出された異常を示すセキュリティログ、及び前記異常が発生したときの前記移動体の走行状況を取得し(S121)、
  前記走行状況・攻撃関係情報に基づき、前記走行状況における攻撃のエントリポイントの候補であるエントリポイント候補を推定し(S122)、
  前記エントリポイント候補を前記予測攻撃情報に含む前記攻撃・異常関係情報及び前記セキュリティログに基づき、前記電子制御システムが受けた攻撃を推定し(S125)、
  推定された攻撃を示す攻撃情報を出力する(S127)、
 攻撃分析プログラム。
4.実施形態3
 本実施形態の攻撃分析装置を攻撃分析装置13とする。
(1)攻撃分析装置13の構成
 図32は、本実施形態における攻撃分析装置13の構成を示すブロック図である。攻撃分析装置13は、ログ取得部131,誤操作頻度情報取得部132、保存部133、偽陽性ログ判定部134、攻撃・異常関係情報保存部135、攻撃推定部136、出力部138を備える。
 なお、ログ取得部131、誤操作頻度情報取得部132、保存部133、及び偽陽性ログ判定部134で、ログ判定装置23を構成する。ログ判定装置23は攻撃分析装置13の一部として攻撃分析装置13に含まれていてもよいし、実施形態2の図29や図31のように、ログ判定装置23は車両に搭載され、ログ判定装置23以外のブロックを有する攻撃判定装置が車両外部のサーバ装置で実現されていてもよい。
 ログ取得部131(“ログ取得部”、“指標取得部”に相当)は、ECU20に搭載されたセキュリティセンサが生成したセキュリティログ(“セキュリティログ”、“指標”に相当)を取得する。電子制御システムSの構成は図2、セキュリティログの内容は図3でそれぞれ説明した通りである。
 攻撃分析装置13が電子制御システムSに対し図1(c)の配置を採る場合、ログ取得部131は、無線通信方式を用いた通信ネットワークを介してセキュリティログを受信することにより取得する。ログ取得部131は、集約された複数のセキュリティログをまとめて取得してもよく、あるいは、生成されたセキュリティログを順次取得してもよい。ログ取得部131が生成されたセキュリティログを順次取得する場合には、攻撃分析装置13は、ログ取得部131が取得したセキュリティログを一時的に保存するログ保存部(図示せず)をさらに備えていてもよい。
 偽陽性ログ判定部134(“シチュエーション推定部”に相当)は、セキュリティログ(“指標”に相当)が生成された“頻度”に基づいて、ログ取得部131が取得したセキュリティログが示す異常の原因がサイバー攻撃(“シチュエーション”に相当)であるか否かを推定する。セキュリティログが示す異常の原因がサイバー攻撃でない場合は、当該セキュリティログは偽陽性ログであると判定する。ここで、偽陽性ログとは、電子制御システムSが攻撃を受けたことによって発生する異常とは異なる異常を検知して生成されたセキュリティログを指す。
 より具体的には、偽陽性ログ判定部134は、セキュリティログが生成された“頻度”に基づいて、ログ取得部131が取得したセキュリティログが示す異常の原因が車両のユーザの誤操作(“シチュエーション”に相当)であるか否かを推定する。セキュリティログが示す異常の原因が車両のユーザの誤操作である場合は、当該セキュリティログは偽陽性ログであると判定する。
 なお、上述の通り、セキュリティログが示す異常の原因がサイバー攻撃であるか否かの推定結果(具体的には、ユーザの誤操作であるか否かの推定結果)と、セキュリティログが偽陽性ログであるか否かとは、1対1で対応している。以後の説明では、偽陽性ログ判定部134の動作のうち、サイバー攻撃か否かを推定すること(具体的には、ユーザの誤操作であるか否かを推定すること)は記載を省略し、偽陽性ログ判定部134は、偽陽性ログか否かの判定を行うとして記載している。
 ここで、“頻度”とは、例えば、セキュリティログが生成される回数、時間、周期等によって示されるものである。
 図3に示すように、セキュリティログは、イベントの発生時刻を有している。そのため、偽陽性ログ判定部134は、セキュリティログが有するタイムスタンプに基づいて、セキュリティログが生成された頻度を求めることができる。あるいは、ログ取得部131がセキュリティログを受信した時刻でセキュリティログが生成された頻度を求めてもよい。
 偽陽性ログ判定部134における偽陽性ログの判定処理では、保存部133に保存されている情報を用いる。保存部133は、偽陽性ログの判定に用いられる情報を保存する記憶部である。図33は、保存部133に保存されている情報の一例を示す図である。ここには、後述するイベントIDと基準頻度との対応関係を示すテーブルが保存されている。
 保存部133に保存されているイベントIDは、イベントIDのうち、電子制御システムSの“ユーザ”の誤操作によって発生する可能性がある異常に関するイベントの識別情報を示すイベントIDである。
 ここで、“ユーザ”とは、電子制御システムの所有者はもちろん、電子制御システムを一時的に使用する者も含む。
 保存部133に保存されている基準頻度は、セキュリティログが偽陽性ログであるか否かを判定する基準となる頻度である。図33に示す例では、基準頻度として期間と回数が保存されているが、これらに限定されるものではない。
 例えば、電子制御システムSが搭載された車両のユーザがWi-Fi(登録商標)等の接続に必要なパスワードを誤って入力する、あるいは整備工場やディーラの作業者が誤った認証操作を行う、といった誤操作が行われた場合、セキュリティセンサは、これらの誤操作によって発生した異常を検知してセキュリティログを生成する。別の例では、整備工場やディーラの作業者がECU20に搭載されたソフトウェアの更新を行う際に、プログラムの取り違えをする、あるいは全てのソフトウェアの更新が完了する前に作業を終了させる、といった誤操作が行われた場合、セキュリティセンサは、これらの誤操作によって発生した異常を検知してセキュリティログを生成する。このようなユーザの誤操作によって発生しうる異常に関するイベントは限られている。そこで、ユーザの誤操作によって発生しうる異常に関するイベントを示すイベントIDを保存部133に保存しておく。そして、偽陽性ログ判定部134は、ログ取得部131が取得したセキュリティログに含まれるイベントIDが、保存部133に保存されているイベントIDと同じ場合に、セキュリティログが偽陽性ログであるか否かの判定処理を行う。これにより、ユーザの誤操作によって発生する可能性がない異常に関するイベントIDを有するセキュリティログについては、偽陽性ログであるか否かの判定処理が行われないため、ログ判定処理に係る処理量を低減することができる。
 具体的には、偽陽性ログ判定部134は、セキュリティログが生成された頻度が、保存部133に保存されている基準頻度“より”も低い場合に、セキュリティログが示す異常の原因が車両のユーザの誤操作であると推定し、セキュリティログが偽陽性ログであると判定する。
 ここで、“より”とは、比較対象と同じ値を含む場合及び含まない場合の両方が含まれる。
 図33に示す例では、保存部133は、イベントID(A)のセキュリティログの基準頻度として、時間(例えば、10s)及び回数(例えば、3回)を保存している。これは、10sの間に生成されるセキュリティログの回数が3回であることを示している。そこで、偽陽性ログ判定部134は、セキュリティログが生成された頻度が、10s間に3回よりも少ない頻度であるか否かを判定する。
 図34を用いて、セキュリティログが偽陽性ログであるか否かの判定処理を説明する。図34(a)に示す例では、10sの間にセキュリティログが6回生成されており、その頻度は基準頻度よりも高い。そのため、セキュリティログが示す異常の原因がサイバー攻撃であると推定し(つまり、ユーザの誤操作でないと推定し)、図34(a)に示すセキュリティログはいずれも偽陽性ログでないと判定する。これに対し、図34(b)に示す例では、10sの間にセキュリティログが2回生成されており、基準頻度よりも低い。そのため、キュリティログが示す異常の原因がサイバー攻撃でないと推定し(つまり、ユーザの誤操作であると推定し)、図34(b)に示すセキュリティログはいずれも、偽陽性ログであると判定する。
 図34に示す例では、最初のセキュリティログが生成された時刻から10sの間に生成されたセキュリティログの頻度と、基準頻度とを比較している。しかしながら、セキュリティログの頻度は、最初のセキュリティログが生成されてからの頻度に限定されるものではない。例えば、最後のセキュリティログが生成された時刻から遡って10sの間に生成されたセキュリティログの頻度と基準頻度とを比較してもよい。あるいは、それぞれのセキュリティログが生成された時刻から10sの間に生成されたセキュリティログの頻度をそれぞれ算出し、それぞれの頻度と基準頻度とを比較してもよい。
 ユーザが誤操作を繰り返す回数には限りがあるため、ユーザの誤操作によってセキュリティログが生成される頻度はそれほど高くない可能性が高い。これに対し、電子制御システムSが、例えば総当たり攻撃やDoS攻撃を受けた場合、非常に高い頻度でセキュリティログが生成されることが想定される。そこで、基準頻度を設定し、セキュリティログが生成された頻度が基準頻度よりも低い場合には、偽陽性ログ判定部134はユーザの誤操作によって生成されたセキュリティログ、すなわち、偽陽性ログであると判定する。
 本実施形態では、所定の期間内にセキュリティログが生成された回数をセキュリティログが生成された頻度として説明しているが、これらに限定されるものではない。例えば、セキュリティログが生成される周期を頻度として使用してもよい。例えば、ユーザが操作を行う速度には限界があるため、誤操作を繰り返す周期はそれほど短くない可能性が高い。これに対し、電子制御システムSが機械的な処理による総当たり攻撃やDoS攻撃を受けた場合、セキュリティログが生成される周期は極めて短くなる可能性が高い。そこで、セキュリティログが生成される周期を頻度として用いて、セキュリティログが偽陽性ログであるか否かを判定してもよい。
 図33は、イベントIDと基準頻度の対応関係を示すテーブルを例示しているが、イベントID及び基準頻度には、さらにECU-IDが対応付けられて保存されてもよい。例えば、ECU20a及びECU20cが、同じイベントID(A)を有するセキュリティログを生成することがある。ところが、異なるECUにおいて生成されたセキュリティログは、それぞれ異なる異常を検知して生成されるものである。そのため、同じイベントID(A)を有するセキュリティログであっても、一方のセキュリティログはセキュリティセンサが攻撃によって発生した異常を検知して生成され、他方のセキュリティログは誤操作によって発生した異常を検知して生成されたものである可能性がある。そのため、イベントIDと基準頻度に加えて、ECU-IDが対応付けられて保存されてもよい。
 また、ログ取得部131が取得するセキュリティログには、様々なイベントIDを有するセキュリティログが混在している可能性があるが、異なるイベントIDを有するセキュリティログは、それぞれ異なる異常を検知して生成されたログである。そのため、偽陽性ログ判定部134は、共通のイベントIDを有するセキュリティログが生成された頻度が、保存部133に保存されているイベントIDに関連付けられた基準頻度よりも低いか否かを判定することで、セキュリティログが偽陽性ログであるか否かを判定する。また、保存部133にECU-IDが保存されている場合には、イベントIDに加えて、ECU-IDが共通しているセキュリティログが生成された頻度が、保存部133に保存されているイベントID及びECU-IDに関連付けられた基準頻度よりも低いか否かを判定することで、セキュリティログが偽陽性ログであるか否かを判定する。
 偽陽性ログ判定部134は、判定結果を攻撃推定部136に出力する。例えば、偽陽性ログ判定部134が偽陽性ログであると判定したセキュリティログに、当該セキュティログが偽陽性ログであることを示すフラグを偽陽性情報として付与して出力する。偽陽性情報は、例えば、図3に示すセキュリティログのコンテキストデータに格納されることで付与されてもよい。このように、セキュリティログに対して偽陽性情報としてフラグを付与することで、攻撃によって生成されたセキュリティログと、ユーザの誤操作によって生成されたセキュリティログとを容易に判別することが可能となる。
 以下に示す実施形態では、偽陽性ログ判定部134が、偽陽性ログであると判定されたセキュリティログに対して偽陽性情報を付与する場合を説明しているが、偽陽性ログ判定部134が偽陽性ログではないと判定したセキュリティログに対して、偽陽性情報を付与するものであってもよい。この場合の偽陽性情報は、当該情報が付与されたセキュリティログが偽陽性ログではないことを示す情報を示している。
 あるいは、偽陽性ログ判定部134は、偽陽性ログであると判定したセキュリティログの識別情報を攻撃推定部136に出力してもよい。
 以上の偽陽性ログ判定部134の出力によれば、攻撃推定部136で攻撃推定に用いないセキュリティログ(すなわち、偽陽性ログ)を識別することができ、必要性の低い攻撃推定を省略することができる。
 誤操作頻度情報取得部132は、セキュリティセンサがユーザの誤操作によって発生した異常を検知してセキュリティログを生成した場合に、ユーザが誤操作した“頻度”を示す誤操作頻度情報を取得する。この誤操作頻度情報に基づいて、保存部133に保存されている基準頻度が更新される。
 誤操作を行う頻度は、ユーザによって異なる傾向がある。例えば、ユーザaは、1分以内に2、3回の誤操作を行う傾向がある一方、別のユーザbは、1分以内に10回以上の誤操作をすることがある。そのため、ユーザaではセキュリティログが偽陽性ログであると判定される一方、ユーザbではセキュリティログが偽陽性ログであると判定されないことが起こりうる。そこで、ユーザが誤操作をした場合には誤操作頻度情報を取得して、ユーザの誤操作の頻度に基づいて基準頻度を更新することで、ユーザに応じた基準頻度を設定することが望ましい。
 攻撃・異常関係情報保存部135は、サイバー攻撃と電子制御システムSで発生する異常との関係を示す攻撃・異常関係テーブルを保存する。攻撃・異常関係テーブルは、図6で説明した通りであるので、図6及びその説明を引用する。
 攻撃推定部136は、ログ取得部131で取得したセキュリティログ、及び攻撃・異常関係情報保存部135に保存している攻撃・異常関係テーブルに加えて、偽陽性ログ判定部134の判定結果に基づき、電子制御システムSが受けた攻撃を推定する。
 攻撃推定部136が、図35の攻撃・異常関係テーブルを用いる場合を説明する。偽陽性ログ判定部134が、0x02の位置で発生した異常Bを示すセキュリティログがサイバー攻撃を原因とするものではないとの判定結果を出力した場合、攻撃推定部136は、予測異常位置情報が0x02であり、かつ予測異常情報が異常Bである場合のパターンに、例えば0.5の重みづけを乗ずる。そして、この修正後の攻撃・異常関係テーブルを攻撃推定に用いることにより、偽陽性ログが発生している場合の攻撃推定のスコアを偽陽性ログが発生していない場合の攻撃推定のスコアよりも低く評価することができる。これにより、偽陽性ログが発生している場合に、サイバー攻撃の攻撃推定の精度を上げることができる。
 なお、重みづけで乗ずる係数を0とした場合は、偽陽性ログをスコアに反映させないことになる。したがって、セキュリティログが偽陽性ログであることが確実である場合は、係数を0とすることが望ましい。
 重みづけで乗ずる係数は、偽陽性ログ判定部134の判定結果を量的に評価し、評価結果に基づき係数の値を決めるようにしてもよい。例えば、基準頻度を複数準備し、所定の期間内にセキュリティログが生成された頻度を複数の基準頻度との関係で分類し、分類結果に応じて定められた係数を用いるようにしてもよい。
 なお、攻撃推定部136は、攻撃・異常関係テーブルを用いずに、攻撃推定を行わないようにしてもよい。例えば、偽陽性ログ判定部134が、0x02で発生した異常Bを示すセキュリティログがサイバー攻撃を原因とするものではない偽陽性ログであるとの判定結果を出力した場合、攻撃推定部136は、偽陽性ログを用いて攻撃推定を行わないようにしてもよい。
(3)攻撃分析装置13の動作
 図36、図37を参照して、攻撃推定装置13の動作を説明する。
 ログ取得部131は、電子制御システムSを構成する複数のECU20のそれぞれに搭載されたセキュリティセンサが異常を検知した場合に生成するセキュリティログを取得する(S131)。
 偽陽性ログ判定部134は、S131で取得したセキュリティログが偽陽性ログであるか否かを判定する(S132)。具体的には、セキュリティログが生成された頻度に基づいて、セキュリティログが偽陽性ログであるか否かを判定する。S132の具体的なフローは、図37を用いて後述する。
 S132において偽陽性ログであると判定した場合(S133:Y)、偽陽性ログ判定部134は、偽陽性ログであると判定されたセキュリティログに偽陽性情報を付与する(S134)。
 誤操作頻度情報取得部132は、ユーザが誤操作した頻度を示す誤操作頻度情報を取得する(S135)。
 S135で取得した誤操作頻度情報に基づいて、保存部133は基準頻度を更新する(S136)。
 偽陽性判定部134は、偽陽性ログであると判定され、偽陽性情報が付与されたセキュリティログを送信する(S137)。
 攻撃推定部136は、偽陽性情報に基づき攻撃・異常関係テーブルを修正する(S138)。そして、攻撃推定部136は、修正した攻撃・異常関係テーブルを用いて攻撃推定を行い、出力部138は推定された攻撃を示す攻撃情報を出力する(S139)。
 次に、図37を参照して、S132における、セキュリティログが偽陽性ログであるか否かの判定処理について説明する。
 偽陽性ログ判定部134は、セキュリティログが有するイベントIDが、保存部133に保存されているイベントIDと同じであるか否かを判定する(S231)。
 ここで、セキュリティログが有するイベントIDが、保存部133に保存されているイベントIDとは異なる場合(S231:N)、セキュリティログは偽陽性ログではないと判定する(S232)。
 一方、セキュリティログが有するイベントIDが、保存部133に保存されているイベントIDと同じ場合(S231:Y)、偽陽性ログ判定部134はさらに、セキュリティログの頻度が基準頻度よりも低いか否かを判定する(S233)。
 セキュリティログの頻度が基準頻度よりも低い場合(S233:Y)、偽陽性ログ判定部134は、セキュリティログが偽陽性ログであると判定する(S234)。
 これに対し、セキュリティログの頻度が基準頻度よりも高い場合(S233:N)、偽陽性ログ判定部134は、セキュリティログが偽陽性ログではないと判定する(S232)。
 そして、偽陽性ログ判定部134は、判定結果を出力する(S235)。
(4)小括
 以上、本実施形態によれば、ユーザの誤操作によって生成されたセキュリティログを偽陽性ログであると判定することができる。これにより、セキュリティログを用いて攻撃を分析する攻撃分析装置13では、偽陽性ログを除く又は偽陽性ログの評価を下げるとともに、偽陽性ログ以外のセキュリティログを用いて攻撃の分析をすることができるため、攻撃の分析精度を高めることができる。
(5)変形例
 本変形例では、実施形態3とは異なる方法を用いて、セキュリティログが偽陽性ログであるか否かを判定する方法を説明する。本実施形態の攻撃分析装置の構成は実施形態3と同じであるため、図32の構成図を参照して本変形例を説明する。
 本変形例のログ受信部131は、セキュリティセンサが異常を検知した場合に生成するセキュリティログに加えて、電子制御システムSにおいて所定のイベントが成功したことを示すセキュリティログを取得する。以下、異常を検知した場合に生成するセキュリティログと、所定のイベントが成功したことを示すセキュリティログとを区別するために、それぞれ異常セキュリティログ、成功セキュリティログと称する。
 偽陽性ログ判定部134は、実施形態3と同様、保存部133に保存されている情報を用いて偽陽性ログの判定を行う。図38は、本実施形態の保存部133に保存されているテーブルの一例を示している。図38に示す保存部133には、イベントID、基準頻度、及び成功セキュリティログのイベントID(以下、成功イベントID)の対応関係を示すテーブルが保存されている。
 成功イベントIDは、電子制御システムSのユーザによる誤操作の後、ユーザが正しい操作をしたときに成功する可能性があるイベントの識別情報を示すイベントIDである。例えば、電子制御システムSが搭載された車両のユーザがWi-Fi(登録商標)の接続に必要なパスワードを誤って入力する、あるいは整備工場やディーラにおいて作業者が誤った認証操作を行う、といった誤操作が行われた後に、正しいパスワード入力や認証操作が行われることが考えられる。このように、正しいパスワード入力や認証操作が行われた場合、イベントが成功したことを示すセキュリティログが生成される。そこで、ユーザの誤操作の後に発生しうるイベントを示す成功イベントIDを保存部133に保存しておく。そして、偽陽性ログ判定部134は、ログ取得部131が取得した成功セキュリティログに含まれるイベントIDが、保存部133に保存されている成功イベントIDと同じ場合に、成功セキュリティログよりも前に異常セキュリティログが生成された頻度に基づいて、異常セキュリティログが偽陽性ログであるか否かを判定する。
 なお、図38の例では、イベントID(A)及び(C)には成功イベントIDが対応付けられているが、イベントID(B)には成功イベントIDが対応付けられていない。イベントの種別によって、成功イベントのセキュリティログが取得されない場合もあるため、全てのイベントIDに成功イベントIDが対応付けられているものではない。そのため、イベントID(B)のように成功イベントIDが対応付けられていない場合には、実施形態3と同様の方法を用いてセキュリティログが偽陽性ログであるか否かを判定する。
 図39を用いて、本変形例のセキュリティログが偽陽性ログであるか否かの判定処理を説明する。図39(a)に示す例では、イベントID(D)を有する成功セキュリティログが生成された時刻より前の10s間に、イベントID(A)を有する異常セキュリティログが5回生成されており、その頻度は基準頻度よりも高い。そのため、図39(a)に示す異常セキュリティログはいずれも偽陽性ログではないと判定する。これに対し、図39(b)に示す例では、成功セキュリティログが生成された時刻より前の10s間に異常セキュリティログが2回生成されており、基準頻度よりも低い。そのため、図39(b)に示す異常セキュリティログはいずれも、偽陽性ログであると判定する。
 なお、図39(a)に示す例では、異常セキュリティログに加えて、成功セキュリティログも偽陽性ログでないと判定するようにしてもよい。また、図39(b)に示す例では、異常セキュリティログに加えて、成功セキュリティログも偽陽性ログであると判定するようにしてもよい。
 つまり、異常セキュリティログと成功セキュリティログの両方を含むセキュリティログを対象として偽陽性判定を実施するようにしてもよい。
 本変形例の偽陽性ログ判定部134はさらに、異常セキュリティログの頻度が基準頻度よりも低い場合であっても、成功セキュリティログの直前に生成された異常セキュリティログについては、偽陽性ログであると判定しなくともよい。ユーザが操作を行うにはある程度の時間を要する。そのため、異常セキュリティログが生成された直後に成功セキュリティログが生成されている、すなわち、異常が発生してから成功イベントが発生するまでの時間が、ユーザが操作を行うのに要する時間よりも短い時間である場合、ユーザの誤操作によって異常が発生したのではなく、機械処理による攻撃によって異常が発生した可能性が高い。そこで、偽陽性ログ判定部134は、成功セキュリティログが生成された時刻よりも前の所定の期間に生成された異常セキュリティログは、偽陽性ログであると判定しなくともよい。
 例えば、図40に示す例では、成功セキュリティログが生成された時刻より前の10s間に異常セキュリティログは2回生成されており、その頻度は基準頻度よりも低い。ところが、図40の例では、成功セキュリティログが生成された時刻よりも前の所定の期間(図40では、1s)に異常セキュリティログが生成されている。そのため、異常セキュリティログのうちL1のログは偽陽性ログであると判定されるが、L2のログは偽陽性ログであると判定されない。
 本変形例の攻撃分析装置13は、実施形態3の攻撃分析装置13と同様、図36に示す各処理を実行する。しかしながら、本変形例の攻撃分析装置13では、S132における偽陽性ログであるか否かを判定する処理が実施形態3とは異なる。そこで、図41を用いて、本変形例における偽陽性ログであるか否かの判定処理を説明する。なお、図41のうち、図37と共通する処理については、図37と同じ符号を付している。
 偽陽性ログ判定部134は、セキュリティログが有するイベントIDが、保存部133に保存されているイベントIDと同じであるか否かを判定する(S231)。
 ここで、セキュリティログが有するイベントIDが、保存部133に保存されているイベントIDとは異なる場合(S231:N)、セキュリティログは偽陽性ログではないと判定する(S232)。
 一方、セキュリティログが有するイベントIDが、保存部133に保存されているイベントIDと同じ場合(S231:Y)、偽陽性ログ判定部134はさらに、保存部133に、イベントIDに対応付けられた成功イベントIDが保存されているか否かを判定する(S331)。
 保存部133にイベントIDに対応付けられた成功イベントIDが保存されている場合(S331:Y)はさらに、ログ取得部131が当該成功イベントIDを有する成功セキュリティログを取得しているか否かを判定する(S332)。
 ここで、ログ取得部131が成功セキュリティログを取得している場合には、成功セキュリティログより前に生成された異常セキュリティログの頻度が基準頻度よりも低いか否かを判定する(S233)。
 そして、セキュリティログの頻度が基準頻度よりも低い場合(S233:Y)、偽陽性ログ判定部134は、セキュリティログが偽陽性ログであると判定する(S234)。
 また、セキュリティログの頻度が基準頻度よりも高い場合(S233:N)、偽陽性ログ判定部134は、セキュリティログが偽陽性ログはないと判定する(S232)。
 一方、S331において、保存部133にイベントIDに対応付けられた成功イベントIDが保存されていない場合(S331:N)には、実施形態3と同様、異常セキュリティログの頻度が基準頻度より低いか否かを判定する(S233)。
 そして、偽陽性ログ判定部134は、判定結果を出力する(S235)。
 以上、本変形例によれば、イベントが成功したことを示すセキュリティログを用いることにより、ユーザの誤操作によって生成されたセキュリティログをより高い精度で偽陽性ログと判定することができる。
5.本開示から把握される発明
 以上の実施形態(実施例及び変形例を含む)に基づき、以下の発明を把握することができる。
(発明1)
 移動体に搭載された電子制御システム(S)に対する攻撃を分析する攻撃分析装置であって、
 前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得するログ取得部(101)と、
 前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標を取得する指標取得部(102)と、
 前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)と、
 前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記指標に基づき、前記電子制御システムが受けた攻撃を推定する攻撃推定部(106)と、
 推定された前記攻撃を示す攻撃情報を出力する出力部(108)と、を有する、
 攻撃分析装置(10)。
(発明2)
 前記指標に基づき、前記指標に対応する前記移動体のシチュエーションを推定するシチュエーション推定部(104)をさらに有し、
 前記攻撃推定部は、前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記シチュエーションに基づき、前記電子制御システムが受けた攻撃を推定する、
 発明1記載の攻撃分析装置。
(発明3)
 前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連しないと推定される前記電子制御システム内の位置を前記予測異常位置情報又は前記予測攻撃情報として含む部分を攻撃推定に用いない、
 発明1又は発明2記載の攻撃分析装置。
(発明4)
 前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連しないと推定される前記電子制御システム内の異常を前記予測異常情報として含む部分を攻撃推定に用いない、
 発明1~3のいずれかに記載の攻撃分析装置。
(発明5)
 前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連すると推定される前記電子制御システム内の位置を前記予測異常位置情報又は前記予測攻撃情報として含む部分を攻撃推定に用いる、
 発明1又は2記載の攻撃分析装置。
(発明6)
 前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連すると推定される前記電子制御システム内の異常を前記予測異常情報として含む部分を攻撃推定に用いる、
 発明1~2、又は5のいずれかに記載の攻撃分析装置。
(発明7)
 前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連しないと推定される前記電子制御システム内の位置を前記予測異常情報又は前記予測異常位置情報として含む部分に対し重みづけを行った前記攻撃・異常関係情報を攻撃推定に用いる、
 発明1~6のいずれかに記載の攻撃分析装置。
(発明8)
 前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連しないと推定される前記電子制御システム内の異常を前記予測異常情報として含む部分に対し重みづけを行った前記攻撃・異常関係情報を攻撃推定に用いる、
 発明1~7のいずれかに記載の攻撃分析装置。
(発明9)
 前記重みづけ(w)として、0≦w<1の係数を乗ずる、
 発明8記載の攻撃分析装置。
(発明10)
 前記シチュエーション推定部は、前記セキュリティログが示す前記異常の原因がサイバー攻撃でないかを推定し、前記異常の原因がサイバー攻撃でない場合、前記セキュリティログは偽陽性ログであると判定し、
 前記攻撃推定部は、前記偽陽性ログである前記セキュリティログを用いた攻撃推定を行わない、
 発明1~9のいずれかに記載の攻撃分析装置。
(発明11)
 前記指標には前記ログ取得部で取得した前記セキュリティログも含まれる、
 発明1~10のいずれかに記載の攻撃分析装置。
(発明12)
 前記シチュエーション推定部は、前記指標に基づき、前記移動体の動作及び/又は走行の状況である車両シチュエーションを推定し、前記車両シチュエーションから前記電子制御システムを構成する単数又は複数の各電子制御装置の電源状態を推定し、
 前記攻撃推定部は、前記電源状態に基づいて、前記攻撃・異常関係情報のうち前記攻撃と関連しないと推定される前記電子制御システム内の位置を前記予測異常位置情報又は前記予測攻撃情報として含む部分を攻撃推定に用いない、
 発明1~4いずれかに記載の攻撃分析装置。
(発明13)
 前記指標は、前記移動体の速度、モード、乗員数、バッテリ電圧、充電状態、及びシフト位置、の少なくとも1つである、
 発明12記載の攻撃分析装置。
(発明14)
 前記シチュエーション推定部は、前記指標に基づき、攻撃のエントリポイントの候補であるエントリポイント候補を推定し、
 前記攻撃推定部は、前記攻撃・異常関係情報のうち、前記エントリポイント候補を前記予測攻撃情報として含む部分を攻撃推定に用いる、
 発明1~2、又は5~6のいずれかに記載の攻撃分析装置。
(発明15)
 前記指標は、前記移動体の速度である、
 発明14記載の攻撃分析装置。
(発明16)
 前記指標は、前記移動体の位置、前記移動体の周囲の気温、及び時間若しくは時刻、の少なくとも1つである、
 発明14又は15記載の攻撃分析装置。
(発明17)
 前記シチュエーション推定部は、前記指標としての前記セキュリティログが生成された頻度に基づき、前記セキュリティログが示す異常の原因がサイバー攻撃でないかを推定し、前記異常の原因がサイバー攻撃でない場合、前記セキュリティログは偽陽性ログであると判定し、
 前記攻撃推定部は、前記攻撃・異常関係情報のうち前記偽陽性ログである前記セキュリティログが示す前記電子制御システム内の位置における前記セキュリティログが示す異常に対応する前記予測異常情報に対し重みづけ(w)を行った前記攻撃・異常関係情報を攻撃推定に用いる、
 発明1~2、又は7~9のいずれかに記載の攻撃分析装置。
(発明18)
 前記シチュエーション推定部は、前記指標としての前記セキュリティログが生成された頻度に基づき、前記セキュリティログが示す異常の原因がサイバー攻撃であるか否かを推定し、サイバー攻撃でない場合、前記セキュリティログは前記偽陽性ログであると判定し、
 前記攻撃推定部は、前記偽陽性ログである前記セキュリティログを用いた攻撃推定を行わない、
 発明1~2、又は10のいずれかに記載の攻撃分析装置。
(発明19)
 前記シチュエーション推定部は、前記指標としての前記セキュリティログが生成された頻度に基づき、前記セキュリティログが示す異常の原因が前記移動体のユーザの誤操作であるか否かを推定し、ユーザの誤操作である場合、前記セキュリティログは前記偽陽性ログであると判定する、
 発明17又は18記載の攻撃分析装置。
(発明20)
 前記シチュエーション推定部は、前記頻度が基準頻度よりも低い場合、前記セキュリティログが示す異常の原因が前記移動体のユーザの誤操作であると推定する、
 発明19記載の攻撃分析装置。
(発明21)
 移動体に搭載された電子制御システム(S)に対する攻撃を分析する攻撃分析装置であって、
 前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得するログ取得部(101)と、
 前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標に基づき、前記指標から推定した前記移動体のシチュエーションを取得するシチュエーション取得部(106)と、
 前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)と、
 前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記シチュエーションに基づき、前記電子制御システムが受けた攻撃を推定する攻撃推定部(106)と、
 推定された前記攻撃を示す攻撃情報を出力する出力部(108)と、を有する、
 攻撃分析装置(10)。
(発明22)
 当該攻撃分析装置は、前記移動体の外部に設けられている、
 発明1~21のいずれかに記載の攻撃分析装置。
(発明23)
 当該攻撃分析装置は、移動体に搭載されている、
 発明1~21のいずれかに記載の攻撃分析装置。
(発明24)
 移動体に搭載された電子制御システム(S)に対する攻撃を分析する攻撃分析装置で実行される攻撃分析方法であって、
 前記攻撃分析装置は、
  前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)を有し、
 前記攻撃分析方法は、
 前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得し(S101)、
  前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標を取得し(S102)、
  前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記指標に基づき、前記電子制御システムが受けた攻撃を推定し(S104)、
  推定された前記攻撃を示す攻撃情報を出力する(S105)、
 攻撃分析方法。
(発明25)
 移動体に搭載された電子制御システム(S)に対する攻撃を分析する攻撃分析装置で実行可能な攻撃分析プログラムであって、
 前記攻撃分析装置は、
  前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)を有し、
 前記攻撃分析プログラムは、
 前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得し(S101)、
  前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標を取得し(S102)、
  前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記指標に基づき、前記電子制御システムが受けた攻撃を推定し(S104)、
  推定された前記攻撃を示す攻撃情報を出力する(S105)、
 攻撃分析プログラム。
6.総括
 以上、本開示の各実施形態における攻撃分析装置等の特徴について説明した。
 各実施形態で使用した用語は例示であるので、同義の用語、あるいは同義の機能を含む用語に置き換えてもよい。
 実施形態の説明に用いたブロック図は、装置の構成を機能毎に分類及び整理したものである。それぞれの機能を示すブロックは、ハードウェア又はソフトウェアの任意の組み合わせで実現される。また、機能を示したものであることから、かかるブロック図は方法の発明、及び当該方法を実現するプログラムの発明の開示としても把握できるものである。
 各実施形態に記載した処理、フロー、及び方法として把握できる機能ブロック、については、一のステップでその前段の他のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えてもよい。
 各実施形態、及び請求の範囲で使用する、第1、第2、乃至、第N(Nは整数)、の用語は、同種の2以上の構成や方法を区別するために使用しており、順序や優劣を限定するものではない。
 各実施形態は、車両に搭載される電子制御システムに対するサイバー攻撃を分析するための攻撃分析装置を前提としているが、本開示は、請求の範囲で特に限定する場合を除き、車両用以外の専用又は汎用の装置も含むものである。
 また、本開示の攻撃分析装置の形態の例として、以下のものが挙げられる。
 部品の形態として、半導体素子、電子回路、モジュール、マイクロコンピュータが挙げられる。
 半完成品の形態として、電子制御装置(ECU(Electric Control Unit))、システムボードが挙げられる。
 完成品の形態として、携帯電話、スマートフォン、タブレット、パーソナルコンピュータ(PC)、ワークステーション、サーバが挙げられる。
 その他、通信機能を有するデバイス等を含み、例えばビデオカメラ、スチルカメラ、カーナビゲーションシステムが挙げられる。
 また攻撃分析装置に、アンテナや通信用インターフェースなど、必要な機能を追加してもよい。
 本開示の攻撃分析装置は、特にサーバ側で用いられることにより、各種サービスの提供を目的とするために用いられることが想定される。かかるサービスの提供に伴い、本開示の攻撃分析装置が使用され、本開示の方法が使用され、又は/及び本開示のプログラムが実行されることになる。
 加えて、本開示は、各実施形態で説明した構成及び機能を有する専用のハードウェアで実現できるだけでなく、メモリやハードディスク等の記録媒体に記録した本開示を実現するためのプログラム、及びこれを実行可能な専用又は汎用CPU及びメモリ等を有する汎用のハードウェアとの組み合わせとしても実現できる。
 専用や汎用のハードウェアの非遷移的実体的記録媒体(例えば、外部記憶装置(例えば、ハードディスク、USBメモリ、CD/BD等)、又は内部記憶装置(例えば、RAM、ROM等))に格納されるプログラムは、記録媒体を介して、あるいは記録媒体を介さずにサーバから通信回線を経由して、専用又は汎用のハードウェアに提供することもできる。これにより、プログラムのアップグレードを通じて常に最新の機能を提供することができる。
 本開示の攻撃分析装置は、主として自動車に搭載された電子制御システムが受けた攻撃を分析する装置を対象としているが、自動車に搭載されない通常のシステムに対する攻撃を分析する装置を対象としてもよい。

Claims (25)

  1.  移動体に搭載された電子制御システム(S)に対する攻撃を分析する攻撃分析装置であって、
     前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得するログ取得部(101)と、
     前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標を取得する指標取得部(102)と、
     前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)と、
     前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記指標に基づき、前記電子制御システムが受けた攻撃を推定する攻撃推定部(106)と、
     推定された前記攻撃を示す攻撃情報を出力する出力部(108)と、を有する、
     攻撃分析装置(10)。
  2.  前記指標に基づき、前記指標に対応する前記移動体のシチュエーションを推定するシチュエーション推定部(104)をさらに有し、
     前記攻撃推定部は、前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記シチュエーションに基づき、前記電子制御システムが受けた攻撃を推定する、
     請求項1記載の攻撃分析装置。
  3.  前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連しないと推定される前記電子制御システム内の位置を前記予測異常位置情報又は前記予測攻撃情報として含む部分を攻撃推定に用いない、
     請求項1又は2記載の攻撃分析装置。
  4.  前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連しないと推定される前記電子制御システム内の異常を前記予測異常情報として含む部分を攻撃推定に用いない、
     請求項1~3のいずれかに記載の攻撃分析装置。
  5.  前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連すると推定される前記電子制御システム内の位置を前記予測異常位置情報又は前記予測攻撃情報として含む部分を攻撃推定に用いる、
     請求項1又は2記載の攻撃分析装置。
  6.  前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連すると推定される前記電子制御システム内の異常を前記予測異常情報として含む部分を攻撃推定に用いる、
     請求項1~2、又は5のいずれかに記載の攻撃分析装置。
  7.  前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連しないと推定される前記電子制御システム内の位置を前記予測異常情報又は前記予測異常位置情報として含む部分に対し重みづけを行った前記攻撃・異常関係情報を攻撃推定に用いる、
     請求項1~6のいずれかに記載の攻撃分析装置。
  8.  前記攻撃推定部は、前記攻撃・異常関係情報のうち前記シチュエーションにおいて前記攻撃と関連しないと推定される前記電子制御システム内の異常を前記予測異常情報として含む部分に対し重みづけを行った前記攻撃・異常関係情報を攻撃推定に用いる、
     請求項1~7のいずれかに記載の攻撃分析装置。
  9.  前記重みづけ(w)として、0≦w<1の係数を乗ずる、
     請求項8記載の攻撃分析装置。
  10.  前記シチュエーション推定部は、前記セキュリティログが示す前記異常の原因がサイバー攻撃でないかを推定し、前記異常の原因がサイバー攻撃でない場合、前記セキュリティログは偽陽性ログであると判定し、
     前記攻撃推定部は、前記偽陽性ログである前記セキュリティログを用いた攻撃推定を行わない、
     請求項1~9のいずれかに記載の攻撃分析装置。
  11.  前記指標には前記ログ取得部で取得した前記セキュリティログも含まれる、
     請求項1~10のいずれかに記載の攻撃分析装置。
  12.  前記シチュエーション推定部は、前記指標に基づき、前記移動体の動作及び/又は走行の状況である車両シチュエーションを推定し、前記車両シチュエーションから前記電子制御システムを構成する単数又は複数の各電子制御装置の電源状態を推定し、
     前記攻撃推定部は、前記電源状態に基づいて、前記攻撃・異常関係情報のうち前記攻撃と関連しないと推定される前記電子制御システム内の位置を前記予測異常位置情報又は前記予測攻撃情報として含む部分を攻撃推定に用いない、
     請求項1~4のいずれかに記載の攻撃分析装置。
  13.  前記指標は、前記移動体の速度、モード、乗員数、バッテリ電圧、充電状態、及びシフト位置、の少なくとも1つである、
     請求項12記載の攻撃分析装置。
  14.  前記シチュエーション推定部は、前記指標に基づき、攻撃のエントリポイントの候補であるエントリポイント候補を推定し、
     前記攻撃推定部は、前記攻撃・異常関係情報のうち、前記エントリポイント候補を前記予測攻撃情報として含む部分を攻撃推定に用いる、
     請求項1~2、又は5~6のいずれかに記載の攻撃分析装置。
  15.  前記指標は、前記移動体の速度である、
     請求項14記載の攻撃分析装置。
  16.  前記指標は、前記移動体の位置、前記移動体の周囲の気温、及び時間若しくは時刻、の少なくとも1つである、
     請求項14又は15記載の攻撃分析装置。
  17.  前記シチュエーション推定部は、前記指標としての前記セキュリティログが生成された頻度に基づき、前記セキュリティログが示す異常の原因がサイバー攻撃でないかを推定し、前記異常の原因がサイバー攻撃でない場合、前記セキュリティログは偽陽性ログであると判定し、
     前記攻撃推定部は、前記攻撃・異常関係情報のうち前記偽陽性ログである前記セキュリティログが示す前記電子制御システム内の位置における前記セキュリティログが示す異常に対応する前記予測異常情報に対し重みづけ(w)を行った前記攻撃・異常関係情報を攻撃推定に用いる、
     請求項1~2、又は7~9のいずれかに記載の攻撃分析装置。
  18.  前記シチュエーション推定部は、前記指標としての前記セキュリティログが生成された頻度に基づき、前記セキュリティログが示す異常の原因がサイバー攻撃であるか否かを推定し、サイバー攻撃でない場合、前記セキュリティログは前記偽陽性ログであると判定し、
     前記攻撃推定部は、前記偽陽性ログである前記セキュリティログを用いた攻撃推定を行わない、
     請求項1~2、又は10のいずれかに記載の攻撃分析装置。
  19.  前記シチュエーション推定部は、前記指標としての前記セキュリティログが生成された頻度に基づき、前記セキュリティログが示す異常の原因が前記移動体のユーザの誤操作であるか否かを推定し、ユーザの誤操作である場合、前記セキュリティログは前記偽陽性ログであると判定する、
     請求項17又は18記載の攻撃分析装置。
  20.  前記シチュエーション推定部は、前記頻度が基準頻度よりも低い場合、前記セキュリティログが示す異常の原因が前記移動体のユーザの誤操作であると推定する、
     請求項19記載の攻撃分析装置。
  21.  移動体に搭載された電子制御システム(S)に対する攻撃を分析する攻撃分析装置であって、
     前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得するログ取得部(101)と、
     前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標に基づき、前記指標から推定した前記移動体のシチュエーションを取得するシチュエーション取得部(106)と、
     前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)と、
     前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記シチュエーションに基づき、前記電子制御システムが受けた攻撃を推定する攻撃推定部(106)と、
     推定された前記攻撃を示す攻撃情報を出力する出力部(108)と、を有する、
     攻撃分析装置(10)。
  22.  当該攻撃分析装置は、前記移動体の外部に設けられている、
     請求項1~21のいずれかに記載の攻撃分析装置。
  23.  当該攻撃分析装置は、移動体に搭載されている、
     請求項1~21のいずれかに記載の攻撃分析装置。
  24.  移動体に搭載された電子制御システム(S)に対する攻撃を分析する攻撃分析装置で実行される攻撃分析方法であって、
     前記攻撃分析装置は、
      前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)を有し、
     前記攻撃分析方法は、
     前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得し(S101)、
      前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標を取得し(S102)、
      前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記指標に基づき、前記電子制御システムが受けた攻撃を推定し(S104)、
      推定された前記攻撃を示す攻撃情報を出力する(S105)、
     攻撃分析方法。
  25.  移動体に搭載された電子制御システム(S)に対する攻撃を分析する攻撃分析装置で実行可能な攻撃分析プログラムであって、
     前記攻撃分析装置は、
      前記電子制御システムが受ける可能性のある攻撃を示す予測攻撃情報と、前記攻撃を受けた場合に発生することが予測される異常を示す予測異常情報と、前記予測される異常が発生する前記電子制御システム内の位置を示す予測異常位置情報と、の関係を示す攻撃・異常関係情報を保存する攻撃・異常関係情報保存部(105)を有し、
     前記攻撃分析プログラムは、
     前記電子制御システムで検出された異常及び前記異常が検出された前記電子制御システム内の位置を示すセキュリティログを取得し(S101)、
      前記異常が発生したときの前記移動体の内部状態又は/及び外部状態を示す指標を取得し(S102)、
      前記セキュリティログ、及び前記攻撃・異常関係情報に加えて、前記指標に基づき、前記電子制御システムが受けた攻撃を推定し(S104)、
      推定された前記攻撃を示す攻撃情報を出力する(S105)、
     攻撃分析プログラム。
     
     
     
     
PCT/JP2023/034149 2022-09-30 2023-09-20 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム WO2024070859A1 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2022-157432 2022-09-30
JP2022157432 2022-09-30
JP2022158597 2022-09-30
JP2022-158597 2022-09-30
JP2023-124179 2023-07-31
JP2023124179A JP2024052532A (ja) 2022-09-30 2023-07-31 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム

Publications (1)

Publication Number Publication Date
WO2024070859A1 true WO2024070859A1 (ja) 2024-04-04

Family

ID=90477653

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/034149 WO2024070859A1 (ja) 2022-09-30 2023-09-20 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム

Country Status (1)

Country Link
WO (1) WO2024070859A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020153122A1 (ja) * 2019-01-21 2020-07-30 エヌ・ティ・ティ・コミュニケーションズ株式会社 車両セキュリティ監視装置、方法及びプログラム
JP2021140460A (ja) * 2020-03-05 2021-09-16 株式会社デンソー セキュリティ管理装置
WO2022107378A1 (ja) * 2020-11-20 2022-05-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 攻撃解析装置、攻撃解析方法、および、プログラム
JP2022089097A (ja) * 2020-12-03 2022-06-15 フォルシアクラリオン・エレクトロニクス株式会社 車載セキュリティ装置、車両セキュリティシステム、および車両管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020153122A1 (ja) * 2019-01-21 2020-07-30 エヌ・ティ・ティ・コミュニケーションズ株式会社 車両セキュリティ監視装置、方法及びプログラム
JP2021140460A (ja) * 2020-03-05 2021-09-16 株式会社デンソー セキュリティ管理装置
WO2022107378A1 (ja) * 2020-11-20 2022-05-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 攻撃解析装置、攻撃解析方法、および、プログラム
JP2022089097A (ja) * 2020-12-03 2022-06-15 フォルシアクラリオン・エレクトロニクス株式会社 車載セキュリティ装置、車両セキュリティシステム、および車両管理方法

Similar Documents

Publication Publication Date Title
CN111881520B (zh) 一种自动驾驶测试的异常检测方法、装置、计算机设备及存储介质
US10798114B2 (en) System and method for consistency based anomaly detection in an in-vehicle communication network
CN111976727B (zh) 一种自动驾驶等级调整方法及相关设备
WO2020153122A1 (ja) 車両セキュリティ監視装置、方法及びプログラム
US8903593B1 (en) System and method for analyzing vehicular behavior in a network environment
KR102406182B1 (ko) 빅데이터 기반의 차량 예측 제어 시스템 및 방법
US20160381068A1 (en) System and method for time based anomaly detection in an in-vehicle communication network
US20160103980A1 (en) Vehicle middleware
CN110494330A (zh) 车辆监视装置、不正当检测服务器、以及控制方法
US20190108160A1 (en) Vehicle Control System Verification Device, Vehicle Control System, and Vehicle Control System Verification Method
US11295560B2 (en) Cloud-managed validation and execution for diagnostic requests
CN110047286A (zh) 一种车辆事故分析方法及装置
US20200273262A1 (en) On-board diagnostic monitor planning and execution
US11417155B2 (en) On-board data request approval management
US10510194B2 (en) Cloud-based connectivity energy budget manager
US10996255B2 (en) Voltage-characteristic-based vehicle identification number
CN114379570A (zh) 车辆数据操纵和机械故障的自动检测
WO2024070859A1 (ja) 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
US20230007033A1 (en) Attack analyzer, attack analysis method and attack analysis program
JP2024052532A (ja) 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
US20230007034A1 (en) Attack analyzer, attack analysis method and attack analysis program
JP2018081357A (ja) 運転支援装置
US20220019662A1 (en) Log management device and center device
KR102242227B1 (ko) 차량 게이트웨이를 이용한 차량 진단 정보 제공 시스템 및 방법
JP7318710B2 (ja) セキュリティ装置、インシデント対応処理方法、プログラム、及び記憶媒体

Legal Events

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

Ref document number: 23872086

Country of ref document: EP

Kind code of ref document: A1