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

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

Info

Publication number
WO2024071049A1
WO2024071049A1 PCT/JP2023/034764 JP2023034764W WO2024071049A1 WO 2024071049 A1 WO2024071049 A1 WO 2024071049A1 JP 2023034764 W JP2023034764 W JP 2023034764W WO 2024071049 A1 WO2024071049 A1 WO 2024071049A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
log
attack
electronic control
control system
Prior art date
Application number
PCT/JP2023/034764
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 JP2023124717A external-priority patent/JP2024052533A/ja
Application filed by 株式会社デンソー filed Critical 株式会社デンソー
Publication of WO2024071049A1 publication Critical patent/WO2024071049A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures

Definitions

  • This disclosure 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 discloses a security device that collects data on detected anomalies and compares the combination of items in which an anomaly was detected with an anomaly detection pattern that is preset for each attack to identify the type of attack that corresponds to the anomaly.
  • the inventors of the present application are actively researching technology for analyzing cyber attacks against vehicles based on actual anomaly information indicating anomalies detected in an electronic control system built into a vehicle, and predicted anomaly information indicating anomalies predicted to occur in the electronic control system if the vehicle is attacked. It is desirable for this type of technology to be able to analyze cyber attacks against vehicles with high accuracy.
  • One aspect of the present disclosure provides technology that can analyze cyber attacks against vehicles with high accuracy.
  • One aspect of the present disclosure is an attack analysis device configured to analyze attacks via a network against an electronic control system built in a vehicle, the device including a determination unit.
  • the determination unit is configured to determine whether or not the correspondence information matches a preset attack type, and to determine whether or not a target element has been violated.
  • the correspondence information is information that associates a system log, which is a log of the electronic control system, with a communication log, which is a log of communication between the electronic control system and the outside of the vehicle.
  • the target element represents at least one of a component of the electronic control system and the electronic control system.
  • FIG. 1 is a block diagram showing a configuration of an attack analysis system according to a first embodiment.
  • FIG. 2 is a diagram showing an example of an arrangement of an electronic control device in an electronic control system.
  • FIG. 2 is a diagram illustrating an example of data stored in a vehicle log DB.
  • FIG. 2 is a block diagram showing a configuration of an inspection unit.
  • FIG. 5A is a diagram showing an example of data of a communication analysis result table stored in a communication detection log DB of the first embodiment
  • FIG. 5B is a diagram showing an example of data of a malware analysis result table stored in the communication detection log DB.
  • FIG. 2 is a block diagram showing a configuration of an analysis unit according to the first embodiment.
  • FIG. 11 is a diagram illustrating an example of predicted abnormality information.
  • FIG. 11 is a diagram illustrating another example of predicted anomaly information.
  • FIG. 11 is a sequence diagram of an attack analysis process according to the first embodiment.
  • 10A is a diagram showing an example of information obtained by a communication data monitoring unit
  • FIG. 10B is a diagram showing an example of monitoring management information
  • FIG. 10C is a diagram showing information inspected by an inspection unit.
  • FIG. 13 is a block diagram showing a configuration of an attack analysis system according to a second embodiment.
  • FIG. 13 is a block diagram showing a configuration of an analysis unit according to a second embodiment.
  • FIG. 11 is a sequence diagram of an attack analysis process according to the second embodiment. 13 is a flowchart illustrating a log association process according to the second embodiment.
  • FIG. 13 is a first portion of a flowchart illustrating an intermediary communication determination process of the log association process according to the second embodiment. 13 is a second part of a flowchart showing the mediated communication determination process according to the second embodiment.
  • FIG. 11 is a diagram illustrating an example of a communication intermediation history according to the second embodiment.
  • FIG. 11 is a diagram showing an example of function information (for example, communication-related functions) according to the second embodiment.
  • 13 is a diagram illustrating an example of data of a communication analysis result table stored in a communication detection log DB of the second embodiment.
  • FIG. 10 is a flowchart showing an infringement determination process according to a second embodiment. 13 is a flowchart showing an intentional communication determination process of the infringement determination process of the second embodiment.
  • FIG. 13 is a diagram illustrating an example of data of a communication analysis result table stored in a communication detection log DB according to the third embodiment.
  • 13 is a first portion of a flowchart illustrating an intermediary communication determination process in the log association process according to the fourth embodiment.
  • 23 is a second part of a flowchart showing the mediated communication determination process according to the fourth embodiment.
  • FIG. 13 is a diagram illustrating an example of a communication intermediation history according to the fourth embodiment.
  • FIG. 13 is a diagram showing an example of function information (for example, communication-related functions) according to the fourth embodiment.
  • FIG. 13 illustrates an example of an application log.
  • 13 is a flowchart showing an intentional communication determination process of the infringement determination process of the fourth embodiment.
  • FIG. 13 is a block diagram showing a configuration of an analysis unit according to a fifth embodiment.
  • FIG. 23 is a sequence diagram of an attack analysis process according to the fifth embodiment.
  • [1-1. Configuration] 1 is a system for analyzing attacks via a network against an electronic control system 2 built in a vehicle 10.
  • An attack via a network means a so-called cyber attack.
  • the attack analysis system 1 includes an electronic control system 2 and an external vehicle device 4.
  • the electronic control system 2 includes multiple electronic control units (hereinafter, ECUs).
  • ECUs electronice control units
  • the electronic control system 2 includes ECUs 2a to 2f.
  • the ECUs 2a to 2f are connected via an in-vehicle network using CAN (registered trademark) or Ethernet (registered trademark).
  • CAN is an abbreviation for Controller Area Network.
  • the ECUs 2a to 2f each include a monitoring unit 3a to 3f.
  • the monitoring units 3a to 3f are security sensors that monitor the programs executed by the CPUs in the ECUs and the networks to which the ECUs are connected.
  • the ECUs 2a to 2f generate a system log when executing processing based on the programs.
  • the system log is a log of the electronic control system 2, more specifically, a log related to the electronic control system 2 generated by the electronic control system 2.
  • the system log includes a security log, a communication intermediation history described in detail in the second embodiment and onwards, an application log described in detail in the fourth embodiment and onwards, and the like, but does not include a communication log, which will be described later.
  • the system log is also called a vehicle log when used away from the vehicle 10.
  • the security log records information indicating the abnormality detected by the electronic control system 2, such as the time the abnormality was detected, the abnormality position indicating where the abnormality occurred, and the identification information of the security sensor that detected the abnormality.
  • the electronic control system 2 employs a multi-layer defense to enhance security against attacks.
  • multi-layer defense security functions against attacks are provided hierarchically and in multiple layers, so that, for example, even if the first layer is breached in the event of an attack, the second layer may be able to defend against the attack.
  • This configuration enhances the defensive capabilities of the electronic control system 2.
  • the electronic control system 2 has three layers of defense.
  • the electronic control system 2 is equipped with a DLC 2g.
  • DLC is an abbreviation for Data Link Connector.
  • ECU 2e, ECU 2f, and DLC 2g belong to the first layer
  • ECU 2d belongs to the second layer
  • ECU 2a and ECU 2b belong to the third layer.
  • the ECU 2c is omitted in FIG. 2.
  • the number of layers of defense is not limited to three, and the system may have, for example, four or more layers of defense.
  • the ECU 2d may also include an analysis unit 3g and a transmission unit 3h that transmits data to other ECUs.
  • the analysis unit 3g manages the security log in the electronic control system 2, and may detect certain abnormal behavior before outputting the security log from the vehicle 10 to the external vehicle device 4.
  • the ECU 2e also includes a communication unit 3i, which transmits the security log of each ECU to a communication data monitoring unit 41, which will be described later.
  • the ECU 2f also includes an app 3j, and executes any app function.
  • the external vehicle device 4 is a calculation (i.e., computer) device installed outside the vehicle 10, and is mainly composed of a well-known computer having a CPU, ROM, RAM, flash memory, etc.
  • the CPU executes a program stored in the ROM, which is a non-transient physical recording medium. By executing the program, a method corresponding to the program is performed.
  • the external vehicle device 4 may include one computer or multiple computers.
  • the method of realizing the functions of each part included in the external vehicle device 4 is not limited to software, and some or all of the functions may be realized using one or more pieces of hardware.
  • the electronic circuits may be realized by digital circuits, analog circuits, or a combination of these.
  • the external vehicle device 4 includes a communication data monitoring unit 41, a vehicle log receiving unit 42, a vehicle log DB 43, a detection condition DB 44, an inspection unit 45, a communication detection log DB 46, and an analysis unit 47.
  • the communication data monitoring unit 41 is configured, for example, as a proxy that acts as an agent for access inside and outside the network, or as a full packet capture device that can collect all packets that pass through.
  • the communication data monitoring unit 41 relays and monitors communication between each vehicle 10 and an external site 5 outside the vehicle 10, thereby generating a communication log for the vehicle 10.
  • the communication data monitoring unit 41 is a proxy and the vehicle 10 also has a proxy function, for example, the communication between the vehicle 10 and the external site 5 can be configured to pass through the communication data monitoring unit 41 by specifying the communication data monitoring unit 41 as the next destination using the proxy function of the vehicle 10.
  • the communication data monitoring unit 41 is a full packet capture device
  • the communication between the vehicle 10 and the external site 5 can be configured to pass through the communication data monitoring unit 41 by setting a transfer policy for a firewall provided in the vehicle 10.
  • the communication log is a log generated by the external device 4 and is a log related to communication between the electronic control system 2 and the external site 5 outside the vehicle 10. For example, as shown in FIG. 10A, the communication log records the time of communication, the source of communication (including IP address), the destination of communication (including IP address and URL), and the content of the communication.
  • the communication data monitoring unit 41 handles monitoring management information, such as that shown in FIG. 10B, in addition to the communication log.
  • the monitoring management information is stored, for example, in the vehicle log DB 43.
  • the monitoring management information includes, for example, the vehicle ID, the start time and end time of communication, the IP address of the communication source, the device of the communication source, etc.
  • the monitoring and management information is obtained by the vehicle 10 actively notifying the external vehicle device 4 when, for example, the ECU 2e is started or the IP address used by the communication unit 3i is changed. If the communication data monitoring unit 41 is a proxy, the monitoring and management information can also be obtained and generated from authentication information at the start of communication and vehicle configuration management information.
  • the vehicle log receiver 42 receives security logs from each vehicle 10 and registers them in the vehicle log DB 43.
  • the vehicle log DB 43 is a database that holds security logs collected from each vehicle 10. As shown in FIG. 3, the vehicle log DB 43 stores data that is linked to the vehicle ID, detection time, detection location, and sensor ID.
  • the detection condition DB 44 is a database that holds information used by the structural analysis unit 451 of the inspection unit 45.
  • the detection condition DB 44 stores threat information, signatures, behavior patterns, etc.
  • Threat information is known malicious communication destinations and file hash values.
  • Signatures are pattern information that indicates malicious communication data, file data, and program functions.
  • Behavior patterns are information that indicates the behavior patterns of malicious files, such as traces of malicious behavior and malware.
  • the inspection unit 45 analyzes the communication log and identifies the destination of malicious communication and the content of the malicious communication.
  • the communication log used by the inspection unit 45 for analysis is, for example, information obtained by extracting necessary information from the communication log shown in FIG. 10A and the monitoring management information shown in FIG. 10B, as shown in FIG. 10C.
  • This information may include, for example, the vehicle ID, the time of communication, the device from which the communication originated, the destination of communication (including IP address and URL), and the content (type) of the communication data.
  • the inspection unit 45 includes a structure analysis unit 451, a communication destination analysis unit 452, and a communication content analysis unit 453.
  • the structure analysis unit 451 extracts information to be analyzed by the structure analysis unit 451 and the communication destination analysis unit 452 from the communication log. Specifically, the structure analysis unit 451 analyzes the structure of the URL and extracts IP addresses and domain names, and analyzes the structure of the communication content and extracts data and files to be analyzed by the communication destination analysis unit 452.
  • the communication destination analysis unit 452 identifies malicious communication destinations. Specifically, the communication destination analysis unit 452 determines whether a communication destination recorded in the communication log or a communication destination extracted by the structure analysis unit 451 matches a malicious communication destination registered in the detection condition DB 44. For example, IP addresses, domains, URLs, etc. are registered as malicious communication destinations. In addition, it also determines whether a communication destination in the communication log matches a communication destination of a file determined to be malicious by the communication content analysis unit 453.
  • the communication content analysis unit 453 identifies malicious communication content. Specifically, the communication content analysis unit 453 performs surface analysis, static analysis, and dynamic analysis on the data and files extracted by the structure analysis unit 451, and determines whether the analysis results match the content registered in the detection condition DB 44.
  • Static analysis involves collecting information about the functions and characteristic byte sequences contained in the malware's program code. Dynamic analysis also targets potential functions that do not operate.
  • Dynamic analysis involves collecting information on what traces are left behind and what communication occurs when program code actually runs. The program code is actually run and its behavior is analyzed.
  • the communication detection log DB46 is a database that holds communication logs analyzed by the communication destination analysis unit 452 or the communication content analysis unit 453.
  • a communication log that is determined to match the detection conditions by the communication destination analysis unit 452 or the communication content analysis unit 453 is also referred to as a communication detection log.
  • the communication detection log DB46 stores a communication analysis result table and a malware analysis result table.
  • the communication analysis result table stores data that is linked to the vehicle ID, communication time, communication source, communication destination, detection reason, communication content, and malware ID.
  • the malware analysis result table stores data that is linked to the malware ID, context type, and context.
  • the analysis unit 47 includes a log association unit 471, an infringement determination unit 472, an attack/anomaly relationship table storage unit 473, an estimation unit 474, and an output unit 475.
  • the log association unit 471 associates the logs stored in the vehicle log DB 43 with the logs stored in the communication detection log DB 46.
  • the log association unit 471 associates the logs by the following process, and outputs the associated log, which is the correspondence information, to the infringement determination unit 472.
  • the log association unit 471 extracts logs whose communication times are within a predetermined time frame T1 from the communication detection log DB 46.
  • the log association unit 471 also extracts logs whose detection times are within a predetermined time frame T1 from the vehicle log DB 43.
  • the time frame T1 is one of multiple time ranges separated by a predetermined time.
  • the log association unit 471 associates each log based on the following criteria:
  • the vehicle ID in the communication detection log DB 46 matches the vehicle ID in the vehicle log DB 43.
  • the communication time in the communication detection log DB 46 and the detection time in the vehicle log DB 43 are within a predetermined time frame T2.
  • the time frame T2 is a time range different from the time frame T1, for example, a time range in units of a few seconds, and is a value smaller than the time frame T1.
  • the communication detection log and the security log are associated so that they are synchronized.
  • the infringement determination unit 472 determines whether the corresponding information matches a preset attack type.
  • the infringement determination unit 472 makes a determination for each piece of corresponding information. Specifically, the infringement determination unit 472 identifies the position where the abnormality occurred in the electronic control system 2 based on whether the corresponding information matches one of a number of attack types.
  • the infringement determination unit 472 can then classify the position where the abnormality occurred as either a position that has been infringed by an attack, or a position that is highly likely to have been infringed by an attack. In other words, the infringement determination unit 472 analyzes the corresponding information and determines the infringement probability, which is the probability that the ECU that is the source of the communication has been infringed.
  • the infringement probability includes two types of probability: when it is determined that there is a high possibility that an infringement has occurred, and when it is determined that an infringement has occurred.
  • the multiple attack types may include at least one of an attack type related to the communication destination and an attack type related to the communication content.
  • the attack type related to the communication destination may include information indicating the communication destination itself, such as an IP address, domain name, or URL, and information indicating the type of communication destination, such as a C&C server.
  • the attack type related to the communication content may include, for example, information indicating the communication content itself, such as transmitted data or received data, as shown in FIG. 5B, and information indicating the type of communication content, such as downloading malware.
  • malware functions other than communication may also be included. Examples of malware functions other than communication may include information regarding the operation of malware harmful to the vehicle, such as disabling the function of a security sensor.
  • the security sensor may include security software.
  • the infringement determination unit 472 determines that the ECU that is the source of communication has been infringed in the following cases:
  • the intrusion determination unit 472 also determines that the ECU that is the source of the communication is highly likely to have been intruded into in the following cases:
  • the ECU that is the source of communication falls under both the cases where it has been compromised and the cases where it is highly likely to have been compromised, it is determined that it has been compromised.
  • the first row of the communication analysis result table records that ECU-1 is accessing a malicious site, so ECU-1 falls under the case where it is highly likely to have been compromised.
  • ECU-1 is communicating with communication destination C, which is obtained from the analysis results of malware A and is recorded in the first row of the malware analysis result table. Therefore, ECU-1 also falls under the case where it has been compromised. In this case, the case where it has been compromised takes priority, and ECU-1 is determined to have been compromised.
  • the attack/anomaly relationship table storage unit 473 holds predicted anomaly information indicating a combination of anomalies predicted to occur in the electronic control system 2 when attacked for each type of attack.
  • the predicted anomaly information shown in FIG. 7 and FIG. 8 indicates, for each type of attack, an anomaly that will occur when the electronic control system 2 is attacked and the location where the anomaly will occur. As shown in FIG. 7 and FIG. 8, it is assumed that anomalies will occur at multiple locations when attacked.
  • the predicted anomaly information further indicates the correspondence between the type of attack and the assumed starting point and target of the attack when attacked. Note that in FIG. 7 and FIG. 8, the upper diagram shows the predicted anomaly information held in the attack/anomaly relationship table storage unit 473, and the lower diagram shows the predicted anomaly information after being changed by the estimation unit 474.
  • the electronic control system 2 predicts that abnormalities A and C will occur in ECU-1, which is located in the first layer.
  • the starting point of Attack A is the location indicated by 0x00
  • the target of the attack is the location indicated by 0x01. Note that for the starting point and target of the attack, 0x00 indicates outside the vehicle, and 0x01 to 0x05 indicate ECU-1 to ECU-5, respectively.
  • the estimation unit 474 estimates the type of attack by determining the similarity between the actual anomaly information and the predicted anomaly information.
  • the actual anomaly information is data that indicates a combination of anomalies that have actually been detected, generated based on security logs. Specifically, the actual anomaly information has items similar to the anomaly contents of the predicted anomaly information in Figures 7 and 8, and is a data string that is expressed as 1 if there is a security log indicating that an anomaly has actually been detected at the corresponding position, and 0 if there is not.
  • Estimating the type of attack can also be thought of as estimating the attack path. This is because the "position of anomalies predicted to occur in the event of an attack" shown in each row of the table of predicted anomaly information can be thought of as constituting the attack path.
  • the estimation unit 474 uses the correspondence information to change the predicted anomaly information before determining the similarity between the actual anomaly information and the predicted anomaly information.
  • the estimation unit 474 changes the predicted anomaly information by performing the following processing.
  • [C1] Increase the coefficient of the table entry corresponding to the ECU determined to have a high probability of being compromised by a specified number. For example, as shown in Figure 7, if it is determined that ECU-3 has a high probability of being compromised, the coefficients of abnormalities A and B predicted to occur in ECU-3 are increased by 1, changing them from 1 to 2.
  • [C2] Increase the coefficient of the table entry corresponding to the ECU determined to have been compromised by a specified number.
  • the coefficients of HIDS anomalies and authentication anomalies predicted to occur in ECU-2 are set to zero.
  • the coefficient of the CAN-IDS anomaly of ECU-3 is increased by 1, changing it from 1 to 2.
  • the estimation unit 474 performs the above process and estimates the type of attack using the predicted anomaly information with the modified coefficients.
  • the actual anomaly information is compared with the predicted anomaly information, and the row in the table with the closest combination is identified. Specifically, the inner product of the vector representation of the data string of the actual anomaly information and the vector representation of the data string of the predicted anomaly information is calculated, and 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 in the table of the predicted anomaly information with the highest result is extracted.
  • the estimation unit 474 may further estimate the starting point of the attack and the target of the attack in addition to estimating the type of attack. Since the predicted anomaly information stores the type of attack in association with the starting point of the attack and the target of the attack, the estimation unit 474 can estimate the starting point of the attack and the target of the attack using the predicted anomaly information. Note that an ECU determined to have been infringed by the infringement determination unit 472 may be regarded as the location of the damage, regardless of the result of the estimation unit 474. Looking at the example in Figure 8, for example, if the actual measurement anomaly information has the highest similarity to the row for attack D, it can be estimated that attack D was performed from ECU-1 to ECU-3. In this way, by estimating the starting point of the attack and the target of the attack, the route of the attack can also be estimated.
  • the output unit 475 outputs the type of attack estimated by the estimation unit 474 to an attack countermeasure device (not shown) that takes measures against the attack.
  • the log association unit 471 acquires a security log from the vehicle log DB 43 and a communication detection log from the communication detection log DB 46. Then, the log association unit 471 associates the security log with the communication detection log, and outputs the associated log, that is, the correspondence information, to the intrusion determination unit 472.
  • the infringement determination unit 472 analyzes the corresponding information and determines the likelihood of an infringement of the ECU that is the communication source.
  • the infringement determination unit 472 outputs the determination result, including the likelihood of an infringement, to the estimation unit 474.
  • the estimation unit 474 acquires the predicted anomaly information stored in the attack/anomaly relationship table storage unit 473, and updates the predicted anomaly information using the judgment result regarding the corresponding information.
  • the estimation unit 474 estimates the type of attack by determining the similarity between the actual anomaly information, which indicates a combination of anomalies that have actually been detected based on the security log, and the predicted anomaly information updated in S103.
  • the estimation unit 474 outputs the estimated type of attack to the output unit 475.
  • the output unit 475 outputs the type of attack to the attack countermeasure device.
  • the off-vehicle device 4 is configured to analyze attacks against the electronic control system 2 built in the vehicle 10 via a network.
  • the off-vehicle device 4 includes an analysis unit 47.
  • the analysis unit 47 is configured to determine whether or not correspondence information that associates a system log with a communication log matches a preset attack type, and is configured to determine whether or not a target element has been compromised.
  • a configuration is exemplified in which it is determined whether the corresponding information matches a preset attack type.
  • the corresponding information is information in which a security log and a communication detection log are associated with each other.
  • the security log it is possible to determine whether the attack type matches by taking into account the communication detection log, which contains the attack code and malware characteristics that actually caused the abnormality. Therefore, it is possible to analyze cyber attacks against vehicles with high accuracy compared to a configuration in which it is determined whether the attack type matches using only the security log.
  • a configuration is exemplified in which the estimation unit 474 updates the predicted anomaly information using the determination result on the corresponding information determined by the intrusion determination unit 472, and estimates the type of attack by determining the similarity between the updated predicted anomaly information and the actual anomaly information.
  • the estimation unit 474 updates the predicted anomaly information using the determination result on the corresponding information determined by the intrusion determination unit 472, and estimates the type of attack by determining the similarity between the updated predicted anomaly information and the actual anomaly information.
  • the infringement determination unit 472 can classify the infringement probability of the ECU that is the source of communication depending on whether it matches one of a number of attack types.
  • the process of changing the predicted anomaly information can be made different depending on the infringement probability. Specifically, by making the increase rate of the coefficient of the table entry for an ECU determined to have been infringed different from the increase rate of the coefficient of the table entry for an ECU determined to have a high possibility of being infringed, more reliable predicted anomaly information can be generated.
  • a configuration is exemplified in which a communication detection log and a security log are associated so as to be synchronized based on the time at which an abnormality occurred, which is included in the security log, and the time of communication, which is included in the communication detection log.
  • the predicted anomaly information is information that uses coefficients to represent, for each type of attack, the location where an anomaly is predicted to occur in the electronic control system 2 if an attack occurs, and an example is given of a configuration in which the combination of predicted anomalies can be changed by changing the coefficients. With such a configuration, the likelihood of the combination of predicted anomalies can be expressed by the coefficients. In addition, the similarity can be easily visualized by vectorizing the coefficients and calculating the similarity.
  • the electronic control system 2 has a three-layer structure, and the estimation unit 474 estimates that other ECUs located in the same layer as an ECU in which an abnormality is predicted to occur have not been compromised. With such a configuration, it becomes clearer that an ECU in which an abnormality is predicted to occur is an entry point for an attack, and more reliable predicted abnormality information can be generated.
  • the second embodiment differs from the first embodiment in that it further includes communication intermediation units 3m, 3n and a function information DB 48.
  • the communication intermediation units 3m, 3n are configured to mediate communications within the vehicle.
  • the second embodiment also differs from the first embodiment in that it does not require the attack/anomaly relationship table storage unit 473 and the estimation unit 474. Note that in the second embodiment, the processing executed by the estimation unit 474 is also unnecessary.
  • the vehicle log receiving unit 42 of the external vehicle device 4 receives communication intermediation history from each vehicle 10 and registers it in the vehicle log DB 43.
  • an ECU 2d belonging to the second layer includes a communication intermediate unit 3m
  • an ECU 2e belonging to the first layer includes a communication intermediate unit 3n
  • An ECU 2f belonging to the first layer may further include a communication intermediate unit 3p and may further include an external device 5a.
  • the external device 5a may be configured as a smartphone.
  • the communication mediation units 3m and 3n are configured to mediate communications desired by other ECUs such as ECUs 2a to 2c, and to communicate with the outside of the vehicle via the communication unit 3i of other ECUs such as ECU 2e.
  • the function information DB 48 is provided in, for example, the external vehicle device 4, as shown in FIG. 11.
  • the function information DB 48 is a database that stores information about the communication-related functions of each of the ECUs 2a-2f, etc. in the vehicle 10 (for example, function information described below).
  • the communication-related functions may include a communication destination designation function and a communication intermediation function described below, as well as information about communication protocols, communication speeds, etc.
  • the log association unit 471 associates the logs stored in the vehicle log DB 43, the logs stored in the communication detection log DB 46, and the information stored in the function information DB 48.
  • the logs stored in the vehicle log DB 43 include communication mediation history within the vehicle. In this case, the logs stored in the vehicle log DB 43 do not need to include the logs of the security sensors.
  • this embodiment is configured not to use the log of the security sensor of the vehicle 10. Therefore, even if an abnormality cannot be detected using the security sensor, if a communication detection log can be obtained, it is possible to determine from the result that the communication source has been compromised.
  • cases in which an abnormality cannot be detected using the sensor include when the security sensor of the vehicle 10 breaks down, when there is a flaw in the design of the security sensor, or when attack methods have become more sophisticated.
  • the log association unit 471 acquires the communication intermediation history obtained from the vehicle log DB 43, the communication detection log obtained from the communication detection log DB 46, and the function information obtained from the function information DB 48. Then, the log association unit 471 associates the communication intermediation history, the communication detection log, and the function information, and outputs the corresponding information, which is an associated log, to the intrusion determination unit 472. Note that in the first embodiment, the corresponding information related to an abnormality that has occurred inside the vehicle is output, but in the second embodiment, the corresponding information that may not include information related to an abnormality that has occurred inside the vehicle is output.
  • FIG. 14 to FIG. 15B are flowcharts showing the log association process performed by the analysis unit 47 of the external vehicle device 4. Note that, in the log association process, although a determination is disclosed on a device-by-device basis as an example, this configuration is not limiting. For example, recording and determination may be performed on an application-by-application basis running on the device.
  • the analysis unit 47 first acquires logs with the same vehicle ID and within a predetermined time period (e.g., time frame T1) from each of the DBs 43, 46, 48 in S201, and performs association.
  • a predetermined time period e.g., time frame T1
  • the communication detection log, the communication intermediation history shown in FIG. 16, and the function information (e.g., communication-related functions) shown in FIG. 17 are first acquired.
  • the communication mediation history includes information such as the ECU identifier, type of function provided, start time of mediation, end time of mediation, communication source, and communication destination.
  • the communication mediation history is information that indicates what type of communication mediation function was used by the ECU with the corresponding identifier, from where (communication source) to where (communication destination) the mediation of communication was provided, and from when (start time) to when (end time).
  • the function information includes information such as the ECU identifier, the presence or absence of a communication destination designation function, and the presence or absence of a communication intermediation function.
  • the communication destination designation function indicates a function that allows a party other than the vendor (e.g., a user, etc.) to designate a communication destination.
  • a vendor includes any of the following: manufacturer, supplier, and seller.
  • a communication destination designation function includes, for example, an application such as a browser that allows a user to designate a communication destination, or an application such as a mailer that allows a third party to designate a communication destination. If such an application is installed, the function is associated with the device. If this function is present, there is a possibility that communication with a malicious communication destination may occur unintentionally as a result of user operation.
  • examples of communication intermediation functions include a function that intermediates communication between other devices, such as a Wi-Fi (registered trademark) access point, and a function that intermediates communication between other ECUs or applications, such as a proxy. If this function is present, even if communication with a malicious destination occurs, it can be determined that there is a high possibility that the cause is communication between another device or ECU.
  • Wi-Fi registered trademark
  • the analysis unit 47 determines whether or not there is an associated log.
  • the log here is, for example, a communication detection log that is a result of inspecting information such as that shown in FIG. 10C. If there is no associated log, this process ends. If there is an associated log in S203, this process proceeds to S205, and the analysis unit 47 performs an mediated communication determination process.
  • the mediated communication determination process is a process for determining whether or not the ECU of the communication source has a communication mediation function, and for identifying the device of the communication source if necessary.
  • the analysis unit 47 determines in S221 whether or not the communication source (hereinafter, sometimes referred to as the relevant communication source) described in the communication detection log (e.g., the log in Figure 5A) has a communication mediation function.
  • the process proceeds to S227, which will be described later. If the communication source has a communication intermediation function, the process proceeds to S223. Next, in S223, the analysis unit 47 refers to the communication intermediation history (FIG. 16). Next, in S225, it is determined whether there is an intermediation history (hereinafter sometimes abbreviated as the relevant intermediation history) in which the communication source in question intermediated a communication to the same destination as the communication destination recorded in the communication detection log during the relevant time period corresponding to the communication time recorded in the communication detection log.
  • the relevant intermediation history hereinafter sometimes abbreviated as the relevant intermediation history
  • the process proceeds to S227.
  • the analysis unit 47 determines in S227 that the communication whose content is described in the communication detection log is not a communication by a device other than the relevant communication source, i.e., it is not a communication that uses a communication intermediation function, and ends the intermediary communication determination process.
  • the analysis unit 47 determines in S229 whether the source of the communication mediated by the corresponding communication source (hereinafter sometimes abbreviated as the source of the communication mediated within the vehicle) is another in-vehicle device (i.e. a device within the vehicle 10, a device different from the currently recognized communication source).
  • the source of the communication mediated by the corresponding communication source ECU1 is ECU6. This is because in this example, the communication intermediation history indicates that ECU1 mediated the communication mediated by ECU3, the communication source of which is ECU6.
  • the analysis unit 47 determines in S231 that the communication content described in the communication detection log is communication from another in-vehicle device, and ends the mediated communication determination process. Also, if the source of the communication mediated within the vehicle is not another in-vehicle device in S229, this process proceeds to S233. In this case, the analysis unit 47 determines in S233 whether the source of the communication mediated within the vehicle is an external device (for example, an external device 5a such as a smartphone) or not.
  • an external device for example, an external device 5a such as a smartphone
  • the process proceeds to S235.
  • the analysis unit 47 determines in S235 that the communication content described in the communication detection log is communication from a device outside the vehicle, and ends the mediated communication determination process.
  • the process proceeds to S237. In this case, the analysis unit 47 determines in S237 that the source of the communication content described in the communication detection log is unknown, and ends the mediated communication determination process.
  • the process returns to FIG. 14 and proceeds to S207.
  • the analysis unit 47 determines whether or not the source of the communication mediated in the vehicle is determined to be an external device in the intermediated communication determination process. If the source of the communication mediated in the vehicle is an external device, the process proceeds to S209. In S209, the analysis unit 47 sets the source of the communication content indicated in the communication detection log to the source described in the corresponding communication intermediate history, and proceeds to S211.
  • the process proceeds to S211.
  • the analysis unit 47 determines in S211 whether or not the mediated communication determination process has determined that the source of the communication mediated within the vehicle is another in-vehicle device. If the source of the communication mediated within the vehicle is another in-vehicle device, the process proceeds to S213. In this case, the analysis unit 47 sets the source of the communication content described in the communication detection log to the source described in the corresponding communication mediation history in S213, and ends the log association process. Also, if the source of the communication mediated within the vehicle is not another in-vehicle device in S211, the mediated communication determination process ends.
  • the analysis unit 47 rewrites the communication analysis result table (i.e., the communication detection log included in the correspondence information) as shown in FIG. 18, for example.
  • ECU1 which was written as the communication source in the table shown in FIG. 5A
  • ECU6 the communication analysis result table
  • ECU6 the communication analysis result table
  • the intrusion determination unit 472 analyzes the corresponding information and determines the likelihood of an intrusion into the ECU that is the communication source.
  • the intrusion determination unit 472 outputs the determination result including the likelihood of an intrusion (e.g., the estimated type of attack) to the output unit 475.
  • Figs. 19 and 20 are flowcharts showing the infringement determination process performed by the analysis unit 47 (e.g., the infringement determination unit 472) of the external vehicle device 4.
  • the infringement determination process is performed for each piece of correspondence information.
  • the analysis unit 47 performs an infringement determination of the communication source. In this process, an infringement determination is performed for the actual communication source.
  • the procedure for determining infringement includes determining whether the content of the communication of the communication source and corresponding information including information on the communication destination match any of a number of pre-set attack types, and if any of the multiple attack types match, determining the likelihood of infringement of the communication source depending on which attack type it matches.
  • the likelihood of infringement of the communication source includes two classifications: the communication source is highly likely to have been infringed, and the communication source has been infringed. Note that since the second embodiment is configured not to use security logs, the infringement determination of the second embodiment uses a type that can be determined without using a security log, out of the multiple attack types exemplified in the first embodiment.
  • the second embodiment does not implement the step of [B3] described in the first embodiment, which "confirms from the corresponding information that the behavior confirmed during dynamic analysis is occurring in the ECU," which requires confirmation that a CAN message specifying a suspicious ID has been recorded.
  • the ECU in [B1] to [B5] described in the first embodiment is read as the source of communication.
  • the source of communication in S261 may be an external device such as a smartphone, in addition to the ECU.
  • [B1] is defined more broadly than in the first embodiment to include cases where communication that downloads malware is generated from the communication source.
  • the reason for this broad definition is that in the second embodiment, an artificial communication determination is made in S267, which will be described later.
  • the analysis unit 47 determines whether or not the communication source may have been compromised. A case in which there is a possibility of a compromise is detected when it is determined that the corresponding information matches one of a number of pre-set attack types, including cases in which the information is classified as "compromised” and cases in which the information is classified as "highly likely to have been compromised.” If there is no possibility of the communication source being compromised, this process ends. If there is a possibility of the communication source being compromised, this process proceeds to S265.
  • the analysis unit 47 determines whether the communication source is a device outside the vehicle. If the communication source is a device outside the vehicle, the process proceeds to S273. Then, in S273, the analysis unit 47 determines that the vehicle has not been infringed, and ends the infringement determination process.
  • the process proceeds to S267.
  • the analysis unit 47 performs an intentional communication determination process.
  • the intentional communication determination process is a process for determining whether or not the communication from the communication source is likely to be an intentional communication.
  • the analysis unit 47 determines whether the ECU from which the communication originates has a communication destination designation function. If the ECU does not have the communication destination designation function, the process proceeds to S283. Next, in S283, the analysis unit 47 determines that the communication is not artificial, and ends the artificial communication determination process.
  • the process proceeds to S285.
  • the analysis unit 47 determines that there is a possibility of artificial communication, and ends the artificial communication determination process.
  • the process returns to FIG. 19 and proceeds to S269.
  • the analysis unit 47 determines whether or not it has been determined that the communication was caused by an artificial operation (i.e., there is a possibility that the communication is artificial).
  • the infringement determination process ends. If it is determined that the communication was caused by human manipulation, the process proceeds to S271. Next, in S271, the analysis unit 47 determines that the source of the communication has been infringed, and the infringement determination process ends.
  • the output unit 475 outputs the type of attack to the attack countermeasure device. Note that in this embodiment, the processes of S103 and S104 shown in FIG. 9 can be omitted.
  • the system log includes a history of communication mediated within the electronic control system 2 with the outside of the electronic control system 2, and the analysis unit 47 identifies the source of the communication in the communication detection log from the history and then determines whether the target element has been infringed. If the ECU that is the source of the communication is an electronic control device whose communication destination cannot be specified by anyone other than the vendor, the analysis unit 47 determines that there is a high probability that the target element, such as an ECU, has been infringed.
  • the electronic control system 2 communicates with the ECU 6 as the ECU 2c shown in FIG. 1 as the transmission source
  • the ECU 6 accesses an external site via ECU 2d and ECU 2e.
  • the content of the communication at this time is monitored by the external device 4, and the log association process described above is performed.
  • the transmission source is the ECU 6, as shown in FIG. 18.
  • the intrusion determination process shown in FIG. 19 if it is determined that the communication source may have been intruded (YES in S263), the communication source is not an external device (NO in S265), and the communication is not an artificial communication (NO in S269), it is determined that the ECU 6 has been intruded.
  • the third embodiment provides a configuration in which the electronic control system 2 relays communication from an external vehicle device 5a such as a smartphone, and if there is a possibility that this communication may be malicious, it can appropriately determine whether the vehicle has been hacked.
  • an external vehicle device 5a such as a smartphone
  • the ECU 2e belonging to the first layer includes a communication intermediation unit 3n
  • the ECU 2f includes a communication intermediation unit 3p.
  • an external vehicle device 5a configured as a smartphone is provided.
  • the ECU 2d belonging to the second layer may include a communication intermediation unit 3m.
  • the vehicle log receiving unit 42 of the external vehicle device 4 receives communication intermediation history from each vehicle 10 and registers it in the vehicle log DB 43, similar to the second embodiment.
  • the off-vehicle device 5a accesses an external site via the ECU 2f and ECU 2e.
  • the content of this communication is monitored by the off-vehicle device 4, and the log association process described above is performed.
  • the analysis unit 47 determines that the communication from the off-vehicle device 5a configured as a smartphone is likely to be malicious, it rewrites the communication analysis result table, for example as shown in FIG. 21.
  • the ECU 1 listed as the communication source in the table shown in FIG. 5A has been rewritten as smartphone A.
  • the ECU 1 which was the apparent communication source, is rewritten as smartphone A, which is the actual communication source.
  • the transmission source is the external vehicle device 5a as a smartphone.
  • the process proceeds assuming that the source of the communication may have been intruded (YES in S263) and that the source of the communication is an external device (YES in S265), in which case it is determined that the vehicle has not been intruded. This is because the source of the malicious communication is a smartphone, not the vehicle or a component of the vehicle.
  • the analysis unit 47 is configured to determine that the target element is highly likely not to have been infringed when the source of the communication is the external vehicle device 5a.
  • the vehicle log includes an application log (see FIG. 25).
  • the application log is a log related to an application (e.g., an application 3j of the ECU 2f) that runs on the ECU, and may include a log related to an application that has a function of specifying a communication destination of a communication source. Note that in this embodiment, the vehicle log does not necessarily need to include a log of a security sensor.
  • the vehicle log receiving unit 42 of the external vehicle device 4 receives communication intermediation history and application logs from each vehicle 10 and registers them in the vehicle log DB 43.
  • the configuration of the fourth embodiment can be the same as the configuration of the third embodiment (see FIG. 11).
  • the communication intermediation history in this embodiment is shown, for example, in Fig. 23. Note that "-" in Fig. 23 is not included in the determination of whether or not there is a match.
  • the communication intermediation history is used to make it possible to accurately determine whether or not communication intermediation was performed by comparing the time, communication source, communication destination, etc. with those recorded in the communication log.
  • the communication destination designation function is set to “Yes” and the communication intermediation function is set to “Yes” for ECU2.
  • the intermediate communication determination process (see S205 in FIG. 14) of the log association process in the fourth embodiment is performed as shown in the flowcharts in FIG. 22A and FIG. 22B.
  • the analysis unit 47 refers to the communication intermediation history (FIG. 16), and then proceeds to S301.
  • the analysis unit 47 determines whether or not a communication source with a communication destination designation function is included in the communication intermediation history. If there is no communication source with a communication destination designation function, this process proceeds to S225 and subsequent steps described above. If there is a communication source with a communication destination designation function, this process proceeds to S303. Note that in the example of FIG. 16, the communication sources included in the communication intermediation history are ECU3 and ECU6.
  • the analysis unit 47 refers to the application log.
  • the application log is a log that indicates to whom an application of an ECU has communicated.
  • the application log includes an ECU identifier that identifies the ECU, the type of application installed in that ECU, the start time and end time of the communication of that application, and the communication destination (e.g., URL), etc.
  • the analysis unit 47 refers to the application log that indicates to whom an application installed in an ECU with an ECU identifier that corresponds to a communication source included in the communication intermediation history and has a communication designation function has communicated.
  • the analysis unit 47 judges whether or not there is a communication history to the corresponding communication destination in the application log in the time period corresponding to the communication time recorded in the communication detection log (hereinafter referred to as the first judgment in S305).
  • the corresponding communication destination is the communication destination recorded in the communication detection log, that is, the communication destination included in the communication intermediation history.
  • there may be a communication intermediation history in which the communication destination is not recorded such as the communication intermediation history of ECU 2 in FIG. 23 (see communication destination "-" in FIG. 23).
  • the analysis unit 47 performs a second judgment in which the communication destination is not judged.
  • the analysis unit 47 performs a second judgment to judge whether or not there is an application log in the time period corresponding to the communication time recorded in the communication detection log. If at least one of the first judgment and the second judgment in S305 is judged to be positive, the process proceeds to S307. If at least one of the first judgment and the second judgment in S305 is not judged to be positive, the process proceeds to the above-mentioned S225 and subsequent steps.
  • the analysis unit 47 determines that the communication whose content is described in the communication detection log is a communication from an in-vehicle device whose source is included in the communication intermediation history and has a communication designation function, and ends the intermediary communication determination process.
  • the process shown in FIG. 26 may be performed.
  • the analysis unit 47 determines whether or not the communication source has a communication destination designation function. If the communication source does not have the communication destination designation function, the process proceeds to S283. Next, in S283, the analysis unit 47 determines that the communication is not an artificial communication, and ends the artificial communication determination process.
  • the process proceeds to S285.
  • the analysis unit 47 determines that there is a possibility of artificial communication, and ends the artificial communication determination process.
  • a communication intermediation unit 3p that mediates communication with the external vehicle device 5a, which is a smartphone, as the transmission source, and an app 3j that performs communication with the ECU 2f as the transmission source are operating on the ECU 2f of the electronic control system 2 shown in FIG. 11. Even if the communication destination of the smartphone is not recorded in the communication intermediation unit 3p as shown in FIG. 23, the application log of the app 3j is recorded as shown in FIG. 25. With this configuration, the application log can be used to distinguish the source of the communication.
  • the basic configuration of the fifth embodiment is a combination of the first and second embodiments. That is, as shown in Fig. 27 and Fig. 28, the fifth embodiment includes a function information DB 48, and a log association unit 471 performs a log association process using a communication detection log, a vehicle log (security log, communication intermediation history), and function information. Also, an intrusion determination unit 472 performs an intrusion determination process using the response information and function information. Also, in the fifth embodiment, a vehicle log receiving unit 42 of the external vehicle device 4 receives a communication intermediation history and a security log from each vehicle 10 and registers them in a vehicle log DB 43.
  • the log association unit 471 may associate each log from the following perspectives.
  • the infringement determination unit 472 performs the following processing on the log received from the log association unit 471, and performs an infringement determination on the communication source ECU and VM (Virtual Machine). In the infringement determination, in addition to the determinations already described, for example, the following determination is made.
  • the vehicle is determined to be uninvaded.
  • the external vehicle device 4 corresponds to an example of an attack analysis device
  • the security log corresponds to an example of an abnormality log
  • the analysis unit 47 e.g., the intrusion determination unit 472
  • the intrusion determination unit 472 corresponds to an example of a determination unit.
  • the infringement determination unit 472 determines whether an infringement has occurred or whether there is a high possibility of an infringement.
  • the infringement probability determined by the infringement determination unit 472 may include other patterns. For example, if the inspection unit 45 determines that there is no abnormality in the communication log, the infringement determination unit 472 may determine that there has been no infringement.
  • the communication destination analysis unit 452 of the inspection unit 45 performs communication destination analysis
  • the communication content analysis unit 453 of the inspection unit 45 performs communication content analysis to identify malicious communication destinations and malicious communication content.
  • the inspection unit 45 may be configured to identify at least one of malicious communication destinations and malicious communication content. In other words, the inspection unit 45 may be configured to perform only one of communication destination analysis and communication content analysis.
  • the vehicle log receiving unit 42 receives the communication intermediation history recorded in the vehicle 10 and identifies the source of the communication.
  • the communication protocol used by the vehicle 10 when communicating with the outside of the vehicle is a protocol that allows the communication intermediation history to be included in the communication data
  • the communication data monitoring unit 41 may receive the communication intermediation history included in the communication data.
  • the communication data monitoring unit 41 is a proxy and the vehicle 10 is designed to communicate with the outside of the vehicle using the HTTP (Hypertext Transfer Protocol) protocol
  • the communication source may be written in the XFF (X-Forwarded-For) header defined in the HTTP protocol, and the communication data monitoring unit 41 may refer to it to identify the communication source.
  • the present disclosure can be realized in various forms, including the attack analysis device described above, a system that includes the attack analysis device as a component, a program for causing a computer to function as the attack analysis device, a medium on which this program is recorded, and an attack analysis method.
  • An attack analysis device (47) configured to analyze an attack against an electronic control system (2) built in a vehicle (10), the attack being against the electronic control system via a network
  • the attack analysis device (47) comprising: a determination unit (472, S102) configured to determine whether or not correspondence information that associates a system log, which is a log of the electronic control system, with a communication log, which is a log of communication between the electronic control system and the outside of the vehicle, matches a preset type of attack, and configured to determine whether or not a target element representing at least one of a component of the electronic control system and the electronic control system has been violated;
  • An attack analysis device comprising:
  • an attack analysis device comprising: The system log includes a history of communication between the electronic control system and an external device, The attack analysis device is configured so that the determination unit determines whether the target element is infringed upon identifying a source of the communication in the communication log from the history.
  • the attack analysis device according to item 1 or 2
  • the determination unit is an attack analysis device configured to determine that there is a high probability that the target element has been violated when the electronic control device that is the source of the communication is an electronic control device whose communication destination cannot be specified by anyone other than the vendor.
  • the attack analysis device according to any one of claims 1 to 3, The attack analysis device configured to determine that the target element is highly likely not compromised when a source of the communication is an external device.
  • the system log includes an abnormality log indicating an abnormality detected in the electronic control system; an estimation unit (474, S103, S104) configured to estimate the type of the attack by determining a similarity between actual anomaly information, which is generated based on the anomaly log and indicates a combination of the anomalies that have actually been detected, and predicted anomaly information, which indicates a combination of anomalies that are predicted to occur in the electronic control system when the electronic control system is attacked, for each type of attack; Further comprising: The predicted anomaly information is capable of changing a combination of predicted anomalies by using the correspondence information that is determined by the determination unit to match the type of attack.
  • An attack analysis device according to any one of claims 1 to 5, The method further includes an inspection unit (45) configured to analyze the communication log and identify at least one of a malicious communication destination and a malicious communication content, The communication log of the corresponding information includes at least one of a malicious communication destination and a malicious communication content.
  • the determination unit is capable of identifying a location in the electronic control system where an abnormality has occurred depending on whether the corresponding information matches any of a plurality of types of attacks, and classifying the location where the abnormality has occurred as either a location that has been compromised by the attack or a location that is highly likely to have been compromised by the attack.
  • the predicted anomaly information is information in which a position where an anomaly is predicted to occur in the electronic control system when the electronic control system is attacked is expressed by a coefficient for each type of attack;
  • the predicted anomaly information is capable of changing a combination of predicted anomalies by changing the coefficients.
  • the electronic control system includes a plurality of electronic control devices, and has a hierarchical structure in which the plurality of electronic control devices correspond to any one of a plurality of hierarchical levels prepared in advance;
  • the estimation unit estimates that other electronic control devices located at the same hierarchical level as an electronic control device in which an abnormality is predicted to occur, as indicated by the correspondence information determined by the judgment unit to match the type of attack, have not been compromised.
  • An attack analysis method comprising:
  • a computer configured to analyze an attack via a network against an electronic control system (2) built in a vehicle (10), A function (472, S102) configured to determine whether or not correspondence information that associates a system log, which is a log of the electronic control system, with a communication log, which is a log of communication between the electronic control system and the outside of the vehicle, matches a preset type of attack, and determines whether or not a target element that represents at least one of a component of the electronic control system and the electronic control system has been violated; An attack analysis program to achieve this.

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)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

