WO2024071120A1 - 情報処理装置、情報処理システム、情報処理プログラム、情報処理方法 - Google Patents

情報処理装置、情報処理システム、情報処理プログラム、情報処理方法 Download PDF

Info

Publication number
WO2024071120A1
WO2024071120A1 PCT/JP2023/034946 JP2023034946W WO2024071120A1 WO 2024071120 A1 WO2024071120 A1 WO 2024071120A1 JP 2023034946 W JP2023034946 W JP 2023034946W WO 2024071120 A1 WO2024071120 A1 WO 2024071120A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
vehicle
verification
integrity
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2023/034946
Other languages
English (en)
French (fr)
Inventor
知範 幾世
万寿三 江川
泰司 安部
浩之 宇都宮
啓悟 長柄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to EP23872343.1A priority Critical patent/EP4597345A4/en
Priority to CN202380069358.7A priority patent/CN119968631A/zh
Publication of WO2024071120A1 publication Critical patent/WO2024071120A1/ja
Priority to US19/088,590 priority patent/US20250225237A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Definitions

  • This disclosure relates to a technology that estimates attacks against a vehicle based on security logs that indicate abnormalities that have occurred in the vehicle.
  • Patent Document 1 describes a technology that uses a security log that indicates an abnormality that has occurred in a vehicle to estimate the attack against the vehicle that caused the abnormality.
  • security logs may not only indicate abnormalities occurring in a vehicle due to the vehicle being attacked and compromised, but may also indicate abnormalities occurring in a vehicle due to causes other than the vehicle being attacked and compromised.
  • One aspect of the present disclosure is to provide technology that can estimate attacks against vehicles with high accuracy.
  • An information processing device includes a log acquisition unit, a log analysis unit, a verification instruction unit, an intrusion determination unit, and an attack estimation unit.
  • the log acquisition unit acquires a security log indicating an abnormality that has occurred in the vehicle.
  • the log analysis unit determines whether or not to instruct the vehicle's verification unit (18, S17-S19) to verify the integrity of the on-board unit based on the security log acquired by the log acquisition unit.
  • the verification instruction unit instructs the verification unit to verify the integrity.
  • the infringement determination unit determines whether or not the vehicle-mounted unit has been infringed based on the results of the integrity verification by the verification unit.
  • the attack estimation unit makes an estimation regarding the attack that caused the infringement based on the infringement determination result by the infringement determination unit and the security log.
  • An information processing program causes a computer to function as the information processing device described above.
  • Another aspect of the present disclosure is an information processing method executed by the information processing device described above.
  • An information processing system includes an in-vehicle information processing device and an external information processing device that communicates with the in-vehicle information processing device.
  • the in-vehicle information processing device includes a monitoring unit and a verification unit (18, S17 to S19).
  • the monitoring unit generates a security log that indicates an abnormality that occurs in the vehicle.
  • the verification unit verifies the integrity of the in-vehicle unit.
  • the information processing device outside the vehicle includes a log acquisition unit, a log analysis unit, a verification instruction unit, an intrusion determination unit, and an attack estimation unit.
  • the log acquisition unit acquires a security log from the vehicle-mounted information processing device.
  • the log analysis unit determines whether to instruct the vehicle's verification unit to verify the integrity of the vehicle-mounted unit based on the security log acquired by the log acquisition unit.
  • the verification instruction unit instructs the verification unit to verify the integrity.
  • the infringement determination unit determines whether or not the vehicle-mounted unit has been infringed based on the results of the integrity verification by the verification unit.
  • the attack estimation unit makes an estimation regarding the attack that caused the infringement based on the infringement determination result by the infringement determination unit and the security log.
  • Another aspect of the present disclosure is an information processing method executed by the information processing system described above.
  • FIG. 1 is a block diagram showing a configuration of an information processing system.
  • FIG. 1 is a block diagram showing a multi-layered defense configuration for a vehicle.
  • FIG. 2 is a block diagram showing the configuration of an in-vehicle information processing device.
  • FIG. 2 is a block diagram showing the configuration of an information processing device outside the vehicle.
  • FIG. 4 is an explanatory diagram showing the configuration of a security log.
  • FIG. 4 is a block diagram showing the configuration of an analysis unit of an information processing device outside the vehicle.
  • FIG. 13 is an explanatory diagram showing the configuration of the abnormal attack table before modification.
  • FIG. FIG. 13 is an explanatory diagram showing the configuration of the abnormal attack table after the change.
  • an information processing system 2 of the present embodiment includes ECUs 10, 20, 30, 40, 50, and 60 that are information processing devices mounted on a vehicle 4, and a server 100 that is an information processing device outside the vehicle.
  • ECU stands for Electronic Control Unit. At least one of the ECUs 10, 20, 30, 40, 50, and 60, the vehicle 4, and the server 100 communicate with each other via, for example, a wireless communication network 6.
  • Vehicle 4 employs a multi-layer defense system with different security levels to enhance security against external malicious attacks such as cyber attacks.
  • vehicle 4 has three defense layers: a first layer, a second layer, and a third layer.
  • ECU#1, ECU#2, and DLC belong to the first layer
  • ECU#3 belongs to the second layer
  • ECU#4 and ECU#5 belong to the third layer.
  • DLC stands for Data Link Connector.
  • ECUs can communicate with each other via a CAN or Ethernet network.
  • CAN stands for Controller Area Network.
  • CAN and Ethernet are registered trademarks.
  • ECU#1 and ECU#2 belonging to the first layer function as, for example, a TCU and IVI that have communication functions with the outside of the vehicle 4.
  • TCU stands for Telematics Control Unit
  • IVI stands for In Vehicle Infotainment.
  • ECU#1 and ECU#2 are equipped with a security function that monitors data entering the vehicle from outside the vehicle.
  • OBD is an abbreviation for On Board Diagnostics.
  • ECU#3 belonging to the second layer is, for example, a gateway ECU equipped with a security function that monitors data communicated between the network of ECU#1 and ECU#2 in the first layer and the network of ECU#4 and ECU#5 in the third layer.
  • ECU#3 implements security measures different from those of ECU#1 and ECU#2 described above.
  • the area monitored by ECU#3 has a different security level from the first layer, which is the area protected by ECU#1 and ECU#2.
  • ECU#4 and ECU#5 belonging to the third layer are, for example, vehicle control ECUs that control the movement of vehicle 4. Only data that has passed the security function of ECU#3 belonging to the second layer is communicated to ECU#4 and ECU#5.
  • the third layer is an area that has a different security level from the second layer.
  • FIG. 3 shows an example of the configuration of ECUs 10, 20, 30, 40, 50, and 60 mounted on vehicle 4.
  • the configuration of the security functions may differ depending on ECUs 10, 20, 30, 40, 50, and 60.
  • ECUs 10, 20, 30, 40, 50, and 60 are equipped with microcomputers having, for example, a CPU, ROM, RAM, flash memory, and the like (not shown).
  • the CPU of ECUs 10, 20, 30, 40, 50, and 60 executes a program stored in the ROM or flash memory, thereby performing information processing by the monitoring unit 12 and the verification unit 18 (described later).
  • the monitoring unit 12 has security sensors that detect abnormalities in the on-board units such as the ECUs 10, 20, 30, 40, 50, and 60 and the network, and monitors whether an abnormality has occurred in the on-board units. When the monitoring unit 12 detects an abnormality in the on-board units, it generates a security log.
  • the monitoring unit 12 has security sensors such as a firewall, HIDS, an IDS for detecting anomalies in networks such as CAN and Ethernet, and an Auth function.
  • security sensors such as a firewall, HIDS, an IDS for detecting anomalies in networks such as CAN and Ethernet, and an Auth function.
  • HIDS stands for Host Based Intrusion Detection System
  • IDS stands for Intrusion Detection System
  • Auth stands for Authentication.
  • the analysis unit 14 analyzes whether or not the security log generated by the monitoring unit 12 may have been generated as a result of an attack on the vehicle 4.
  • the analysis unit 14 determines that this may be due to an attack on the vehicle 4. In this case, the analysis unit 14 transmits the security log from the communication unit 16 to the server 100.
  • the analysis unit 14 determines that there is no possibility that an attack on the vehicle 4 has been the cause. In this case, the analysis unit 14 does not transmit the security log from the communication unit 16 to the server 100.
  • the communication unit 16 communicates with the server 100 via the wireless communication network 6.
  • the verification unit 18 is instructed by the server 100 to verify the integrity of its own ECU or other ECUs or in-vehicle units such as VMs or software running on the ECUs, it verifies the in-vehicle units.
  • VM is an abbreviation for Virtual Machine.
  • the verification unit 18 is protected from being compromised by attacks by security functions such as hardware.
  • the server 100 includes a communication unit 110, a log acquisition unit 112, a security log DB 114, an analysis unit 120, a verification instruction unit 140, and a reference value DB 142.
  • the analysis unit 120 of the server 100 includes a log analysis unit 122, an infringement determination unit 124, an attack estimation unit 126, an output unit 128, and an abnormal attack DB 130.
  • the server 100 is equipped with a computer having, for example, a CPU, ROM, RAM, flash memory, etc. (not shown).
  • the CPU of the server 100 executes a program stored in the storage device, and information processing is performed by the log acquisition unit 112, the log analysis unit 122, the intrusion determination unit 124, the attack estimation unit 126, and the verification instruction unit 140.
  • the communication unit 110 communicates with the vehicle 4 via the wireless communication network 6.
  • the log acquisition unit 112 acquires the security log that the communication unit 110 receives from the vehicle 4 and stores it in the security log DB 114.
  • the security log acquired by the log acquisition unit 112 is composed of information such as the ID of the vehicle 4, the time when the abnormality was detected, the location in the vehicle 4 where the abnormality was detected, and the sensor ID that detected the abnormality. Note that the security log may also include information other than these.
  • the log analysis unit 122 determines whether to instruct the verification unit 18 of the vehicle 4 to verify the integrity of the vehicle-mounted unit based on the security log acquired by the log acquisition unit 112 and stored in the security log DB 114.
  • the log analysis unit 122 determines to instruct the verification unit 18 of the vehicle 4 to verify the integrity of the on-board unit.
  • the security log was generated by the detection function of a security sensor to detect a breach of vehicle 4 due to a cyber attack.
  • the infringement determination unit 124 determines whether the on-board unit has been infringed based on the result of the determination made by the verification instruction unit 140 in response to the result of the integrity verification made by the verification unit 18 and obtained from the vehicle 4. The determination made by the verification instruction unit 140 in response to the result of the integrity verification will be described later.
  • the attack estimation unit 126 estimates the attack that caused the intrusion based on the intrusion determination result by the intrusion determination unit 124, the security log, and the abnormal attack table of the abnormal attack DB 130.
  • the output unit 128 outputs the estimation result by the attack estimation unit 126 to a DB or the like (not shown).
  • the abnormal attack DB 130 has, for example, the structure of the abnormal attack table shown in FIG. 7.
  • the abnormal attack DB 130 represents the relationship between the ECUs belonging to each layer of the defense in depth, the type of abnormality that occurs in each ECU, the attack that causes the abnormality that occurs in each ECU, the location of the attack's starting point, the location of the target that is attacked from the attack's starting point, and the evaluation value.
  • the location of the attack's starting point and the location of the target of the attack show the path of the attack.
  • the evaluation values "1" and “0” are preset values based on the system configuration of vehicle 4, the attacks that are expected to be made against vehicle 4, and the abnormalities that are expected to occur as a result of the attacks.
  • An evaluation value of "1” indicates that there is a possibility that the corresponding abnormality will occur if attacked.
  • An evaluation value of "0” indicates that the corresponding abnormality will not occur in the expected attacks.
  • the abnormalities are classified according to the type of abnormality that occurs in the ECU.
  • the abnormalities may be classified according to the type of abnormality that occurs in each VM.
  • the abnormalities may be classified according to the type of abnormality that occurs in each software program.
  • the verification instruction unit 140 like the verification unit 18 of the vehicle 4, is protected by security features such as hardware to prevent the verification instruction unit 140 itself from being compromised by attacks.
  • the verification instruction unit 140 instructs the vehicle 4 to verify the integrity of the target on-board unit.
  • the verification instruction unit 140 instructs the vehicle 4 to verify the integrity of the on-board unit in one of the following patterns (1) to (4).
  • An on-board unit that is physically or logically related to the on-board unit in which the abnormality was detected refers to, for example, an on-board unit that is connected to the on-board unit in which the abnormality was detected via a network, or that performs processing based on the processing results of the on-board unit in which the abnormality was detected.
  • Vehicle units other than the vehicle unit in which the abnormality was detected For example, if an abnormality is detected in a security sensor that is reliable for detecting abnormalities, the integrity of vehicle units other than the vehicle unit in which the relevant security sensor detected the abnormality is verified.
  • the verification instruction unit 140 also instructs the vehicle 4 to verify the integrity of the on-board unit, for example, for items (1) and (2) described below.
  • the specified location of the vehicle-mounted unit is one of the following (1a) to (1d).
  • verification of program code may be performed starting from program code that is likely to be taken control of if attacked.
  • the verification instruction unit 140 also determines the order of the on-board units for which the verification unit 18 of the vehicle 4 is to be instructed to verify the integrity, for example, using one of the following patterns (1) to (3).
  • the system first instructs the verification of the integrity of on-board units that belong to shallower layers. For example, if an abnormality is detected in an on-board unit in the second layer, the system first instructs the verification of the integrity of on-board units that belong to the first layer, which is shallower than the second layer.
  • the system first instructs to verify the integrity of on-board units that belong to deeper layers. For example, if an abnormality is detected in an on-board unit in the first layer, the system first instructs to verify the integrity of on-board units that belong to the second layer, which is deeper than the first layer.
  • the verification instruction unit 140 also compares the value of the integrity verification result performed by the verification unit 18 with the normal value of the integrity verification result stored in the reference value DB 142 to determine whether the integrity of the vehicle-mounted unit is maintained.
  • the verification instruction unit 140 determines that the integrity of the on-board unit is maintained. In contrast, if the value of the result of the integrity verification performed by the verification unit 18 does not match the normal value stored in the reference value DB 142, the verification instruction unit 140 determines that the integrity of the on-board unit is impaired.
  • the monitoring unit 12 of the vehicle 4 monitors whether any abnormalities have occurred in the ECU itself and the network to which the ECU is connected.
  • the monitoring unit 12 detects an abnormality in the on-board unit, it transmits a security log to the analysis unit 14 of the vehicle 4, the security log being composed of the vehicle ID for identifying the vehicle 4 itself, the time when the abnormality was detected, the location where the abnormality was detected, and the sensor ID of the security sensor that detected the abnormality.
  • the analysis unit 14 analyzes the security log received from the monitoring unit 12 in S5 and S6 as described above, and determines whether the log should be sent to the server 100 or not. If the log should be sent to the server 100, the analysis unit 14 transmits the security log from the communication unit 16 to the server 100.
  • the log acquisition unit 112 of the server 100 receives the security log sent from the vehicle 4 from the communication unit 110 and stores it in the security log DB 114 in the data structure shown in FIG. 5.
  • the log analysis unit 122 of the analysis unit 120 analyzes the security log obtained from the security log DB 114 in S9, and determines whether to instruct the vehicle 4 to verify the integrity of the on-board unit of the corresponding vehicle 4.
  • the log analysis unit 122 determines in S10 that the vehicle 4 should be instructed to verify the integrity of the vehicle's on-board unit, in S11, the log analysis unit 122 requests the verification instruction unit 140 to instruct the vehicle 4 to verify the integrity of the vehicle's on-board unit.
  • the verification instruction unit 140 when the verification instruction unit 140 receives a request from the log analysis unit 122 in S12 to instruct the corresponding vehicle 4 to verify the integrity of the on-board unit, the verification instruction unit 140 instructs the corresponding vehicle 4 to verify the integrity of the on-board unit.
  • the verification unit 18 of the ECU 50 having the communication unit 16 instructs the relevant ECUs, including the own ECU 50, to verify the integrity.
  • the verification unit 18 of the ECU 50 having the communication unit 16 verifies the integrity of the ECU 50 if the ECU 50 is the target of the integrity verification.
  • the verification unit 18 of the other ECU that has been instructed by the verification unit 18 of the ECU 50 to verify the integrity of the ECU itself performs the integrity verification.
  • the verification unit 18 which has performed the integrity verification, adds the most recent start time when the ECU itself was started to the result of the integrity verification in S20 and S21, and transmits the result to the ECU 50 having the communication unit 16.
  • the verification unit 18 of the ECU 50 having the communication unit 16 transmits the integrity verification result received from the other ECU in S22 and the integrity verification result of the own ECU 50, which includes the most recent startup time of the own ECU 50, from the communication unit 16 to the server 100.
  • the verification instruction unit 140 of the server 100 obtains the integrity verification result including the start time received by the communication unit 110 from the vehicle 4.
  • the verification instruction unit 140 executes a determination process to determine whether the integrity of the vehicle-mounted unit to be verified is maintained, whether the integrity is not maintained and is impaired, or whether it is impossible to determine whether the integrity is maintained or not.
  • the in-vehicle unit may be started after the abnormality is detected, and the abnormality may be resolved by the time integrity verification is performed.
  • the verification instruction unit 140 cannot determine whether the integrity of the vehicle unit is maintained.
  • the vehicle-mounted unit will not restart from when the abnormality is detected until the integrity verification is performed, so it is possible to determine whether the integrity of the vehicle-mounted unit is maintained based on the results of the integrity verification.
  • the verification instruction unit 140 reads the verification result when the integrity verification result is normal from the reference value DB 142, and determines whether the normal verification result matches the verification result obtained from the vehicle 4.
  • the verification instruction unit 140 determines that the integrity of the vehicle-mounted unit is maintained, and if the normal verification result does not match the acquired verification result, it determines that the integrity of the vehicle-mounted unit is not maintained and is impaired.
  • the verification instruction unit 140 transmits the results of the judgment process for the aforementioned verification results to the infringement judgment unit 124.
  • the infringement determination unit 124 determines whether the vehicle-mounted unit has been infringed based on the determination result of the verification result obtained from the verification instruction unit 140.
  • the infringement determination unit 124 determines that the vehicle-mounted unit has not been infringed.
  • the intrusion determination unit 124 determines that the vehicle-mounted unit has been intruded.
  • the infringement determination unit 124 cannot determine whether the integrity of the vehicle-mounted unit is maintained, it cannot determine whether the vehicle-mounted unit has been infringed.
  • the attack estimation unit 126 sets an evaluation value of the attack that caused the intrusion into the vehicle-mounted unit based on the judgment result of the intrusion judgment unit 124, and then estimates what kind of attack was made against the vehicle-mounted unit.
  • the attack estimation unit 126 increases the evaluation value of the abnormality that is expected to occur in the on-board unit that is determined to have been infringed by the infringement determination unit 124 by a predetermined amount.
  • the attack estimation unit 126 increases the evaluation value of the abnormality that is expected to occur in ECU #1 from “1" to "2" as shown in FIG. 9.
  • the attack estimation unit 126 reduces, by a predetermined amount, the evaluation value of the abnormality that is expected to occur in the on-board unit that is determined by the intrusion determination unit 124 to have not been intruded.
  • the attack estimation unit 126 reduces the evaluation value of the abnormality assumed to occur in ECU #2 from "1" to "0" as shown in FIG. 9.
  • ECU #1 is a TCU and ECU #2 is an IVI, it is determined that only the TCU has been attacked.
  • the attack estimation unit 126 performs the following process (1) or (2) on the evaluation value of an abnormality that is expected to occur in the in-vehicle unit.
  • the evaluation value of the abnormality that is expected to occur in the on-board unit that is the target of the attack is increased by a value lower than the increase in the evaluation value of the on-board unit that is the source of the attack.
  • the on-board unit from which the attack originates and the on-board unit that is the target of the attack are physically or logically related via a network, etc., so if the on-board unit from which the attack originates is compromised, the on-board unit that is the target of the attack may also be compromised.
  • ECU #3 is the target of attack C, which starts from ECU #1. This time, it was determined that ECU #1 was compromised, but it was not possible to determine whether ECU #3 was compromised. In this case, since ECU #1 has been compromised, the evaluation value of the abnormality that is expected to occur in ECU #3 in attack C is increased by a smaller amount than from "1" to "2", for example to "1.1".
  • ECU #3 is the target of attack D, which starts from ECU #2. If it cannot be determined whether ECU #3 has been compromised and it is determined that ECU #2, which is the starting point of attack D, has not been compromised, the attack estimation unit 126 leaves the evaluation value of abnormality A, which is assumed to occur in ECU #3 in attack D, at "1" and does not change it.
  • ECU #5 is the starting point and target of attack X. If it cannot be determined whether ECU #5 has been compromised this time, the starting point of attack X against ECU #5 is ECU #5 itself, so the attack estimation unit 126 does not change the evaluation values of abnormalities B and C that are assumed to occur in ECU #5 in attack X from "1.”
  • the attack estimation unit 126 adjusts the evaluation value of the anomaly corresponding to the attack shown in FIG. 7, which is stored as an abnormal attack table in the abnormal attack DB 130, based on the result of the integrity verification, as shown in FIG. 9. Then, after adjusting the evaluation value, the attack estimation unit 126 estimates which type of attack shown in FIG. 9 has been performed.
  • the estimation is calculated by measuring the similarity between the measured anomaly information and the predicted anomaly information.
  • the measured anomaly information indicates a combination of anomalies that have actually been observed in the vehicle 4.
  • the predicted anomaly information indicates a combination of anomalies that are predicted to occur in the electronic control system when attacked by each attack type, and an abnormality evaluation value, which are stored as an abnormality attack table in the abnormal attack DB 130.
  • the inner product of the data string of the actual anomaly information expressed as a vector and the data string of the predicted anomaly information expressed as a vector is calculated. Then, the inner product is divided by the number of elements in the vector of the predicted anomaly information that have a value greater than 0, and the row of the anomaly attack table with the highest result is extracted. Then, if the result of this calculation is equal to or greater than a predetermined value, it is presumed that the corresponding attack has been carried out on the ECU, which is an on-board unit.
  • abnormalities A, B, and C are observed in ECU #1 as actual anomaly information, referring to Figure 9, in the case of attack A, the evaluation values of abnormalities A and C in ECU #1 are each 2, while the evaluation value of abnormality B in ECU #1 is 0, so the calculation result of the inner product is 4. And since there are two abnormalities with evaluation values greater than 0, abnormalities A and C, the result of dividing 4 by 2, 2, is the similarity between attack A and the actual anomaly information.
  • the output unit 128 outputs the estimation result to a database (not shown) or the like.
  • an attack on the vehicle 4 can be estimated with high accuracy based on the intrusion determination result indicating whether the on-board unit has been invaded by an attack on the vehicle 4 and the security log indicating an abnormality caused by this intrusion.
  • the evaluation value is increased by a value lower than the increase in the evaluation value of the compromised on-board unit, for an on-board unit that is the target of an attack and for which it was not possible to determine whether it has been compromised.
  • the analysis unit 14 of the vehicle 4 analyzes in advance whether the security log should be transmitted to the server 100, i.e., whether to transmit to the server 100. This makes it possible to minimize the amount of communication between the vehicle 4 and the server 100.
  • security logs are generated for ECU#1 and ECU#2, but the integrity verification results can determine that only ECU#1 has been attacked, and ECU#2 has not been attacked. This makes it possible to determine with high accuracy which ECU has been attacked, even for ECUs that belong to the same entry point, based on the integrity verification results.
  • the processing load can be reduced compared to when the integrity of the vehicle-mounted unit is periodically verified.
  • ECUs 10, 20, 30, 40, 50, and 60 correspond to the in-vehicle information processing device and the in-vehicle unit
  • server 100 corresponds to the information processing device outside the vehicle.
  • S8 in FIG. 8 corresponds to the processing of the log acquisition unit 112
  • S10 corresponds to the processing of the log analysis unit 122
  • S13 corresponds to the processing of the verification instruction unit 140
  • S17 to S19 correspond to the processing of the verification unit 18
  • S26 corresponds to the processing of the infringement determination unit 124
  • S27 corresponds to the processing of the attack estimation unit 126.
  • abnormal attack table shown in the structure of the abnormal attack DB130 corresponds to a correspondence table between types of abnormalities, attacks, and evaluation values.
  • the server 100 outside the vehicle has the functions of the log analysis unit 122, the intrusion determination unit 124, the attack estimation unit 126, and the verification instruction unit 140, but is not limited to this.
  • the vehicle 4 may have some of the functions of the log analysis unit 122, the intrusion determination unit 124, the attack estimation unit 126, and the verification instruction unit 140 in addition to the functions of the verification unit 18.
  • the vehicle 4 may not communicate with the server 100, and may have all the functions of the verification unit 18, the log analysis unit 122, the intrusion determination unit 124, the attack estimation unit 126, and the verification instruction unit 140.
  • the server 100 is an information processing device outside the vehicle, and performs attack estimation processing on multiple vehicles 4, but this is not limited to this.
  • a service tool or a personal computer may be connected to the vehicle 4 wirelessly or via a wire as an external information processing device, and attacks against the vehicle 4 may be estimated using one external information processing device for each vehicle 4.
  • the above-mentioned in-vehicle unit may be an information processing device configured by software, such as a VM, rather than a physical information processing device.
  • an attack on the vehicle 4 is estimated using an abnormality attack table, but this is not limited to this.
  • an attack on the vehicle 4 may be estimated without using an abnormality attack table, based on the security log and the integrity verification result.
  • the ECUs 10, 20, 30, 40, 50, 60 and server 100 and the methods described herein may be implemented 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 ECUs 10, 20, 30, 40, 50, 60 and server 100 and the methods described herein may be implemented by a dedicated computer provided by configuring a processor with one or more dedicated hardware logic circuits.
  • the ECUs 10, 20, 30, 40, 50, 60 and server 100 and the methods described in this disclosure may be implemented by one or more dedicated computers configured with a processor and memory programmed to perform one or more functions and a processor configured with one or more hardware logic circuits.
  • the computer program may also 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 ECUs 10, 20, 30, 40, 50, 60 and server 100 does not necessarily have to include software, and all of the functions may be realized using one or more pieces of hardware.
  • Multiple functions possessed by one component in the above-mentioned embodiments may be realized by multiple components, or one function possessed by one component may be realized by multiple components. Also, multiple functions possessed by multiple components may be realized by one component, or one function realized by multiple components may be realized by one component. Also, part of the configuration of the above-mentioned embodiments may be omitted. Also, at least part of the configuration of the above-mentioned embodiments may be added to or substituted for the configuration of another of the above-mentioned embodiments.
  • the present disclosure can also be realized in various forms, such as an information processing system 2 having the ECUs 10, 20, 30, 40, 50, 60 and the server 100 as components, an information processing program for causing a computer to function as the ECUs 10, 20, 30, 40, 50, 60 and the server 100, a non-transient physical recording medium such as a semiconductor memory on which this program is recorded, and an information processing method.
  • a log acquisition unit (112, S8) configured to acquire a security log indicating an abnormality occurring in the vehicle (4); a log analysis unit (122, S10) configured to determine whether or not to instruct a verification unit (18, S17 to S19) of the vehicle to verify the integrity of the in-vehicle unit (10, 20, 30, 40, 50, 60) based on the security log acquired by the log acquisition unit; a verification instruction unit (140, S13) configured to instruct the verification unit to verify the integrity of the vehicle-mounted unit when the log analysis unit determines that the verification unit should be instructed to verify the integrity of the vehicle-mounted unit; an intrusion determination unit (124, S26) configured to determine whether the vehicle-mounted unit has been intruded based on a verification result of the integrity verification by the verification unit; an attack estimation unit (126, S27) configured to estimate an attack that causes an intrusion based on a result of the intrusion determination unit and the security log;
  • An information processing device comprising:
  • Item 1 is an information processing device according to the present invention
  • the attack estimation unit is configured to increase an evaluation value of the attack that causes an intrusion by a predetermined increase amount for the on-board unit that the intrusion determination unit has determined to be intruded, and to decrease an evaluation value of the on-board unit that the intrusion determination unit has determined to be not intruded by a predetermined decrease amount, and to make an estimation regarding the attack based on the evaluation value.
  • Information processing device is configured to increase an evaluation value of the attack that causes an intrusion by a predetermined increase amount for the on-board unit that the intrusion determination unit has determined to be intruded, and to decrease an evaluation value of the on-board unit that the intrusion determination unit has determined to be not intruded by a predetermined decrease amount, and to make an estimation regarding the attack based on the evaluation value.
  • the attack estimation unit is configured to increase the evaluation value by a value lower than the increase amount, when the intrusion determination unit is unable to determine whether the intrusion determination unit has been intruded into the in-vehicle unit and the intrusion determination unit has determined that the intrusion has been intruded into the in-vehicle unit, and the intrusion determination unit has determined that the intrusion has been intruded into the in-vehicle unit .... Information processing device.
  • [Item 4] 4. The information processing device according to claim 2, a correspondence table for the on-board unit, the type of abnormality indicated by the security log, the attack, and the evaluation value; the attack estimation unit is configured to make an estimation regarding the attack based on a sum of the evaluation values in the correspondence table corresponding to the attack. Information processing device.
  • the verification instruction unit is configured, when it determines that the log analysis unit should instruct the verification unit to verify the integrity based on the security log, to instruct the verification unit to verify the integrity of all the in-vehicle units, or the in-vehicle units whose security logs indicate the abnormality, or the in-vehicle units other than the in-vehicle units whose security logs indicate the abnormality, or the in-vehicle units whose security logs indicate the abnormality and the in-vehicle units whose security logs indicate the abnormality have a physical or logical relationship with the in-vehicle units whose security logs indicate the abnormality.
  • Information processing device is configured, when it determines that the log analysis unit should instruct the verification unit to verify the integrity based on the security log, to instruct the verification unit to verify the integrity of all the in-vehicle units, or the in-vehicle units whose security logs indicate the abnormality, or the in-vehicle units other than the in-vehicle units
  • the verification instruction unit is configured to, when the log analysis unit determines based on the security log that the log analysis unit should instruct the verification unit to verify the integrity, instruct the verification unit to verify at least one of a program code, data, a hardware configuration, and a software configuration, as the integrity verification.
  • Information processing device is configured to, when the log analysis unit determines based on the security log that the log analysis unit should instruct the verification unit to verify the integrity, instruct the verification unit to verify at least one of a program code, data, a hardware configuration, and a software configuration, as the integrity verification.
  • the intrusion determination unit is configured to instruct the verification unit to verify the integrity when one or more of the following conditions are met: the security log was generated because a detection function of the vehicle detected the abnormality, or the security log was generated because a defense function of a second or subsequent layer of a defense in depth of the vehicle defended against the attack, and not to instruct the verification unit to verify the integrity when none of the conditions are met.
  • Information processing device is configured to instruct the verification unit to verify the integrity when one or more of the following conditions are met: the security log was generated because a detection function of the vehicle detected the abnormality, or the security log was generated because a defense function of a second or subsequent layer of a defense in depth of the vehicle defended against the attack, and not to instruct the verification unit to verify the integrity when none of the conditions are met.
  • the verification instruction unit is configured not to instruct the verification unit to verify the integrity during the period from when the verification instruction unit instructs the verification unit to verify the integrity until the verification of the integrity is completed. Information processing device.
  • the information processing device according to any one of items 1 to 8,
  • the infringement determination unit is configured to determine that the in-vehicle unit is compromised if the integrity is impaired, to determine that the in-vehicle unit is not compromised if the integrity of the in-vehicle unit is maintained, and to determine that it is not possible to determine whether the in-vehicle unit is compromised or not if the integrity cannot be verified.
  • Information processing device is configured to determine that the in-vehicle unit is compromised if the integrity is impaired, to determine that the in-vehicle unit is not compromised if the integrity of the in-vehicle unit is maintained, and to determine that it is not possible to determine whether the in-vehicle unit is compromised or not if the integrity cannot be verified.
  • An information processing system including an in-vehicle information processing device (10, 20, 30, 40, 50, 60) and an external information processing device (100) that communicates with the in-vehicle information processing device
  • the in-vehicle information processing device includes: a monitoring unit (12, S1, S2) configured to generate a security log indicative of anomalies occurring in the vehicle (4); a verification unit (18, S17-S19) configured to verify the integrity of the vehicle-mounted unit (10, 20, 30, 40, 50, 60); Equipped with The information processing device outside the vehicle includes: A log acquisition unit (112, S8) configured to acquire the security log from the on-board information processing device; a log analysis unit (122, S10) configured to determine whether to instruct the verification unit to verify the integrity of the vehicle-mounted unit based on the security log acquired by the log acquisition unit; a verification instruction unit (140, S13) configured to instruct the verification unit to verify the integrity when the log analysis unit determines that the verification unit should verify the integrity; an intrusion determination unit (124, S26) configured to
  • [Item 13] generating a security log indicating anomalies occurring in the vehicle (4); Acquire the generated security log; determining whether or not to instruct to verify the integrity of the vehicle-mounted unit (10, 20, 30, 40, 50, 60) based on the acquired security log; when it is determined that the verification of the integrity of the in-vehicle unit is to be instructed, the verification of the integrity is instructed; When instructed to perform the integrity verification, the integrity verification is performed; determining whether the vehicle-mounted unit has been compromised based on a result of the integrity verification; making an inference regarding an attack that caused the intrusion based on a result of the intrusion determination as to whether the intrusion has occurred or not and the security log; Information processing methods.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Bioethics (AREA)
  • Small-Scale Networks (AREA)

Abstract

車両で発生した異常を示すセキュリティログを取得するように構成されたログ取得部112と、セキュリティログに基づいて車両の検証部に車載ユニットの完全性の検証を指示するか否かを判定するように構成されたログ分析部122と、検証部に車載ユニットの完全性の検証を指示するとログ分析部が判定すると、完全性の検証を検証部に指示するように構成された検証指示部140と、検証部による完全性の検証の検証結果に基づいて、車載ユニットが侵害されたか否かを判定するように構成された侵害判定部124と、侵害判定部による侵害判定結果とセキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行うように構成された攻撃推定部126と、を備える情報処理装置。

Description

情報処理装置、情報処理システム、情報処理プログラム、情報処理方法 関連出願の相互参照
 本国際出願は、2022年9月30日に日本国特許庁に出願された日本国特許出願第2022-158053号に基づく優先権を主張するものであり、日本国特許出願第2022-158053号の全内容を本国際出願に参照により援用する。
 本開示は、車両で発生した異常を示すセキュリティログに基づいて車両に対する攻撃を推定する技術に関する。
 下記特許文献1には、車両で発生した異常を示すセキュリティログに基づいて、異常の起因となる車両に対する攻撃に関する推定を行う技術が記載されている。
特開2020-123307号公報
 しかしながら、セキュリティログは、車両が攻撃されて侵害されたことにより車両で発生した異常を示すだけでなく、車両が攻撃されて侵害されたこととは異なる原因により車両で発生した異常を示すことがある。
 発明者の詳細な検討の結果、車両が攻撃されて侵害されたこととは異なる原因により車両で発生した異常を示すセキュリティログに基づいて、車両に対する攻撃に関する推定を行うと、攻撃に関する推定の精度が低下するという課題が見出された。
 本開示の1つの局面は、車両に対する攻撃に関する推定を高精度に行う技術を提供することにある。
 本開示の1つの態様の情報処理装置は、ログ取得部と、ログ分析部と、検証指示部と、侵害判定部と、攻撃推定部と、を備える。
 ログ取得部は、車両で発生した異常を示すセキュリティログを取得する。ログ分析部は、ログ取得部が取得するセキュリティログに基づいて、車両の検証部(18、S17~S19)に車載ユニットの完全性の検証を指示するか否かを判定する。検証指示部は、検証部に車載ユニットの完全性の検証を指示するとログ分析部が判定すると、完全性の検証を検証部に指示する。
 侵害判定部は、検証部による完全性の検証の検証結果に基づいて、車載ユニットが侵害されたか否かを判定する。攻撃推定部は、侵害判定部による侵害判定結果とセキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行う。
 本開示の他の態様の情報処理プログラムは、前述した情報処理装置としてコンピュータを機能させる。
 本開示の他の態様は、前述した情報処理装置が実行する情報処理方法である。
 本開示の他の態様の情報処理システムは、車載の情報処理装置と、車載の情報処理装置と通信する車外の情報処理装置と、を備える。
 車載の情報処理装置は、監視部と、検証部(18、S17~S19)と、を備える。監視部は、車両で発生した異常を示すセキュリティログを生成する。検証部は、車載ユニットの完全性の検証を行う。
 車外の情報処理装置は、ログ取得部と、ログ分析部と、検証指示部と、侵害判定部と、攻撃推定部と、を備える。
 ログ取得部は、車載の情報処理装置からセキュリティログを取得する。ログ分析部は、ログ取得部が取得するセキュリティログに基づいて、車両の検証部に車載ユニットの完全性の検証を指示するか否かを判定する。検証指示部は、検証部に完全性の検証を指示するとログ分析部が判定すると、完全性の検証を検証部に指示する。
 侵害判定部は、検証部による完全性の検証の検証結果に基づいて、車載ユニットが侵害されたか否かを判定する。攻撃推定部は、侵害判定部による侵害判定結果とセキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行う。
 本開示の他の態様は、前述した情報処理システムが実行する情報処理方法である。
 このような構成によれば、セキュリティログに基づいて検証された車載ユニットの完全性の検証結果に基づいて、車両に対する攻撃により車載ユニットが侵害されたか否かを、高精度に判定できる。
 その結果、車両に対する攻撃により車載ユニットが侵害されたか否かを示す侵害判定結果と、この侵害により生じた異常を示すセキュリティログとに基づいて、車両に対する攻撃を高精度に推定できる。