車両に対するサイバー攻撃を高い精度で分析することができる技術を提供する。攻撃分析装置(47)は、前記電子制御システムのログであるシステムログと、前記電子制御システムと車両外との通信のログである通信ログと、を対応付けた対応情報が、予め設定された前記攻撃の類型に合致するか否かを判定するように構成され、前記電子制御システムの構成要素及び前記電子制御システムのうちの少なくとも一方を表す対象要素が侵害されているか否かを判定するように構成された判定部(472,S102)、を備える。

Description

攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム 関連出願の相互参照
 本国際出願は、2022年9月30日に日本国特許庁に出願された日本国特許出願第2022-157958号、及び2023年7月31日に日本国特許庁に出願された日本国特許出願第2023-124717号に基づく優先権を主張するものであり、日本国特許出願第2022-157958号の全内容、及び日本国特許出願第2023-124717号の全内容を本国際出願に参照により援用する。
 本開示は、攻撃分析装置、攻撃分析方法、及び攻撃分析プログラムに関する。
 近年、車車間通信や路車間通信のようなV2Xをはじめ、運転支援や自動運転制御を行う技術が注目されている。これに伴い、車両が通信機能を備えるようになり、いわゆる車両のコネクティッド化が進んでいる。この結果、車両が不正アクセスといったサイバー攻撃を受ける可能性が増加している。そのため、車両に対するサイバー攻撃を分析して、その対応策を構築することが必要とされている。
 特許文献1には、検知した異常データを収集するとともに、異常が検出された項目の組み合わせと、攻撃毎に予め設定された異常検出パターンとを照合して、異常に対応する攻撃の種類を特定するセキュリティ装置が開示されている。