情報処理システムの構成を示すブロック図。 車両の多層防御の構成を示すブロック図。 車載の情報処理装置の構成を示すブロック図。 車外の情報処理装置の構成を示すブロック図。 セキュリティログの構成を示す説明図。 車外の情報処理装置の分析部の構成を示すブロック図。 変更前の異常攻撃テーブルの構成を示す説明図。 情報処理を示すシーケンス図。 変更後の異常攻撃テーブルの構成を示す説明図。
 以下、図面を参照しながら本開示の実施形態を説明する。
 [1.構成]
 図1に示すように、本実施形態の情報処理システム2は、車両4に搭載された情報処理装置であるECU10、20、30、40、50、60と、車外の情報処理装置であるサーバ100と、を備える。ECUは、Electronic Control Unitの略である。ECU10、20、30、40、50、60の少なくともいずれかと車両4とサーバ100とは、例えば、無線通信ネットワーク6を介して互いに通信を行う。
 車両4には、サイバー攻撃等の外部からの悪意のある攻撃に対するセキュリティ性を高めるために、セキュリティレベルが異なる多層防御が採用されている。図2に示す多層防御の例では、車両4は第1層、第2層、第3層の3層の防御層を有する。
 図2では、ECU#1、ECU#2、DLCが第1層に属し、ECU#3が第2層に属し、ECU#4、ECU#5が第3層に属している。DLCはData Link Connectorの略である。ECU同士は、CANまたはイーサネットのネットワークにより互いに通信可能である。CANはController Area Networkの略である。CANおよびイーサネットは登録商標である。
 第1層に属するECU#1、ECU#2は、例えば車両4の外部との通信機能を有するTCU、IVIとして機能する。TCUはTelematics Control Unitの略であり、IVIはIn Vehicle Infotainmentの略である。ECU#1、ECU#2には、車両外部から車両内部に入ってくるデータを監視するセキュリティ機能が搭載されている。
 また、第1層に属するDLCには、例えば、車両4の図示しないOBD2から診断情報を取得する外部ツールが接続される。OBDはOn Board Diagnosticsの略である。
 第2層に属するECU#3は、例えば、第1層のECU#1、ECU#2のネットワークと第3層のECU#4、ECU#5のネットワークとの間で通信されるデータを監視するセキュリティ機能が搭載されたゲートウェイECUである。
 ECU#3は、前述したECU#1、ECU#2とは異なるセキュリティ対策を行うものである。ECU#3によって監視される領域は、ECU#1、ECU#2によって防御される領域である第1層とは異なるセキュリティレベルを有する。
 第3層に属するECU#4、ECU#5は、例えば、車両4の動きを制御する車両制御ECUである。ECU#4、ECU#5には、第2層に属するECU#3のセキュリティ機能を通過したデータのみが通信される。第3層は、第2層とは異なるセキュリティレベルを有する領域である。
 図3に、車両4に搭載されるECU10、20、30、40、50、60の構成の例を示す。前述したように、ECU10、20、30、40、50、60によって、セキュリティ機能の構成は異なることがある。
 ECU10、20、30、40、50、60は、例えば、図示しないCPU、ROM、RAM、フラッシュメモリ等を有するマイクロコンピュータを搭載している。ECU10、20、30、40、50、60のCPUがROMまたはフラッシュメモリに記憶されたプログラムを実行することにより、後述する監視部12と検証部18とによる情報処理が実行される。
 監視部12は、ECU10、20、30、40、50、60やネットワーク等の車載ユニットの異常を検出するセキュリティセンサを有しており、車載ユニットに異常が発生しているか否かを監視する。監視部12は、車載ユニットの異常を検出するとセキュリティログを生成する。
 監視部12は、セキュリティセンサとして、ファイヤーウォール、HIDS、CANやイーサネット等のネットワークの異常を検出するIDS、Auth機能、等を有している。HIDSはHost Based Intrusion Detection Systemの略であり、IDSはIntrusion Detection Systemの略であり、AuthはAuthenticationの略である。
 分析部14は、監視部12が生成したセキュリティログが、車両4に対する攻撃が起因となって生成された可能性があるか否かを分析する。
 例えば、分析部14は、車両4のネットワーク上のデータの周期がずれ、さらに、通常では起動していないプロセスがECUで実行されていることをセキュリティログが示している場合、車両4に対する攻撃が起因となっている可能性があると判定する。この場合、分析部14は、セキュリティログを通信部16からサーバ100に送信する。
 これに対し、例えば、セキュリティログが車両4のネットワーク上のデータの周期がずれたことを表しているだけの場合、分析部14は、車両4に対する攻撃が起因となっている可能性はないと判定する。この場合、分析部14は、セキュリティログを通信部16からサーバ100に送信しない。
 通信部16は、無線通信ネットワーク6を介してサーバ100と通信する。検証部18は、自ECUまたは他のECUまたはECU上で動作するVMまたはソフトウェア等の車載ユニットの完全性の検証をサーバ100から指示されると、車載ユニットの検証を行う。VMは、Virtual Machineの略である。検証部18は、ハードウェア等のセキュリティ機能により、検証部18自体が攻撃により侵害されないように保護されている。
 図4に示すように、サーバ100は、通信部110と、ログ取得部112と、セキュリティログDB114と、分析部120と、検証指示部140と、参照値DB142と、を備える。
 また、図6に示すように、サーバ100の分析部120は、ログ分析部122と、侵害判定部124と、攻撃推定部126と、出力部128と、異常攻撃DB130と、を備える。
 サーバ100は、例えば、図示しないCPU、ROM、RAM、フラッシュメモリ等を有するコンピュータを搭載している。サーバ100のCPUが記憶装置に記憶されたプログラムを実行することにより、ログ取得部112と、ログ分析部122と、侵害判定部124と、攻撃推定部126と、検証指示部140と、による情報処理が実行される。
 通信部110は、無線通信ネットワーク6を介して車両4と通信する。ログ取得部112は、通信部110が車両4から受信するセキュリティログを取得し、セキュリティログDB114に格納する。
 図5に示すように、ログ取得部112が取得するセキュリティログは、車両4のIDと、異常が検出された時刻と、異常が検出された車両4内の場所と、異常を検出したセンサIDと、の情報で構成される。尚、セキュリティログは、これら以外の情報を含んでもよい。
 ログ分析部122は、ログ取得部112が取得してセキュリティログDB114に格納したセキュリティログに基づいて、車両4の検証部18に車載ユニットの完全性の検証を指示するか否かを判定する。
 例えば、ログ分析部122は、以下の条件(1)、(2)のいずれか1個以上が成立すれば、車両4の検証部18に車載ユニットの完全性の検証を指示すると判定する。
 (1)セキュリティログが、サイバー攻撃による車両4の侵害を検出するためのセキュリティセンサの検出機能により生成された。
 (2)セキュリティログが、前述した多層防御において、第2層以降の防御機能が攻撃を防御したことにより生成された。
 但し、車両4の検証部18に完全性の検証を指示してから完全性の検証が終了するまでの間、完全性の検証を新たにしないと判定してもよい。
 侵害判定部124は、車両4から取得する検証部18による完全性の検証結果に対する検証指示部140の判定結果に基づいて、車載ユニットが侵害されたか否かを判定する。完全性の検証結果に対する検証指示部140による判定については、後述する。
 攻撃推定部126は、侵害判定部124による侵害判定結果と、セキュリティログと、異常攻撃DB130の異常攻撃テーブルと、に基づいて、侵害の起因となる攻撃に関する推定を行う。出力部128は、攻撃推定部126による推定結果を図示しないDB等に出力する。
 異常攻撃DB130は、例えば、図7に示す異常攻撃テーブルの構造を有する。異常攻撃DB130は、多層防御の各層に属するECUと、各ECUで発生する異常の種類と、各ECUに発生する異常の起因となる攻撃と、攻撃の起点となる位置と、攻撃の起点から攻撃を受ける攻撃対象の位置と、評価値と、の関係を表している。攻撃の起点となる位置と攻撃対象の位置とにより、攻撃の経路が示されている。
 攻撃の起点において「0x00」は、攻撃の起点が車両4の外部であることを表している。攻撃の起点と攻撃の対象とにおいて「0x01」~「0x05」は、攻撃の対象となるECUの番号を表している。
 図7において、評価値の「1」と「0」とは、車両4のシステム構成と、車両4に対して行われると想定される攻撃と、攻撃によって発生すると想定される異常内容と、に基づいて予め設定された値である。評価値の「1」は、攻撃を受けると該当の異常が発生する可能性があることを示している。評価値の「0」は、想定される攻撃において該当の異常が発生しないことを示している。
 図7では、異常の内容をECUに発生する異常の種類で分類した。これに対し、各ECUで複数のVMが実行される場合にはVM毎に発生する異常の種類で分類してもよい。また、各ECUで複数のソフトウェアが実行される場合にはソフトウェア毎に発生する異常の種類で分類してもよい。
 検証指示部140は、車両4の検証部18と同様に、ハードウェア等のセキュリティ機能により、検証指示部140自体が攻撃により侵害されないように保護されている。
 検証指示部140は、ログ分析部122が完全性の検証を指示するように判定すると、対象となる車載ユニットの完全性の検証を車両4に行うように指示する。
 尚、検証指示部140は、以下の(1)~(4)のいずれかのパターンで、車載ユニットの完全性を検証するように車両4に指示する。
 (1)車両4に搭載されたすべての車載ユニット。
 (2)異常が検出された車載ユニット。
 (3)異常が検出された車載ユニットと、異常が検出された車載ユニットに物理的または論理的に関連性のある車載ユニット。
 異常が検出された車載ユニットに物理的または論理的に関連性がある車載ユニットとは、例えば、異常が検出された車載ユニットとネットワークで接続しているか、あるいは異常が検出された車載ユニットの処理結果に基づいて処理を行う車載ユニットを表す。
 (4)異常が検出された車載ユニット以外の車載ユニット。例えば、異常の検出に対して信頼性のあるセキュリティセンサの異常が検出された場合、該当するセキュリティセンサが異常を検出した車載ユニット以外の車載ユニットの完全性を検証する。
 また、検証指示部140は、例えば、以下に記載した(1)、(2)の項目について、車載ユニットの完全性を検証するように車両4に指示する。
 (1)車載ユニットの所定の箇所として、以下の(1a)~(1d)のいずれか。
 (1a)メモリに所定のプログラムコードが格納されているか。この場合、実行時に変化しないプログラムコードだけを検証対象に指示してもよい。
 また、プログラムコードの検証は、攻撃された場合に制御を奪われる可能性の高いプログラムコードから行ってもよい。
 (1b)メモリに所定のデータが格納されているか。例えば、ソフトウェアを実行するときに読み込むソフトウェアの設定ファイルのデータが所定値か。あるいは、ソフトウェアを実行するときに生成されるソフトウェアの制御データが所定値か。この場合、実行時に変化しないデータだけを検証対象に指示してもよい。
 (1c)ハードウェア構成。例えば、所定IDの装置が接続されているか。あるいは、所定のインタフェースが使用されているか。
 (1d)ソフトウェア構成。例えば、ソフトウェアが所定のライブラリで構成されているか、あるいは、ソフトウェアのメモリマップが所定の構成か、あるいは動的ライブラリが所定バージョンか。
 (2)車載ユニットのすべての構成。例えば、前述した(1a)~(1d)のすべて。
 また、検証指示部140は、例えば、以下の(1)~(3)のいずれかのパターンで、車両4の検証部18に完全性の検証を指示する車載ユニットの順番を決定する。
 (1)検証対象のすべての車載ユニットに同時に完全性の検証を指示する。
 (2)多層防御において浅い層に属する車載ユニットの完全性の検証を先に指示する。例えば、第2層の車載ユニットの異常が検出された場合、第2層よりも浅い第1層に属する車載ユニットの完全性の検証を先に指示する。
 (3)多層防御において深い層に属する車載ユニットの完全性の検証を先に指示する。例えば、第1層の車載ユニットの異常が検出された場合、第1層よりも深い第2層に属する車載ユニットの完全性の検証を先に指示する。
 また、検証指示部140は、検証部18が実行する完全性の検証結果の値と、参照値DB142に格納された完全性の検証結果の正常値とを比較して、車載ユニットの完全性が保たれているか否かを判定する。
 検証指示部140は、検証部18が実行する完全性の検証結果の値が参照値DB142に格納された正常値と一致する場合、車載ユニットの完全性は保たれていると判定する。これに対し、検証指示部140は、検証部18が実行する完全性の検証結果の値が参照値DB142に格納された正常値と一致しない場合、車載ユニットの完全性が損なわれていると判定する。
 [2.処理]
 図8に基づいて、ECU10、20、30、40、50、60とサーバ100とを備える情報処理システム2が実行する情報処理について説明する。
 S1、S2において車両4の監視部12は、自ECUと自ECUが接続するネットワーク等に異常が発生していないか否かを監視する。S3、S4において監視部12は、車載ユニットの異常を検出すると、自車両4を特定する車両IDと異常の検出時刻と異常の検出場所と異常を検出したセキュリティセンサのセンサIDとで構成されるセキュリティログを、車両4の分析部14に送信する。
 S7において分析部14は、S5、S6において監視部12から受信したセキュリティログを前述したように分析し、サーバ100に送信するログか送信しないログかを判定する。サーバ100に送信するログの場合、分析部14は、通信部16からサーバ100にセキュリティログを送信する。
 S8においてサーバ100のログ取得部112は、車両4から送信されたセキュリティログを通信部110から受信し、図5に示すデータ構造でセキュリティログDB114に格納する。
 S10において分析部120のログ分析部122は、S9においてセキュリティログDB114から取得したセキュリティログを分析し、該当する車両4の車載ユニットの完全性の検証を車両4に指示するか否かを判定する。
 ログ分析部122は、S10において、該当する車両4の車載ユニットの完全性の検証を車両4に指示すると判定すると、S11において、車両4の車載ユニットの完全性の検証を車両4に指示するように検証指示部140に依頼する。
 S13において検証指示部140は、S12においてログ分析部122から該当する車両4の車載ユニットの完全性の検証を指示する依頼を取得すると、該当する車両4に車載ユニットの完全性の検証を指示する。
 S15、S16において、例えば、通信部16を有するECU50の検証部18は、S14において通信部16がサーバ100から完全性の検証の指示を受信すると、自ECU50を含み、該当するECUに完全性の検証を指示する。
 S17において、通信部16を有するECU50の検証部18は、自ECU50が完全性の検証の対象である場合、自ECU50の完全性の検証を行う。
 S18、S19において、ECU50の検証部18から完全性の検証を指示された他のECUの検証部18は、自ECUの完全性の検証を行う。
 完全性の検証を行った検証部18は、S20、S21において完全性の検証結果に自ECUが起動された最新の起動時刻を加えて、通信部16を有するECU50に送信する。
 S23において、通信部16を有するECU50の検証部18は、S22において他のECUから受信した完全性の検証結果と、自ECU50が起動された最新の起動時刻を加えた自ECU50の完全性の検証結果と、を通信部16からサーバ100に送信する。
 S24において、サーバ100の検証指示部140は、通信部110が車両4から受信した起動時刻を含む完全性の検証結果を取得する。
 そして、検証指示部140は、検証対象の車載ユニットの完全性が保たれているか、あるいは、完全性が保たれておらず損なわれているか、あるいは、完全性が保たれているか否かを判定できないか、を判定する判定処理を実行する。
 ここで、セキュリティログDB114に格納された車載ユニットに異常が検出された検出時刻よりも車載ユニットの起動時刻が後であれば、異常が検出された後で車載ユニットが起動され、完全性の検証を行うときに異常が解消されている可能性がある。
 そのため、検証指示部140は、検出時刻よりも起動時刻が後であれば、車載ユニットの完全性が保たれているか否かを判定できない。
 これに対し、検出時刻が起動時刻よりも後であれば、異常が検出されてから完全性の検証が行われるまで車載ユニットは起動し直していないので、完全性の検証結果に基づいて、車載ユニットの完全性が保たれているか否かを判定できる。
 そこで、検証指示部140は、検出時刻が起動時刻よりも後であれば、参照値DB142から完全性の検証結果が正常な場合の検証結果を読み出し、正常な検証結果と車両4から取得した検証結果とが一致しているか否かを判定する。
 検証指示部140は、正常な検証結果と取得した検証結果とが一致している場合、車載ユニットの完全性は保たれていると判定し、正常な検証結果と取得した検証結果とが一致しない場合、車載ユニットの完全性は保たれておらず損なわれていると判定する。
 S25において検証指示部140は、前述した検証結果に対する判定処理の結果を侵害判定部124に送信する。
 S26において侵害判定部124は、検証指示部140から取得した検証結果に対する判定結果に基づいて、車載ユニットが侵害されているか否かを判定する。
 侵害判定部124は、車載ユニットの完全性が保たれている場合、車載ユニットは侵害されていないと判定する。
 侵害判定部124は、車載ユニットの完全性が損なわれている場合、車載ユニットは侵害されたと判定する。
 侵害判定部124は、車載ユニットの完全性が保たれているか否かを判定できない場合、車載ユニットが侵害されているか否かを判定できない。
 S27において攻撃推定部126は、侵害判定部124の判定結果に基づいて、車載ユニットに対する侵害の起因となる攻撃の評価値を設定してから、車載ユニットに対してどのような攻撃がされたかを推定する。
 まず、攻撃推定部126は、侵害されたと侵害判定部124により判定された車載ユニットについて、車載ユニットにて発生すると想定されている異常の評価値を所定の上昇分高める。
 例えば、図7において、侵害されたとECU#1が判定された場合、攻撃推定部126は、ECU#1で発生すると想定されている異常の評価値を、図9に示すように「1」から「2」に高める。
 これに対し、攻撃推定部126は、侵害されなかったと侵害判定部124により判定された車載ユニットについて、車載ユニットにて発生すると想定されている異常の評価値を所定の低下分低める。
 例えば、図7において、侵害されなかったとECU#2が判定された場合、攻撃推定部126は、ECU#2で発生すると想定されている異常の評価値を、図9に示すように「1」から「0」に低める。
 このように、同じ第1層でエントリポイントのECU#1とECU#2とについて、セキュリティログが生成されたが、完全性の検証結果によって、ECU#1とECU#2とのうちECU#1が攻撃されECU#2は攻撃されなかったと判定される。
 例えば、本実施形態のように、ECU#1がTCUでECU#2がIVIの場合、TCUだけが攻撃されたと判定される。
 また、攻撃推定部126は、侵害されたか否かを侵害判定部124が判定できなかった車載ユニットについて、車載ユニットにて発生すると想定されている異常の評価値に対して以下の(1)または(2)の処理を行う。
 (1)侵害されたか否かを判定できなかった攻撃対象の車載ユニットに対し、攻撃起点の車載ユニットが侵害されたと判定された場合、攻撃起点の車載ユニットの評価値の上昇分よりも低い値で、攻撃対象の車載ユニットにて発生すると想定されている異常の評価値を高くする。
 これは、攻撃起点の車載ユニットと攻撃対象の車載ユニットとは、ネットワーク等を介して物理的または論理的に関連性があるので、攻撃起点の車載ユニットが侵害されると、攻撃対象の車載ユニットも侵害される可能性があるためである。
 例えば、図7において、ECU#3は、ECU#1を起点とした攻撃Cの攻撃対象である。そして、今回、ECU#1が侵害されたと判定できたがECU#3が侵害されたか否かを判定できなかった。この場合、ECU#1が侵害されているので、攻撃CにおいてECU#3にて発生すると想定されている異常の評価値を「1」から「2」へよりも低い上昇分で、例えば「1.1」に高める。
 (2)侵害されたか否かを判定できなかった車載ユニットに対し、この車載ユニットを攻撃対象とする攻撃起点の車載ユニットが侵害されなかったと判定されたか、あるいは、この車載ユニットを攻撃対象とする攻撃起点の車載ユニットが侵害されたか否かを判定できなかった。この場合、攻撃対象の車載ユニットにて発生すると想定されている異常の評価値は変更せずそのままにしておく。
 例えば、図7において、ECU#3は、ECU#2を起点とした攻撃Dの攻撃対象である。ECU#3が侵害されたか否かを判定できず、攻撃Dの起点であるECU#2が侵害されなかったと判定された場合、攻撃推定部126は攻撃DにおいてECU#3で発生すると想定されている異常Aの評価値を「1」のまま変更しない。
 また、図7において、ECU#5は、攻撃Xの攻撃起点であり攻撃対象である。ECU#5について、今回、侵害されたか否かを判定できなかった場合、ECU#5に対する攻撃Xの起点はECU#5自体なので、攻撃推定部126は、攻撃XにおいてECU#5で発生すると想定されている異常Bおよび異常Cの評価値を「1」のまま変更しない。
 このように、攻撃推定部126は、異常攻撃DB130に異常攻撃テーブルとして格納されている図7に示す攻撃に対応する異常の評価値を、完全性検証の結果に基づいて図9に示すように調整する。そして、攻撃推定部126は、評価値を調整してから、図9に示すどの攻撃種別の攻撃が行われたのかを推定する。
 推定は、実測異常情報と予測異常情報との類似度を計測することで算出される。実測異常情報は、実際に車両4で観測された異常の組合せを示す。予測異常情報は、異常攻撃DB130に異常攻撃テーブルとして格納されている、攻撃種別毎の攻撃を受けた場合に電子制御システムで発生することが予測される異常の組み合わせと異常の評価値とを示す。
 具体的には、実測異常情報のデータ列をベクトルで表現したものと、予測異常情報のデータ列をベクトルで表現したものと、の内積が算出される。そして、予測異常情報のベクトルにおいて0よりも大きい値になっている要素の数で内積を割った算出結果が最も高い値となった異常攻撃テーブルの行が抽出される。そして、その算出結果が所定値以上になると、車載ユニットであるECUに対して該当する攻撃が行われたと推定される。
 例えば、実測異常情報としてECU#1にて異常A、異常B、異常Cが観測された場合、図9に照らし合わせると、攻撃Aの場合はECU#1の異常Aと異常Cの評価値がそれぞれ2であり、ECU#1の異常Bの評価値は0であるため、内積の算出結果は4である。そして、評価値が0より大きい値となっている異常は異常Aと異常Cとの2つであるため、4を2で割った結果の2が攻撃Aと実測異常情報との類似度となる。
 一方、攻撃Cの場合は、ECU#1の異常Cの評価値が2であり、ECU#1の異常Aと異常Bの評価値は0であるため、内積の算出結果は2である。そして、評価値が0より大きい値となっている異常はECU#1の異常CとECU#3の異常Aおよび異常Bであるため、2を3で割った3分の2が攻撃Cと実測異常情報との類似度となる。
 なお、攻撃Bや攻撃Dや攻撃XはECU#1の異常A、異常B、異常Cに対応する評価値はいずれも0であるため、最終的な類似度も0となる。したがって、最も大きな値である攻撃Aと実測異常情報との類似度について所定値以上であるか否かが評価され、攻撃Aが行われたか否かが推定される。
 尚、評価値を所定の増加分高める場合と所定の低下分低める場合とを複数記載したが、すべてを適用してもよいし、いずれか1つ以上を選択的に適用してもよい。
 車載ユニットに対して攻撃が行われたと攻撃推定部126が推定すると、出力部128は、図示しないDB等に推定結果を出力する。
 [3.効果]
 以上説明した実施形態によれば、以下の効果を得ることができる。
 (3a)セキュリティログに基づいて検証された車載ユニットの完全性の検証結果に基づいて、車両4に対する攻撃により車載ユニットが侵害されたか否かを、高精度に判定できる。
 その結果、車両4に対する攻撃により車載ユニットが侵害されたか否かを示す侵害判定結果と、この侵害により生じた異常を示すセキュリティログとに基づいて、車両4に対する攻撃を高精度に推定できる。
 (3b)侵害されたか否かを判定できなかった車載ユニットに対し、この車載ユニットを攻撃対象とする攻撃起点の車載ユニットが侵害されたと判定された場合、物理的または論理的に関連性がある攻撃対象の車載ユニットも攻撃により侵害された可能性がある。
 そこで、前述した実施形態では、侵害されたか否かを判定できなかった攻撃対象の車載ユニットに対し、攻撃起点の車載ユニットが侵害されたと判定された場合、侵害された車載ユニットの評価値の上昇分よりも低い値で評価値を高くする。これにより、異常が検出されたが侵害されたか否かを判定できなかった車載ユニットで発生すると想定されている異常の評価値を、高精度に設定できる。
 (3c)車両4からセキュリティログをサーバ100に送信する前に、予め、サーバ100に送信すべきセキュリティログであるか否か、つまりサーバ100に送信するか否かを車両4の分析部14が分析する。これにより、車両4とサーバ100との通信量を極力低減できる。
 (3d)同じ層に属する複数の車載ユニットについて、セキュリティログは生成されたが、完全性の検証結果に基づいて、いずれかの車載ユニットだけが攻撃され、他の車載ユニットは攻撃されなかったと判定できる。
 例えば本実施形態のECU#1、ECU#2について、セキュリティログは生成されたが、完全性の検証結果によってECU#1だけが攻撃され、ECU#2は攻撃されなかったと判定できる。これにより、例えば、同じエントリポイントに属するECUであっても、完全性の検証結果に基づいて、どのECUが攻撃されたかを高精度に判定できる。
 (3e)セキュリティログをトリガーにして対象の車載ユニットについて完全性の検証を実行するので、車載ユニットに対して定期的に完全性の検証を行う場合に比べ、処理負荷を低減できる。
 以上説明した実施形態では、ECU10、20、30、40、50、60が車載の情報処理装置と車載ユニットとに対応し、サーバ100が車外の情報処理装置に対応する。
 また、図8のS8がログ取得部112の処理に対応し、S10がログ分析部122の処理に対応し、S13が検証指示部140の処理に対応し、S17~S19が検証部18の処理に対応し、S26が侵害判定部124の処理に対応し、S27が攻撃推定部126の処理に対応する。
 また、異常攻撃DB130の構造が示す異常攻撃テーブルが、異常の種類と攻撃と評価値との対応テーブルに対応する。
 [4.他の実施形態]
 以上、本開示の実施形態について説明したが、本開示は前述の実施形態に限定されることなく、種々変形して実施することができる。
 (4a)前述した実施形態では、車外のサーバ100が、ログ分析部122と侵害判定部124と攻撃推定部126と検証指示部140の機能を備えているが、これに限定されるものではない。
 例えば、車両4が、検証部18の機能に加え、ログ分析部122と侵害判定部124と攻撃推定部126と検証指示部140とのうち、1部の機能を備えてもよい。
 あるいは、車両4がサーバ100と通信せず、検証部18とログ分析部122と侵害判定部124と攻撃推定部126と検証指示部140とのすべての機能を備えてもよい。
 (4b)前述した実施形態では、サーバ100を車外の情報処理装置とし、複数の車両4に対して攻撃の推定処理を行ったが、これに限定されるものではない。
 例えば、車外の情報処理装置としてサービスツールまたはパーソナルコンピュータを車両4に無線または有線で接続し、1台の車両4に対して1つの車外の情報処理装置で、車両4に対する攻撃を推定してもよい。
 (4c)前述した車載ユニットは、物理的な情報処理装置ではなく、VMのようにソフトウェアで構成される情報処理装置を対象としてもよい。
 (4d)前述した実施形態では、異常攻撃テーブルを使用して車両4に対する攻撃を推定したが、これに限るものではない。例えば、セキュリティログと完全性の検証結果とに基づいて、異常攻撃テーブルを使用せずに車両4に対する攻撃を推定してもよい。
 (4e)本開示に記載のECU10、20、30、40、50、60とサーバ100とその手法とは、コンピュータプログラムにより具体化された1つまたは複数の機能を実行するようにプログラムされたプロセッサおよびメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。
 あるいは、本開示に記載のECU10、20、30、40、50、60とサーバ100とその手法は、1つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。
 もしくは、本開示に記載のECU10、20、30、40、50、60とサーバ100とその手法は、1つまたは複数の機能を実行するようにプログラムされたプロセッサおよびメモリと1つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された1つ以上の専用コンピュータにより、実現されてもよい。
 また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されてもよい。ECU10、20、30、40、50、60とサーバ100とに含まれる各部の機能を実現する手法には、必ずしもソフトウェアが含まれている必要はなく、その全部の機能が、1つあるいは複数のハードウェアを用いて実現されてもよい。
 (4f)前述した実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、前述した実施形態の構成の一部を省略してもよい。また、前述した実施形態の構成の少なくとも一部を、他の前述した実施形態の構成に対して付加または置換してもよい。
 (4g)前述した車載の情報処理装置であるECU10、20、30、40、50、60と、車外の情報処理装置であるサーバ100との他、当該ECU10、20、30、40、50、60とサーバ100とを構成要素とする情報処理システム2、当該ECU10、20、30、40、50、60とサーバ100と、としてコンピュータを機能させるための情報処理プログラム、このプログラムを記録した半導体メモリ等の非遷移的実体的記録媒体、情報処理方法など、種々の形態で本開示を実現することもできる。
 [本明細書が開示する技術思想]
 [項目1]
 車両(4)で発生した異常を示すセキュリティログを取得するように構成されたログ取得部(112、S8)と、
 前記ログ取得部が取得する前記セキュリティログに基づいて、前記車両の検証部(18、S17~S19)に車載ユニット(10、20、30、40、50、60)の完全性の検証を指示するか否かを判定するように構成されたログ分析部(122、S10)と、
 前記検証部に前記車載ユニットの前記完全性の検証を指示すると前記ログ分析部が判定すると、前記完全性の検証を前記検証部に指示するように構成された検証指示部(140、S13)と、
 前記検証部による前記完全性の検証の検証結果に基づいて、前記車載ユニットが侵害されたか否かを判定するように構成された侵害判定部(124、S26)と、
 前記侵害判定部による侵害判定結果と前記セキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行うように構成された攻撃推定部(126、S27)と、
 を備える情報処理装置。
 [項目2]
 項目1に記載の情報処理装置であって、
 前記攻撃推定部は、侵害されたと前記侵害判定部が判定した前記車載ユニットについて侵害の起因となる前記攻撃の評価値を所定の上昇分高くし、侵害されていないと前記侵害判定部が判定した前記車載ユニットについて前記評価値を所定の低下分低くし、前記評価値に基づいて前記攻撃に関する推定を行うように構成されている、
 情報処理装置。
 [項目3]
 項目2に記載の情報処理装置であって、
 前記攻撃推定部は、侵害されたか否かを前記侵害判定部が判定できなかった前記車載ユニットについて、侵害されたと前記侵害判定部が判定した前記車載ユニットと物理的または論理的に関連性がある場合、前記上昇分よりも低い値で前記評価値を高くするように構成されている、
 情報処理装置。
 [項目4]
 項目2または3に記載の情報処理装置であって、
 前記車載ユニットと前記セキュリティログが示す前記異常の種類と前記攻撃と前記評価値との対応テーブルをさらに備え、
 前記攻撃推定部は、前記攻撃に対応する前記対応テーブルの前記評価値の合計に基づいて、前記攻撃に関する推定を行うように構成されている、
 情報処理装置。
 [項目5]
 項目1から4のいずれか1項に記載の情報処理装置であって、
 前記検証指示部は、前記ログ分析部が前記セキュリティログに基づいて前記検証部に前記完全性の検証を指示すると判定すると、すべての前記車載ユニットか、あるいは、前記セキュリティログが前記異常を示す前記車載ユニットか、あるいは、前記セキュリティログが前記異常を示す前記車載ユニット以外の前記車載ユニットか、あるいは、前記セキュリティログが前記異常を示す前記車載ユニットと前記セキュリティログが前記異常を示す前記車載ユニットに物理的または論理的な関連性を有する前記車載ユニット、に対する前記完全性の検証を前記検証部に指示するように構成されている、
 情報処理装置。
 [項目6]
 項目1から5のいずれか1項に記載の情報処理装置であって、
 前記検証指示部は、前記ログ分析部が前記セキュリティログに基づいて前記検証部に前記完全性の検証を指示すると判定すると、前記完全性の検証として、プログラムコードと、データと、ハードウェア構成と、ソフトウェア構成とのうち、少なくとも一つを検証するように前記検証部に指示するように構成されている、
 情報処理装置。
 [項目7]
 項目1から6のいずれか1項に記載の情報処理装置であって、
 前記侵害判定部は、前記セキュリティログが、前記車両の検出機能が前記異常を検出したことにより生成された場合、あるいは、前記車両の多層防御の第2層以降の防御機能が前記攻撃を防御したことにより生成された場合、のいずれか1個以上の条件が成立すると、前記完全性の検証を前記検証部に指示し、前記条件がいずれも成立しない場合、前記完全性の検証を前記検証部に指示しないように構成されている、
 情報処理装置。
 [項目8]
 項目1から7のいずれか1項に記載の情報処理装置であって、
 前記検証指示部は、前記検証部に前記完全性の検証を指示してから前記完全性の検証が終了するまでの間、前記検証部に対して前記完全性の検証を指示しないように構成されている、
 情報処理装置。
 [項目9]
 項目1から8のいずれか1項に記載の情報処理装置であって、
 前記侵害判定部は、前記完全性が損なわれている場合、前記車載ユニットは侵害されていると判定し、前記車載ユニットの前記完全性が保たれている場合、前記車載ユニットは侵害されていないと判定し、前記完全性を検証できなかった場合、前記車載ユニットが侵害されているか否かを判定できないと判定する、ように構成されている、
 情報処理装置。
 [項目10]
 項目1から項目9のいずれか1項に記載の情報処理装置としてコンピュータを機能させる情報処理プログラム。
 [項目11]
 車両(4)で発生した異常を示すセキュリティログを取得し、
 取得した前記セキュリティログに基づいて、前記車両の検証部に車載ユニットの完全性の検証を指示するか否かを判定し、
 前記検証部に前記完全性の検証を指示すると判定すると、前記検証部に前記車載ユニットの前記完全性の検証を指示し、
 前記検証部による前記完全性の検証の検証結果に基づいて、前記車載ユニットが侵害されたか否かを判定し、
 前記車載ユニットが侵害されたか否かの侵害判定結果と前記セキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行う、
 情報処理方法。
 [項目12]
 車載の情報処理装置(10、20、30、40、50、60)と前記車載の情報処理装置と通信する車外の情報処理装置(100)とを備える情報処理システムであって、
 前記車載の情報処理装置は、
 車両(4)で発生した異常を示すセキュリティログを生成するように構成された監視部(12、S1、S2)と、
 車載ユニット(10、20、30、40、50、60)の完全性の検証を行うように構成された検証部(18、S17~S19)と、
 を備え、
 前記車外の情報処理装置は、
 前記車載の情報処理装置から前記セキュリティログを取得するように構成されたログ取得部(112、S8)と、
 前記ログ取得部が取得する前記セキュリティログに基づいて、前記検証部に前記車載ユニットの前記完全性の検証を指示するか否かを判定するように構成されたログ分析部(122、S10)と、
 前記検証部に前記完全性の検証を指示すると前記ログ分析部が判定すると、前記完全性の検証を前記検証部に指示するように構成された検証指示部(140、S13)と、
 前記検証部による前記完全性の検証の検証結果に基づいて、前記車載ユニットが侵害されたか否かを判定するように構成された侵害判定部(124、S26)と、
 前記侵害判定部による侵害判定結果と前記セキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行うように構成された攻撃推定部(126、S27)と、
 を備える、
 情報処理システム。
 [項目13]
 車両(4)で発生した異常を示すセキュリティログを生成し、
 生成した前記セキュリティログを取得し、
 取得した前記セキュリティログに基づいて、車載ユニット(10、20、30、40、50、60)の完全性の検証を行うことを指示するか否かを判定し、
 前記車載ユニットの前記完全性の検証を行うことを指示すると判定すると、前記完全性の検証を行うことを指示し、
 前記完全性の検証を行うことを指示されると前記完全性の検証を行い、
 前記完全性の検証の検証結果に基づいて、前記車載ユニットが侵害されたか否かを判定し、
 前記車載ユニットが侵害されたか否かの侵害判定結果と前記セキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行う、
 情報処理方法。

Claims (13)

  1.  車両(4)で発生した異常を示すセキュリティログを取得するように構成されたログ取得部(112、S8)と、
     前記ログ取得部が取得する前記セキュリティログに基づいて、前記車両の検証部(18、S17~S19)に車載ユニット(10、20、30、40、50、60)の完全性の検証を指示するか否かを判定するように構成されたログ分析部(122、S10)と、
     前記検証部に前記車載ユニットの前記完全性の検証を指示すると前記ログ分析部が判定すると、前記完全性の検証を前記検証部に指示するように構成された検証指示部(140、S13)と、
     前記検証部による前記完全性の検証の検証結果に基づいて、前記車載ユニットが侵害されたか否かを判定するように構成された侵害判定部(124、S26)と、
     前記侵害判定部による侵害判定結果と前記セキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行うように構成された攻撃推定部(126、S27)と、
     を備える情報処理装置。
  2.  請求項1に記載の情報処理装置であって、
     前記攻撃推定部は、侵害されたと前記侵害判定部が判定した前記車載ユニットについて侵害の起因となる前記攻撃の評価値を所定の上昇分高くし、侵害されていないと前記侵害判定部が判定した前記車載ユニットについて前記評価値を所定の低下分低くし、前記評価値に基づいて前記攻撃に関する推定を行うように構成されている、
     情報処理装置。
  3.  請求項2に記載の情報処理装置であって、
     前記攻撃推定部は、侵害されたか否かを前記侵害判定部が判定できなかった前記車載ユニットについて、侵害されたと前記侵害判定部が判定した前記車載ユニットと物理的または論理的に関連性がある場合、前記上昇分よりも低い値で前記評価値を高くするように構成されている、
     情報処理装置。
  4.  請求項2に記載の情報処理装置であって、
     前記車載ユニットと前記セキュリティログが示す前記異常の種類と前記攻撃と前記評価値との対応テーブルをさらに備え、
     前記攻撃推定部は、前記攻撃に対応する前記対応テーブルの前記評価値の合計に基づいて、前記攻撃に関する推定を行うように構成されている、
     情報処理装置。
  5.  請求項1に記載の情報処理装置であって、
     前記検証指示部は、前記ログ分析部が前記セキュリティログに基づいて前記検証部に前記完全性の検証を指示すると判定すると、すべての前記車載ユニットか、あるいは、前記セキュリティログが前記異常を示す前記車載ユニットか、あるいは、前記セキュリティログが前記異常を示す前記車載ユニット以外の前記車載ユニットか、あるいは、前記セキュリティログが前記異常を示す前記車載ユニットと前記セキュリティログが前記異常を示す前記車載ユニットに物理的または論理的な関連性を有する前記車載ユニット、に対する前記完全性の検証を前記検証部に指示するように構成されている、
     情報処理装置。
  6.  請求項1に記載の情報処理装置であって、
     前記検証指示部は、前記ログ分析部が前記セキュリティログに基づいて前記検証部に前記完全性の検証を指示すると判定すると、前記完全性の検証として、プログラムコードと、データと、ハードウェア構成と、ソフトウェア構成とのうち、少なくとも一つを検証するように前記検証部に指示するように構成されている、
     情報処理装置。
  7.  請求項1に記載の情報処理装置であって、
     前記侵害判定部は、前記セキュリティログが、前記車両の検出機能が前記異常を検出したことにより生成された場合、あるいは、前記車両の多層防御の第2層以降の防御機能が前記攻撃を防御したことにより生成された場合、のいずれか1個以上の条件が成立すると、前記完全性の検証を前記検証部に指示し、前記条件がいずれも成立しない場合、前記完全性の検証を前記検証部に指示しないように構成されている、
     情報処理装置。
  8.  請求項1に記載の情報処理装置であって、
     前記検証指示部は、前記検証部に前記完全性の検証を指示してから前記完全性の検証が終了するまでの間、前記検証部に対して前記完全性の検証を指示しないように構成されている、
     情報処理装置。
  9.  請求項1に記載の情報処理装置であって、
     前記侵害判定部は、前記完全性が損なわれている場合、前記車載ユニットは侵害されていると判定し、前記車載ユニットの前記完全性が保たれている場合、前記車載ユニットは侵害されていないと判定し、前記完全性を検証できなかった場合、前記車載ユニットが侵害されているか否かを判定できないと判定する、ように構成されている、
     情報処理装置。
  10.  請求項1から請求項9のいずれか1項に記載の情報処理装置としてコンピュータを機能させる情報処理プログラム。
  11.  車両(4)で発生した異常を示すセキュリティログを取得し、
     取得した前記セキュリティログに基づいて、前記車両の検証部に車載ユニットの完全性の検証を指示するか否かを判定し、
     前記検証部に前記完全性の検証を指示すると判定すると、前記検証部に前記車載ユニットの前記完全性の検証を指示し、
     前記検証部による前記完全性の検証の検証結果に基づいて、前記車載ユニットが侵害されたか否かを判定し、
     前記車載ユニットが侵害されたか否かの侵害判定結果と前記セキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行う、
     情報処理方法。
  12.  車載の情報処理装置(10、20、30、40、50、60)と前記車載の情報処理装置と通信する車外の情報処理装置(100)とを備える情報処理システムであって、
     前記車載の情報処理装置は、
     車両(4)で発生した異常を示すセキュリティログを生成するように構成された監視部(12、S1、S2)と、
     車載ユニット(10、20、30、40、50、60)の完全性の検証を行うように構成された検証部(18、S17~S19)と、
     を備え、
     前記車外の情報処理装置は、
     前記車載の情報処理装置から前記セキュリティログを取得するように構成されたログ取得部(112、S8)と、
     前記ログ取得部が取得する前記セキュリティログに基づいて、前記検証部に前記車載ユニットの前記完全性の検証を指示するか否かを判定するように構成されたログ分析部(122、S10)と、
     前記検証部に前記完全性の検証を指示すると前記ログ分析部が判定すると、前記完全性の検証を前記検証部に指示するように構成された検証指示部(140、S13)と、
     前記検証部による前記完全性の検証の検証結果に基づいて、前記車載ユニットが侵害されたか否かを判定するように構成された侵害判定部(124、S26)と、
     前記侵害判定部による侵害判定結果と前記セキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行うように構成された攻撃推定部(126、S27)と、
     を備える、
     情報処理システム。
  13.  車両(4)で発生した異常を示すセキュリティログを生成し、
     生成した前記セキュリティログを取得し、
     取得した前記セキュリティログに基づいて、車載ユニット(10、20、30、40、50、60)の完全性の検証を行うことを指示するか否かを判定し、
     前記車載ユニットの前記完全性の検証を行うことを指示すると判定すると、前記完全性の検証を行うことを指示し、
     前記完全性の検証を行うことを指示されると前記完全性の検証を行い、
     前記完全性の検証の検証結果に基づいて、前記車載ユニットが侵害されたか否かを判定し、
     前記車載ユニットが侵害されたか否かの侵害判定結果と前記セキュリティログとに基づいて、侵害の起因となる攻撃に関する推定を行う、
     情報処理方法。
     