特開2020-123307号公報
 本願発明者らは、車両内に構築された電子制御システムで検出された異常を示す実測異常情報と、車両が攻撃を受けた場合に電子制御システムで発生することが予測される異常を示す予測異常情報と、に基づいて、車両に対するサイバー攻撃を分析する技術を、鋭意研究している。この種の技術において、車両に対するサイバー攻撃を、高い精度で分析できることが望ましい。
 本開示の一局面では、車両に対するサイバー攻撃を高い精度で分析することができる技術を提供する。
 本開示の一態様は、車両内に構築された電子制御システムに対する攻撃であって、ネットワークを介した攻撃を分析するように構成された攻撃分析装置であって、判定部、を備える。判定部は、対応情報が、予め設定された攻撃の類型に合致するか否かを判定するように構成され、対象要素が侵害されているか否かを判定するように構成される。対応情報は、電子制御システムのログであるシステムログと、電子制御システムと車両外との通信のログである通信ログと、を対応付けた情報である。また、対象要素は、電子制御システムの構成要素及び電子制御システムのうちの少なくとも一方を表す。
 このような構成によれば、システムログと通信ログとを対応付けた対応情報が、攻撃の類型に合致するか否かによって侵害されているか否かを判定するので、車両に対する攻撃であって、ネットワークを介した攻撃を高い精度で分析することができる。
第1実施形態の攻撃分析システムの構成を示すブロック図である。 電子制御システムにおける電子制御装置の配置の一例を示す図である。 車両ログDBに格納されたデータの一例を示す図である。 検査部の構成を示すブロック図である。 図5Aは、第1実施形態の通信検知ログDBに格納された通信解析結果テーブルのデータの一例を示す図であり、図5Bは、通信検知ログDBに格納されたマルウェア解析結果テーブルのデータの一例を示す図である。 第1実施形態の分析部の構成を示すブロック図である。 予測異常情報の一例を示す図である。 予測異常情報の他の一例を示す図である。 第1実施形態の攻撃分析処理のシーケンス図である。 図10Aは、通信データ監視部にて得られる情報の一例を示す図、図10Bは、監視管理情報の一例を示す図、図10Cは、検査部で検査される情報を示す図である。 第2実施形態の攻撃分析システムの構成を示すブロック図である。 第2実施形態の分析部の構成を示すブロック図である。 第2実施形態の攻撃分析処理のシーケンス図である。 第2実施形態のログ関連付け処理を示すフローチャートである。 第2実施形態のログ関連付け処理のうちの仲介通信判定処理を示すフローチャートの第1部分である。 第2実施形態の仲介通信判定処理を示すフローチャートの第2部分である。 第2実施形態の通信仲介履歴の一例を示す図である。 第2実施形態の機能情報(例えば、通信関連機能)の一例を示す図である。 第2実施形態の通信検知ログDBに格納された通信解析結果テーブルのデータの一例を示す図である。 第2実施形態の侵害判定処理を示すフローチャートである。 第2実施形態の侵害判定処理のうちの人為的通信判定処理を示すフローチャートである。 第3実施形態の通信検知ログDBに格納された通信解析結果テーブルのデータの一例を示す図である。 第4実施形態のログ関連付け処理のうちの仲介通信判定処理を示すフローチャートの第1部分である。 第4実施形態の仲介通信判定処理を示すフローチャートの第2部分である。 第4実施形態の通信仲介履歴の一例を示す図である。 第4実施形態の機能情報(例えば、通信関連機能)の一例を示す図である。 アプリケーションログの一例を示す図である。 第4実施形態の侵害判定処理のうちの人為的通信判定処理を示すフローチャートである。 第5実施形態の分析部の構成を示すブロック図である。 第5実施形態の攻撃分析処理のシーケンス図である。
 以下、本開示の例示的な実施形態について図面を参照しながら説明する。
 [1.第1実施形態]
 [1-1.構成]
 図1に示す攻撃分析システム1は、車両10内に構築された電子制御システム2に対する攻撃であって、ネットワークを介した攻撃を分析するシステムである。ネットワークを介した攻撃とは、いわゆるサイバー攻撃を意味している。
 攻撃分析システム1は、電子制御システム2と、車両外装置4と、を備える。
 電子制御システム2は、複数の電子制御装置(以下、ECU)を備える。図1に示す例では、電子制御システム2は、ECU2a~2fを備える。ECU2a~2fは、CAN(登録商標)やEthernet(登録商標)を用いた車載ネットワークを介して接続さ
 れている。なお、CANは、Controller Area Networkの略称である。
 ECU2a~2fは、それぞれ、監視部3a~3fを備える。監視部3a~3fは、ECUが備えるCPUが実行するプログラムやECUが接続されたネットワークを監視するセキュリティセンサである。ECU2a~2fは、プログラムに基づく処理を実行する際にシステムログを生成する。システムログは、電子制御システム2のログ、より詳細には電子制御システム2が生成する電子制御システム2に関するログである。システムログには、セキュリティログ、第2実施形態以下で詳述する通信仲介履歴、第4実施形態以下で詳述するアプリケーションログ等が含まれ、後述する通信ログは含まれない。なお、システムログは、車両10を離れて利用される際に、車両ログとも呼ばれる。
 監視部3a~3fは、プログラムやネットワークで異常を検出すると、セキュリティログを生成する。セキュリティログには、電子制御システム2で検出された異常を示す情報が記録されており、例えば、異常を検知した時刻、異常が発生した位置を示す異常位置、異常を検知したセキュリティセンサの識別情報等が記録されている。
 図2に示すように、電子制御システム2では、攻撃に対するセキュリティ性を高めるために多層防御が採用されている。多層防御では、攻撃に対するセキュリティ機能を異ならせ、階層的・多層的に設けることで、攻撃を受けた場合に例えば一層目が突破されても、二層目が攻撃を防御ことができる可能性がある。この構成により、電子制御システム2の防御力を高めることができる。本実施形態では、電子制御システム2は、三層の防御層を有する。なお、図2では、電子制御システム2は、DLC2gを搭載している。DLCは、Data Link Connectorの略称である。ECU2e、ECU2f及びDLC2gが第一層に属し、ECU2dが第二層に属し、ECU2a及びECU2bが第三層に属している。なお、ECU2cについては、図2では記載を省略している。また、防御層は三層に限定されず、例えば四層以上の防御層を有していてもよい。
 図1に戻り、ECU2dは、監視部3dに加え、分析部3gや他のECUにデータを送信する送信部3hを備えていてもよい。分析部3gは、電子制御システム2におけるセキュリティログを管理し、車両10から車両外装置4にセキュリティログを出力する前に、一定の異常な挙動を検知してもよい。また、ECU2eは、通信部3iを備え、通信部3iは、後述する通信データ監視部41に各ECUのセキュリティログを送信する。また、ECU2fは、アプリ3jを備え、任意のアプリ機能を実行する。
 車両外装置4は、車両10の外部に設置された計算機(すなわちコンピュータ)装置であり、CPU、ROM、RAM、フラッシュメモリ等を有する周知のコンピュータを中心に構成される。CPUは、非遷移的実体的記録媒体であるROMに格納されたプログラムを実行する。当該プログラムが実行されることで、当該プログラムに対応する方法が実行される。なお、車両外装置4は、1つのコンピュータを備えてもよいし、複数のコンピュータを備えてもよい。
 車両外装置4に含まれる各部の機能を実現する手法はソフトウェアに限るものではなく、その一部又は全部の機能は、一つあるいは複数のハードウェアを用いて実現されてもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は、デジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現されてもよい。
 車両外装置4は、通信データ監視部41と、車両ログ受信部42と、車両ログDB43と、検知条件DB44と、検査部45と、通信検知ログDB46と、分析部47と、を備える。
 通信データ監視部41は、例えば、ネットワーク内外のアクセスを代理するプロキシ、又は通過する全てのパケットを収集可能なフルパケットキャプチャ装置として構成される。通信データ監視部41は、各車両10と、その車両10の外部の外部サイト5と、の間の通信を中継、監視することで、その車両10の通信ログを生成する。通信データ監視部41がプロキシであり車両10もプロキシ機能を備える場合、例えば、車両10のプロキシ機能にて通信データ監視部41を次の宛先に指定することで車両10と外部サイト5との通信が通信データ監視部41を通るように構成できる。また、通信データ監視部41がフルパケットキャプチャ装置である場合、例えば、車両10に備わるファイアウォールの転送ポリシー設定により、車両10と外部サイト5との通信が通信データ監視部41を通るように構成できる。なお、通信ログは、車両外装置4が生成するログであって、電子制御システム2と車両10外の外部サイト5との間の通信に関するログである。通信ログには、例えば図10Aに示すように、通信時刻、通信元(IPアドレスを含む)、通信先(IPアドレス及びURLを含む)、通信内容などが記録されている。
  通信データ監視部41は、通信ログとは別に、例えば図10Bに示すような監視管理情報を取り扱う。監視管理情報は、例えば車両ログDB43に格納される。監視管理情報には、例えば、車両ID、通信の開始時刻、終了時刻、通信元のIPアドレス、通信元の機器等の情報が含まれる。
 監視管理情報は、例えば、ECU2eの起動時や通信部3iが使用するIPアドレスの変更時等に、車両10から車両外装置4へ能動的に情報の通知を行うことで取得される。通信データ監視部41がプロキシである場合、監視管理情報は通信開始時の認証情報や車両構成管理情報により取得及び生成することもできる。
 車両ログ受信部42は、各車両10からセキュリティログを受信し、車両ログDB43に登録する。
 車両ログDB43は、各車両10から収集したセキュリティログを保持するデータベースである。図3に示すように、車両ログDB43には、車両ID、検知時刻、検知場所、センサIDが紐付けられたデータが格納されている。
 検知条件DB44は、検査部45の構造解析部451にて使用される情報を保持するデータベースである。例えば、検知条件DB44には、脅威情報、シグネチャ、振る舞いパターン等が記憶されている。脅威情報とは、既知の悪性な通信先やファイルハッシュ値である。シグネチャとは、悪性の通信データ、ファイルデータ、プログラム機能を示すパターン情報である。振る舞いパターンとは、悪性挙動痕跡・マルウェアなど悪性のファイルの振る舞いのパターンを示す情報である。
 検査部45は、通信ログを解析し、悪性の通信先、及び悪性の通信内容を特定する。検査部45が解析に利用する通信ログは、例えば、図10Cに示すように、図10Aに示す通信ログと、図10Bに示す監視管理情報とから、必要な情報を抽出した情報である。この情報には、例えば、車両ID、通信時刻、通信元の機器、通信先(IPアドレス及びURLを含む)、通信データの内容(種別)が含まれうる。
 図4に示すように、検査部45は、構造解析部451と、通信先解析部452と、通信内容解析部453と、を備える。
 構造解析部451は、構造解析部451や通信先解析部452にて解析すべき情報を通信ログから抽出する。具体的には、構造解析部451は、URLの構造を解析し、IPアドレスやドメイン名を抽出したり、通信内容の構造を解析し、通信先解析部452にて解析すべきデータやファイルを抽出したりする。
 通信先解析部452では、悪性の通信先を特定する。具体的には、通信先解析部452は、通信ログに記録された通信先や構造解析部451にて抽出された通信先が、検知条件DB44に登録されている悪性の通信先と一致するか否かを判定する。悪性の通信先として、例えば、IPアドレス、ドメイン、URLなどが登録されている。また、通信ログの通信先が、通信内容解析部453で悪性と判定されたファイルの通信先と一致するか否かも判定する。
 通信内容解析部453は、悪性の通信内容を特定する。具体的には、通信内容解析部453は、構造解析部451にて抽出されたデータやファイルに対して、表層解析、静的解析、動的解析を行い、解析結果が、検知条件DB44に登録されている内容と一致するか否かを判定する。
 表層解析では、ファイル自体が悪性であるかの情報やファイルのメタ情報を収集する。
 静的解析では、マルウェアのプログラムコードに具備されている機能や特徴的なバイト列の情報を収集する。動的解析では動作しない潜在的な機能も対象となる。
 動的解析では、プログラムコードが実際に動作した場合にどのような痕跡が残るのか、どのような通信が発生するのかの情報を収集する。プログラムコードを実際に動作させて振る舞いを解析する。
 通信検知ログDB46は、通信先解析部452又は通信内容解析部453にて解析された通信ログを保持するデータベースである。以下、通信先解析部452又は通信内容解析部453にて検知条件に合致すると判定された通信ログを、通信検知ログとも呼ぶ。通信検知ログDB46には、通信解析結果テーブルと、マルウェア解析結果テーブルと、が格納されている。通信解析結果テーブルには、図5Aに示すように、車両ID、通信時刻、通信元、通信先、検知理由、通信内容、マルウェアIDが紐付けられたデータが格納されている。マルウェア解析結果テーブルには、図5Bに示すように、マルウェアID、コンテキストタイプ、コンテキストが紐付けられたデータが格納されている。
 図6に示すように、分析部47は、ログ関連付け部471と、侵害判定部472と、攻撃・異常関係テーブル保存部473、推定部474と、出力部475と、を備える。
 ログ関連付け部471は、車両ログDB43に格納されたログと、通信検知ログDB46に格納されたログと、の対応付けを行う。本実施形態では、ログ関連付け部471は、以下の処理により各ログの対応付けを行い、対応付けたログである対応情報を侵害判定部472に出力する。
 まずログ関連付け部471は、通信検知ログDB46から、通信時刻が所定の時間枠T1の範囲内であるログを抽出する。また、ログ関連付け部471は、車両ログDB43から、検知時刻が所定の時間枠T1の範囲内であるログを抽出する。なお、時間枠T1とは、所定の時間毎に区切った、複数の時間の範囲のうちの1つの範囲である。
 次にログ関連付け部471は、以下の観点により各ログを関連付ける。
 [A1]通信検知ログDB46の車両IDと、車両ログDB43の車両IDと、が一致していること。
 [A2]通信検知ログDB46の通信元・通信先と、車両ログDB43の検知場所と、が一致していること。
 [A3]通信検知ログDB46の通信時刻と、車両ログDB43の検知時刻と、が所定の時間枠T2以内であること。なお、時間枠T2とは、時間枠T1とは異なる時間の範囲であって、例えば数秒単位の時間の範囲であり、時間枠T1よりも小さい値である。
 以上のように、通信検知ログとセキュリティログが同期するように対応付けられる。
 侵害判定部472は、対応情報が、予め設定された、攻撃の類型に合致するか否かを判定する。侵害判定部472は、対応情報毎に判定を行う。具体的には、侵害判定部472は、複数の攻撃の類型のうちのいずれかに合致するかによって、電子制御システム2における、異常が生じた位置を特定する。そして、該異常が生じた位置が攻撃により侵害された位置であるか、又は、攻撃により侵害された可能性が高い位置であるかを分類可能である。つまり、侵害判定部472は、対応情報を分析し、通信元のECUが侵害されている確度である侵害確度を判定する。侵害確度には、侵害された可能性が高いと判定する場合と、侵害されたと判定する場合と、の2つの確度が含まれる。
 なお、複数の攻撃の類型には、通信先に関する攻撃の類型及び通信内容に関する攻撃の類型の少なくとも一方が含まれうる。通信先に関する攻撃の類型には、IPアドレス、ドメイン名、URLなどの通信先自体を示す情報や、C&Cサーバのような通信先の種別を示す情報が含まれうる。通信内容に関する攻撃の類型には、例えば、図5Bに示すような、送信データや受信データなどの通信内容自体を示す情報や、マルウェアのダウンロードといった通信内容の種別を示す情報が含まれうる。また、通信以外のマルウェアの機能も含まれうる。通信以外のマルウェアの機能としては、例えば、セキュリティセンサの機能を無効化させるような、車両にとって有害なマルウェアの作動内容に関する情報が含まれうる。なお、セキュリティセンサには、セキュリティソフトウェアを含んでもよい。
 本実施形態では、侵害判定部472は、以下の場合に、通信元のECUが侵害されたと判定する。
 [B1]ユーザインタラクションに応じた処理を行わないECUからマルウェアをダウンロードする通信が発生している場合。
 [B2]ECUが送信した送信データが悪性と判定された場合。
 [B3]動的解析時に確認された挙動がECUにおいて発生していることが、対応情報から確認された場合。例えば、C&Cサーバへコールバック通信をするなど、マルウェア感染後の通信が記録されている場合や、不審なIDを指定したCANメッセージが記録されている場合が該当する。
 また、侵害判定部472は、以下の場合に、通信元のECUが侵害された可能性が高いと判定する。
 [B4]ECUが受信した受信データが悪性と判定された場合。
 [B5]ECUが悪性と判定された通信先と通信をした場合。
 なお、通信元のECUが、侵害された場合及び侵害された可能性が高い場合の両方に該当する場合には、侵害されたと判定される。図5A及び図5Bをみると、例えば、通信解析結果テーブルの1行目で、ECU-1が悪性サイトへアクセスしているとの記録があるため、ECU-1は侵害されている可能性が高い場合に該当する。また、通信解析結果テーブルの2行目及び3行目によると、ECU-1は、マルウェア解析結果テーブルの1行目に記録されている、マルウェアAの解析結果で得られた通信先Cと通信している。よって、ECU-1は、侵害された場合にも該当する。この場合、侵害された場合が優先され、ECU-1は、侵害されたと判定される。
 攻撃・異常関係テーブル保存部473は、攻撃の種別毎に、攻撃を受けた場合に電子制御システム2で発生することが予測される異常の組み合わせを示す予測異常情報を保持する。図7及び図8に示す予測異常情報では、攻撃の種別毎に、電子制御システム2が該当の攻撃を受けた場合に生じる異常と、異常が発生する位置と、が示されている。図7及び図8に示すように、攻撃を受けた場合、複数の位置において異常が発生することが想定される。予測異常情報では、さらに、攻撃の種別と、攻撃を受けた場合に想定される攻撃の起点及び攻撃の対象と、の対応関係も示している。なお、図7及び図8において、上図が攻撃・異常関係テーブル保存部473に保持されている予測異常情報であり、下図が推定部474により変更されたあとの予測異常情報である。
 例えば、攻撃の種別が攻撃Aである攻撃を受けた場合、電子制御システム2では、第一層に位置するECU-1において、異常A及び異常Cが発生することが予測される。また、攻撃Aの攻撃の起点は、0x00が示す位置であり、攻撃の対象は0x01が示す位置である。なお、攻撃の起点と攻撃の対象とにおいて、0x00は車両外を示し、0x01~0x05はそれぞれECU-1~ECU-5を示している。
 推定部474は、実測異常情報と、予測異常情報と、の類似度を判定することにより、攻撃の種別を推定する。実測異常情報とは、セキュリティログに基づき生成された、実際に検出された異常の組み合わせを示すデータである。具体的には、実測異常情報は、図7及び図8の予測異常情報の異常の内容と同様の項目を有し、該当位置に実際に異常が検出されたことを示すセキュリティログがあれば1、なければ0として表したデータ列である。攻撃の種別を推定するとは、攻撃経路を推定するとも観念できる。予測異常情報のテーブルの各行に示される「攻撃を受けた場合に発生することが予測される異常の位置」が攻撃経路を構成すると観念できるためである。
 ここで推定部474は、実測異常情報と、予測異常情報と、の類似度を判定する前に、対応情報を用いることにより、予測異常情報を変更する。
 本実施形態では、推定部474は、以下の処理を行うことにより、予測異常情報を変更する。
 [C1]侵害された可能性が高いと判定されたECUに対応するテーブルエントリの係数を所定の数だけ増やす。例えば、図7のように、ECU-3が侵害された可能性が高いと判定された場合、ECU-3に発生することが予測される異常A及び異常Bの係数をプラス1し、1から2に変更する。
 [C2]侵害されたと判定されたECUに対応するテーブルエントリの係数を所定の数だけ増やす。又は、侵害されたと判定されたECUと同じ層に位置するECUに対応するテーブルエントリの係数を所定の数に減らす。例えば、図7のように、ECU-1が侵害されたと判定された場合、ECU-1と同じ層に位置するECU-2に発生することが予測されていた異常A及び異常Cの係数をゼロにする。これは、第一層において、ECU-2ではなくECU-1が攻撃の侵入口であると特定されたことを意味する。
 また、例えば、図8の予測異常情報を用いると、ECU-1が侵害されたと判定された場合、ECU-1と同じ層に位置するECU-2に発生することが予測されていたHIDS異常及び認証異常の係数をゼロにする。
 [C3]侵害されたと判定されたECU又はECUが接するネットワークにおいて、感染したマルウェアと一致する挙動がセキュリティログに記録されている場合、対応するテーブルエントリのうち、当該セキュリティログを記録したセキュリティセンサのテーブルエントリの係数を増やす。例えば、図5A及び図5Bの通信検知ログを含む対応情報に基づき、図8の予測異常情報を変更する場合を説明する。図5Bのマルウェア解析結果テーブルによると、マルウェアAは、CAN-IDSにより検知される可能性があるCANメッセージを送信する機能を具備している。よって、図8の予測異常情報において、侵害されたと判定されたECU-1と隣接するCANバスの異常を検知するECU-3のCAN-IDS異常の係数のうち、ECU-1に係る異常の係数がゼロよりも大きくなっている行において、ECU-3のCAN-IDS異常の係数をプラス1し、1から2に変更する。
 推定部474は、上記の処理を行い、係数を変更した予測異常情報を用いて、攻撃の種別を推定する。本実施形態では、実測異常情報と、予測異常情報と、を比較し、組み合わせがもっとも近いテーブルの行を特定する。具体的には、実測異常情報のデータ列をベクトルで表現したものと、予測異常情報のデータ列をベクトルで表現したものと、の内積を算出し、予測異常情報のベクトルにおいて0よりも大きい値になっている要素の数で内積を割った結果が、最も高い値となった予測異常情報のテーブルの行を抽出する。
 推定部474はさらに、攻撃の種別を推定することに加えて、攻撃の起点及び攻撃の対象を推定してもよい。予測異常情報は、攻撃の種別と、攻撃の起点及び攻撃の対象と、を対応付けて保存しているため、推定部474は、予測異常情報を用いて攻撃の起点及び攻撃の対象を推定することが可能である。なお、ここで、侵害判定部472により侵害されたと判定されたECUについては、推定部474の結果によらず、被害を受けた位置としてみなしてもよい。図8の例をみると、例えば、実測異常情報が、攻撃Dの行と最も類似度が高かった場合、ECU-1からECU-3に向けて攻撃Dが行われたと推定することができる。このように、攻撃の起点及び攻撃の対象を推定すれば、攻撃の経路も推定することができる。
 出力部475は、推定部474より推定された攻撃の種別を、攻撃に対して対策を講じる攻撃対策装置(図示せず)に出力する。
 [1-2.処理]
 車両外装置4の分析部47が実施する攻撃分析処理について、図9を参照して説明する。
 まず、S101で、ログ関連付け部471は、車両ログDB43からセキュリティログと、通信検知ログDB46から通信検知ログと、を取得する。そして、ログ関連付け部471は、セキュリティログと、通信検知ログと、を対応付け、対応付けたログである対応情報を侵害判定部472に出力する。
 続いて、S102で、侵害判定部472は、対応情報を分析し、通信元のECUの侵害確度を判定する。侵害判定部472は、侵害確度を含む判定結果を推定部474に出力する。
 続いて、S103で、推定部474は、攻撃・異常関係テーブル保存部473に保持されている予測異常情報を取得し、対応情報についての判定結果を用いて予測異常情報を更新する。
 続いて、S104で、推定部474は、セキュリティログに基づき実際に検出された異常の組み合わせを示す実測異常情報と、S103で更新された予測異常情報と、の類似度を判定することにより、攻撃の種別を推定する。推定部474は、推定した攻撃の種別を出力部475に出力する。
 続いて、S105で、出力部475は、攻撃の種別を攻撃対策装置に出力する。
 [1-3.効果]
 以上詳述した第1実施形態によれば、以下の効果が得られる。
 (1a)車両外装置4は、車両10内に構築された電子制御システム2に対する攻撃であって、ネットワークを介した攻撃を分析するように構成される。車両外装置4は、分析部47を備える。分析部47は、システムログと通信ログとを対応付けた対応情報が、予め設定された攻撃の類型に合致するか否かを判定するように構成され、対象要素が侵害されているか否かを判定するように構成される。
 このような構成によれば、対応情報が、攻撃の類型に合致するか否かによって侵害されているか否かを判定するので、車両10に対する攻撃であって、ネットワークを介した攻撃を高い精度で分析することができる。
 (1b)上記実施形態では、対応情報が、予め設定された、攻撃の類型に合致するか否かを判定する構成を例示した。対応情報は、セキュリティログと、通信検知ログとが対応付けられた情報である。このような構成によれば、セキュリティログに加えて、実際に異常を発生させた原因である攻撃コードやマルウェアの特徴を含む通信検知ログも加味して攻撃の類型に合致するか否かを判定できる。よって、セキュリティログのみを用いて攻撃の類型に合致するか否かを判定する構成と比較して、車両に対するサイバー攻撃を高い精度で分析することができる。
 (1c)上記実施形態では、推定部474が、侵害判定部472により判定された対応情報についての判定結果を用いて予測異常情報を更新し、更新された予測異常情報と、実測異常情報と、の類似度を判定することにより、攻撃の種別を推定する構成を例示した。このような構成によれば、予測異常情報を更新せずにそのまま用いる場合と比較して、実際の攻撃の傾向を加味することができる。よって、車両に対するサイバー攻撃を高い精度で分析することができる。
 (1d)上記実施形態では、検査部45が、通信ログを解析し、悪性の通信先、及び悪性の通信内容を特定する構成を例示した。このような構成によれば、実際に異常を発生させた原因である通信先や通信内容を加味してサイバー攻撃を分析することができる。
 (1e)上記実施形態では、侵害判定部472が、複数の攻撃の類型のうちのいずれかに合致するかによって、通信元のECUの侵害確度を分類可能である構成を例示した。このような構成によれば、侵害確度に応じて、例えば、予測異常情報を変更する処理を異ならせることができる。具体的には、侵害されたと判定されたECUについてのテーブルエントリの係数の増加率と、侵害された可能性が高いと判定されたECUについてのテーブルエントリの係数の増加率と、を異ならせることにより、より信頼性の高い予測異常情報を生成することができる。
 (1f)上記実施形態では、セキュリティログに含まれる異常が発生した時刻と、通信検知ログに含まれる通信の時刻と、に基づき、通信検知ログとセキュリティログとが同期するように対応付けられる構成を例示した。このような構成によれば、比較的時刻の近いログ同士を対応付けることができるため、無関係の通信検知ログとセキュリティログとが対応付けられてしまう可能性を低減できる。
 (1g)上記実施形態では、予測異常情報は、攻撃の種別毎に、攻撃を受けた場合に電子制御システム2において異常が発生することが予測される位置を係数で表現した情報であり、係数が変更されることにより、予測される異常の組み合わせを変更可能である構成を例示した。このような構成によれば、係数により、予測される異常の組み合わせの確からしさを表現することができる。また、係数をベクトル化して類似度を算出することにより、容易に類似度を見える化することもできる。
 (1h)上記実施形態では、電子制御システム2は三層構造を有しており、推定部474が、異常が発生することが予測されるECUと同じ階層に位置する他のECUについては、侵害されていないと推定する構成を例示した。このような構成によれば、異常が発生することが予測されるECUについて攻撃の侵入口であることがより明確になり、より信
 頼性の高い予測異常情報を生成することができる。
 (1i)上記実施形態では、車両外装置4が攻撃分析装置として車両10の外部に設置される構成を例示した。このような構成によれば、無線通信ネットワークを介してセキュリティログを攻撃分析装置が受信するため、攻撃分析装置が車両10内に搭載される場合と比較して、車両10側の処理負荷を軽減することができる。
 [2.第2実施形態]
 [2-1.第1実施形態との相違点]
 第2実施形態以下の実施形態は、基本的な構成は第1実施形態と同様であるため、相違点について以下に説明する。なお、第1実施形態と同じ符号は、同一の構成を示すものであって、先行する説明を参照する。
 第2実施形態では、通信仲介部3m,3n、及び機能情報DB48を更に備える点で、第1実施形態と相違する。通信仲介部3m,3nは、車両内の通信を仲介するように構成される。また、第2実施形態では、攻撃・異常関係テーブル保存部473、及び推定部474が不要である点で、第1実施形態と相違する。なお、第2実施形態では、推定部474が実行する処理も不要とされる。また、第2実施形態では、車両外装置4の車両ログ受信部42は、各車両10から通信仲介履歴を受信し、車両ログDB43に登録する。
 [2-2.構成]
 第2実施形態は、図11に示すように、第二層に属するECU2dが通信仲介部3mを備え、第一層に属するECU2eが通信仲介部3nを備える。なお、第一層に属するECU2fが通信仲介部3pを更に備えてもよく、また、車両外装置5aを更に備えてもよい。車両外装置5aは、スマートフォンとして構成されてもよい。
 通信仲介部3m,3nは、他のECUであるECU2a~2c等が希望する通信を仲介し、更に他のECUであるECU2e等の通信部3iを介して車両外との通信を実施するように構成される。
 機能情報DB48は、図11に示すように、例えば、車両外装置4に備えられる。機能情報DB48は、車両10における各ECU2a~2f等の通信に関する機能としてどのような機能を有するか(例えば後述する機能情報)、が格納されるデータベースである。通信に関する機能には、後述する通信先指定機能や通信仲介機能、加えて、通信プロトコル、通信速度等に関する情報が含まれうる。
 ログ関連付け部471は、図12に示すように、車両ログDB43に格納されたログと、通信検知ログDB46に格納されたログと、機能情報DB48に格納された情報と、の対応付けを行う。本実施形態では、車両ログDB43に格納されたログとして、車両内での通信仲介履歴が含まれる。この場合、車両ログDB43に格納されたログには、セキュリティセンサのログが含まれる必要はない。
 つまり、本実施形態は、車両10のセキュリティセンサのログを用いない構成である。このため、セキュリティセンサを用いて異常を検知できなかった場合であっても、通信検知ログが取得できればその結果から通信元が侵害されていると判定できる。なお、センサを用いて異常を検知できなかった場合には、車両10のセキュリティセンサが故障した場合、セキュリティセンサの設計に不具合がある場合、或いは攻撃手法が高度化された場合などが含まれる。
 [2-3.処理]
 車両外装置4の分析部47が実施する攻撃分析処理について、図13に示すシーケンス、並びに、図14、図15A、及び図15B(以下、図14~図15B)に示すフローチャートを参照して説明する。
 まず、S101で、ログ関連付け部471は、車両ログDB43から得られる通信仲介履歴と、通信検知ログDB46から得られる通信検知ログと、機能情報DB48から得られる機能情報と、を取得する。そして、ログ関連付け部471は、通信仲介履歴と、通信検知ログと、機能情報と、を対応付け、対応付けたログである対応情報を侵害判定部472に出力する。なお、第1実施形態では、車両内で発生した異常に関する対応情報を出力したが、第2実施形態では、車両内で発生した異常に関する情報を含まない可能性がある対応情報を出力する。
 S101の詳細は、図14~図15Bのフローチャートで示される。図14~図15Bは、車両外装置4の分析部47が実施するログ関連付け処理を示すフローチャートである。なお、ログ関連付け処理では、一例として機器単位で判定することを開示しているが、この構成に限らない。例えば、機器上で動作するアプリケーション単位で記録・判定をしてもよい。
 ログ関連付け処理では、図14に示すように、分析部47は、まず、S201で、車両IDが同じであり、かつ所定時間(例えば時間枠T1)内のログを各DB43,46,48から取得し、関連付けを実施する。この処理では、まず、通信検知ログ、図16に示す通信仲介履歴、及び図17に示す機能情報(例えば通信関係機能)を取得する。
 通信仲介履歴には、図16に示すように、ECU識別子、提供機能種別、仲介の開始時刻、仲介の終了時刻、通信元、通信先等の情報が含まれる。つまり、通信仲介履歴は、該当の識別子のECUにて、どのような種別の通信仲介機能にて、どこから(通信元)からどこへ(通信先)への通信の仲介を、いつから(開始時刻)からいつまで(終了時刻)提供したのかを示す情報である。
 また、機能情報には、図17に示すように、ECU識別子、通信先指定機能の有無、通信仲介機能の提供の有無等の情報が含まれる。なお、通信先指定機能は、ベンダー以外の者(例えば、ユーザ等)によって通信先指定が可能な機能を示す。
 特に、ベンダーには、メーカー、サプライヤ、及び販売者のうちの何れかを含む。また、通信先指定機能には、例えばブラウザのようにユーザが通信先を指定できるアプリケーション、メーラーのように第3者が通信先を指定できるアプリケーション等が含まれる。これらのアプリケーションが搭載されている場合には、その機器について、機能「有」が対応付けられる。本機能がある場合、ユーザの操作の結果として意図せず悪性な通信先と通信する可能性が生じる。
 また、通信仲介機能とは、例えば、Wi-Fi(登録商標)のアクセスポイントのように他デバイスの通信を仲介する機能、プロキシのように他のECUやアプリケーションの通信を仲介する機能等が該当する。本機能がある場合、悪性な通信先との通信が発生したとしても別デバイスや別ECUによる通信が原因である可能性が高いと判定できる。
 続いて、分析部47は、図14に示すS203で、関連付けられたログがあるか否かを判定する。ここでのログは、例えば、図10Cで示したような情報を検査した結果である、通信検知ログである。関連付けられたログがなければ、本処理は終了する。また、S203で関連付けられたログがあれば、本処理はS205に移行し、分析部47は、仲介通信判定処理を実施する。
 仲介通信判定処理は、通信元のECUに通信仲介機能があるか否かを判定し、必要に応じて通信元の機器を特定する処理である。仲介通信判定処理では、図15A及び図15Bに示すように、分析部47は、S221で、通信検知ログ(例えば図5Aのログ)に記載されている通信元(以後、該当の通信元と称する場合がある)に通信仲介機能があるか否かを判定する。
 該当の通信元に通信仲介機能がない場合、本処理は後述するS227に移行する。また、該当の通信元に通信仲介機能がある場合、本処理はS223に移行する。続いて、分析部47は、S223で、通信仲介履歴(図16)を参照する。続いて、S225で、通信検知ログに記載されている通信時刻に該当する該当時間帯に該当の通信元が通信検知ログに記載されている通信先と同一の宛先への通信を仲介したことの仲介履歴(以後、該当の仲介履歴と略する場合がある)があるか否かを判定する。
 S225で該当の仲介履歴がなければ、本処理はS227に移行する。この場合、分析部47は、S227で、通信検知ログに記載されている通信内容の通信は、該当の通信元とは別の機器による通信ではない、すなわち通信仲介機能を用いた通信ではないと判定し、仲介通信判定処理を終了する。
 また、S225で該当の仲介履歴があれば、本処理はS229に移行する。この場合、分析部47は、S229で、該当の通信元が仲介した通信の通信元(以下、車両内で仲介した通信の通信元と略する場合がある)が別の車両内機器(すなわち車両10内の機器であって、現状認識されている通信元とは別の機器)であるか否かを判定する。なお、図16の例では、該当の通信元ECU1が仲介した通信の通信元は、ECU6である。この例では、ECU3によって仲介された通信であってECU6が通信元である通信を、ECU1が仲介したことが、通信仲介履歴に示されているからである。
 車両内で仲介した通信の通信元が別の車両内機器であれば、本処理はS231に移行する。この場合、分析部47は、S231で、通信検知ログに記載されている通信内容の通信は他の車両内機器の通信であると判定し、仲介通信判定処理を終了する。また、S229で、車両内で仲介した通信の通信元が別の車両内機器でなければ、本処理はS233に移行する。この場合、分析部47は、S233で、車両内で仲介した通信の通信元が車両外機器(例えばスマートフォン等の車両外装置5a等)であるか否かを判定する。
 車両内で仲介した通信の通信元が車両外機器であれば、本処理はS235に移行する。この場合、分析部47は、S235で、通信検知ログに記載されている通信内容の通信は車両外機器の通信と判定し、仲介通信判定処理を終了する。また、S233で、車両内で仲介した通信の通信元が車両外機器でなければ、本処理はS237に移行する。この場合、分析部47は、S237で、通信検知ログに記載されている通信内容の通信の出元が不明であると判定し、仲介通信判定処理を終了する。
 仲介通信判定処理が終了すると、本処理は図14に戻り、S207に移行する。分析部47は、S207で、車両内で仲介した通信の通信元が車両外機器であると仲介通信判定処理で判定されたか否かを判定する。車両内で仲介した通信の通信元が車両外機器であれば、本処理はS209に移行する。分析部47は、S209で、通信検知ログに示されている通信内容の通信の出元を該当の通信仲介履歴に記載の通信元に設定し、S211に移行する。
 また、S207で、車両内で仲介した通信の通信元が車両外機器でなければ、本処理はS211に移行する。この場合、分析部47は、S211で、車両内で仲介した通信の通信元が他の車両内機器であると仲介通信判定処理で判定されたか否かを判定する。車両内で仲介した通信の通信元が他の車両内機器であれば、S213に移行する。この場合、分析部47は、S213で、通信検知ログに記載されている通信内容の通信の出元を該当の通信仲介履歴に記載の通信元に設定し、ログ関連付け処理を終了する。また、S211で、車両内で仲介した通信の通信元が他の車両内機器でなければ、仲介通信判定処理を終了する。
 なお、上記の通信判定処理で、S209又はS213の処理が実施された場合には、分析部47は、例えば図18に示すように、通信解析結果テーブル(即ち、対応情報に含まれる通信検知ログ)を書き換える。図18に示す通信解析結果テーブルは、図5Aで示したテーブルにおいて、通信元として記載されていたECU1との表記が、ECU6に書き換えられている。つまり、通信の仲介を車両内で行うことで、見かけ上の通信元であったECU1が、実際の通信元であるECU6に書き換えられる。
 次に、図13に戻り、S102で、侵害判定部472は、対応情報を分析し、通信元のECUの侵害確度を判定する。侵害判定部472は、侵害確度を含む判定結果(例えば推定した攻撃の種別)を出力部475に出力する。
 S102の詳細は、図19、図20のフローチャートで示される。図19、図20は、車両外装置4の分析部47(例えば侵害判定部472)が実施する侵害判定処理を示すフローチャートである。侵害判定処理は、対応情報毎に実施される。侵害判定処理では、図19に示すように、S261で、分析部47は、通信元の侵害判定を実施する。この処理では、実際の通信元に対する侵害判定を実施する。
 侵害判定の手順は、第1実施形態と同様に、通信元の通信の内容や通信先の情報を含む対応情報が、予め設定された複数の攻撃の類型のいずれかに合致するか否かを判定すること、及び、複数の攻撃の類型のいずれかに合致する場合は、いずれの攻撃の類型に合致するかに応じて通信元の侵害確度を判定すること、を含む。通信元の侵害確度には、通信元は侵害された可能性が高い、及び、通信元が侵害されている、という2つの分類が含まれる。なお第2実施形態はセキュリティログを用いない構成であるから、第2実施形態の侵害判定では、第1実施形態で例示した複数の攻撃の類型のうち、セキュリティログを用いないで判定を実施可能な類型を用いる。
 そのため、第1実施形態で記載の[B3]の「動的解析時に確認された挙動がECUにおいて発生していることを対応情報から確認」のうち、不審なIDを指定したCANメッセージが記録されていることの確認を要するものは、第2実施形態では実施しない。第2実施形態では、第1実施形態で記載の[B1]~[B5]におけるECUを通信元と読み替える。その理由は、第2実施形態では、後述のS265の判定の存在から示されるように、S261における通信元は、ECUである可能性に加えて、スマートフォンなどの車両外機器である可能性も前提としているためである。
 また第2実施形態では、[B1]を、マルウェアをダウンロードする通信が通信元から発生している場合、を含むように、第1実施形態と比べて広義に、定義する。このように広義に定義する理由は、第2実施形態では、後述のS267での人為的通信判定がなされるためである。
 続いて、S263で、分析部47は、通信元が侵害された可能性があるか否かを判定する。侵害された可能性がある場合は、対応情報が、予め設定された複数の攻撃の類型のいずれかに合致すると判定された場合であり、「侵害された」と分類された場合と、「侵害された可能性が高い」と分類された場合とが含まれる。通信元が侵害された可能性がなければ、本処理は終了する。また、通信元が侵害された可能性があれば、本処理はS265に移行する。
 続いて、S265で、分析部47は、通信元が車両外機器であるか否かを判定する。通信元が車両外機器であれば、本処理はS273に移行する。そして、S273で、分析部47は、車両は侵害されていないと判定し、侵害判定処理を終了する。
 また、S265で、分析部47は、通信元が車両外機器でなければ、本処理はS267に移行する。続いて、S267で、分析部47は、人為的通信判定処理を実施する。人為的通信判定処理は、通信元からの通信が人為的な通信の可能性があるか否かを判定する処理である。
 人為的通信判定処理では、図20に示すように、S281で、分析部47は、通信元のECUに通信先指定機能があるか否かを判定する。通信先指定機能がなければ、本処理はS283に移行する。続いて、S283で、分析部47は、人為的な通信ではないと判定し、人為的通信判定処理を終了する。
 また、S281で、通信先指定機能があれば、本処理はS285に移行する。続いて、S285で、分析部47は、人為的な通信の可能性ありと判定し、人為的通信判定処理を終了する。
 人為的通信判定処理が終了すると、本処理は図19に戻り、S269に移行する。続いて、S269で、分析部47は、人為的な操作による通信である(即ち、人為的な通信の可能性がある)と判定されたか否かを判定する。
 人為的な操作による通信であると判定されていれば、侵害判定処理は終了する。また、人為的な操作による通信でないと判定されていれば、本処理はS271に移行する。続いて、S271で、分析部47は、通信元が侵害されたと判定し、侵害判定処理は終了する。
 次に、図13に戻り、S105で、出力部475は、攻撃の種別を攻撃対策装置に出力する。なお、本実施形態では、図9で示したS103、S104の処理を省略することができる。
 [2-4.効果]
 以上詳述した第2実施形態によれば、前述した第1実施形態の効果(1a)を奏し、さらに、以下の効果を奏する。
 (2a)第2実施形態の構成では、システムログは、電子制御システム2内で電子制御システム2外との通信を仲介した履歴を含み、分析部47は、通信検知ログの通信の発生元を履歴から特定した上で対象要素が侵害されているかを判定する。分析部47は、通信の通信元であるECUがその通信先をベンダー以外が指定できない電子制御装置である場合に、ECU等の対象要素が侵害されている確度が高いと判定する。
 例えば、電子制御システム2が、図1に示すECU2cとしてのECU6を送信元とする通信を行う場合、ECU6は、ECU2d及びECU2eを経由して、外部サイトにアクセスする。この際の通信内容は、車両外装置4で監視され、前述のログ関連付け処理が実施される。ログ関連付け処理では、図18に示すように、送信元がECU6であることが認識される。そして、図19に示す侵害判定処理によって、通信元が侵害された可能性があり(S263でYES)、通信元が車両外機器でなく(S265でNO)、かつ人為的通信でない(S269でNO)場合に、ECU6が侵害されていると判定される。
 よって、通信を仲介した構成であっても、良好に車両100が侵害されたことを判定できる。
 [3.第3実施形態]
 [3-1.構成]
 第3実施形態は、電子制御システム2がスマートフォン等の車両外装置5aによる通信を中継し、この通信が悪性の通信である可能性がある場合に、適切に車両が侵害されたか否かを判定できる構成を提供する。
 第3実施形態は、図11に示すように、第一層に属するECU2eが通信仲介部3nを備え、ECU2fが通信仲介部3pを備える。また、スマートフォンとして構成された車両外装置5aを備える。なお、第二層に属するECU2dが通信仲介部3mを備えてもよい。また、第3実施形態では、車両外装置4の車両ログ受信部42は、第2実施形態と同様に、各車両10から通信仲介履歴を受信し、車両ログDB43に登録する。
 [3-2.処理]
 本実施形態での処理は、第2実施形態と同様である。
 [3-3.効果]
 以上詳述した第3実施形態によれば、前述した第1実施形態の効果(1a)を奏し、さらに、以下の効果を奏する。
 (3a)例えば、電子制御システム2が、図11に示すスマートフォンとしての車両外装置5aを送信元とする通信を行う場合、車両外装置5aは、ECU2f及びECU2eを経由して、外部サイトにアクセスする。この際の通信内容は、車両外装置4で監視され、前述のログ関連付け処理が実施される。ログ関連付け処理では、分析部47は、スマートフォンとして構成された車両外装置5aからの通信が悪性の通信である可能性があると判定した場合、例えば図21に示すように、通信解析結果テーブルを書き換える。
 図21に示す通信解析結果テーブルは、図5Aで示したテーブルにおいて、通信元として記載されていたECU1との表記が、スマートフォンAに書き換えられている。つまり、通信の仲介を行うことで、見かけ上の通信元であったECU1が、実際の通信元であるスマートフォンAに書き換えられる。この結果、送信元がスマートフォンとしての車両外装置5aであることが認識される。
 そして、図19に示す侵害判定処理では、通信元が侵害された可能性があり(S263でYES)、通信元が車両外機器である(S265でYES)、と処理が進行し、この場合、車両は侵害されていないと判定される。悪性の通信の通信元はスマートフォンであり、車両及び車両の構成要素ではないためである。
 つまり、本実施形態では、分析部47は、通信の通信元が車両外装置5aである場合に、対象要素が侵害されていない可能性が高いと判定するように構成される。
 このような構成によれば、車両外装置5aが存在する場合であっても、車両100が侵害されているか否かを適切に判定することができる。
 [4.第4実施形態]
 [4-1.構成]
 第4実施形態では、車両ログに、アプリケーションログ(図25参照)を含む。アプリケーションログには、ECU上で作動するアプリケーション(例えば、ECU2fのアプリ3j)に関するログであり、通信元の通信先指定機能のあるアプリケーションに関するログが含まれうる。なお、本実施形態では、車両ログにセキュリティセンサのログが含まれなくてもよい。
 また、第4実施形態では、車両外装置4の車両ログ受信部42は、各車両10から通信仲介履歴、及びアプリケーションログを受信し、車両ログDB43に登録する。また、第4実施形態の構成は、第3実施形態の構成(図11参照)と同様の構成を適用できる。
 [4-2.処理]
 本実施形態での通信仲介履歴は、例えば、図23に示される。なお、図23中の「-」については、合致するか否かの判定対象外である。通信仲介履歴は、時刻、通信元、通信
 先等を通信ログに記載されたものと比較することで、通信仲介の実施有無を、精度良く判定可能にするために利用される。
 本実施形態では、図24に示すように、ECU2についての、通信先指定機能が「有」、通信仲介機能が「有」に設定される。
 第4実施形態のログ関連付け処理のうちの仲介通信判定処理(図14のS205参照)は、図22A及び図22Bのフローチャートに示すように実施される。
 仲介通信判定処理では、S223で、分析部47は、通信仲介履歴(図16)を参照した後、S301に移行する。S301で、分析部47は、通信先指定機能がある通信元が通信仲介履歴に含まれているか否かを判定する。通信先指定機能がある通信元がなければ、本処理は前述のS225以下に移行する。通信先指定機能がある通信元があれば、本処理はS303に移行する。なお、図16の例では、通信仲介履歴に含まれている通信元は、ECU3及びECU6である。
 続いて、S303で、分析部47は、アプリケーションログを参照する。アプリケーションログは、ECUのアプリケーションがどこに対して通信をしたのかを示すログである。アプリケーションログは、例えば、図25に示すように、ECUを識別するECU識別子、そのECUに搭載されているアプリケーションの種別、そのアプリ―ケーションの通信の開始時刻と終了時刻と通信先(例えばURL)等とを含む。S303で、分析部47は、通信仲介履歴に含まれている通信元であって通信指定機能がある通信元に該当するECU識別子のECUに搭載されたアプリケーションがどこに対して通信をしたのかを示すアプリケーションログを参照する。
 続いて、S305で、分析部47は、通信検知ログに記載されている通信時刻に該当する時間帯におけるアプリケーションログにて該当通信先への通信履歴があるか否かを判定する(以下、S305の第1判定という)。該当通信先とは、通信検知ログに記載されている通信先、即ち通信仲介履歴に含まれる通信先である。なお、図23のECU2の通信仲介履歴のように、通信先が記録されていない通信仲介履歴もあり得る(図23の通信先「―」参照)。この場合、S305で分析部47は、通信先を判定対象外とした第2判定を実施する。詳しくはS305で分析部47は、通信検知ログに記載されている通信時刻に該当する時間帯におけるアプリケーションログがあるか否かを判定する第2判定を実施する。S305の第1判定及び第2判定の少なくとも一方で肯定判定がなされると、本処理はS307に移行する。S305の第1判定及び第2判定の少なくとも一方で肯定判定がなされなかった場合、本処理は前述のS225以下に移行する。続いて、S307で、分析部47は、通信検知ログに記載の通信内容の通信は、通信仲介履歴に含まれている通信元であって通信指定機能がある通信元である車両内機器の通信と判定し、仲介通信判定処理を終了する。
 また、本実施形態でのログ関連付け処理のうちの人為的通信判定処理では、図26に示すような処理を実施してもよい。
 仲介通信判定処理では、S321で、分析部47は、通信元に通信先指定機能があるか否かを判定する。通信先指定機能がなければ、本処理はS283に移行する。続いて、S283で、分析部47は、人為的な通信ではないと判定し、人為的通信判定処理を終了する。
 また、S321で、通信先指定機能があれば、本処理はS285に移行する。続いて、S285で、分析部47は、人為的な通信の可能性ありと判定し、人為的通信判定処理を終了する。
 [4-3.効果]
 以上詳述した第4実施形態によれば、前述した第1実施形態の効果(1a)を奏し、さらに、以下の効果を奏する。
 (4a)本実施形態では、図11に示す電子制御システム2のECU2f上にて、スマートフォンである車両外装置5aを送信元とする通信を仲介する通信仲介部3pと、ECU2fを送信元とする通信を行うアプリ3jが動作している。そして、図23のように通信仲介部3pにてスマートフォンの通信先が記録されていない場合においても、図25のようにアプリ3jのアプリケーションログが記録されている。このような構成によれば、アプリケーションログを利用して、通信の発生元を区別することができる。
 これにより、スマートフォンが悪性通信の発生元である場合、車両は侵害されていないと判定される。スマートフォンは車両及び車両の構成要素ではないためである。
 また、アプリ3jが悪性通信の元であり、通信先指定機能が「無」である場合には、車両が侵害されていると判定される。これは、人為的に通信先を指定できないにも関わらず悪性通信が発生したということを示しており、当該通信が攻撃により侵害されたことで発生した通信である可能性が高いためである。
 [5.第5実施形態]
 [5-1.構成]
 第5実施形態の基本的な構成は第1実施形態と第2実施形態とを組み合わせた構成である。すなわち、図27、図28に示すように、第5実施形態では、機能情報DB48を備え、ログ関連付け部471は、通信検知ログ、車両ログ(セキュリティログ、通信仲介履歴)、及び機能情報を用いてログ関連付け処理を実施する。また、侵害判定部472は、対応情報及び機能情報を用いて侵害判定処理を実施する。また、第5実施形態では、車両外装置4の車両ログ受信部42は、各車両10から通信仲介履歴、及びセキュリティログを受信し、車両ログDB43に登録する。
 本実施形態では、ログ関連付け部471は、前述の[A1]~[A3]に加えて、以下の観点により各ログを関連付けてもよい。
 [A4]仲介通信であること。この場合、通信仲介履歴に基づいて仲介通信であるか否かが判定される。仲介通信である場合、通信元を該当の通信仲介履歴に記載の通信元に変更する。
 また、本実施形態では、侵害判定部472は、ログ関連付け部471から受領したログについて以下の処理を行い、通信元ECUやVM(Virtual Machine)についての侵害判定を実施する。侵害判定では、例えばすでに述べた判定に加えて、下記のように判定する。
 ・マルウェアをダウンロードする通信が発生しているECUやVMについて侵害された可能性が高いと判定する。
 ・「侵害された可能性が高い」場合について、通信先指定機能が提供されていないECUやVMからの通信である場合、当該ECUやVMが侵害されたと判定する。
 ・通信元が車両外機器である場合には車両は侵害されていないと判定する。
 [5-2.効果]
 以上詳述した第5実施形態によれば、前述した第1実施形態の効果(1a)を奏し、さらに、以下の効果を奏する。
 (5a)通信が仲介されている場合、通信が仲介されていない場合の両方において、良好に車両100が侵害されたことを判定できる。
 [6.対応関係]
 本実施形態では、車両外装置4が攻撃分析装置の一例に相当し、セキュリティログが異常ログの一例に相当し、分析部47(例えば侵害判定部472)が判定部の一例に相当する。
 [7.他の実施形態]
 以上、本開示の実施形態について説明したが、本開示は、上記実施形態に限定されることなく、種々の形態を採り得ることは言うまでもない。
 (7a)上記実施形態では、車両外装置4が攻撃分析装置として車両10の外部に設置される構成を例示した。しかし攻撃分析装置は、車両10の内部に設置されてもよい。このような構成によれば、攻撃分析装置が車両10の外部に設置される場合と比較して、より迅速にセキュリティログを攻撃分析装置が受信できる。
 (7b)上記実施形態では、侵害判定部472が、侵害された場合及び侵害された可能性が高い場合を判定する構成を例示した。しかし、侵害判定部472が判定する侵害確度は、他のパターンを含んでいてもよい。例えば、仮に、検査部45により、通信ログに異常がないと判定された場合、侵害判定部472は、侵害がなかったと判定してもよい。
 (7c)上記実施形態では、検査部45の通信先解析部452が通信先解析を行い、検査部45の通信内容解析部453が通信内容解析を行い、悪性の通信先、及び悪性の通信内容を特定する構成を例示した。しかし、検査部45は、悪性の通信先、及び悪性の通信内容の少なくとも一方を特定する構成であってもよい。つまり、検査部45は、通信先解析及び通信内容解析の一方のみを実行する構成であってもよい。
 (7d)上記実施形態における1つの構成要素が有する機能を複数の構成要素として分散させたり、複数の構成要素が有する機能を1つの構成要素に統合したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加、置換等してもよい。
 (7e)上記実施形態では、車両10にて記録した通信仲介履歴を車両ログ受信部42が受信して通信元を特定する構成を例示した。しかし、車両10が車両外と通信をする際に用いる通信プロトコルが通信仲介履歴を通信データに含めることができるプロトコルである場合には、通信データに含まれる通信仲介履歴を通信データ監視部41が受信してもよい。例えば、通信データ監視部41がプロキシであり、車両10がHTTP(Hypertext Transfer Protocol)プロトコルを用いて車両外と通信する仕様である場合、HTTPプロトコルにて規定されているXFF(X-Forwarded-For)ヘッダーに通信元を記載し、通信データ監視部41にてそれを参照することで通信元を特定できるように構成してもよい。
 (7f)本開示は、前述した攻撃分析装置の他、当該攻撃分析装置を構成要素とするシステム、当該攻撃分析装置としてコンピュータを機能させるためのプログラム、このプログラムを記録した媒体、攻撃分析方法など、種々の形態で実現することができる。
 [本明細書が開示する技術思想]
 [項目1]
 車両(10)内に構築された電子制御システム(2)に対する攻撃であって、ネットワークを介した前記電子制御システムに対する攻撃を分析するように構成された攻撃分析装置(47)であって、
 前記電子制御システムのログであるシステムログと、前記電子制御システムと車両外との通信のログである通信ログと、を対応付けた対応情報が、予め設定された前記攻撃の類
 型に合致するか否かを判定するように構成され、前記電子制御システムの構成要素及び前記電子制御システムのうちの少なくとも一方を表す対象要素が侵害されているか否かを判定するように構成された判定部(472,S102)、
 を備える攻撃分析装置。
 [項目2]
 項目1に記載の攻撃分析装置であって、
 前記システムログは、前記電子制御システム内で前記電子制御システム外との通信を仲介した履歴を含み、
 前記判定部は、前記通信ログの通信の発生元を前記履歴から特定した上で前記対象要素が侵害されているかを判定する
 ように構成された攻撃分析装置。
 [項目3]
 項目1又は項目2に記載の攻撃分析装置であって、
 前記判定部は、前記通信の通信元である電子制御装置がその通信先をベンダー以外が指定できない電子制御装置である場合に、前記対象要素が侵害されている確度が高いと判定する
 ように構成された攻撃分析装置。
 [項目4]
 項目1から項目3までの何れか1項に記載の攻撃分析装置であって、
 前記判定部は、前記通信の通信元が車両外機器である場合に、前記対象要素が侵害されていない可能性が高いと判定する
 ように構成された攻撃分析装置。
 [項目5]
 項目1から項目4までの何れか1項に記載の攻撃分析装置であって、
 前記システムログは、前記電子制御システムで検出された異常を示す異常ログを含み、
 前記異常ログに基づき生成された、実際に検出された前記異常の組み合わせを示す実測異常情報と、前記攻撃の種別毎に、前記攻撃を受けた場合に前記電子制御システムで発生することが予測される異常の組み合わせを示す予測異常情報と、の類似度を判定することにより、前記攻撃の種別を推定するように構成された推定部(474,S103,S104)、
 を更に備え、
 前記予測異常情報は、前記判定部により前記攻撃の類型に合致すると判定された前記対応情報を用いることにより、予測される異常の組み合わせを変更可能である、攻撃分析装置。
 [項目6]
 項目1から項目5までの何れか1項に記載の攻撃分析装置であって、
 前記通信ログを解析し、悪性の通信先、及び悪性の通信内容の少なくとも一方を特定するように構成された検査部(45)を更に備え、
 前記対応情報の前記通信ログには、悪性の通信先、及び悪性の通信内容の少なくとも一方が含まれる、攻撃分析装置。
 [項目7]
 項目1から項目6までの何れか1項に記載の攻撃分析装置であって、
 前記判定部は、前記対応情報が、複数の前記攻撃の類型のうちのいずれかに合致するかによって、前記電子制御システムにおける、異常が生じた位置を特定し、該異常が生じた位置が前記攻撃により侵害された位置であるか、又は、前記攻撃により侵害された可能性が高い位置であるかを分類可能である、攻撃分析装置。
 [項目8]
 項目5を引用する、項目1から項目7までの何れか1項に記載の攻撃分析装置であって、
 前記異常ログと、前記通信ログと、は、前記異常ログに含まれる異常が発生した時刻と、前記通信ログに含まれる通信の時刻と、に基づき、同期するように対応付けられる、攻撃分析装置。
 [項目9]
 項目5を引用する、項目1から項目8までの何れか1項に記載の攻撃分析装置であって、
 前記予測異常情報は、前記攻撃の種別毎に、前記攻撃を受けた場合に前記電子制御システムにおいて異常が発生することが予測される位置を係数で表現した情報であり、
 前記予測異常情報は、前記係数が変更されることにより、予測される異常の組み合わせを変更可能である、攻撃分析装置。
 [項目10]
 項目5を引用する、項目1から項目9までの何れか1項に記載の攻撃分析装置であって、
 前記電子制御システムは複数の電子制御装置を備え、かつ、前記複数の電子制御装置を予め準備された複数の階層のうちの何れかに対応付けた階層構造を有しており、
 前記推定部は、前記判定部により前記攻撃の類型に合致すると判定された前記対応情報が示す、異常が発生することが予測される電子制御装置と同じ階層に位置する他の電子制御装置については、侵害されていないと推定する、攻撃分析装置。
 [項目11]
 車両(10)内に構築された電子制御システム(2)に対する攻撃であって、ネットワークを介した攻撃を分析する攻撃分析方法であって、
 前記電子制御システムのログであるシステムログと、前記電子制御システムと車両外との通信のログである通信ログと、を対応付けた対応情報が、予め設定された前記攻撃の類型に合致するか否かを判定するように構成され、前記電子制御システムの構成要素及び前記電子制御システムのうちの少なくとも一方を表す対象要素が侵害されているか否かを判定すること(472,S102)、
 を含む攻撃分析方法。
 [項目12]
 車両(10)内に構築された電子制御システム(2)に対する攻撃であって、ネットワークを介した攻撃を分析するように構成されたコンピュータに、
 前記電子制御システムのログであるシステムログと、前記電子制御システムと車両外との通信のログである通信ログと、を対応付けた対応情報が、予め設定された前記攻撃の類型に合致するか否かを判定するように構成され、前記電子制御システムの構成要素及び前記電子制御システムのうちの少なくとも一方を表す対象要素が侵害されているか否かを判定する機能(472,S102)、
 を実現させるための攻撃分析プログラム。