PCT/JP2023/034946 2022-09-30 2023-09-26 情報処理装置、情報処理システム、情報処理プログラム、情報処理方法 Ceased WO2024071120A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP23872343.1A EP4597345A4 (en) 2022-09-30 2023-09-26 INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING PROGRAM AND INFORMATION PROCESSING METHOD
CN202380069358.7A CN119968631A (zh) 2022-09-30 2023-09-26 信息处理装置、信息处理系统、信息处理程序、信息处理方法
US19/088,590 US20250225237A1 (en) 2022-09-30 2025-03-24 Information processing device, information processing system, method and storage medium thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022158053A JP7835142B2 (ja) 2022-09-30 2022-09-30 情報処理装置、情報処理システム、情報処理プログラム、情報処理方法
JP2022-158053 2022-09-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US19/088,590 Continuation US20250225237A1 (en) 2022-09-30 2025-03-24 Information processing device, information processing system, method and storage medium thereof

Publications (1)

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

Family

ID=90478059

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/034946 Ceased WO2024071120A1 (ja) 2022-09-30 2023-09-26 情報処理装置、情報処理システム、情報処理プログラム、情報処理方法

Country Status (5)

Country Link
US (1) US20250225237A1 (ja)
EP (1) EP4597345A4 (ja)
JP (1) JP7835142B2 (ja)
CN (1) CN119968631A (ja)
WO (1) WO2024071120A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119996048A (zh) * 2025-03-12 2025-05-13 北京天融信网络安全技术有限公司 机框式设备攻击报文的收集方法、查询方法、计算机装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016149655A (ja) * 2015-02-12 2016-08-18 富士通株式会社 管理方法、管理プログラム、管理装置、管理システムおよび情報処理方法
WO2020153122A1 (ja) * 2019-01-21 2020-07-30 エヌ・ティ・ティ・コミュニケーションズ株式会社 車両セキュリティ監視装置、方法及びプログラム
JP2020123307A (ja) 2019-01-29 2020-08-13 オムロン株式会社 セキュリティ装置、攻撃特定方法、及びプログラム
WO2022014193A1 (ja) * 2020-07-14 2022-01-20 株式会社デンソー ログ管理装置及びセキュリティ攻撃検知・分析システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7380473B2 (ja) * 2020-07-29 2023-11-15 株式会社デンソー セキュリティ監視システム
JP7517223B2 (ja) * 2021-03-29 2024-07-17 株式会社デンソー 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016149655A (ja) * 2015-02-12 2016-08-18 富士通株式会社 管理方法、管理プログラム、管理装置、管理システムおよび情報処理方法
WO2020153122A1 (ja) * 2019-01-21 2020-07-30 エヌ・ティ・ティ・コミュニケーションズ株式会社 車両セキュリティ監視装置、方法及びプログラム
JP2020123307A (ja) 2019-01-29 2020-08-13 オムロン株式会社 セキュリティ装置、攻撃特定方法、及びプログラム
WO2022014193A1 (ja) * 2020-07-14 2022-01-20 株式会社デンソー ログ管理装置及びセキュリティ攻撃検知・分析システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4597345A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119996048A (zh) * 2025-03-12 2025-05-13 北京天融信网络安全技术有限公司 机框式设备攻击报文的收集方法、查询方法、计算机装置