Claims (12)

  1.  車両(10)内に構築された電子制御システム(2)に対する攻撃であって、ネットワークを介した前記電子制御システムに対する攻撃を分析するように構成された攻撃分析装置(47)であって、
     前記電子制御システムのログであるシステムログと、前記電子制御システムと車両外との通信のログである通信ログと、を対応付けた対応情報が、予め設定された前記攻撃の類型に合致するか否かを判定するように構成され、前記電子制御システムの構成要素及び前記電子制御システムのうちの少なくとも一方を表す対象要素が侵害されているか否かを判定するように構成された判定部(472,S102)、
     を備える攻撃分析装置。
  2.  請求項1に記載の攻撃分析装置であって、
     前記システムログは、前記電子制御システム内で前記電子制御システム外との通信を仲介した履歴を含み、
     前記判定部は、前記通信ログの通信の発生元を前記履歴から特定した上で前記対象要素が侵害されているかを判定する
     ように構成された攻撃分析装置。
  3.  請求項1又は請求項2に記載の攻撃分析装置であって、
     前記判定部は、前記通信の通信元である電子制御装置がその通信先をベンダー以外が指定できない電子制御装置である場合に、前記対象要素が侵害されている確度が高いと判定する
     ように構成された攻撃分析装置。
  4.  請求項1又は請求項2に記載の攻撃分析装置であって、
     前記判定部は、前記通信の通信元が車両外機器である場合に、前記対象要素が侵害されていない可能性が高いと判定する
     ように構成された攻撃分析装置。
  5.  請求項1に記載の攻撃分析装置であって、
     前記システムログは、前記電子制御システムで検出された異常を示す異常ログを含み、
     前記異常ログに基づき生成された、実際に検出された前記異常の組み合わせを示す実測異常情報と、前記攻撃の種別毎に、前記攻撃を受けた場合に前記電子制御システムで発生することが予測される異常の組み合わせを示す予測異常情報と、の類似度を判定することにより、前記攻撃の種別を推定するように構成された推定部(474,S103,S104)、
     を更に備え、
     前記予測異常情報は、前記判定部により前記攻撃の類型に合致すると判定された前記対応情報を用いることにより、予測される異常の組み合わせを変更可能である、攻撃分析装置。
  6.  請求項5に記載の攻撃分析装置であって、
     前記通信ログを解析し、悪性の通信先、及び悪性の通信内容の少なくとも一方を特定するように構成された検査部(45)を更に備え、
     前記対応情報の前記通信ログには、悪性の通信先、及び悪性の通信内容の少なくとも一方が含まれる、攻撃分析装置。
  7.  請求項5又は請求項6に記載の攻撃分析装置であって、
     前記判定部は、前記対応情報が、複数の前記攻撃の類型のうちのいずれかに合致するかによって、前記電子制御システムにおける、異常が生じた位置を特定し、該異常が生じた位置が前記攻撃により侵害された位置であるか、又は、前記攻撃により侵害された可能性が高い位置であるかを分類可能である、攻撃分析装置。
  8.  請求項5又は請求項6に記載の攻撃分析装置であって、
     前記異常ログと、前記通信ログと、は、前記異常ログに含まれる異常が発生した時刻と、前記通信ログに含まれる通信の時刻と、に基づき、同期するように対応付けられる、攻撃分析装置。
  9.  請求項5又は請求項6に記載の攻撃分析装置であって、
     前記予測異常情報は、前記攻撃の種別毎に、前記攻撃を受けた場合に前記電子制御システムにおいて異常が発生することが予測される位置を係数で表現した情報であり、
     前記予測異常情報は、前記係数が変更されることにより、予測される異常の組み合わせを変更可能である、攻撃分析装置。
  10.  請求項5又は請求項6に記載の攻撃分析装置であって、
     前記電子制御システムは複数の電子制御装置を備え、かつ、前記複数の電子制御装置を予め準備された複数の階層のうちの何れかに対応付けた階層構造を有しており、
     前記推定部は、前記判定部により前記攻撃の類型に合致すると判定された前記対応情報が示す、異常が発生することが予測される電子制御装置と同じ階層に位置する他の電子制御装置については、侵害されていないと推定する、攻撃分析装置。
  11.  車両(10)内に構築された電子制御システム(2)に対する攻撃であって、ネットワークを介した攻撃を分析する攻撃分析方法であって、
     前記電子制御システムのログであるシステムログと、前記電子制御システムと車両外との通信のログである通信ログと、を対応付けた対応情報が、予め設定された前記攻撃の類型に合致するか否かを判定するように構成され、前記電子制御システムの構成要素及び前記電子制御システムのうちの少なくとも一方を表す対象要素が侵害されているか否かを判定すること(472,S102)、
     を含む攻撃分析方法。
  12.  車両(10)内に構築された電子制御システム(2)に対する攻撃であって、ネットワークを介した攻撃を分析するように構成されたコンピュータに、
     前記電子制御システムのログであるシステムログと、前記電子制御システムと車両外との通信のログである通信ログと、を対応付けた対応情報が、予め設定された前記攻撃の類型に合致するか否かを判定するように構成され、前記電子制御システムの構成要素及び前記電子制御システムのうちの少なくとも一方を表す対象要素が侵害されているか否かを判定する機能(472,S102)、
     を実現させるための攻撃分析プログラム。