Also Published As

Publication number Publication date
EP4597345A1 (en) 2025-08-06
EP4597345A4 (en) 2025-12-31
JP2024051738A (ja) 2024-04-11
JP7835142B2 (ja) 2026-03-25
CN119968631A (zh) 2025-05-09
US20250225237A1 (en) 2025-07-10

Similar Documents

Publication Publication Date Title
CN107431709B (zh) 攻击识别方法、攻击识别装置和用于汽车的总线系统
US11971982B2 (en) Log analysis device
US20190303567A1 (en) Detecting data anomalies on a data interface using machine learning
JP7176569B2 (ja) 情報処理装置、ログ分析方法及びプログラム
US12039050B2 (en) Information processing device
WO2021260984A1 (ja) 情報処理装置、情報処理方法及びプログラム
CN115134109A (zh) 攻击分析器、攻击分析方法和存储介质
CN111066303A (zh) 与机动车辆驾驶员辅助系统相关的方法
US12341750B2 (en) Arrangement of cyber security and prognostics, coexisting on a single platform
WO2021084961A1 (ja) 分析装置及び分析方法
US12511377B2 (en) Information processing device and method for controlling information processing device
CN115270128A (zh) 安全系统和安全方法
JP7537382B2 (ja) 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
US20250225237A1 (en) Information processing device, information processing system, method and storage medium thereof
JP7523855B2 (ja) 検知ルール出力方法、及び、セキュリティシステム
WO2019207764A1 (ja) 抽出装置、抽出方法および記録媒体、並びに、検知装置
JP7509091B2 (ja) 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
JP2020096320A (ja) 不正信号処理装置
JP2024051327A (ja) 更新装置、更新方法、及び更新プログラム
CN107608339B (zh) 汽车车机的接口防护方法及装置
CN106789932A (zh) 一种基于组件跳变的网络系统安全防护方法及装置
EP3661149A1 (en) Test system and method for data analytics
US20250156549A1 (en) Verification system, verification method, and recording medium
US20250247411A1 (en) Attack analysis device, attack analysis method, and attack analysis program
US12621318B2 (en) System for intrusion detection using a vehicle electrical system

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202380069358.7

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2023872343

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2023872343

Country of ref document: EP

Effective date: 20250430

WWP Wipo information: published in national office

Ref document number: 202380069358.7

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2023872343

Country of ref document: EP