PCT/JP2023/034764 2022-09-30 2023-09-25 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム WO2024071049A1 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2022157958 2022-09-30
JP2022-157958 2022-09-30
JP2023124717A JP2024052533A (ja) 2022-09-30 2023-07-31 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
JP2023-124717 2023-07-31

Publications (1)

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

Family

ID=90477898

Family Applications (1)

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

Country Status (1)

Country Link
WO (1) WO2024071049A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014113901A (ja) * 2012-12-10 2014-06-26 Mitsubishi Electric Corp 車載装置
JP2021076949A (ja) * 2019-11-06 2021-05-20 三菱電機株式会社 車両用制御装置
WO2021131193A1 (ja) * 2019-12-25 2021-07-01 株式会社デンソー 攻撃監視用センター装置、及び攻撃監視用端末装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014113901A (ja) * 2012-12-10 2014-06-26 Mitsubishi Electric Corp 車載装置
JP2021076949A (ja) * 2019-11-06 2021-05-20 三菱電機株式会社 車両用制御装置
WO2021131193A1 (ja) * 2019-12-25 2021-07-01 株式会社デンソー 攻撃監視用センター装置、及び攻撃監視用端末装置

Similar Documents

Publication Publication Date Title
US11277427B2 (en) System and method for time based anomaly detection in an in-vehicle communication
US10721243B2 (en) Apparatus, system and method for identifying and mitigating malicious network threats
EP3373553B1 (en) System and method for providing cyber security to an in-vehicle network
US9032521B2 (en) Adaptive cyber-security analytics
US10855700B1 (en) Post-intrusion detection of cyber-attacks during lateral movement within networks
US11115433B2 (en) System and method for content based anomaly detection in an in-vehicle communication network
JP7056752B2 (ja) 分析装置、分析システム、分析方法及びプログラム
CN112534432A (zh) 不熟悉威胁场景的实时缓解
US11924225B2 (en) Information processing apparatus, information processing method, and recording medium
CN114006723B (zh) 基于威胁情报的网络安全预测方法、装置及系统
US10015192B1 (en) Sample selection for data analysis for use in malware detection
CN118451481A (zh) 针对交通工具网络的通用入侵检测和预防
CN111224928A (zh) 网络攻击行为的预测方法、装置、设备及存储介质
Francia et al. Applied machine learning to vehicle security
Papanikolaou et al. An autoML network traffic analyzer for cyber threat detection
WO2024071049A1 (ja) 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
WO2023223515A1 (ja) 攻撃経路推定システム、攻撃経路推定装置、攻撃経路推定方法及びプログラム
Raftopoulos et al. A quality metric for IDS signatures: in the wild the size matters
WO2022181495A1 (ja) 情報処理システム、情報処理方法、及びプログラム
JP2024052533A (ja) 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
WO2023233711A1 (ja) 情報処理方法、異常判定方法、および、情報処理装置
Nguyen et al. A Real-time Explainable Anomaly Detection System for Connected Vehicles.
CN117040916A (zh) 一种窃密检测方法装置、电子设备及存储介质
WO2024035746A1 (en) A cyber security restoration engine
JP2020170350A (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: 23872272

Country of ref document: EP

Kind code of ref document: A1