WO2018105321A1 - 情報処理装置及び情報処理方法 - Google Patents

情報処理装置及び情報処理方法 Download PDF

Info

Publication number
WO2018105321A1
WO2018105321A1 PCT/JP2017/040728 JP2017040728W WO2018105321A1 WO 2018105321 A1 WO2018105321 A1 WO 2018105321A1 JP 2017040728 W JP2017040728 W JP 2017040728W WO 2018105321 A1 WO2018105321 A1 WO 2018105321A1
Authority
WO
WIPO (PCT)
Prior art keywords
log
sampling
abnormality
communication data
data
Prior art date
Application number
PCT/JP2017/040728
Other languages
English (en)
French (fr)
Inventor
崇光 佐々木
Original Assignee
パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ filed Critical パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
Priority to CN201780022304.XA priority Critical patent/CN108886489B/zh
Priority to EP17879597.7A priority patent/EP3554019B1/en
Priority to JP2018554882A priority patent/JP6490879B2/ja
Publication of WO2018105321A1 publication Critical patent/WO2018105321A1/ja
Priority to US16/241,039 priority patent/US10861253B2/en
Priority to US17/090,391 priority patent/US11776326B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • 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
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0808Diagnosing performance data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data
    • G07C5/085Registering performance data using electronic data carriers
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/10Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time using counting means or digital clocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/44Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0043Signal treatments, identification of variables or parameters, parameter estimation or state estimation
    • B60W2050/005Sampling
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • B60W2050/021Means for detecting failure or malfunction
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle

Definitions

  • This disclosure relates to an information processing apparatus and the like mounted on a vehicle.
  • Patent Document 1 discloses a technique for detecting unauthorized data intrusion in an in-vehicle network or the like.
  • an object of the present disclosure is to provide an information processing apparatus capable of reducing the data amount of monitoring target data transmitted from an in-vehicle system while maintaining an appropriate monitoring level.
  • An information processing apparatus is an information processing apparatus mounted on a vehicle, and acquires an abnormality detection result indicating whether an abnormality is included in communication data in an in-vehicle network of the vehicle from an abnormality detector. And a sampling log in which the amount of data generated per unit time of the two types of logs of the communication data is smaller than that of the other log is provided outside the vehicle from a transmitter mounted on the vehicle.
  • An output unit that outputs a sampling log transmission instruction to periodically transmit to the server device, and the output unit further includes the abnormality detection result indicating that the communication data includes an abnormality. If acquired, the transmitter sends a full log, which is a log whose amount of data generated per unit time is larger than the sampling log, from the two types of logs. And it outputs the full log transmission instruction to transmit to the server device.
  • the information processing apparatus and the like can reduce the amount of monitoring target data transmitted from the in-vehicle system while maintaining an appropriate monitoring level.
  • FIG. 1 is a block diagram showing a configuration of a security system in the embodiment.
  • FIG. 2 is a schematic diagram illustrating a sampling period in the embodiment.
  • FIG. 3 is a comparison diagram of the sampling log and the full log in the embodiment.
  • FIG. 4 is a data configuration diagram showing a log format in the embodiment.
  • FIG. 5 is a graph showing the relationship between the sampling interval and the data amount.
  • FIG. 6 is a comparison diagram showing the amount of data before and after compression.
  • FIG. 7 is a block diagram showing a basic configuration of the security ECU in the embodiment.
  • FIG. 8 is a block diagram illustrating a basic configuration of the server device according to the embodiment.
  • FIG. 9 is a block diagram illustrating a configuration of a security system in a specific example.
  • FIG. 10 is a block diagram showing a modified configuration of the security system in the specific example.
  • FIG. 11 is a block diagram illustrating a configuration of a security ECU in a specific example.
  • FIG. 12 is a block diagram illustrating a configuration of a security gateway device in a specific example.
  • FIG. 13 is a block diagram illustrating a configuration of a server device in a specific example.
  • FIG. 14 is a sequence diagram illustrating an operation related to transmission of a sampling log in a specific example.
  • FIG. 15 is a sequence diagram illustrating an operation related to an abnormality detection process performed by the server device in the specific example.
  • FIG. 16 is a sequence diagram showing operations related to the abnormality detection process performed by the security ECU in the specific example.
  • FIG. 11 is a block diagram illustrating a configuration of a security ECU in a specific example.
  • FIG. 12 is a block diagram illustrating a configuration of a security gateway device in a specific example.
  • FIG. 13 is a block
  • FIG. 17 is a flowchart showing the operation of the security ECU in a specific example.
  • FIG. 18 is a flowchart illustrating a first aspect of log recording processing performed by the security ECU in a specific example.
  • FIG. 19 is a flowchart illustrating a second aspect of the log recording process performed by the security ECU in the specific example.
  • FIG. 20 is a flowchart illustrating an abnormality detection process performed by the security ECU in a specific example.
  • FIG. 21 is a flowchart illustrating a first aspect of log transmission processing performed by the security ECU in a specific example.
  • FIG. 22 is a flowchart illustrating a second aspect of the log transmission process performed by the security ECU in the specific example.
  • FIG. 23 is a flowchart illustrating a third aspect of the log transmission process performed by the security ECU in the specific example.
  • FIG. 24 is a flowchart illustrating a first mode of operation of the server device in the specific example.
  • FIG. 25 is a flowchart showing a second mode of operation of the server device in the specific example.
  • FIG. 26 is a flowchart illustrating a first aspect of sampling interval update processing performed by the server device and the security ECU in a specific example.
  • FIG. 27 is a flowchart illustrating a second aspect of the sampling interval update process performed by the server device and the security ECU in the specific example.
  • an in-vehicle system that is a system mounted on each vehicle may monitor data in the in-vehicle system in order to protect the vehicle from unauthorized data.
  • the in-vehicle system since the in-vehicle system is mounted on the vehicle, it may not have sufficient processing capability. Therefore, it may be difficult for the in-vehicle system to properly monitor the data in the in-vehicle system alone and maintain an appropriate monitoring level.
  • a system outside the vehicle may monitor data in the in-vehicle system.
  • a large amount of monitoring target data may be transmitted from the in-vehicle system to an external system. It is not easy to prepare resources for processing such a large amount of monitoring target data.
  • an information processing apparatus is an information processing apparatus mounted on a vehicle, and an abnormality detection result indicating whether an abnormality is included in communication data in an in-vehicle network of the vehicle.
  • a sampling log which is a log in which the amount of data generated per unit time is smaller than the other of the two types of logs of the communication data, from a transmitter mounted on the vehicle to the outside of the vehicle
  • An output unit that outputs a sampling log transmission instruction to periodically transmit to the server device provided in the server, and the output unit further acquires the abnormality detection result indicating that the communication data includes an abnormality
  • the container acquires the full log, which is a log in which the amount of data generated per unit time is larger than the sampling log among the two types of logs And it outputs the full log transmission instruction to transmit the signal unit to the server device.
  • a sampling log having a relatively small amount of data is periodically transmitted from a transmitter mounted on the vehicle to the server device, and a full log having a relatively large amount of data is transmitted when an abnormality occurs.
  • the server device provided outside the vehicle can monitor and analyze the sampling log and the full log by using sufficient processing capability that is not restricted by the requirements for in-vehicle use. Therefore, the information processing apparatus can reduce the data amount of the monitoring target data transmitted from the in-vehicle system while maintaining an appropriate monitoring level.
  • the acquisition unit may acquire the abnormality detection result from the abnormality detector included in the server device.
  • the information processing apparatus can acquire the abnormality detection result from the abnormality detector included in the server apparatus that is the transmission destination of the sampling log.
  • the abnormality detector included in the server device may have sufficient processing capability that is not limited by the requirements for in-vehicle use.
  • the abnormality detector included in the server device can determine whether an abnormality is included according to the sampling log. Therefore, the information processing apparatus can acquire an appropriate abnormality detection result from the abnormality detector included in the server apparatus.
  • the information processing apparatus further includes the abnormality detector, and the abnormality detector acquires the communication data from the in-vehicle network and determines whether the communication data includes an abnormality. May be.
  • the information processing apparatus can appropriately determine whether or not the communication data includes an abnormality according to the communication data acquired from the in-vehicle network. Further, the information processing apparatus can control the transmitter such that the sampling log is periodically transmitted from the in-vehicle system and the full log is transmitted from the in-vehicle system when an abnormality occurs. Therefore, an abnormality or the like determined to be included in the communication data can be analyzed appropriately.
  • the sampling log is a plurality of periods included in the plurality of sampling intervals, each of which is shorter than the first time length, among a plurality of sampling intervals each of which is a period of a first time length.
  • the log of the communication data in a plurality of sampling periods that are periods of the second time length may be used.
  • abnormalities included in communication data may be caused by sampling logs in a plurality of sampling periods respectively included in a plurality of sampling intervals. Can be analyzed appropriately.
  • the sampling log includes (i) a sampling time of the frame, and (ii) one or more sampling periods having the same sampling period as the frame for each of the plurality of frames constituting the communication data in the plurality of sampling periods. Whether or not the frame is the first frame and (iii) data of the frame may be indicated.
  • the sampling time and whether or not it is the first frame in the sampling period are indicated by the sampling log.
  • an abnormality can be appropriately determined according to the difference between the sampling time of a frame different from the first frame and the sampling time of the previous frame.
  • the full log is a log of the communication data of a plurality of types
  • the sampling log is a log of the communication data of one or more types less than the plurality of types
  • the plurality of sampling periods For each of the plurality of frames constituting the one or more types of communication data in (i), (i) the sampling time of the frame, and (ii) the first frame in one or more frames having the same type and sampling period as the frame. And (iii) data of the frame may be indicated.
  • the sampling time and whether or not it is the first frame in the same type and the same sampling period are indicated by the sampling log.
  • an abnormality can be appropriately determined according to the difference between the sampling time of a frame different from the first frame and the sampling time of the previous frame.
  • the full log may be a log of the communication data of a plurality of types
  • the sampling log may be a log of the communication data of one or more types less than the plurality of types.
  • the information processing apparatus further includes the transmitter, and the transmitter transmits the sampling log to the server device according to the sampling log transmission instruction output from the output device, and the output device The full log may be transmitted to the server device in accordance with the full log transmission instruction output from the server.
  • the information processing apparatus can transmit the sampling log and the full log to the server apparatus in a timely manner.
  • the transmitter reversibly compresses the sampling log in accordance with the sampling log transmission instruction output from the output device, transmits the compressed sampling log to the server device, and outputs the output device.
  • the full log may be reversibly compressed in accordance with the full log transmission instruction output from the server, and the compressed full log may be transmitted to the server device.
  • the information processing apparatus can reduce the amount of monitoring target data transmitted from the in-vehicle system.
  • the full log and the sampling log are generated by a log generator mounted on the vehicle, and the output unit sends the sampling log generated by the log generator from the transmitter to the server device.
  • the sampling log transmission instruction to be periodically transmitted is output, and when the acquisition unit acquires the abnormality detection result indicating that the communication data includes abnormality, the full log generated by the log generator is
  • the full log transmission instruction to be transmitted from the transmitter to the server device may be output.
  • the information processing apparatus can appropriately control the in-vehicle system so that the sampling log and the full log generated in the in-vehicle system are transmitted from the in-vehicle system to the server apparatus.
  • the sampling log is a plurality of periods included in the plurality of sampling intervals, each of which is shorter than the first time length, among a plurality of sampling intervals each of which is a period of a first time length.
  • the log of the communication data in a plurality of sampling periods, which is a period of a second time length, and the output device further changes the first time length in a range longer than the second time length to the log generator A change instruction to be output may be output.
  • the information processing apparatus can change the time length of the sampling interval related to the sampling log. Therefore, the information processing apparatus can include abnormalities that are not included in the fixed sampling interval in the sampling log.
  • the output unit causes the log generator to store the first time in a range longer than the second time length.
  • the change instruction that shortens the length of one hour may be output.
  • the information processing apparatus can increase the data amount of the sampling log after an abnormal time. Further, the information processing apparatus can include an abnormality or the like that is not included in a long sampling interval in the sampling log.
  • the output unit causes the log generator to increase the first time length when the acquisition unit does not acquire the abnormality detection result indicating that the communication data includes an abnormality.
  • An instruction may be output.
  • the information processing apparatus can reduce the data amount of the sampling log when there is no abnormality.
  • the first time length is determined for each of a plurality of types related to the communication data
  • the output device includes an abnormality in the communication data for one type of the plurality of types.
  • the log generator may output the change instruction to shorten the first time length for the one type in a range longer than the second time length. Good.
  • the information processing apparatus can increase the data amount of the sampling log for each type after the abnormality.
  • the first time length is determined for each of a plurality of types related to the communication data
  • the output device includes an abnormality in the communication data for one type of the plurality of types.
  • the log generator outputs the change instruction to shorten the first time length for each of the plurality of types in a range longer than the second time length. May be.
  • the information processing apparatus can increase the data amount of the sampling log regardless of the type after the abnormality. Therefore, the information processing apparatus can include detailed information in the sampling log regardless of the type after the abnormality.
  • the output unit increases the first time length shortened to the log generator.
  • the change instruction to be output may be output.
  • the information processing apparatus can reduce the increased data amount when there is no abnormality.
  • the output device may output the change instruction for causing the log generator to randomly change the first time length in a range longer than the second time length.
  • the information processing apparatus can suppress a phenomenon in which an abnormality based on illegal data is not included in the sampling log.
  • the output device may output the change instruction for causing the log generator to linearly change the first time length in a range longer than the second time length.
  • the information processing apparatus can change the sampling interval in various ways. Therefore, the information processing apparatus can appropriately include an abnormality or the like that is not included in the fixed sampling interval in the sampling log.
  • the acquisition unit further acquires the change instruction of the first time length from the server device as an external instruction
  • the output unit follows the external instruction acquired by the acquisition unit from the server device.
  • the change instruction for causing the log generator to change the first time length in a range longer than the second time length may be output.
  • the information processing apparatus can change the sampling interval in accordance with the instruction acquired from the server apparatus. Therefore, centralized control of the sampling interval is possible.
  • the full log is a log of the communication data of a plurality of types
  • the sampling log is a log of the communication data of one or more types of the plurality of types
  • the output device Specific information that causes the log generator to specify the one or more types may be output.
  • the data amount of the monitoring target data transmitted from the in-vehicle system is appropriately reduced.
  • a log of important types of communication data can be applied as a sampling log.
  • the information processing apparatus can specify an appropriate type to be applied to the sampling log.
  • the information processing apparatus further includes the log generator, and the log generator acquires the communication data from the in-vehicle network and generates the full log and the sampling log according to the communication data. Also good.
  • the information processing apparatus can appropriately generate the sampling log and the full log according to the communication data acquired from the in-vehicle network.
  • An information processing method is an information processing method performed by an information processing device mounted on a vehicle, and an abnormality detection is performed to determine whether an abnormality is included in communication data in the in-vehicle network of the vehicle.
  • the detection result is acquired in the acquisition step, the amount of data generated per unit time of the two types of logs is the sample rate.
  • It said full log is larger logs than log from the transmitter may be an information processing method for outputting a full log transmission instruction for transmitting to the server device.
  • a sampling log having a relatively small amount of data is periodically transmitted from a transmitter mounted on the vehicle to the server device, and a full log having a relatively large amount of data is transmitted when an abnormality occurs.
  • the server device provided outside the vehicle can monitor and analyze the sampling log and the full log by using sufficient processing capability that is not restricted by the requirements for in-vehicle use. Therefore, the information processing apparatus that performs this information processing method can reduce the data amount of the monitoring target data transmitted from the in-vehicle system while maintaining an appropriate monitoring level.
  • these comprehensive or specific aspects may be realized by a system, an apparatus, a method, an integrated circuit, a computer program, or a non-transitory recording medium such as a computer-readable CD-ROM.
  • the present invention may be realized by any combination of an apparatus, a method, an integrated circuit, a computer program, and a recording medium.
  • FIG. 1 is a block diagram illustrating a configuration of a security system according to the present embodiment.
  • the security system 100 illustrated in FIG. 1 includes a server device 300, an in-vehicle system 410, and the like.
  • the in-vehicle system 410 is a system mounted on the vehicle 400, and includes a security ECU 440, other ECUs 451 and 452, and the like.
  • the ECU is an electronic control unit (Electronic Control Unit), and is also called an engine control unit (Engine Control Unit).
  • the in-vehicle system 410 provides four layers of defense.
  • the first layer is defense in an external communication device.
  • the communication device outside the vehicle authenticates the communication destination and encrypts communication according to the situation.
  • the external communication device is a head-up display 421, a telematics communication unit (TCU) 422, a V2X module 423, an OBD (On-Board Diagnostics) module 424, or the like.
  • the head-up display 421 communicates with a BLUETOOTH (registered trademark) device or a USB device.
  • the telematics communication unit 422 communicates with an external server or the like.
  • the V2X module 423 communicates with infrastructure or the like.
  • the OBD module 424 communicates with a diagnostic device outside the vehicle.
  • in-vehicle communication devices such as the head-up display 421 that have sufficient computing resources, in addition to authentication and encryption, check the communication data received from the outside of the vehicle and perform filtering that passes only data that has been approved in advance. By doing so, we prevent intrusion of illegal data.
  • the second layer is defense in the gateway device 430.
  • the gateway device 430 is also called a network gateway, and connects a network to which an external communication device is connected to a control system network mounted on the vehicle 400.
  • the control system network is also called an in-vehicle network, and is specifically a CAN.
  • the gateway device 430 checks the communication data received from outside the vehicle and performs filtering to transfer only data that has been approved in advance to the control network, thereby preventing intrusion of unauthorized data.
  • the third layer is a defense in the security ECU 440 arranged in the control system network.
  • the security ECU 440 monitors communication data flowing in the control system network, identifies and invalidates illegal data based on the format, period, value change amount, and the like of the communication data. For example, the security ECU 440 may identify unauthorized data by matching communication data with a white list or rule. Further, the security ECU 440 may invalidate illegal data using a CAN error frame.
  • the fourth layer is a defense in the ECUs 451 and 452 and the like.
  • the ECUs 451 and 452 and the like are mounted so as to have tamper resistance.
  • the ECUs 451 and 452 and the like may check that the software program has not been tampered with by secure boot. Further, the ECUs 451 and 452 and the like may prevent the software program from being falsified by using a software program generated by secure coding or a software program whose source code is obfuscated.
  • the security system 100 also performs remote monitoring of the vehicle 400 in the server device 300.
  • the server device 300 may detect unauthorized data that has entered through the defense-in-depth. And a new defense measure may be applied and a warning may be notified to a driver. Even when unauthorized data is dealt with by multi-layered defense, detecting unauthorized access as an abnormality and grasping the tendency of unauthorized access is useful to prevent intrusion of new unauthorized data.
  • the server apparatus 300 collects and analyzes a communication log that is a log of communication data in the in-vehicle network. Furthermore, the server apparatus 300 outside the vehicle 400 can collect and analyze many communication logs not only from one vehicle 400 but also from a plurality of vehicles. Then, communication logs obtained from various vehicles in various regions can be used to unify various vehicle abnormalities. Therefore, the area, time zone, vehicle type, etc. where unauthorized access is frequently performed can be specified.
  • the server device 300 outside the vehicle 400 is not limited by the requirements for in-vehicle use, and can be provided with abundant computing resources. Therefore, the server apparatus 300 outside the vehicle 400 can perform complicated processing such as advanced abnormality detection based on machine learning, for example. Therefore, the server apparatus 300 can detect unauthorized data, unauthorized access, or a sign thereof that the in-vehicle system 410 cannot detect.
  • the server device 300 outside the vehicle 400 can perform processing corresponding to SIEM (Security Information Event Management) for collecting and analyzing information. This process can also be expressed as AutoSIEM (Automotive SIEM).
  • SIEM Security Information Event Management
  • an SOC Security Operation Center
  • an ASIRT Automatic Security Incident Response Team
  • the SOC is an organization that monitors the detection result in the server apparatus 300
  • the ASIRT is an organization that deals with an abnormality when an abnormality is detected.
  • the ASIRT creates a new detection rule. Then, the server apparatus 300 may distribute the created new detection rule to the head-up display 421, the security ECU 440, and the like.
  • the terminal device 200 connected to the server device 300 is a device that communicates with the server device 300 and is used in SOC, ASIRT, or the like. For example, the terminal device 200 receives an abnormality notification from the server device 300.
  • the communication log is collected and analyzed by the server device 300. Therefore, the in-vehicle system 410 in the vehicle 400 uploads the communication log to the server device 300.
  • the server device 300 accumulates and analyzes the uploaded communication log. Further, for example, the SOC and ASIRT download the communication log from the server device 300 to the terminal device 200 for detailed analysis and evidence maintenance. That is, the terminal device 200 downloads a communication log from the server device 300 in accordance with instructions such as SOC and ASIRT.
  • the bit rate of CAN is about 500 Kbps to 1 Mbps. If the CAN bit rate is 500 Kbps, the data volume of the CAN communication log is assumed to reach 225 MB in one hour even if overhead such as additional information is excluded. If 10,000 vehicles upload the communication log to the server device 300, the data amount of the communication log uploaded to the server device 300 is assumed to reach 2250 GB in one hour.
  • the security system 100 includes a configuration for reducing the data amount of the monitoring target data transmitted from the in-vehicle system 410 to the server device 300 while maintaining an appropriate monitoring level.
  • the operation log of each in-vehicle device in the in-vehicle system 410 may be transmitted from the in-vehicle system 410 to the server device 300 as monitoring target data.
  • a communication log of the in-vehicle network is transmitted from the in-vehicle system 410 to the server device 300 as monitoring target data.
  • the communication log is useful for monitoring for protecting the vehicle 400 from unauthorized access.
  • the amount of data in the communication log of CAN which is an in-vehicle network widely adopted in various vehicles, is assumed to be large as described above. That is, the communication log is useful for monitoring, but the amount of data is large.
  • the security system 100 reduces the data amount of the communication log transmitted from the in-vehicle system 410 to the server device 300.
  • the security system 100 may further reduce the data amount of the operation log transmitted from the in-vehicle system 410 to the server device 300 using the same method.
  • the security system 100 uses three reduction methods for reducing the amount of monitoring target data transmitted from the in-vehicle system 410 to the server device 300.
  • the monitoring target data whose data amount is reduced is specifically a communication log transmitted from the in-vehicle system 410 to the server device 300.
  • the first reduction method is reduction of type. Specifically, only the data frame of the high importance type among all the data frames of the type flowing through the CAN is included in the monitoring target data transmitted from the in-vehicle system 410 to the server device 300. For example, among various types of communication data flowing through CAN, communication data such as an accelerator or a brake is directly related to the behavior of the vehicle, but communication data such as a window or a wiper is not directly related to the behavior of the vehicle.
  • the second reduction method is thinning out the period. Specifically, communication data in a plurality of sampling periods respectively included in a plurality of sampling intervals is included in monitoring target data transmitted from the in-vehicle system 410 to the server device 300.
  • FIG. 2 is a schematic diagram showing a sampling period used in the security system 100 shown in FIG.
  • the sampling period T2 is shorter than the sampling interval T1.
  • communication data at the sampling period T2 is included in the monitoring target data transmitted from the in-vehicle system 410 to the server device 300. This reduces (1-T2 / T1) ⁇ 100% of the data amount.
  • the sampling period T2 may be defined according to the minimum number of data frames for detecting an abnormality in the server apparatus 300. For example, when at least K data frames are used in the abnormality detection algorithm in the server apparatus 300, the sampling period T2 is defined such that at least K data frames exist in the sampling period T2.
  • the above K is 1. Accordingly, in this case, a period corresponding to one period of the same kind of data frame periodically flowing through the CAN can be defined as the sampling period T2.
  • the sampling interval T1 may be defined to be shorter than a period in which unauthorized data is continuously invaded.
  • the influence of each data frame that flows once on the vehicle 400 is small, and the influence of a plurality of data frames that flow continuously on the vehicle 400 is large. That is, the influence of a single intrusion of illegal data on the vehicle 400 is small, and the influence of the continuous intrusion of illegal data on the vehicle 400 is large.
  • the sampling interval T1 may be defined to be shorter than 5 seconds.
  • abnormal data that flows through CAN due to the intrusion of unauthorized data is included in the monitoring target data.
  • the sampling interval T1 may be defined to be long. Therefore, in this case, the data amount reduction effect is great.
  • the sampling interval T1 may be dynamically changed.
  • the sampling interval T1 may be randomly changed at the acquisition timing of the communication log, or may be changed for each vehicle type, region, or type. Thereby, there is a high possibility that the abnormal data flowing through the CAN due to the intrusion of unauthorized data is included in the monitoring target data transmitted from the in-vehicle system 410 to the server device 300.
  • abnormal data flowing through the CAN is included in the monitoring target data transmitted to the server device 300, and the monitoring target data transmitted to the server device 300 is Reduced.
  • the third reduction method is data compression. Specifically, the in-vehicle system 410 reduces the data amount of the monitoring target data transmitted to the server device 300 by compressing the monitoring target data according to a data compression method such as zip, gzip, or 7-Zip. Also good.
  • a data compression method such as zip, gzip, or 7-Zip. Also good.
  • the data amount can be reduced by about 30 to 60% by data compression.
  • the data amount can be reduced by the data compression. As a result of actually compressing the monitoring target data, the data amount was reduced by 69.4%.
  • FIG. 3 is a comparison diagram of the sampling log and the full log used in the security system 100 shown in FIG.
  • Each of the sampling log and the full log is a CAN communication log and is monitoring target data.
  • the three reduction methods described above are applied to the sampling log. That is, the type reduction, period thinning, and data compression are applied to the sampling log. Of the three reduction methods described above, only the data compression is applied to the full log.
  • the sampling log includes only a part of the CAN communication logs. Therefore, the data amount of the sampling log is relatively small.
  • the sampling log can include a minimum amount of data for detecting an abnormality included in the communication data.
  • the full log basically includes all communication logs of CAN. Therefore, the data amount of the full log is relatively large. However, the full log may include detailed information regarding CAN communication data. That is, the full log can indicate the abnormality included in the communication data in detail.
  • Security system 100 properly uses two types of monitoring target data, sampling log and full log. That is, the security system 100 selectively uses the sampling log and the full log.
  • the security system 100 generates a sampling log for normal monitoring. Then, the security system 100 periodically transmits a sampling log from the in-vehicle system 410 to the server device 300. In addition, the security system 100 generates a full log for detailed analysis and evidence maintenance when an abnormality is detected. And the security system 100 transmits a full log from the vehicle-mounted system 410 to the server apparatus 300 at the time of abnormality detection.
  • FIG. 4 is a data configuration diagram showing a log format used in the security system 100 shown in FIG.
  • the sampling log and the full log are transmitted from the in-vehicle system 410 to the server device 300 in the log format shown in FIG.
  • vehicle ID Specifically, vehicle ID, time stamp, length, version, and reservation are included in the header part of the log format. Furthermore, N sets each composed of a flag, reservation, ID, DLC (data length code), time stamp, and data set are included in the payload portion of the log format.
  • N sets each composed of a flag, reservation, ID, DLC (data length code), time stamp, and data set are included in the payload portion of the log format.
  • the vehicle ID in the header portion indicates an identifier for identifying the vehicle 400 from a plurality of vehicles.
  • the time stamp in the header portion indicates the time when the communication log is transmitted as a sampling log or a full log.
  • the length in the header portion indicates the length of the payload portion.
  • the version in the header part indicates the version of the log format.
  • the reservation in the header part is an unused area in the header part.
  • the flag in the payload portion indicates whether or not the data in the set including the flag is the first frame data in the sampling period. That is, this flag indicates whether previous data is missing. This flag may indicate whether the data in the set including the flag is data of the first frame in the same type and the same sampling period.
  • Reservation in the payload part is an unused area in the payload part.
  • the ID in the payload portion is an ID in the CAN frame and indicates the type of communication data.
  • the DLC in the payload portion is a DLC in the CAN frame and indicates the length of data in the payload portion.
  • the time stamp in the payload portion indicates a sampling time that is a time when a CAN frame is acquired from the CAN in-vehicle network.
  • Data in the payload portion is data in a CAN frame.
  • the sampling log and the full log may further include an identification flag for identifying the sampling log or the full log.
  • an identification flag is included in the header portion of the log format.
  • the communication log in the evaluation is a log whose data amount is not reduced, and is the same as the full log before compression.
  • the data amount of the communication log was 1158 KB.
  • the type reduction was applied. Specifically, out of about 100 types of communication data in CAN, four types of communication data, such as steering, accelerator, brake, and vehicle speed, which are deeply related to vehicle control, were used to generate a sampling log.
  • the data amount of the sampling log to which the type reduction is applied is 200 KB. That is, the data amount was reduced by 82.7% compared with the data amount of the original communication log.
  • period thinning was applied. At that time, the time length of the sampling period was fixed at 72 ms, and the data amount of the sampling log of the communication data was measured while changing the time length of the sampling interval.
  • FIG. 5 is a graph showing the relationship between the sampling interval and the data amount of the sampling log.
  • the sampling interval and the data amount of the sampling log have a relationship that the longer the sampling interval, the smaller the data amount of the sampling log.
  • a sampling interval of 1 second was finally adopted.
  • the data amount of the sampling log to which decimation was applied was 14.4 KB. That is, the data amount was reduced by 92.8% from 200 KB to 14.4 KB.
  • sampling log was compressed using each of the seven compression methods of zip, cab, gzip, bzip2, lzh, and 7-Zip, and the amount of data after compression was compared.
  • FIG. 6 is a comparison diagram showing the amount of data before and after compression.
  • the first to fourth types correspond to the four types of steering, accelerator, brake, and vehicle speed.
  • the compression method having the highest compression effect is 7-Zip, and the data amount of the sampling log compressed by 7-Zip was 4.4 KB. That is, the data amount was reduced by 69.4% from 14.4 KB to 4.4 KB.
  • the value of 0 was more continuous than that of the first and third type data. Therefore, it is presumed that a high compression effect is obtained in the second and fourth type data.
  • the 4.4KB sampling log was finally generated by reducing the type, thinning out the period, and compressing. That is, the data amount of 99.6% was reduced from 1158 KB to 4.4 KB.
  • the data amount of the communication log compressed using 7-Zip was 462 KB. That is, for the full log, the data amount was reduced by 60.1% from 1158 KB to 462 KB.
  • FIG. 7 is a block diagram showing a basic configuration of security ECU 440 in the present embodiment.
  • Security ECU 440 is an example of an information processing device mounted on vehicle 400.
  • the security ECU 440 includes an acquisition unit 441 and an output unit 442.
  • the acquisition unit 441 acquires information. Specifically, the acquisition unit 441 acquires from the abnormality detector 510 an abnormality detection result as to whether or not an abnormality is included in the communication data in the in-vehicle network of the vehicle 400.
  • the output device 442 outputs information. Specifically, the output unit 442 outputs a sampling log transmission instruction for periodically transmitting a sampling log from the transmitter 530 mounted on the vehicle 400 to the server device 300 outside the vehicle 400. Further, when an abnormality detection result indicating that abnormality is included in the communication data is acquired, the output unit 442 outputs a full log transmission instruction for transmitting a full log from the transmitter 530 to the server device 300.
  • the sampling log is a log in which the amount of data generated per unit time is smaller than the other log among the two types of logs of communication data.
  • the full log is a log in which the amount of data generated per unit time is larger than the sampling log among the two types of logs.
  • the full log may be a log of a plurality of types of communication data.
  • the sampling log may be a log of one or more types of communication data that is smaller than a plurality of types related to the full log.
  • sampling log may be a log of communication data in a plurality of sampling periods respectively included in a plurality of sampling intervals among a plurality of sampling intervals.
  • each of the plurality of sampling intervals is a period of a first time length.
  • Each of the plurality of sampling periods is a period of a second time length shorter than the first time length.
  • the sampling log includes, for each frame constituting communication data in a plurality of sampling periods, (i) the sampling time of the frame, (ii) whether the frame is the first frame, and (iii) the frame Frame data may be indicated.
  • whether or not the frame is the first frame is, for example, whether or not the frame is the first frame in one or more frames having the same sampling period as the frame.
  • the sampling log includes (i) the sampling time of the frame and (ii) whether the frame is the first frame for each of a plurality of frames constituting one or more types of communication data in a plurality of sampling periods. Or (iii) data of the frame may be indicated.
  • whether or not the frame is the first frame is, for example, whether or not the frame is the first frame in one or more frames having the same type and sampling period as the frame.
  • the log generator 520 acquires communication data from the in-vehicle network, and generates a full log and a sampling log according to the communication data.
  • the log generator 520 is not limited to directly acquiring communication data from the in-vehicle network, and may indirectly acquire communication data from the in-vehicle network via another device.
  • the log generator 520 may acquire communication data from the in-vehicle network via a memory in which communication data is stored. Further, the log generator 520 may be included in the security ECU 440.
  • the output device 442 may output a sampling log transmission instruction for periodically transmitting the sampling log generated by the log generator 520 from the transmitter 530 to the server device 300.
  • the output unit 442 transmits a full log transmission instruction to transmit the full log generated by the log generator 520 from the transmitter 530 to the server device 300. It may be output.
  • the output unit 442 may output a change instruction for causing the log generator 520 to change the first time length related to the sampling interval in a range longer than the second time length related to the sampling period.
  • the output unit 442 instructs the log generator 520 to change the first time length within a range longer than the second time length. It may be output. And when the abnormality detection result which shows that abnormality is contained in communication data is not acquired, the output device 442 may output the change instruction
  • the first time length may be determined for each of a plurality of types related to communication data.
  • the output unit 442 causes the log generator 520 to output the first time for the type within a range longer than the second time length.
  • a change instruction for shortening the length may be output.
  • the output unit 442 causes the log generator 520 to store each of a plurality of types within a range longer than the second time length.
  • a change instruction for shortening the first time length may be output.
  • the output unit 442 may output a change instruction for shortening the first time length for all types to the log generator 520 in a range longer than the second time length.
  • the output device 442 may output the change instruction which lengthens the 1st time length shortened to the log generator 520. Good.
  • the output unit 442 may output a change instruction that causes the log generator 520 to randomly change the first time length in a range longer than the second time length.
  • the output unit 442 may output a change instruction for causing the log generator 520 to linearly change the first time length in a range longer than the second time length.
  • the acquisition unit 441 may acquire a change instruction for the first time length from the server device 300 as an external instruction. Then, the output unit 442 may output a change instruction that causes the log generator 520 to change the first time length in a range longer than the second time length in accordance with the external instruction acquired from the server device 300.
  • the output unit 442 may output specific information that causes the log generator 520 to specify one or more types related to the sampling log.
  • the abnormality detector 510 may be included in the server device 300. Then, the acquisition unit 441 may acquire an abnormality detection result from the abnormality detector 510 included in the server device 300.
  • the abnormality detector 510 may be included in the security ECU 440. And the abnormality detector 510 may acquire communication data from a vehicle-mounted network, and may determine whether abnormality is contained in communication data.
  • the abnormality detector 510 is not limited to directly acquiring communication data from the in-vehicle network, and may indirectly acquire communication data from the in-vehicle network via another device.
  • the abnormality detector 510 may acquire a full log or the like generated from the communication data of the in-vehicle network via the log generator 520 as communication data.
  • the transmitter 530 transmits the sampling log to the server device 300 according to the sampling log transmission instruction output from the output device 442, and transmits the full log to the server device 300 according to the full log transmission instruction output from the output device 442.
  • the transmitter 530 may be included in the security ECU 440.
  • the transmitter 530 may reversibly compress the sampling log in accordance with the sampling log transmission instruction output from the output unit 442, and transmit the compressed sampling log to the server apparatus 300. Further, the transmitter 530 may reversibly compress the full log in accordance with the full log transmission instruction output from the output unit 442, and transmit the compressed full log to the server device 300.
  • the output unit 442 periodically outputs a sampling log transmission instruction for periodically transmitting a sampling log from the transmitter 530 to the server apparatus 300, thereby periodically outputting the sampling log from the transmitter 530 to the server apparatus 300. It may be transmitted. Alternatively, the output unit 442 periodically outputs a sampling log transmission instruction for transmitting a sampling log from the transmitter 530 to the server apparatus 300 as a single instruction, thereby periodically sampling from the transmitter 530 to the server apparatus 300. A log may be sent.
  • the abnormality detector 510 transmits an abnormality detection result indicating that the communication data includes an abnormality, and the acquisition unit 441 transmits the abnormality detection result. You may get it. If it is determined that no abnormality is included in the communication data, the abnormality detector 510 does not transmit the abnormality detection result, and the acquisition unit 441 does not have to acquire the abnormality detection result. Alternatively, in this case, the abnormality detector 510 may transmit an abnormality detection result indicating that the communication data does not include an abnormality, and the acquisition unit 441 may acquire the transmitted abnormality detection result.
  • the acquisition unit 441 and the output unit 442 may be dedicated or general-purpose electric circuits.
  • the security ECU 440, the abnormality detector 510, the log generator 520, the transmitter 530, and the server device 300 may be configured by an electric circuit. Specifically, each of these may be a computer.
  • the abnormality detector 510, the log generator 520, and the transmitter 530 may each be included in the security ECU 440.
  • the acquisition unit 441 may acquire information from a device inside the security ECU 440, and the output unit 442 may output information to a device inside the security ECU 440.
  • each of the abnormality detector 510, the log generator 520, and the transmitter 530 may be an ECU connected to the in-vehicle network.
  • the transmitter 530 may be a device corresponding to the telematics communication unit 422, the V2X module 423, the gateway device 430, or the like shown in FIG.
  • the acquisition unit 441 may acquire information from a device external to the security ECU 440 via a vehicle-mounted network
  • the output unit 442 may output information to a device external to the security ECU 440 via the vehicle-mounted network. .
  • the acquisition unit 441 may acquire information from a device external to the security ECU 440 via a network different from the in-vehicle network.
  • the output unit 442 may output information to a device outside the security ECU 440 via a network different from the in-vehicle network.
  • FIG. 8 is a block diagram showing a basic configuration of server apparatus 300 in the present embodiment.
  • Server device 300 is an example of an information processing device provided outside vehicle 400.
  • the server device 300 includes an acquisition unit 301, a determination unit 302, and an output unit 303.
  • the acquisition unit 301 acquires information. Specifically, the acquisition unit 301 acquires a sampling log from the in-vehicle system 410 of the vehicle 400.
  • the determination device 302 performs a determination process. Specifically, the determiner 302 determines whether or not the communication data includes an abnormality using the sampling log.
  • the output device 303 outputs information. Specifically, when the output device 303 determines that the communication data includes an abnormality, the output device 303 indicates that the communication data includes an abnormality as a transmission instruction for transmitting the full log from the in-vehicle system 410 to the server device 300. The detection result is output to the in-vehicle system 410.
  • the sampling log is a log in which the amount of data generated per unit time is smaller than the other log among the two types of logs of communication data in the in-vehicle network of the vehicle 400.
  • the full log is a log in which the amount of data generated per unit time is larger than the sampling log among the two types of logs.
  • the full log may be a log of a plurality of types of communication data.
  • the sampling log may be a log of one or more types of communication data that is smaller than a plurality of types related to the full log.
  • sampling log may be a log of communication data in a plurality of sampling periods respectively included in a plurality of sampling intervals among a plurality of sampling intervals.
  • each of the plurality of sampling intervals is a period of a first time length.
  • Each of the plurality of sampling periods is a period of a second time length shorter than the first time length.
  • the output device 303 may output to the in-vehicle system 410 a change instruction that causes the in-vehicle system 410 that generates the sampling log as described above to change the first time length in a range longer than the second time length. For example, when it is determined that the communication data includes an abnormality, the output device 303 may output a change instruction that causes the in-vehicle system 410 to shorten the first time length in a range longer than the second time length. Further, when it is determined that the communication data does not include an abnormality, the output device 303 may output a change instruction for causing the in-vehicle system 410 to increase the first time length.
  • the first time length may be determined for each of a plurality of types related to communication data.
  • the output device 303 determines that the communication data includes an abnormality for one type, the output device 303 instructs the in-vehicle system 410 to change the first time length for the type in a range longer than the second time length. It may be output.
  • the output device 303 causes the in-vehicle system 410 to shorten the first time length for each of the plurality of types within a range longer than the second time length.
  • a change instruction may be output. That is, in this case, the output device 303 may output a change instruction for shortening the first time length for all types to the in-vehicle system 410 in a range longer than the second time length.
  • the output device 303 may output a change instruction for increasing the first time length shortened by the in-vehicle system 410.
  • the output device 303 may output the change instruction as described above to a plurality of in-vehicle systems of a plurality of vehicles having the same vehicle type as the vehicle 400.
  • the output device 303 may output the change instruction to a plurality of in-vehicle systems of a plurality of vehicles having the same area as the vehicle 400.
  • the sampling log includes, for each frame constituting communication data in a plurality of sampling periods, (i) the sampling time of the frame, (ii) whether the frame is the first frame, and (iii) the frame Frame data may be indicated.
  • whether or not the frame is the first frame is, for example, whether or not the frame is the first frame in one or more frames having the same sampling period as the frame.
  • the determiner 302 includes an abnormality in the communication data using at least one of the sampling time difference and the data difference. It may be determined whether or not.
  • the difference in sampling time is the difference between the sampling time of the frame before the frame and the sampling time of the frame among one or more frames having the same sampling period as the frame.
  • the data difference is a difference between the data of the previous frame and the data of the frame.
  • the previous frame is, for example, the immediately preceding frame.
  • the sampling log includes (i) the sampling time of the frame and (ii) whether the frame is the first frame for each of a plurality of frames constituting one or more types of communication data in a plurality of sampling periods. Or (iii) data of the frame may be indicated.
  • whether or not the frame is the first frame is, for example, whether or not the frame is the first frame in one or more frames having the same type and sampling period as the frame.
  • the determination unit 302 uses at least one of the sampling time difference and the data difference to indicate that the communication data is abnormal. You may determine whether it is contained.
  • the difference in sampling time is the difference between the sampling time of the frame before the frame and the sampling time of the frame among one or more frames having the same type and sampling period as the frame.
  • the data difference is a difference between the data of the previous frame and the data of the frame.
  • the acquisition device 301 may acquire a full log from the in-vehicle system 410 after outputting the transmission instruction. Then, the determiner 302 may further determine whether the communication data includes an abnormality using the full log.
  • the output device 303 may output the abnormality detection result to the in-vehicle system 410 when it is determined that the communication data includes an abnormality using the sampling log.
  • the output device 303 may not output the abnormality detection result to the in-vehicle system 410 when it is determined that the communication data includes an abnormality using the full log. That is, the output device 303 may output an abnormality detection result to the in-vehicle system 410 when it is determined that an abnormality is included in the communication data when the full log is not acquired.
  • the output device 303 may output an abnormality detection result to the terminal device 200 when it is determined that the communication data includes an abnormality.
  • the acquisition unit 301 may acquire the sampling log compressed in the in-vehicle system 410 from the in-vehicle system 410 and decompress the compressed sampling log. Similarly, the acquisition unit 301 may acquire the full log compressed in the in-vehicle system 410 from the in-vehicle system 410 and decompress the compressed full log.
  • the acquisition unit 301, the determination unit 302, and the output unit 303 may be dedicated or general-purpose electric circuits. And the terminal device 200, the server apparatus 300, and the vehicle-mounted system 410 may be comprised with the electric circuit. Specifically, each of these may be a computer. Further, the acquisition unit 301 may acquire information from an external device of the server device 300 via an external network, and the output device 303 outputs information to an external device of the server device 300 via the external network. May be.
  • the average data amount of sampling logs generated per unit time is smaller than the average data amount of full logs generated per unit time.
  • the unit time may be 1 second, 1 minute, 1 hour, or a sampling interval related to the sampling log.
  • FIG. 9 is a block diagram showing a configuration of the security system 100 in a specific example of the present embodiment.
  • the security system 100 includes a terminal device 200, a server device 300, a gateway device 430, a security ECU 440, and a plurality of ECUs 450.
  • the security system 100, the terminal device 200, the server device 300, the gateway device 430, and the security ECU 440 illustrated in FIG. 9 respectively correspond to the components illustrated in FIG.
  • the plurality of ECUs 450 shown in FIG. 9 correspond to the plurality of ECUs 451 and 452 shown in FIG.
  • the gateway device 430, the security ECU 440, and the plurality of ECUs 450 are connected to the in-vehicle network.
  • Server device 300 is connected to terminal device 200 and an external network.
  • the server device 300 may be connected to the terminal device 200 via an external network.
  • the external network and the in-vehicle network are connected to each other via the gateway device 430.
  • the gateway device 430 relays communication between the in-vehicle network and the external network.
  • the gateway device 430 is wirelessly connected to an external network.
  • the gateway device 430 may be connected to an external network via the telematics communication unit 422 or the V2X module 423 shown in FIG.
  • the external network may be a wireless communication network or a wired communication network.
  • the security ECU 440, the server device 300, and the terminal device 200 have a role of protecting the vehicle 400, the in-vehicle network, and the like from unauthorized access.
  • Security ECU 440 directly monitors communication data in the in-vehicle network.
  • the server device 300 performs remote monitoring by indirectly monitoring communication data in the in-vehicle network.
  • the terminal device 200 acquires the remote monitoring result and the like from the server device 300.
  • the terminal device 200 is used in a monitoring organization such as SOC or ASIRT.
  • FIG. 10 is a block diagram showing a modified configuration of the security system 100 shown in FIG. In this modified configuration, the gateway device 430 and the security ECU 440 of FIG. 9 are integrated.
  • the security system 100 includes a security gateway device 460 in which the gateway device 430 and the security ECU 440 are integrated.
  • the security gateway device 460 may be the security ECU 440 including the gateway device 430 or the gateway device 430 including the security ECU 440.
  • FIG. 11 is a block diagram showing the configuration of the security ECU 440 shown in FIG.
  • the security ECU 440 includes a sampling log generator 443, a full log generator 444, an abnormality detector 445, an abnormal data invalidator 446, an accumulator 447, and a communication device 448. These components serve as the acquisition unit 441, the output unit 442, the abnormality detector 510, the log generator 520, the transmitter 530, and the like shown in FIG.
  • the sampling log generator 443 acquires communication data in the in-vehicle network via the communication device 448, generates a sampling log of the acquired communication data, and stores the generated sampling log in the accumulator 447.
  • the full log generator 444 acquires communication data in the in-vehicle network via the communication device 448, generates a full log of the acquired communication data, and stores the generated full log in the accumulator 447.
  • the abnormality detector 445 acquires communication data in the in-vehicle network via the communication device 448, and determines whether or not the acquired communication data includes an abnormality.
  • the abnormality detector 445 may determine whether or not the communication data includes an abnormality by determining whether or not the full log stored in the accumulator 447 includes an abnormality. Alternatively, the abnormality detector 445 may simply determine whether or not the communication data includes an abnormality by determining whether or not the sampling log stored in the accumulator 447 includes the abnormality. .
  • the abnormal data invalidator 446 invalidates abnormal communication data when it is determined that the communication data includes an abnormality. Specifically, the abnormal data invalidator 446 may invalidate abnormal communication data by outputting a CAN error frame to the in-vehicle network via the communication device 448.
  • the accumulator 447 accumulates the sampling log generated by the sampling log generator 443 and the full log generated by the full log generator 444.
  • the accumulator 447 is configured with a memory.
  • the communication device 448 communicates with a plurality of ECUs 450, the gateway device 430, and the like by acquiring information from the in-vehicle network and outputting the information to the in-vehicle network. Further, the communication device 448 may communicate with the server device 300 or the like via the gateway device 430.
  • the acquisition unit 441, the output unit 442, and the transmitter 530 illustrated in FIG. 7 may be included in the communication unit 448.
  • the abnormality detector 510 illustrated in FIG. 7 may be included in the abnormality detector 445.
  • the log generator 520 illustrated in FIG. 7 may include a sampling log generator 443, a full log generator 444, and an accumulator 447.
  • the output device 442 may output a transmission instruction for periodically transmitting the sampling log to the transmitter 530. Then, the acquisition device 441 included in the communication device 448 may acquire from the abnormality detector 445 an abnormality detection result indicating whether the communication data includes an abnormality. Then, in the communication device 448, when an abnormality detection result for acquiring that communication data includes an abnormality is acquired, the output device 442 may output a transmission instruction for transmitting the full log to the transmitter 530. .
  • the output device 442 included in the communication device 448 may output an instruction regarding the sampling interval or type to the sampling log generator 443 constituting the log generator 520.
  • the acquisition unit 441 and the output unit 442 illustrated in FIG. 7 may be included in the abnormality detector 445.
  • the acquisition unit 441 acquires an abnormality detection result indicating whether or not the communication data includes an abnormality from the abnormality detector 510 that determines whether or not the communication data includes an abnormality. Also good.
  • FIG. 12 is a block diagram showing the configuration of the security gateway device 460 shown in FIG.
  • the security gateway device 460 includes a sampling log generator 463, a full log generator 464, an abnormality detector 465, an abnormal data invalidator 466, an accumulator 467, a transfer processor 469, an external communication device 470, and an in-vehicle communication device 471. These components serve as the acquisition unit 441, the output unit 442, the abnormality detector 510, the log generator 520, the transmitter 530, and the like shown in FIG.
  • sampling log generator 463, the full log generator 464, the abnormality detector 465, the abnormality data invalidator 466, and the accumulator 467 in FIG. 12 are respectively the sampling log generator 443, the full log generator 444, and the abnormality in FIG. It is the same component as the detector 445, the abnormal data invalidator 446, and the accumulator 447.
  • the transfer processor 469 acquires information from the outside of the vehicle 400 via the in-vehicle communication device 470 and outputs information via the in-vehicle communication device 471 to transfer the information from the outside of the vehicle 400 to the inside. Further, the transfer processor 469 acquires information from the inside of the vehicle 400 via the in-vehicle communication device 471, and outputs the information to the outside of the vehicle 400 via the external communication device 470, so Transfer information to.
  • the vehicle exterior communication device 470 communicates with the server device 300 outside the vehicle 400, for example, via an external network.
  • the in-vehicle communication device 471 communicates with a plurality of ECUs 450 and the like inside the vehicle 400 via an in-vehicle network. Further, the outside communication device 470 and the inside communication device 471 play the same role as the communication device 448 of the security ECU 440.
  • the operation of the security ECU 440 described below may be performed by the security gateway device 460.
  • the operation performed by the communication device 448 of the security ECU 440 may be performed by the vehicle communication device 470 or the vehicle communication device 471 of the security gateway device 460.
  • the acquisition unit 441, the output unit 442, and the transmitter 530 illustrated in FIG. 7 may be included in the external communication device 470.
  • the abnormality detector 510 shown in FIG. 7 may be included in the abnormality detector 465.
  • the log generator 520 illustrated in FIG. 7 may include a sampling log generator 463, a full log generator 464, and an accumulator 467.
  • FIG. 13 is a block diagram illustrating a configuration of the server apparatus 300 illustrated in FIG. 9 and the like.
  • the server device 300 includes a sampling log processor 343, a full log processor 344, an abnormality detector 345, an abnormality notifier 346, an accumulator 347 and a communication device 348. These components serve as the acquisition unit 301, the determination unit 302, and the output unit 303 shown in FIG.
  • the sampling log processor 343 acquires the sampling log via the communication device 348, and stores the acquired sampling log in the accumulator 347.
  • the full log processor 344 acquires a full log via the communication device 348 and stores the acquired full log in the accumulator 347.
  • the abnormality detector 345 determines whether or not the communication data includes an abnormality by determining whether or not the sampling log or full log stored in the accumulator 347 includes the abnormality.
  • the abnormality notification device 346 transmits an abnormality notification to the terminal device 200 and the security ECU 440 via the communication device 348 when it is determined that the communication data includes an abnormality.
  • the accumulator 347 accumulates the sampling log acquired by the sampling log processor 343 and the full log acquired by the full log processor 344.
  • the accumulator 347 is configured with a memory.
  • the communication device 348 communicates with the security ECU 440 and the like via, for example, an external network.
  • the communication device 348 communicates with the terminal device 200.
  • the acquisition device 301 and the output device 303 illustrated in FIG. 8 may be included in the communication device 348.
  • the determination unit 302 illustrated in FIG. 8 may be included in the abnormality detector 345.
  • FIG. 14 is a sequence diagram showing operations related to the transmission of the sampling log in the security system 100 shown in FIG.
  • the communication device 448 of the security ECU 440 acquires communication data from the in-vehicle network (S101).
  • the sampling log generator 443 of the security ECU 440 records the sampling log in the accumulator 447 according to the communication data acquired from the in-vehicle network (S102).
  • the full log generator 444 of the security ECU 440 records a full log in the accumulator 447 according to the communication data acquired from the in-vehicle network (S103).
  • the abnormality detector 445 of the security ECU 440 performs abnormality detection processing according to the communication data acquired from the in-vehicle network (S104). That is, the abnormality detector 445 of the security ECU 440 determines whether an abnormality is included in the communication data acquired from the in-vehicle network.
  • the communication device 448 of the security ECU 440 When no abnormality is detected, that is, when it is determined that there is no abnormality in the communication data acquired from the in-vehicle network, the communication device 448 of the security ECU 440 periodically transmits a sampling log (S105). ). For example, the communication device 448 of the security ECU 440 compresses the sampling log recorded in the accumulator 447 and transmits the compressed sampling log to the server device 300.
  • the communication device 348 of the server device 300 acquires a sampling log from the security ECU 440. Then, the sampling log processor 343 of the server device 300 records the sampling log acquired from the security ECU 440 in the accumulator 347. For example, the sampling log processor 343 of the server device 300 decompresses the compressed sampling log and records the decompressed sampling log in the storage 347.
  • the abnormality detector 345 of the server device 300 performs an abnormality detection process according to the sampling log recorded in the accumulator 347 (S106). That is, the abnormality detector 345 of the server device 300 determines whether or not an abnormality is included in communication data in the in-vehicle network by determining whether or not the sampling log includes an abnormality.
  • FIG. 15 is a sequence diagram showing operations related to the abnormality detection process performed by the server apparatus 300 shown in FIG. 9 and the like.
  • the abnormality notification device 346 of the server device 300 transmits an abnormality notification via the communication device 348. That is, when it is determined that the communication data in the in-vehicle network includes an abnormality according to the sampling log, the abnormality notification device 346 of the server device 300 transmits the abnormality notification via the communication device 348.
  • the abnormality notifier 346 of the server device 300 transmits an abnormality notification to the terminal device 200 via the communication device 348 (S107). Then, the terminal device 200 acquires an abnormality notification from the server device 300 and notifies the monitoring organization of the abnormality.
  • the abnormality notifier 346 of the server device 300 transmits an abnormality notification to the security ECU 440 via the communication device 348 (S108). Then, the communication device 448 of the security ECU 440 acquires the abnormality notification and notifies the driver of the abnormality (S109).
  • the communication device 448 of the security ECU 440 notifies the driver of the abnormality via the notification interface by outputting the abnormality notification to the ECU 450 having a notification interface such as a display or a speaker.
  • the security ECU 440 may notify the driver of an abnormality via the notification interface of the security ECU 440.
  • the communication device 448 of the security ECU 440 acquires the abnormality notification, the communication device 448 transmits a full log to the server device 300 (S110). For example, the communication device 448 of the security ECU 440 compresses the full log recorded in the accumulator 447 and transmits the compressed full log to the server device 300.
  • the communication device 348 of the server device 300 acquires a full log from the security ECU 440.
  • the full log processor 344 of the server device 300 records the full log acquired from the security ECU 440 in the accumulator 347.
  • the full log processor 344 of the server device 300 decompresses the compressed full log and records the decompressed full log in the storage 347.
  • the abnormality detector 345 of the server apparatus 300 performs an abnormality detection process according to the full log recorded in the storage unit 347 (S111). That is, the abnormality detector 345 of the server device 300 determines whether or not an abnormality is included in communication data in the in-vehicle network by determining whether or not an abnormality is included in the full log.
  • the communication device 348 of the server device 300 transmits the result of the abnormality detection process to the terminal device 200 (S112).
  • the abnormality notification device 346 of the server device 300 may transmit an abnormality notification to the terminal device 200 as a result of the abnormality detection processing via the communication device 348.
  • the terminal device 200 acquires the result of the abnormality detection process from the server device 300 and notifies the monitoring organization of the result of the abnormality detection process.
  • the terminal device 200 performs a detailed analysis on the abnormality by being operated by the monitoring organization (S113).
  • the terminal device 200 performs evidence maintenance by being operated by the monitoring organization (S114).
  • the terminal device 200 may download a full log from the server device 300 for detailed analysis and evidence preservation.
  • FIG. 16 is a sequence diagram showing operations related to the abnormality detection process performed by the security ECU 440 shown in FIG. 9 and the like.
  • the communication device 448 of the security ECU 440 When an abnormality is detected in the abnormality detection process (S104) performed by the security ECU 440, the communication device 448 of the security ECU 440 notifies the driver of the abnormality (S131). That is, when it is determined that the communication data acquired from the in-vehicle network includes an abnormality, the communication device 448 of the security ECU 440 notifies the driver of the abnormality.
  • the communication device 448 of the security ECU 440 notifies the driver of the abnormality via the notification interface by outputting the abnormality notification to the ECU 450 having the notification interface.
  • the security ECU 440 may notify the driver of an abnormality via the notification interface of the security ECU 440.
  • the communication device 448 of the security ECU 440 transmits a full log (S132).
  • the communication device 448 of the security ECU 440 compresses the full log recorded in the accumulator 447 and transmits the compressed full log to the server device 300.
  • the communication device 348 of the server device 300 acquires a full log from the security ECU 440.
  • the full log processor 344 of the server device 300 records the full log acquired from the security ECU 440 in the accumulator 347.
  • the full log processor 344 of the server device 300 decompresses the compressed full log and records the decompressed full log in the storage 347.
  • the abnormality detector 345 of the server device 300 performs an abnormality detection process according to the full log recorded in the accumulator 347 (S133). That is, the abnormality detector 345 of the server device 300 determines whether or not an abnormality is included in communication data in the in-vehicle network by determining whether or not an abnormality is included in the full log.
  • the abnormality notifier 346 of the server device 300 transmits the abnormality notification via the communication device 348.
  • the abnormality notifier 346 of the server device 300 transmits an abnormality notification to the terminal device 200 via the communication device 348 (S134).
  • the terminal device 200 acquires an abnormality notification from the server device 300 and notifies the monitoring organization of the abnormality.
  • the abnormality notifier 346 of the server device 300 transmits an abnormality notification to the security ECU 440 via the communication device 348 (S135). Then, the communication device 448 of the security ECU 440 acquires the abnormality notification and notifies the driver of the abnormality (S136). Moreover, the communication device 448 of the security ECU 440 transmits a full log to the server device 300 when the abnormality notification is acquired (S137).
  • the communication device 348 of the server device 300 acquires a full log from the security ECU 440.
  • the full log processor 344 of the server device 300 records the full log acquired from the security ECU 440 in the accumulator 347.
  • the abnormality detector 345 of the server device 300 performs an abnormality detection process according to the full log recorded in the accumulator 347 (S138).
  • the communication device 348 of the server device 300 transmits the result of the abnormality detection process to the terminal device 200 (S139).
  • the abnormality notification device 346 of the server device 300 may transmit an abnormality notification to the terminal device 200 as a result of the abnormality detection processing via the communication device 348.
  • the terminal device 200 acquires the result of the abnormality detection process from the server device 300 and notifies the monitoring organization of the result of the abnormality detection process.
  • the terminal device 200 performs a detailed analysis on the abnormality by being operated by the monitoring organization (S140). In addition, the terminal device 200 performs evidence maintenance by being operated by the monitoring organization (S141).
  • the processing from the transmission of the abnormality notification (S134) to the evidence device (S141) to the terminal device 200 shown in FIG. 16 is performed from the transmission of the abnormality notification (S107) to the evidence device (S114) to the terminal device 200 shown in FIG. ).
  • the processing from the transmission of the abnormality notification to the security ECU 440 (S135) to the transmission of the abnormality detection processing result to the terminal device 200 (S139) may be omitted.
  • FIG. 17 is a flowchart showing the operation of the security ECU 440 shown in FIG.
  • the security ECU 440 performs a log recording process for recording a log of communication data in the in-vehicle network (S201). Further, the security ECU 440 performs an abnormality detection process for detecting an abnormality in the communication data (S202). And security ECU440 performs the log transmission process for transmitting a communication log to the server apparatus 300 (S203). The security ECU 440 repeats these processes (S201 to S203).
  • FIG. 18 is a flowchart showing a first mode of the log recording process performed by the security ECU 440 shown in FIG. 9 and the like.
  • the communication device 448 acquires communication data by receiving communication data in the in-vehicle network (S301). Specifically, the communicator 448 acquires a CAN frame as communication data.
  • the full log generator 444 records the acquired communication data in the accumulator 447 as a full log (S302). Specifically, the full log generator 444 records the acquired frame in the accumulator 447 as a full log according to the log format of FIG. For example, when a frame acquired in the past is recorded as a full log in the accumulator 447, the full log generator 444 adds information on the newly acquired frame to the payload in the log format of FIG.
  • the sampling log generator 443 determines whether or not the current time is within the sampling period by checking the sampling timer in the sampling log generator 443, for example (S303). When the current time is not within the sampling period (No in S304), the security ECU 440 ends the log recording process.
  • the sampling log generator 443 determines whether the acquired communication data is a specific type of communication data. In that case, specifically, the sampling log generator 443 determines whether the ID included in the acquired frame is a specific ID, so that the acquired frame is a specific type of frame. It is determined whether or not.
  • the security ECU 440 ends the log recording process.
  • the sampling log generator 443 records the acquired communication data in the accumulator 447 as a sampling log (S306). .
  • the sampling log generator 443 records the acquired frame in the accumulator 447 as a sampling log according to the log format of FIG. Further, for example, when a frame acquired in the past is recorded in the accumulator 447 as a sampling log, the sampling log generator 443 adds information on the newly acquired frame to the payload in the log format of FIG. . Then, the security ECU 440 ends the log recording process.
  • sampling log generator 443 and the full log generator 444 basically record the sampling log and the full log in the storage 447 separately.
  • FIG. 19 is a flowchart showing a second mode of the log recording process performed by the security ECU 440 shown in FIG. 9 and the like.
  • the processes (S301 to S306) from when the communication data is acquired until the communication data is recorded as a sampling log are the same as those of the log recording process shown in FIG. The same as in the first aspect.
  • the sampling log generator 443 updates the time length of the sampling interval after recording the communication data as a sampling log (S307).
  • the sampling log generator 443 randomly updates the time length of the sampling interval in a range between the minimum value and the maximum value.
  • each of the minimum value and the maximum value is predetermined to be larger than the time length of the sampling period.
  • the sampling log generator 443 may update the time length of the sampling interval linearly in a range between the minimum value and the maximum value.
  • the sampling log generator 443 may gradually increase the time length of the sampling interval from the minimum value to the maximum value. That is, the sampling log generator 443 may increase the time length of the sampling interval stepwise from the minimum value to the maximum value. Then, after the time length of the sampling interval reaches the maximum value, the time length of the sampling interval may be gradually decreased from the maximum value to the minimum value. That is, the sampling log generator 443 may reduce the time length of the sampling interval in steps from the minimum value to the maximum value.
  • the security ECU 440 can variously change the time length of the sampling interval related to the sampling log. Accordingly, the security ECU 440 can include an abnormality that is not included in the fixed sampling interval in the sampling log. Further, the security ECU 440 can make it difficult to analyze the sampling interval. Therefore, the security ECU 440 can suppress a phenomenon in which an abnormality based on unauthorized data is not included in the sampling log.
  • sampling log generator 443 may update a specific type related to the sampling log in addition to updating the sampling interval or instead of updating the sampling interval.
  • an instruction regarding a sampling interval or a specific type is output from the output device 442 included in the communication device 448 to the log generator 520 including the sampling log generator 443. Then, the sampling interval or the specific type is updated according to the instruction regarding the sampling interval or the specific type.
  • FIG. 20 is a flowchart showing an abnormality detection process performed by the security ECU 440 shown in FIG.
  • the abnormality detector 445 performs matching processing between the communication data acquired by the communication device 448 and the abnormality pattern (S401). That is, the abnormality detector 445 determines whether or not the communication data acquired by the communication device 448 matches a predetermined abnormality pattern.
  • the communication data acquired by the communication device 448 is more specifically one or more data frames acquired as communication data by the communication device 448.
  • the abnormality detector 445 determines that the communication data acquired by the communication device 448 matches a predetermined abnormality pattern (Yes in S402)
  • the abnormality detector 445 detects an abnormality (S403). In other words, the abnormality detector 445 determines that an abnormality is included in the communication data in this case. In other words, the abnormality detector 445 detects that the communication data acquired by the communication device 448 matches a predetermined abnormality pattern as an abnormality in the communication data.
  • the communication device 448 performs an abnormality notification reception process for receiving an abnormality notification from the server device 300 (S404). Specifically, when an abnormality notification is transmitted from the server device 300, the communication device 448 receives the abnormality notification transmitted from the server device 300.
  • the abnormality detector 445 detects an abnormality (S406). In other words, the abnormality detector 445 determines that an abnormality is included in the communication data in this case. In other words, the abnormality detector 445 detects that the communication device 448 has received the abnormality notification from the server device 300 as an abnormality in the communication data.
  • the abnormality detector 445 detects the abnormality. do not do. That is, in this case, the abnormality detector 445 determines that no abnormality is included in the communication data.
  • the matching process between the communication data and the abnormal pattern is performed, but the matching process between the communication data and the normal pattern may be performed.
  • the abnormality detector 445 detects an abnormality.
  • the abnormality detector 445 may detect an abnormality when the same type of data frame does not flow at a constant cycle. Specifically, the abnormality detector 445 may determine whether or not the data frame is flowing at a constant cycle using the time interval at which the data frame is acquired, and may detect an abnormality according to the determination result. . Moreover, the period of the same kind of data frame which flows through CAN may be contained in the abnormal pattern or the normal pattern.
  • the abnormality detector 445 may detect a data frame having a data value having a large deviation from the data value of the previous data frame as an abnormality in a plurality of data frames of the same type.
  • size of deviation may be contained in the abnormal pattern or the normal pattern.
  • the magnitude of the divergence can also be expressed as a difference in data values.
  • timing of the abnormality notification reception process (S404) is not limited to the example of FIG.
  • the communication device 448 receives the abnormality notification transmitted from the server device 300 at the timing when the abnormality notification is transmitted from the server device 300.
  • the security ECU 440 may perform only one of the unique abnormality detection (S401 to S403) in the security ECU 440 and the abnormality detection (S404 to S406) based on the server device 300.
  • the configuration in which the security ECU 440 performs its own abnormality detection corresponds to the configuration in which the abnormality detector 510 illustrated in FIG. 7 is included in the security ECU 440.
  • the configuration in which security ECU 440 performs abnormality detection (S404 to S406) based on server device 300 corresponds to the configuration in which abnormality detector 510 shown in FIG.
  • the configuration in which both the unique abnormality detection (S401 to S403) and the abnormality detection based on the server device 300 (S404 to S406) are performed includes the abnormality detector 510 in each of the security ECU 440 and the server device 300. Corresponds to the configuration.
  • FIG. 21 is a flowchart showing a first mode of log transmission processing performed by the security ECU 440 shown in FIG. 9 and the like.
  • the abnormality detector 445 determines whether an abnormality of communication data has been detected (S501). When it is determined that an abnormality in the communication data is detected, that is, when it is determined that the communication data includes an abnormality, the communication device 448 notifies the driver of the abnormality (S502). For example, the communication device 448 notifies the driver of the abnormality via the notification interface by outputting the abnormality notification to the ECU 450 having the notification interface.
  • the communication device 448 compresses the full log recorded in the storage device 447 (S503).
  • the communication device 448 reversibly compresses the full log using a compression method such as 7-Zip.
  • the communication device 448 transmits the compressed full log to the server device 300 (S504).
  • the communication device 448 may delete the full log recorded in the storage device 447 from the storage device 447 after the transmission of the full log.
  • the communicator 448 checks the periodic transmission timer so that the current time is It is determined whether it is a transmission timing (S511). When it is determined that the current time is not the timing of regular transmission (No in S512), the security ECU 440 ends the log transmission process.
  • the communication device 448 compresses the sampling log recorded in the storage device 447 (S513). For example, the communication device 448 reversibly compresses the sampling log using a compression method such as 7-Zip. Then, the communication device 448 transmits the compressed sampling log to the server device 300 (S514). The communication device 448 may delete the sampling log recorded in the accumulator 447 from the accumulator 447 after transmitting the sampling log.
  • a sampling log with a relatively small amount of data is periodically transmitted from the security ECU 440 to the server device 300, and a full log with a relatively large amount of data is transmitted when there is an abnormality.
  • the timing of regular transmission is, for example, once per minute. Then, the communicator 448 may determine that the current time is the timing of regular transmission when one minute or more has elapsed since the previous sampling log was transmitted. Thereby, the communication device 448 periodically transmits the sampling log. Basically, the cycle at which the sampling log is transmitted is longer than the sampling interval for recording the sampling log.
  • the full log transmitted to the server apparatus 300 is a full log in a past predetermined period.
  • the predetermined period is, for example, 1 hour.
  • the accumulator 447 may record a full log for a predetermined period. Therefore, a ring buffer for recording full logs for a predetermined period may be used for recording full logs. Similarly, a ring buffer for recording a sampling log for the transmission period may be used for recording the sampling log.
  • the sampling log may be periodically transmitted regardless of whether an abnormality is detected.
  • the acquisition unit 441 included in the communication device 448 acquires the abnormality detection result from the abnormality detector 445. Then, in the communication device 448, an instruction to transmit a sampling log or a full log is output from the output device 442 to the transmitter 530 according to the abnormality detection result. Then, the sampling log or the full log is transmitted according to the transmission instruction.
  • FIG. 22 is a flowchart showing a second mode of the log transmission process performed by the security ECU 440 shown in FIG. 9 and the like.
  • the processes (S501 to S504 and S511 to S514) until the full log and sampling log are transmitted are the same as the first aspect of the log transmission process shown in FIG. The same.
  • the sampling log generator 443 updates the sampling interval to be shorter (S505). That is, when an abnormality is detected, the sampling log generator 443 reduces the time length of the sampling interval. In addition, after the sampling log is transmitted, the sampling log generator 443 updates the sampling interval longer (S515). That is, when no abnormality is detected, the sampling log generator 443 increases the time length of the sampling interval.
  • the sampling log generator 443 updates the time length of the sampling interval in the range between the minimum value and the maximum value.
  • the sampling log generator 443 may reduce or increase the time length of the sampling interval by a predetermined fixed length by one update.
  • the sampling log generator 443 may decrease or increase the time length of the sampling interval by a random length by one update.
  • the security ECU 440 can increase the data amount of the sampling log after the abnormality. Then, the security ECU 440 can include an abnormality that is not included in the long sampling interval in the sampling log. Further, the security ECU 440 can reduce the data amount of the sampling log when there is no abnormality.
  • the sampling interval is updated for all types regardless of the type of communication data in which an abnormality is detected. That is, the sampling interval is updated for all the IDs regardless of the ID of the frame in which the abnormality is detected.
  • an instruction regarding the sampling interval is output from the output device 442 included in the communication device 448 to the sampling log generator 443 constituting the log generator 520. Then, the sampling interval is updated according to the instruction regarding the sampling interval.
  • FIG. 23 is a flowchart showing a third mode of log transmission processing performed by the security ECU 440 shown in FIG. 9 and the like.
  • the processes (S501 to S504 and S511 to S514) until the full log and sampling log are transmitted are the same as the log transmission process shown in FIGS. The same as the first aspect and the second aspect.
  • the sampling log generator 443 updates the sampling interval short for the type of communication data in which an abnormality is detected (S506). Then, the sampling log generator 443 maintains sampling intervals for other types. That is, when an abnormality is detected in one type of communication data, the sampling log generator 443 reduces the time length of the sampling interval for that one type.
  • the sampling log generator 443 updates the sampling interval that has been updated short for a long time (S516). That is, when no abnormality is detected, the sampling log generator 443 returns the time length of the sampling interval to the original time length. Alternatively, in this case, the sampling log generator 443 brings the time length of the sampling interval closer to the original time length.
  • the sampling log generator 443 updates the time length of the sampling interval in the range between the minimum value and the maximum value.
  • the sampling log generator 443 may reduce or increase the time length of the sampling interval by a predetermined fixed length by one update.
  • the sampling log generator 443 may decrease or increase the time length of the sampling interval by a random length by one update.
  • the security ECU 440 can increase the data amount of the sampling log for each type after the abnormality. Further, the security ECU 440 can reduce the increased amount of data when there is no abnormality.
  • FIG. 24 is a flowchart showing a first mode of operation of the server apparatus 300 shown in FIG.
  • the communication device 348 receives a sampling log or a full log from the security ECU 440 (S601).
  • the sampling log processor 343 records the sampling log in the accumulator 347.
  • the sampling log processor 343 decompresses the compressed sampling log, and records the decompressed sampling log in the storage 347.
  • the abnormality detector 345 performs abnormality detection processing according to the sampling log (S603).
  • the abnormality detector 345 performs matching processing between the communication data and the abnormality pattern in the same manner as the matching processing (S401) performed by the abnormality detector 445 of the security ECU 440.
  • the abnormality detector 345 uses the communication data indicated by the sampling log for the matching process.
  • the abnormality detector 345 determines whether or not the communication data indicated by the sampling log matches a predetermined abnormality pattern. More specifically, the abnormality detector 345 determines whether or not the data frame indicated by the sampling log matches a predetermined abnormality pattern.
  • the abnormality detector 345 detects an abnormality when it is determined that the communication data indicated by the sampling log matches a predetermined abnormality pattern. In other words, the abnormality detector 345 determines in this case that the communication data includes an abnormality. In other words, the abnormality detector 345 detects that the communication data indicated by the sampling log matches a predetermined abnormality pattern as an abnormality in the communication data.
  • the full log processor 344 In the log reception (S601), when the sampling log is not received (No in S602), that is, when the full log is received, the full log processor 344 records the full log in the accumulator 347. For example, the full log processor 344 decompresses the compressed full log, and records the decompressed full log in the storage 347.
  • the abnormality detector 345 performs abnormality detection processing according to the full log (S604).
  • the abnormality detector 345 performs matching processing between the communication data and the abnormality pattern in the same manner as the matching processing (S401) performed by the abnormality detector 445 of the security ECU 440.
  • the abnormality detector 345 uses the communication data indicated by the full log for the matching process.
  • the abnormality detector 345 determines whether or not the communication data indicated by the full log matches a predetermined abnormality pattern. More specifically, the abnormality detector 345 determines whether or not the frame indicated by the full log matches a predetermined abnormality pattern.
  • the abnormality detector 345 detects an abnormality when it is determined that the communication data indicated by the full log matches a predetermined abnormality pattern. In other words, the abnormality detector 345 determines in this case that the communication data includes an abnormality. In other words, the abnormality detector 345 detects that the communication data indicated by the full log matches a predetermined abnormality pattern as an abnormality in the communication data.
  • the abnormality detector 345 determines whether or not an abnormality of communication data has been detected (S605).
  • the communication device 348 transmits an abnormality notification to the terminal device 200 ( S606).
  • the log reception (S601) when the full log is received (Yes in S607), the server apparatus 300 ends the series of processes.
  • the communication device 348 transmits an abnormality notification to the security ECU 440 (S608).
  • the communication device 348 causes the security ECU 440 to transmit a full log to the server device 300 by transmitting an abnormality notification to the security ECU 440.
  • the server apparatus 300 complete
  • sampling log abnormality detection process (S603) and the full log abnormality detection process (S604) are described separately in FIG. 24, but they may be common processes. That is, the abnormality detector 345 may perform a common abnormality detection process regardless of the sampling log or the full log.
  • the matching process between the communication data and the abnormal pattern is performed, but the matching process between the communication data and the normal pattern may be performed.
  • the abnormality detector 345 detects an abnormality.
  • a more complex matching process than the matching process (S401) performed in the security ECU 440 may be performed in the abnormality detection process (S603 and S604).
  • the server apparatus 300 can perform the matching process by using sufficient processing capability that is not restricted by the requirements for in-vehicle use. For example, more abnormality patterns may be used in the abnormality detection process (S603 and S604) than the matching process (S401) performed in the security ECU 440.
  • the abnormality detector 345 may detect an abnormality when the same type of data frame does not flow at a constant cycle. Specifically, the abnormality detector 345 may determine whether or not the data frame is flowing at a constant cycle using the time interval at which the data frame is acquired, and may detect an abnormality according to the determination result. . Moreover, the period of the same kind of data frame which flows through CAN may be contained in the abnormal pattern or the normal pattern.
  • the determination of whether or not the data frame is flowing at a constant cycle is effective when the previous data frame is not missing, and is not valid when the previous data frame is missing.
  • the abnormality detector 345 when the data frame included in the sampling log is the first data frame in the sampling period, the abnormality detector 345 does not use the determination as to whether or not the data frame is flowing at a constant cycle for detecting the abnormality. On the other hand, when the data frame included in the sampling log is not the first data frame in the sampling period, the abnormality detector 345 uses the determination as to whether or not the data frame is flowing at a constant cycle for detecting the abnormality.
  • the abnormality detector 345 determines the difference between the sampling time of the data frame and the previous data frame. Used for detection. If the difference in sampling time corresponds to a certain periodic interval, the abnormality detector 345 determines that the data frame is normal. On the other hand, if the difference in sampling time does not correspond to a certain periodic interval, the abnormality detector 345 determines that the data frame is abnormal.
  • the difference in sampling time for the same type of data frame may be used for detecting an abnormality. That is, in the same sampling period and the same type, the difference between the sampling time of the data frame and the sampling time of the previous data frame may be used for detecting an abnormality.
  • Whether or not the data frame included in the sampling log corresponds to the first data frame can be identified by the log format flag shown in FIG. Further, since a data frame is not lost in the full log, a difference in sampling time may be used for detecting an abnormality with respect to the full log.
  • the difference in the data value between the data frame and the previous data frame may be used for detecting an abnormality, like the difference in sampling time. Also in this case, similarly to the difference in sampling time, a difference in data value may be used for detecting an abnormality for a data frame different from the first data frame.
  • FIG. 25 is a flowchart showing a second mode of operation of the server apparatus 300 shown in FIG.
  • the processing (S601 to S608) from the reception of the log to the transmission of the abnormality notification is the same as the first mode shown in FIG.
  • the server apparatus 300 then performs a sampling interval update process (S609).
  • the communication device 348 transmits to the security ECU 440 a change instruction that causes the security ECU 440 to change the time length of the sampling interval. Then, the security ECU 440 changes the time length of the sampling interval. 26 and 27 show a more specific aspect regarding the sampling interval update processing.
  • FIG. 26 is a flowchart showing a first aspect of the sampling interval update process performed by the server apparatus 300 and the security ECU 440 shown in FIG. 9 and the like.
  • the communication device 348 specifies the vehicle type of the vehicle 400 that is the transmission source of the log received in the log reception (S601) (S701).
  • the communication device 348 may specify the vehicle type of the vehicle 400 according to the vehicle ID included in the log.
  • the communication device 348 may specify the vehicle type of the vehicle 400 by newly communicating with the security ECU 440 or the like.
  • the communication device 348 acquires the current sampling interval for the specified vehicle type (S702).
  • the current sampling interval may be recorded in the accumulator 347 for each vehicle type.
  • the communicator 348 may acquire the current sampling interval from the accumulator 347.
  • the communication device 348 may acquire the current sampling interval by newly communicating with the security ECU 440 or the like.
  • the communication device 348 updates the sampling interval to be shorter (S704). That is, the communicator 348 defines a sampling interval that is shorter than the current sampling interval.
  • the communication device 348 updates the sampling interval longer (S705). That is, the communicator 348 defines a sampling interval that is longer than the current sampling interval.
  • the communicator 348 transmits the updated sampling interval, that is, the newly determined sampling interval, to the plurality of security ECUs of the plurality of vehicles having the same vehicle type as the specified vehicle type (S706).
  • the communication device 448 receives the sampling intervals transmitted from the server device 300 (S801). Then, the sampling log generator 443 updates the current sampling interval to the received sampling interval (S802). That is, the communication device 448 receives a sampling interval change instruction from the server device 300 as an external instruction, and the sampling log generator 443 updates the sampling interval according to the external instruction.
  • the server apparatus 300 can increase the data amount of the sampling log after the abnormality. Then, the server apparatus 300 can include an abnormality that is not included in the long sampling interval in the sampling log. Moreover, the server apparatus 300 can reduce the data amount of a sampling log, when there is no abnormality. Moreover, the server apparatus 300 can change the time length of the sampling interval relevant to a sampling log about the some vehicle-mounted system of the same vehicle type.
  • the communication device 348 may update the sampling interval for each type. For example, when an abnormality is detected for one type, the communication device 348 may shorten the sampling interval for the one type. And when abnormality is not detected, the communication apparatus 348 may lengthen the shortened sampling interval. And you may perform such an update with respect to the same vehicle type. Thereby, the data amount is adjusted appropriately for each vehicle type and each type.
  • the communication device 348 may shorten the sampling interval for all types regardless of the type. If no abnormality is detected, the communication device 348 may increase the sampling interval for all types regardless of the type. As a result, the data amount is appropriately adjusted for each vehicle type regardless of the type.
  • FIG. 27 is a flowchart showing a second mode of the sampling interval update process performed by the server apparatus 300 and the security ECU 440 shown in FIG. 9 and the like.
  • the communication device 348 specifies the region of the vehicle 400 that is the transmission source of the log received in the log reception (S601) (S711).
  • the communication device 348 may specify the area of the vehicle 400 according to the vehicle ID included in the log.
  • the communication device 348 may specify the area of the vehicle 400 by newly communicating with the security ECU 440 or the like.
  • Such an area can be predetermined for the vehicle 400. However, a more specific region of the currently traveling vehicle 400 may be used. Such an area can be specified by GPS (Global Positioning System) or the like.
  • the communication device 348 acquires the current sampling interval for the specified area (S712).
  • the current sampling interval may be recorded in the accumulator 347 for each region.
  • the communicator 348 may acquire the current sampling interval from the accumulator 347.
  • the communication device 348 may acquire the current sampling interval by newly communicating with the security ECU 440 or the like.
  • the communication device 348 updates the sampling interval to be shorter (S714). That is, the communicator 348 defines a sampling interval that is shorter than the current sampling interval.
  • the communication device 348 updates the sampling interval longer (S715). That is, the communicator 348 defines a sampling interval that is longer than the current sampling interval.
  • the communication device 348 transmits the updated sampling interval, that is, the newly determined sampling interval, to the plurality of security ECUs of the plurality of vehicles having the same area as the specified area (S716).
  • the communication device 448 receives the sampling intervals transmitted from the server device 300 (S801). Then, the sampling log generator 443 updates the current sampling interval to the received sampling interval (S802). That is, security ECU 440 receives an instruction to change the sampling interval as an external instruction, and updates the sampling interval in accordance with the external instruction.
  • the server apparatus 300 can change the time length of the sampling interval related to the sampling log for a plurality of in-vehicle systems in the same region.
  • the communication device 348 may update the sampling interval for each type. Thereby, the data amount is adjusted appropriately for each region and each type.
  • the communication device 348 may update the sampling interval regardless of the type. Thereby, the data amount is appropriately adjusted for each region regardless of the type.
  • the CAN protocol is used as the in-vehicle network, but the present invention is not limited to this.
  • CAN-FD CAN with Flexible Data Rate
  • FlexRay FlexRay
  • Ethernet LIN (Local Interconnect Network)
  • LIN Local Interconnect Network
  • MOST Media Oriented Systems Transport
  • a network combining these networks as sub-networks with CAN may be used.
  • each component may be configured by dedicated hardware or may be realized by executing a software program suitable for each component.
  • Each component may be realized by a program executor such as a CPU or a processor reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
  • the software that realizes the information processing apparatus of the above-described embodiment is a program as follows.
  • this program is an information processing method performed by an information processing device mounted on a vehicle in a computer that is an information processing device, and detects whether or not the communication data in the in-vehicle network of the vehicle includes an abnormality.
  • the detection result is acquired in the acquisition step, the data generated per unit time out of the two types of logs.
  • Amount to execute the information processing method of outputting a full log transmission instruction to transmit to said server device a full log is larger logs than the sampling log from the transmitter.
  • this program may be recorded on a non-temporary recording medium such as a CD-ROM.
  • the information processing apparatus may be implemented by an integrated circuit.
  • each component may be a circuit.
  • a plurality of components may constitute one circuit as a whole, or may constitute separate circuits.
  • Each circuit may be a general-purpose circuit or a dedicated circuit.
  • the transmission method for transmitting information from the transmission source to the transmission destination may be a transmission method in which information on the transmission source and the transmission destination is not included in the transmitted information. Any transmission method that transmits information from the transmission source to the transmission destination may be used. Specifically, a transmission method such as broadcast may be used. The same applies to the output method for outputting information from the output source to the output destination.
  • the acquisition method for acquiring information from the acquisition source may be any acquisition method that acquires information from the acquisition source as a result.
  • the information processing apparatus has been described based on the embodiment.
  • the present disclosure is not limited to this embodiment. Unless it deviates from the gist of the present disclosure, various modifications conceived by those skilled in the art have been made in this embodiment, and forms constructed by combining components in different embodiments are also within the scope of one or more aspects. May be included.
  • a process executed by a specific component may be executed by another component instead of the specific component.
  • the order of the plurality of processes may be changed, and the plurality of processes may be executed in parallel.
  • the present disclosure can be used for a security system for monitoring data related to vehicles.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)
  • Small-Scale Networks (AREA)

Abstract

情報処理装置は、車両の車載ネットワークにおける通信データに異常が含まれるか否かの異常検知結果を異常検知器から取得する取得器と、サンプリングログを車両に搭載された送信器から車両の外部に設けられたサーバ装置へ周期的に送信させるサンプリングログ送信指示を出力する出力器とを備え、出力器は、さらに、通信データに異常が含まれることを示す異常検知結果を取得器が取得した場合、フルログを送信器からサーバ装置へ送信させるフルログ送信指示を出力する。

Description

情報処理装置及び情報処理方法
 本開示は、車両に搭載される情報処理装置等に関する。
 特許文献1には、車載ネットワークなどにおいて不正データの侵入を検知するための技術が開示されている。
特開2014-146868号公報
 しかしながら、各車両の車載システムが単独で車載システムにおけるデータを適切に監視し、適切な監視レベルを維持することが困難な場合がある。一方、車両の外部のシステムが車載システムにおけるデータを監視する場合、大量の監視対象データが車載システムから外部のシステムへ送信される可能性がある。このような大量の監視対象データを処理するための資源を準備することは容易ではない。
 そこで、本開示は、適切な監視レベルを維持しつつ、車載システムから送信される監視対象データのデータ量を削減することができる情報処理装置を提供することを目的とする。
 本開示の一態様に係る情報処理装置は、車両に搭載される情報処理装置であって、前記車両の車載ネットワークにおける通信データに異常が含まれるか否かの異常検知結果を異常検知器から取得する取得器と、前記通信データの2種類のログのうち単位時間あたりに生じるデータ量が他方のログよりも小さいログであるサンプリングログを前記車両に搭載された送信器から前記車両の外部に設けられたサーバ装置へ周期的に送信させるサンプリングログ送信指示を出力する出力器とを備え、前記出力器は、さらに、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記2種類のログのうち単位時間あたりに生じるデータ量が前記サンプリングログよりも大きいログであるフルログを前記送信器から前記サーバ装置へ送信させるフルログ送信指示を出力する。
 なお、これらの包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム、又は、コンピュータ読み取り可能なCD-ROMなどの非一時的な記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム、及び、記録媒体の任意な組み合わせで実現されてもよい。
 本開示の一態様に係る情報処理装置等は、適切な監視レベルを維持しつつ、車載システムから送信される監視対象データのデータ量を削減することができる。
図1は、実施の形態におけるセキュリティシステムの構成を示すブロック図である。 図2は、実施の形態におけるサンプリング期間を示す模式図である。 図3は、実施の形態におけるサンプリングログとフルログとの比較図である。 図4は、実施の形態におけるログフォーマットを示すデータ構成図である。 図5は、サンプリング間隔とデータ量との関係を示すグラフである。 図6は、圧縮前後のデータ量を示す比較図である。 図7は、実施の形態におけるセキュリティECUの基本的な構成を示すブロック図である。 図8は、実施の形態におけるサーバ装置の基本的な構成を示すブロック図である。 図9は、具体例におけるセキュリティシステムの構成を示すブロック図である。 図10は、具体例におけるセキュリティシステムの変形構成を示すブロック図である。 図11は、具体例におけるセキュリティECUの構成を示すブロック図である。 図12は、具体例におけるセキュリティゲートウェイ装置の構成を示すブロック図である。 図13は、具体例におけるサーバ装置の構成を示すブロック図である。 図14は、具体例におけるサンプリングログの送信に関連する動作を示すシーケンス図である。 図15は、具体例におけるサーバ装置で行われる異常検知処理に関連する動作を示すシーケンス図である。 図16は、具体例におけるセキュリティECUで行われる異常検知処理に関連する動作を示すシーケンス図である。 図17は、具体例におけるセキュリティECUの動作を示すフローチャートである。 図18は、具体例におけるセキュリティECUで行われるログ記録処理の第1態様を示すフローチャートである。 図19は、具体例におけるセキュリティECUで行われるログ記録処理の第2態様を示すフローチャートである。 図20は、具体例におけるセキュリティECUで行われる異常検知処理を示すフローチャートである。 図21は、具体例におけるセキュリティECUで行われるログ送信処理の第1態様を示すフローチャートである。 図22は、具体例におけるセキュリティECUで行われるログ送信処理の第2態様を示すフローチャートである。 図23は、具体例におけるセキュリティECUで行われるログ送信処理の第3態様を示すフローチャートである。 図24は、具体例におけるサーバ装置の動作の第1態様を示すフローチャートである。 図25は、具体例におけるサーバ装置の動作の第2態様を示すフローチャートである。 図26は、具体例におけるサーバ装置及びセキュリティECUで行われるサンプリング間隔更新処理の第1態様を示すフローチャートである。 図27は、具体例におけるサーバ装置及びセキュリティECUで行われるサンプリング間隔更新処理の第2態様を示すフローチャートである。
 (本開示の基礎となった知見)
 近年、外部ネットワークに接続されるコネクテッドカーの普及が進んでいる。例えば、インターネットに接続される車の数は、2020年までに2.5億台に達する可能性がある。
 一方、車両が不正に制御される可能性も指摘され始めている。特に、車載ネットワークの通信規格として広く普及するCAN(Controller Area Network)に不正データが侵入する可能性が指摘されている。そして、不正データによって車両が不正に制御される可能性がある。したがって、不正データによって車両が不正に制御されないように、不正データから車両を保護する技術が検討されている。
 例えば、各車両に搭載されるシステムである車載システムが、不正データから車両を保護するため、車載システムにおけるデータを監視してもよい。しかし、車載システムは、車両に搭載されるため、十分な処理能力を有していない場合がある。そのため、車載システムが単独で車載システムにおけるデータを適切に監視し、適切な監視レベルを維持することが困難な場合がある。
 また、例えば、車両の外部のシステムが、車載システムにおけるデータを監視してもよい。しかし、この場合、大量の監視対象データが車載システムから外部のシステムへ送信される可能性がある。このような大量の監視対象データを処理するための資源を準備することは容易ではない。
 そこで、本開示の一態様に係る情報処理装置は、車両に搭載される情報処理装置であって、前記車両の車載ネットワークにおける通信データに異常が含まれるか否かの異常検知結果を異常検知器から取得する取得器と、前記通信データの2種類のログのうち単位時間あたりに生じるデータ量が他方のログよりも小さいログであるサンプリングログを前記車両に搭載された送信器から前記車両の外部に設けられたサーバ装置へ周期的に送信させるサンプリングログ送信指示を出力する出力器とを備え、前記出力器は、さらに、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記2種類のログのうち単位時間あたりに生じるデータ量が前記サンプリングログよりも大きいログであるフルログを前記送信器から前記サーバ装置へ送信させるフルログ送信指示を出力する。
 これにより、車両に搭載された送信器からサーバ装置へ、データ量が比較的小さいサンプリングログが周期的に送信され、データ量が比較的大きいフルログが異常時に送信される。そして、車両の外部に設けられるサーバ装置は、車載のための要件に制約されない十分な処理能力を用いて、サンプリングログ及びフルログを監視し分析し得る。したがって、情報処理装置は、適切な監視レベルを維持しつつ、車載システムから送信される監視対象データのデータ量を削減することができる。
 例えば、前記取得器は、前記サーバ装置に含まれる前記異常検知器から前記異常検知結果を取得してもよい。
 これにより、情報処理装置は、サンプリングログの送信先であるサーバ装置に含まれる異常検知器から、異常検知結果を取得することができる。サーバ装置に含まれる異常検知器は、車載のための要件に制約されない十分な処理能力を有し得る。また、サーバ装置に含まれる異常検知器は、サンプリングログに従って異常が含まれるか否かを判定し得る。したがって、情報処理装置は、サーバ装置に含まれる異常検知器から、適切な異常検知結果を取得することができる。
 また、例えば、前記情報処理装置は、さらに、前記異常検知器を備え、前記異常検知器は、前記車載ネットワークから前記通信データを取得し、前記通信データに異常が含まれるか否かを判定してもよい。
 これにより、情報処理装置は、車載ネットワークから取得される通信データに従って、通信データに異常が含まれるか否かを適切に判定することができる。また、情報処理装置は、サンプリングログが周期的に車載システムから送信され、フルログが異常時に車載システムから送信されるように、送信器を制御することができる。したがって、通信データに含まれると判定された異常等が適切に分析され得る。
 また、例えば、前記サンプリングログは、それぞれが第1時間長の期間である複数のサンプリング間隔のうち、前記複数のサンプリング間隔にそれぞれ含まれる複数の期間でありそれぞれが前記第1時間長よりも短い第2時間長の期間である複数のサンプリング期間における前記通信データのログであってもよい。
 これにより、サンプリングログのデータ量が適切に削減される。したがって、車載システムから送信される監視対象データのデータ量が適切に削減される。また、車両を不正に制御するための不正データは連続的に送信される可能性が高いため、複数のサンプリング間隔にそれぞれ含まれる複数のサンプリング期間におけるサンプリングログによって、通信データに含まれる異常等が適切に分析され得る。
 また、例えば、前記サンプリングログは、前記複数のサンプリング期間における前記通信データを構成する複数のフレームのそれぞれについて、(i)当該フレームのサンプリング時刻、(ii)当該フレームとサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームであるか否か、及び、(iii)当該フレームのデータを示してもよい。
 これにより、各フレームについて、サンプリング時刻、及び、サンプリング期間において最初のフレームか否か等がサンプリングログによって示される。そして、例えば、サンプリング期間において、最初のフレームとは異なるフレームのサンプリング時刻と、その前のフレームのサンプリング時刻との差等に従って、適切に異常が判定され得る。
 また、例えば、前記フルログは、複数の種別の前記通信データのログであり、前記サンプリングログは、前記複数の種別よりも少ない1以上の種別の前記通信データのログであり、前記複数のサンプリング期間における前記1以上の種別の前記通信データを構成する複数のフレームのそれぞれについて、(i)当該フレームのサンプリング時刻、(ii)当該フレームと種別及びサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームであるか否か、及び、(iii)当該フレームのデータを示してもよい。
 これにより、各フレームについて、サンプリング時刻、及び、同一種別及び同一サンプリング期間において最初のフレームか否か等がサンプリングログによって示される。そして、例えば、同一種別及び同一サンプリング期間において、最初のフレームとは異なるフレームのサンプリング時刻と、その前のフレームのサンプリング時刻との差等に従って、適切に異常が判定され得る。
 また、例えば、前記フルログは、複数の種別の前記通信データのログであり、前記サンプリングログは、前記複数の種別よりも少ない1以上の種別の前記通信データのログであってもよい。
 これにより、サンプリングログのデータ量が適切に削減される。したがって、車載システムから送信される監視対象データのデータ量が適切に削減される。また、複数の種別が1以上の種別に削減されることにより、例えば重要な種別の通信データのログがサンプリングログとして適用され得る。
 また、例えば、前記情報処理装置は、さらに、前記送信器を備え、前記送信器は、前記出力器から出力された前記サンプリングログ送信指示に従って前記サンプリングログを前記サーバ装置へ送信し、前記出力器から出力された前記フルログ送信指示に従って前記フルログを前記サーバ装置へ送信してもよい。
 これにより、情報処理装置は、サンプリングログ及びフルログをサーバ装置へ適時に送信することができる。
 また、例えば、前記送信器は、前記出力器から出力された前記サンプリングログ送信指示に従って、前記サンプリングログを可逆的に圧縮し、圧縮された前記サンプリングログを前記サーバ装置へ送信し、前記出力器から出力された前記フルログ送信指示に従って、前記フルログを可逆的に圧縮し、圧縮された前記フルログを前記サーバ装置へ送信してもよい。
 これにより、サンプリングログ及びフルログが圧縮されて送信される。したがって、情報処理装置は、車載システムから送信される監視対象データのデータ量を削減することができる。
 また、例えば、前記フルログ及び前記サンプリングログは、前記車両に搭載されたログ生成器によって生成され、前記出力器は、前記ログ生成器で生成された前記サンプリングログを前記送信器から前記サーバ装置へ周期的に送信させる前記サンプリングログ送信指示を出力し、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記ログ生成器で生成された前記フルログを前記送信器から前記サーバ装置へ送信させる前記フルログ送信指示を出力してもよい。
 これにより、情報処理装置は、車載システムにおいて生成されたサンプリングログ及びフルログが車載システムからサーバ装置へ送信されるように、車載システムを適切に制御することができる。
 また、例えば、前記サンプリングログは、それぞれが第1時間長の期間である複数のサンプリング間隔のうち、前記複数のサンプリング間隔にそれぞれ含まれる複数の期間でありそれぞれが前記第1時間長よりも短い第2時間長の期間である複数のサンプリング期間における前記通信データのログであり、前記出力器は、さらに、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長を変更させる変更指示を出力してもよい。
 これにより、情報処理装置は、サンプリングログに関連するサンプリング間隔の時間長を変更することができる。したがって、情報処理装置は、サンプリングログに、固定のサンプリング間隔では含まれない異常等を含ませることができる。
 また、例えば、前記出力器は、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長を短くさせる前記変更指示を出力してもよい。
 これにより、情報処理装置は、異常時以降において、サンプリングログのデータ量を増加させることができる。また、情報処理装置は、サンプリングログに、長いサンプリング間隔では含まれない異常等を含ませることができる。
 また、例えば、前記出力器は、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得しなかった場合、前記ログ生成器に前記第1時間長を長くさせる前記変更指示を出力してもよい。
 これにより、情報処理装置は、異常がない場合、サンプリングログのデータ量を減少させることができる。
 また、例えば、前記第1時間長は、前記通信データに関する複数の種別のそれぞれについて定められ、前記出力器は、前記複数の種別のうちの1つの種別について前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記ログ生成器に前記第2時間長よりも長い範囲で前記1つの種別について前記第1時間長を短くさせる前記変更指示を出力してもよい。
 これにより、情報処理装置は、異常時以降において、サンプリングログのデータ量を種別毎に増加させることができる。
 また、例えば、前記第1時間長は、前記通信データに関する複数の種別のそれぞれについて定められ、前記出力器は、前記複数の種別のうちの1つの種別について前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記ログ生成器に前記第2時間長よりも長い範囲で前記複数の種別のそれぞれについて前記第1時間長を短くさせる前記変更指示を出力してもよい。
 これにより、情報処理装置は、異常時以降において、サンプリングログのデータ量を種別によらず増加させることができる。したがって、情報処理装置は、異常時以降において、種別によらず詳細な情報をサンプリングログに含ませることができる。
 また、例えば、前記出力器は、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得しなかった場合、前記ログ生成器に短くされた前記第1時間長を長くさせる前記変更指示を出力してもよい。
 これにより、情報処理装置は、異常がない場合、増加したデータ量を減少させることができる。
 また、例えば、前記出力器は、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長をランダムに変更させる前記変更指示を出力してもよい。
 これにより、情報処理装置は、サンプリング間隔を解析されにくくすることができる。したがって、情報処理装置は、不正なデータに基づく異常等がサンプリングログに含まれない現象を抑制することができる。
 また、例えば、前記出力器は、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長を線形的に変更させる前記変更指示を出力してもよい。
 これにより、情報処理装置は、サンプリング間隔を様々に変更することができる。したがって、情報処理装置は、サンプリングログに、固定のサンプリング間隔では含まれない異常等を適切に含ませることができる。
 また、例えば、前記取得器は、さらに、前記サーバ装置から前記第1時間長の変更指示を外部指示として取得し、前記出力器は、前記サーバ装置から前記取得器が取得した前記外部指示に従って、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長を変更させる前記変更指示を出力してもよい。
 これにより、情報処理装置は、サーバ装置から取得した指示に従って、サンプリング間隔を変更することができる。したがって、サンプリング間隔の集中的な制御が可能になる。
 また、例えば、前記フルログは、複数の種別の前記通信データのログであり、前記サンプリングログは、前記複数の種別のうち1以上の種別の前記通信データのログであり、前記出力器は、前記ログ生成器に前記1以上の種別を特定させる特定情報を出力してもよい。
 これにより、サンプリングログのデータ量が適切に削減される。したがって、車載システムから送信される監視対象データのデータ量が適切に削減される。また、複数の種別が1以上の種別に削減されることにより、例えば重要な種別の通信データのログがサンプリングログとして適用され得る。また、情報処理装置は、サンプリングログに適用される適切な種別を指定することができる。
 また、例えば、前記情報処理装置は、さらに、前記ログ生成器を備え、前記ログ生成器は、前記車載ネットワークから前記通信データを取得し、前記通信データに従って前記フルログ及び前記サンプリングログを生成してもよい。
 これにより、情報処理装置は、車載ネットワークから取得される通信データに従って、サンプリングログ及びフルログを適切に生成することができる。
 また、本開示の一態様に係る情報処理方法は、車両に搭載される情報処理装置が行う情報処理方法であって、前記車両の車載ネットワークにおける通信データに異常が含まれるか否かの異常検知結果を異常検知器から取得する取得ステップと、前記通信データの2種類のログのうち単位時間あたりに生じるデータ量が他方のログよりも小さいログであるサンプリングログを前記車両に搭載された送信器から前記車両の外部に設けられたサーバ装置へ周期的に送信させるサンプリングログ送信指示を出力する出力ステップとを含み、前記出力ステップでは、さらに、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得ステップで取得した場合、前記2種類のログのうち単位時間あたりに生じるデータ量が前記サンプリングログよりも大きいログであるフルログを前記送信器から前記サーバ装置へ送信させるフルログ送信指示を出力する情報処理方法であってもよい。
 これにより、車両に搭載された送信器からサーバ装置へ、データ量が比較的小さいサンプリングログが周期的に送信され、データ量が比較的大きいフルログが異常時に送信される。そして、車両の外部に設けられるサーバ装置は、車載のための要件に制約されない十分な処理能力を用いて、サンプリングログ及びフルログを監視し分析し得る。したがって、この情報処理方法を行う情報処理装置は、適切な監視レベルを維持しつつ、車載システムから送信される監視対象データのデータ量を削減することができる。
 さらに、これらの包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム、又は、コンピュータ読み取り可能なCD-ROMなどの非一時的な記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム、及び、記録媒体の任意な組み合わせで実現されてもよい。
 以下、実施の形態について図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、請求の範囲を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
 (実施の形態)
 [多層防御及び遠隔監視]
 図1は、本実施の形態におけるセキュリティシステムの構成を示すブロック図である。図1に示されたセキュリティシステム100は、サーバ装置300、及び、車載システム410等を備える。車載システム410は、車両400に搭載されるシステムであって、セキュリティECU440、並びに、その他のECU451及び452等を備える。なお、ECUは、電子制御ユニット(Electronic Control Unit)であり、エンジン制御ユニット(Engine Control Unit)とも呼ばれる。
 車両400において、車載システム410は、4層の多層防御を行う。1層目は、車外通信デバイスにおける防御である。車外通信デバイスは、通信先を認証し、状況に応じて通信を暗号化する。車外通信デバイスは、ヘッドアップディスプレイ421、テレマティクス通信ユニット(TCU:Telematics Communication Unit)422、V2Xモジュール423、又は、OBD(On-Board Diagnostics)モジュール424等である。
 例えば、ヘッドアップディスプレイ421は、BLUETOOTH(登録商標)機器又はUSB機器等と通信する。テレマティクス通信ユニット422は、外部サーバ等と通信する。V2Xモジュール423は、インフラ等と通信する。OBDモジュール424は、車外の診断デバイス等と通信する。
 また、ヘッドアップディスプレイ421のように演算資源に余裕を有する車外通信デバイスは、認証及び暗号化に加えて、車外から受信された通信データを確認し、事前に認められたデータのみを通すフィルタリングを行うことで、不正データの侵入を防ぐ。
 2層目は、ゲートウェイ装置430における防御である。ゲートウェイ装置430は、ネットワークゲートウェイとも呼ばれ、車外通信デバイスが繋がるネットワークと、車両400に搭載された制御系ネットワークとを繋ぐ。制御系ネットワークは、車載ネットワークとも呼ばれ、具体的には、CANである。ゲートウェイ装置430は、車外から受信された通信データを確認し、事前に認められたデータのみを制御系ネットワークへ転送するフィルタリングを行うことで、不正データの侵入を防ぐ。
 3層目は、制御系ネットワークに配置されたセキュリティECU440における防御である。セキュリティECU440は、制御系ネットワークに流れる通信データを監視し、通信データのフォーマット、周期、及び、値の変化量等に基づいて、不正データを特定し無効化する。例えば、セキュリティECU440は、通信データをホワイトリスト又はルールにマッチングすることによって、不正データを特定してもよい。また、セキュリティECU440は、CANのエラーフレームを用いて不正データを無効化してもよい。
 4層目は、ECU451及び452等における防御である。ECU451及び452等は、耐タンパ性を有するように、実装されている。例えば、ECU451及び452等は、セキュアブートによって、ソフトウェアプログラムが改ざんされていないことをチェックしてもよい。また、ECU451及び452等は、セキュアコーディングによって生成されたソフトウェアプログラム、又は、ソースコードが難読化されたソフトウェアプログラムを用いることによって、ソフトウェアプログラムの改ざんを防いでもよい。
 さらに、セキュリティシステム100は、車載システム410における多層防御に加えて、サーバ装置300において、車両400の遠隔監視も行う。
 例えば、不正データの侵入方法の高度化によって、不正データが多層防御を通り抜けて侵入する可能性がある。そこで、サーバ装置300は、多層防御を通り抜けて侵入した不正データを検知してもよい。そして、新たな防御策が適用されてもよいし、ドライバーへ警告が通知されてもよい。また、不正データが多層防御で対処された場合でも、不正アクセスを異常として検知し、不正アクセスの傾向を把握することは、新たな不正データの侵入を防ぐため有用である。
 そこで、例えば、サーバ装置300は、車載ネットワークにおける通信データのログである通信ログを収集し分析する。さらに、車両400の外部のサーバ装置300は、1つの車両400だけでなく、複数の車両から多くの通信ログを収集し分析し得る。そして、様々な地域における様々な車両から得られる通信ログによって、様々な車両の異常などについて、一元的な把握が可能である。したがって、不正アクセスが頻繁に行われる地域、時間帯及び車種等が特定され得る。
 また、車両400の外部のサーバ装置300は、車載のための要件に制約されず、豊富な演算資源を備え得る。したがって、車両400の外部のサーバ装置300は、例えば機械学習に基づく高度な異常検知等の複雑な処理を行い得る。したがって、サーバ装置300は、車載システム410が検知できない不正データ、不正アクセス又はそれらの予兆等を検知し得る。
 車両400の外部のサーバ装置300は、情報を収集し分析するためのSIEM(Security Information Event Management)に対応する処理を行い得る。この処理は、AutoSIEM(Automotive SIEM)とも表現され得る。
 また、例えば、セキュリティシステム100を運用する組織としてSOC(Security Operation Centor)及びASIRT(Automotive Security Incident Response Team)が存在してもよい。SOCは、サーバ装置300における検知結果を監視する組織であり、ASIRTは、異常が検知された場合に、異常の対処を行う組織である。
 そして、例えば、ASIRTは、多層防御で検知されなかった異常がサーバ装置300において検知された場合、新しい検知ルールを作成する。そして、サーバ装置300によって、作成された新しい検知ルールがヘッドアップディスプレイ421及びセキュリティECU440等に配布されてもよい。
 サーバ装置300に接続された端末装置200は、サーバ装置300と通信を行う装置であり、SOC又はASIRT等において利用される。例えば、端末装置200は、サーバ装置300から異常通知を受信する。
 [データ量の削減]
 上記の通り、サーバ装置300によって、通信ログが収集され分析される。そのため、車両400における車載システム410は、通信ログをサーバ装置300へアップロードする。サーバ装置300は、アップロードされた通信ログを蓄積し分析する。また、例えば、SOC及びASIRT等が、詳細分析及び証拠保全のため、サーバ装置300から通信ログを端末装置200へダウンロードする。すなわち、端末装置200は、SOC及びASIRT等の指示に従って、サーバ装置300から通信ログをダウンロードする。
 しかしながら、サーバ装置300へアップロードされる通信ログのデータ量が大きいほど、通信、蓄積及び分析などに、より大きな資源が用いられる。
 例えば、CANのビットレートは、おおよそ500Kbps~1Mbps程度である。仮にCANのビットレートが500Kbpsであった場合、CANの通信ログのデータ量は、付加情報などのオーバヘッドを除いても、1時間で225MBに到達すると想定される。そして、仮に1万台の車両がサーバ装置300へ通信ログをアップロードした場合、サーバ装置300へアップロードされる通信ログのデータ量は、1時間で2250GBに到達すると想定される。
 このような大きなデータ量に対応する大きな資源を準備することは容易ではない。そのため、本実施の形態におけるセキュリティシステム100は、適切な監視レベルを維持しつつ、車載システム410からサーバ装置300へ送信される監視対象データのデータ量を削減するための構成を備える。
 また、車載システム410における各車載デバイスの動作ログが、監視対象データとして車載システム410からサーバ装置300へ送信されてもよい。本実施の形態では、特に、車載ネットワークの通信ログが、監視対象データとして車載システム410からサーバ装置300へ送信される。
 車両400に対する不正アクセスでは、不正データが車載ネットワークを流れる可能性が高い。したがって、通信ログは、不正アクセスから車両400を保護するための監視に有用である。一方、様々な車両に広く採用されている車載ネットワークであるCANの通信ログのデータ量は、上記の通り大きいことが想定される。すなわち、通信ログは監視に有用であるが、そのデータ量は大きい。
 そこで、本実施の形態におけるセキュリティシステム100は、特に、車載システム410からサーバ装置300へ送信される通信ログのデータ量を削減する。なお、セキュリティシステム100は、さらに、同様の方法を用いて、車載システム410からサーバ装置300へ送信される動作ログのデータ量を削減してもよい。
 セキュリティシステム100は、車載システム410からサーバ装置300へ送信される監視対象データのデータ量を削減するための3つの削減方法を用いる。ここで、データ量が削減される監視対象データは、具体的には、車載システム410からサーバ装置300へ送信される通信ログである。
 1つ目の削減方法は、種別の削減である。具体的には、CANを流れる全ての種別のデータフレームのうち重要度の高い種別のデータフレームのみが、車載システム410からサーバ装置300へ送信される監視対象データに含められる。例えば、CANを流れる様々な種別の通信データのうち、アクセル又はブレーキ等の通信データは、車の挙動に直接関係するが、ウィンドウ又はワイパー等の通信データは、車の挙動に直接関係しない。
 そこで、CANを流れる様々な種別の通信データのうち車の挙動に直接関係する通信データのみが、重要度の高い通信データとして、車載システム410からサーバ装置300へ送信される監視対象データに含められる。例えば、CANを流れる全100種類のデータのうち車の挙動に直接関係する20種類のデータのみが監視対象データに含められる場合、全100種類のデータのうち約80%のデータが削減されることが見込まれる。なお、CANにおいて、種別は、データフレームに含まれるIDに対応する。
 2つ目の削減方法は、期間の間引きである。具体的には、複数のサンプリング間隔にそれぞれ含まれる複数のサンプリング期間における通信データが、車載システム410からサーバ装置300へ送信される監視対象データに含められる。
 図2は、図1に示されたセキュリティシステム100で用いられるサンプリング期間を示す模式図である。図2において、サンプリング間隔T1よりもサンプリング期間T2は短い。そして、サンプリング間隔T1における通信データのうち、サンプリング期間T2における通信データが、車載システム410からサーバ装置300へ送信される監視対象データに含められる。これにより、データ量の(1-T2/T1)×100%が削減される。
 サンプリング期間T2は、サーバ装置300において異常を検知するための最小データフレーム数等に従って規定されてもよい。例えば、少なくともK個のデータフレームがサーバ装置300における異常検知アルゴリズムに用いられる場合、少なくともK個のデータフレームがサンプリング期間T2に存在するように、サンプリング期間T2が規定される。
 具体的には、異常検知アルゴリズムにおいて単一のデータフレーム毎に異常の有無が判定される場合、上記のKは1である。したがって、この場合、CANを周期的に流れる同種のデータフレームの1周期分の期間が、サンプリング期間T2として規定され得る。
 また、サンプリング間隔T1は、不正データの侵入が連続して行われる期間よりも短く規定されてもよい。例えば、CANにおいて、単発的に流れる各データフレームが車両400に及ぼす影響は小さく、連続的に流れる複数のデータフレームが車両400に及ぼす影響は大きい。すなわち、不正データの単発的な侵入が車両400に及ぼす影響は小さく、不正データの連続的な侵入が車両400に及ぼす影響は大きい。
 したがって、例えば、不正データの侵入が連続して行われる期間が5秒間と想定される場合、サンプリング間隔T1は、5秒間よりも短く規定されてもよい。これにより、不正データの侵入によってCANを流れる異常データが監視対象データに含められる。また、不正データの侵入が連続して行われる期間が長いと想定される場合、サンプリング間隔T1が長く規定され得る。したがって、この場合、データ量の削減効果が大きい。
 不正データの侵入が連続して行われる期間が想定され難い場合、サンプリング間隔T1は動的に変更されてもよい。サンプリング間隔T1は、通信ログの取得タイミングでランダムに変更されてもよいし、車種、地域又は種別毎に、変更されてもよい。これにより、不正データの侵入によってCANを流れる異常データが、車載システム410からサーバ装置300へ送信される監視対象データに含められる可能性が高くなる。
 サンプリング間隔T1及びサンプリング期間T2が適切に規定されることにより、CANを流れる異常データが、サーバ装置300へ送信される監視対象データに含められ、かつ、サーバ装置300へ送信される監視対象データが削減される。
 3つ目の削減方法は、データ圧縮である。具体的には、車載システム410は、zip、gzip又は7-Zip等のデータ圧縮方法に従って、監視対象データを圧縮することにより、サーバ装置300へ送信される監視対象データのデータ量を削減してもよい。
 データ圧縮に関して、様々なデータ圧縮方法が、パーソナルコンピュータ向けの様々なソフトウェアプログラムに実装されており、広く利用されている。例えば、バイナリファイルに関して、データ圧縮によって約30~60%のデータ量の削減が可能である。バイナリファイルに類する監視対象データに関しても、データ圧縮によってデータ量の削減が見込まれる。実際に監視対象データを圧縮した結果、69.4%のデータ量が削減された。
 図3は、図1に示されたセキュリティシステム100で用いられるサンプリングログとフルログとの比較図である。サンプリングログ及びフルログは、それぞれ、CANの通信ログであって、監視対象データである。サンプリングログには、上述した3つの削減方法が適用される。すなわち、サンプリングログには、種別の削減、期間の間引き、及び、データ圧縮が適用される。フルログは、上述した3つの削減方法のうち、データ圧縮のみが適用される。
 サンプリングログは、CANの全ての通信ログのうち一部の通信ログのみを含む。そのため、サンプリングログのデータ量は、比較的小さい。また、サンプリングログは、通信データに含まれる異常を検知するための最小限のデータを含み得る。
 フルログは、基本的に、CANの全ての通信ログを含む。そのため、フルログのデータ量は、比較的大きい。しかしながら、フルログは、CANの通信データに関する詳細な情報を含み得る。すなわち、フルログは、通信データに含まれる異常を詳細に示し得る。
 セキュリティシステム100は、サンプリングログ及びフルログの2種類の監視対象データを適切に使い分ける。すなわち、セキュリティシステム100は、サンプリングログ及びフルログを選択的に用いる。
 具体的には、セキュリティシステム100は、通常時の監視のためサンプリングログを生成する。そして、セキュリティシステム100は、周期的にサンプリングログを車載システム410からサーバ装置300へ送信する。また、セキュリティシステム100は、異常検知時の詳細分析及び証拠保全のためフルログを生成する。そして、セキュリティシステム100は、異常検知時にフルログを車載システム410からサーバ装置300へ送信する。
 異常検知時にフルログが送信されることによって、適切な詳細分析及び証拠保全が可能である。一方で、異常発生頻度は少ないと想定されるため、車載システム410からサーバ装置300へ送信される監視対象データのデータ量は、サンプリングログのデータ量に近似し得る。したがって、車載システム410からサーバ装置300へ送信される監視対象データのデータ量は小さい。これにより、監視レベルの低下が抑制され、車載システム410からサーバ装置300へ送信される監視対象データのデータ量が削減される。
 図4は、図1に示されたセキュリティシステム100で用いられるログフォーマットを示すデータ構成図である。サンプリングログ及びフルログは、図4に示されたログフォーマットで車載システム410からサーバ装置300へ送信される。
 具体的には、車両ID、タイムスタンプ、長さ、バージョン及び予約が、ログフォーマットのヘッダ部分に含まれる。さらに、フラグ、予約、ID、DLC(データ長コード)、タイムスタンプ及びデータの組でそれぞれが構成されるN個の組が、ログフォーマットのペイロード部分に含まれる。
 ヘッダ部分における車両IDは、複数の車両から車両400を識別するための識別子を示す。ヘッダ部分におけるタイムスタンプは、通信ログがサンプリングログ又はフルログとして送信される時刻を示す。ヘッダ部分における長さは、ペイロード部分の長さを示す。ヘッダ部分におけるバージョンは、ログフォーマットのバージョンを示す。ヘッダ部分における予約は、ヘッダ部分における未使用の領域である。
 ペイロード部分におけるフラグは、そのフラグを含む組におけるデータがサンプリング期間において最初のフレームのデータであるか否かを示す。すなわち、このフラグは、前のデータが欠けているか否かを示す。このフラグは、そのフラグを含む組におけるデータが同一種別及び同一サンプリング期間において最初のフレームのデータであるか否かを示していてもよい。
 ペイロード部分における予約は、ペイロード部分における未使用の領域である。ペイロード部分におけるIDは、CANのフレームにおけるIDであり、通信データの種別を示す。ペイロード部分におけるDLCは、CANのフレームにおけるDLCであり、ペイロード部分におけるデータの長さを示す。ペイロード部分におけるタイムスタンプは、CANの車載ネットワークからCANのフレームが取得された時刻であるサンプリング時刻を示す。ペイロード部分におけるデータは、CANのフレームにおけるデータである。
 サンプリングログ及びフルログは、さらに、サンプリングログ又はフルログを識別するための識別フラグを含んでいてもよい。例えば、このような識別フラグは、ログフォーマットのヘッダ部分に含まれる。
 発明者は、上記のようなサンプリングログ及びフルログに基づく監視対象データの削減量を評価した。具体的には、1分間におけるCANの実際の通信データについて、通信ログ、サンプリングログ及びフルログのそれぞれのデータ量を計測することにより、削減量の評価が行われた。評価における通信ログは、データ量が削減されていないログであって、圧縮前のフルログと同じである。通信ログのデータ量は、1158KBであった。
 まず、種別の削減が適用された。具体的には、CANにおける約100種の通信データのうち、車の制御に深く関係するステアリング、アクセル、ブレーキ及び車速度の4種の通信データがサンプリングログの生成に用いられた。そして、種別の削減が適用されたサンプリングログのデータ量は、200KBであった。つまり、元の通信ログのデータ量と比較して、82.7%のデータ量が削減された。
 次に、種別の削減に加えて、期間の間引きが適用された。その際、サンプリング期間の時間長を72msに固定し、サンプリング間隔の時間長を変えながら、通信データのサンプリングログのデータ量が計測された。
 図5は、サンプリング間隔とサンプリングログのデータ量との関係を示すグラフである。図5の通り、サンプリング間隔とサンプリングログのデータ量とは、サンプリング間隔が長いほど、サンプリングログのデータ量が小さいという関係を有する。本評価において、最終的に、1秒のサンプリング間隔が採用された。その結果、期間の間引きが適用されたサンプリングログのデータ量は、14.4KBであった。すなわち、200KBから14.4KBへ、92.8%のデータ量が削減された。
 さらに、データ圧縮が適用された。具体的には、zip、cab、gzip、bzip2、lzh及び7-Zipの7種の圧縮方法のそれぞれを用いて、サンプリングログを圧縮し、圧縮後のデータ量を比較した。
 図6は、圧縮前後のデータ量を示す比較図である。ここで、第1種~第4種は、ステアリング、アクセル、ブレーキ及び車速度の4種に対応する。図6のように、最も圧縮効果の高い圧縮方法は7-Zipであり、7-Zipによって圧縮されたサンプリングログのデータ量は、4.4KBであった。すなわち、14.4KBから4.4KBへ、69.4%のデータ量が削減された。
 なお、第2種及び第4種のデータにおいて、第1種及び第3種のデータよりも、0の値が連続していた。そのため、第2種及び第4種のデータにおいて、高い圧縮効果が得られたと推定される。
 種別の削減、期間の間引き、及び、圧縮によって、最終的に4.4KBのサンプリングログが生成された。すなわち、1158KBから4.4KBへ、99.6%のデータ量が削減された。
 また、7-Zipを用いて圧縮された通信ログのデータ量、より具体的には、7-Zipを用いて圧縮されたフルログのデータ量は、462KBであった。すなわち、フルログに関して、1158KBから462KBへ、60.1%のデータ量が削減された。
 上記の通り、サンプリングログ及びフルログの両方においてデータ量が削減され、サンプリングログではフルログよりもデータ量が削減されるという評価結果が得られた。通常時においてサンプリングログが車載システム410からサーバ装置300へ送信されるため、車載システム410からサーバ装置300へ送信される監視対象データのデータ量は、適切に削減されることが期待される。
 [基本構成]
 次に、適切な監視レベルを維持しつつ、車載システム410から送信される監視対象データのデータ量を削減するための基本的な構成を説明する。
 図7は、本実施の形態におけるセキュリティECU440の基本的な構成を示すブロック図である。セキュリティECU440は、車両400に搭載される情報処理装置の例である。セキュリティECU440は、取得器441及び出力器442を備える。
 取得器441は、情報を取得する。具体的には、取得器441は、車両400の車載ネットワークにおける通信データに異常が含まれるか否かの異常検知結果を異常検知器510から取得する。
 出力器442は、情報を出力する。具体的には、出力器442は、車両400に搭載された送信器530から車両400の外部のサーバ装置300へ周期的にサンプリングログを送信させるサンプリングログ送信指示を出力する。また、出力器442は、通信データに異常が含まれることを示す異常検知結果が取得された場合、送信器530からサーバ装置300へフルログを送信させるフルログ送信指示を出力する。
 ここで、サンプリングログは、通信データの2種類のログのうち単位時間あたりに生じるデータ量が他方のログよりも小さいログである。また、フルログは、2種類のログのうち単位時間あたりに生じるデータ量がサンプリングログよりも大きいログである。
 例えば、フルログは、複数の種別の通信データのログであってもよい。そして、サンプリングログは、フルログに関する複数の種別よりも少ない1以上の種別の通信データのログであってもよい。
 また、サンプリングログは、複数のサンプリング間隔のうち、複数のサンプリング間隔にそれぞれ含まれる複数のサンプリング期間における通信データのログであってもよい。ここで、複数のサンプリング間隔のそれぞれは、第1時間長の期間である。また、複数のサンプリング期間のそれぞれは、第1時間長よりも短い第2時間長の期間である。
 また、サンプリングログは、複数のサンプリング期間における通信データを構成する各フレームについて、(i)当該フレームのサンプリング時刻、(ii)当該フレームが最初のフレームであるか否か、及び、(iii)当該フレームのデータを示していてもよい。ここで、当該フレームが最初のフレームであるか否かは、例えば、当該フレームとサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームであるか否かである。
 また、サンプリングログは、複数のサンプリング期間における1以上の種別の通信データを構成する複数のフレームのそれぞれについて、(i)当該フレームのサンプリング時刻、(ii)当該フレームが最初のフレームであるか否か、及び、(iii)当該フレームのデータを示していてもよい。ここで、当該フレームが最初のフレームであるか否かは、例えば、当該フレームと種別及びサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームであるか否かである。
 また、例えば、ログ生成器520は、車載ネットワークから通信データを取得し、通信データに従ってフルログ及びサンプリングログを生成する。ログ生成器520は、車載ネットワークから通信データを直接的に取得することに限られず、車載ネットワークから他の装置を介して通信データを間接的に取得してもよい。例えば、ログ生成器520は、車載ネットワークから、通信データが蓄えられるメモリを介して、通信データを取得してもよい。また、ログ生成器520は、セキュリティECU440に含まれていてもよい。
 そして、出力器442は、ログ生成器520で生成されたサンプリングログを送信器530からサーバ装置300へ周期的に送信させるサンプリングログ送信指示を出力してもよい。また、通信データに異常が含まれることを示す異常検知結果が取得された場合、出力器442は、ログ生成器520で生成されたフルログを送信器530からサーバ装置300へ送信させるフルログ送信指示を出力してもよい。
 また、出力器442は、サンプリング期間に関する第2時間長よりも長い範囲で、サンプリング間隔に関する第1時間長をログ生成器520に変更させる変更指示を出力してもよい。
 例えば、通信データに異常が含まれることを示す異常検知結果が取得された場合、出力器442は、ログ生成器520に第2時間長よりも長い範囲で第1時間長を短くさせる変更指示を出力してもよい。そして、通信データに異常が含まれることを示す異常検知結果が取得されなかった場合、出力器442は、ログ生成器520に第1時間長を長くさせる変更指示を出力してもよい。
 また、例えば、第1時間長は、通信データに関する複数の種別のそれぞれについて定められてもよい。そして、1つの種別について通信データに異常が含まれることを示す異常検知結果が取得された場合、出力器442は、ログ生成器520に第2時間長よりも長い範囲でその種別について第1時間長を短くさせる変更指示を出力してもよい。
 あるいは、1つの種別について通信データに異常が含まれることを示す異常検知結果が取得された場合、出力器442は、ログ生成器520に第2時間長よりも長い範囲で複数の種別のそれぞれについて第1時間長を短くさせる変更指示を出力してもよい。すなわち、この場合、出力器442は、ログ生成器520に第2時間長よりも長い範囲で全ての種別について第1時間長を短くさせる変更指示を出力してもよい。
 そして、通信データに異常が含まれることを示す異常検知結果が取得されなかった場合、出力器442は、ログ生成器520に短くさせられた第1時間長を長くさせる変更指示を出力してもよい。
 また、例えば、出力器442は、ログ生成器520に第2時間長よりも長い範囲で第1時間長をランダムに変更させる変更指示を出力してもよい。また、出力器442は、ログ生成器520に第2時間長よりも長い範囲で第1時間長を線形的に変更させる変更指示を出力してもよい。
 また、例えば、取得器441は、サーバ装置300から第1時間長の変更指示を外部指示として取得してもよい。そして、出力器442は、サーバ装置300から取得された外部指示に従って、ログ生成器520に第2時間長よりも長い範囲で第1時間長を変更させる変更指示を出力してもよい。
 また、例えば、出力器442は、サンプリングログに関する1以上の種別をログ生成器520に特定させる特定情報を出力してもよい。
 また、異常検知器510は、サーバ装置300に含まれていてもよい。そして、取得器441は、サーバ装置300に含まれる異常検知器510から異常検知結果を取得してもよい。
 また、異常検知器510は、セキュリティECU440に含まれていてもよい。そして、異常検知器510は、車載ネットワークから通信データを取得し、通信データに異常が含まれるか否かを判定してもよい。異常検知器510は、車載ネットワークから通信データを直接的に取得することに限られず、車載ネットワークから他の装置を介して通信データを間接的に取得してもよい。例えば、異常検知器510は、ログ生成器520を介して、車載ネットワークの通信データから生成されるフルログ等を通信データとして取得してもよい。
 また、例えば、送信器530は、出力器442から出力されたサンプリングログ送信指示に従って、サンプリングログをサーバ装置300へ送信し、出力器442から出力されたフルログ送信指示に従って、フルログをサーバ装置300へ送信する。送信器530は、セキュリティECU440に含まれていてもよい。
 また、送信器530は、出力器442から出力されたサンプリングログ送信指示に従って、サンプリングログを可逆的に圧縮し、圧縮されたサンプリングログをサーバ装置300へ送信してもよい。また、送信器530は、出力器442から出力されたフルログ送信指示に従って、フルログを可逆的に圧縮し、圧縮されたフルログをサーバ装置300へ送信してもよい。
 また、出力器442は、送信器530からサーバ装置300へ周期的にサンプリングログを送信させるサンプリングログ送信指示を周期的に出力することにより、送信器530からサーバ装置300へ周期的にサンプリングログを送信させてもよい。あるいは、出力器442は、送信器530からサーバ装置300へ周期的にサンプリングログを送信させるサンプリングログ送信指示を単一の指示として出力することにより、送信器530からサーバ装置300へ周期的にサンプリングログを送信させてもよい。
 また、例えば、通信データに異常が含まれると判定された場合、通信データに異常が含まれることを示す異常検知結果を異常検知器510が送信し、取得器441は、送信され異常検知結果を取得してもよい。そして、通信データに異常が含まれないと判定された場合、異常検知器510が異常検知結果を送信せず、取得器441は、異常検知結果を取得しなくてもよい。あるいは、この場合、通信データに異常が含まれないことを示す異常検知結果を異常検知器510が送信し、取得器441が、送信された異常検知結果を取得してもよい。
 なお、取得器441及び出力器442は、専用又は汎用の電気回路であってもよい。そして、セキュリティECU440、異常検知器510、ログ生成器520、送信器530及びサーバ装置300は、電気回路で構成されていてもよい。具体的には、これらはそれぞれコンピュータであってもよい。
 また、上記の通り、異常検知器510、ログ生成器520及び送信器530は、それぞれ、セキュリティECU440に含まれていてもよい。取得器441は、セキュリティECU440の内部の装置から情報を取得してもよいし、出力器442は、セキュリティECU440の内部の装置へ情報を出力してもよい。
 また、異常検知器510、ログ生成器520及び送信器530は、それぞれ、車載ネットワークに接続されるECUでもよい。また、送信器530は、図1に示されたテレマティクス通信ユニット422、V2Xモジュール423又はゲートウェイ装置430等に対応する装置であってもよい。取得器441は、セキュリティECU440の外部の装置から車載ネットワークを介して情報を取得してもよいし、出力器442は、車載ネットワークを介してセキュリティECU440の外部の装置へ情報を出力してもよい。
 さらに、取得器441は、セキュリティECU440の外部の装置から、車載ネットワークとは異なるネットワークを介して、情報を取得してもよい。また、出力器442は、車載ネットワークとは異なるネットワークを介して、セキュリティECU440の外部の装置へ、情報を出力してもよい。
 図8は、本実施の形態におけるサーバ装置300の基本的な構成を示すブロック図である。サーバ装置300は、車両400の外部に設けられる情報処理装置の例である。サーバ装置300は、取得器301、判定器302及び出力器303を備える。
 取得器301は、情報を取得する。具体的には、取得器301は、サンプリングログを車両400の車載システム410から取得する。
 判定器302は、判定処理を行う。具体的には、判定器302は、サンプリングログを用いて通信データに異常が含まれるか否かを判定する。
 出力器303は、情報を出力する。具体的には、出力器303は、通信データに異常が含まれると判定された場合、フルログを車載システム410からサーバ装置300へ送信させる送信指示として、通信データに異常が含まれることを示す異常検知結果を車載システム410へ出力する。
 上述した通り、サンプリングログは、車両400の車載ネットワークにおける通信データの2種類のログのうち単位時間あたりに生じるデータ量が他方のログよりも小さいログである。フルログは、2種類のログのうち単位時間あたりに生じるデータ量がサンプリングログよりも大きいログである。
 また、例えば、フルログは、複数の種別の通信データのログであってもよい。そして、サンプリングログは、フルログに関する複数の種別よりも少ない1以上の種別の通信データのログであってもよい。
 また、サンプリングログは、複数のサンプリング間隔のうち、複数のサンプリング間隔にそれぞれ含まれる複数のサンプリング期間における通信データのログであってもよい。ここで、複数のサンプリング間隔のそれぞれは、第1時間長の期間である。また、複数のサンプリング期間のそれぞれは、第1時間長よりも短い第2時間長の期間である。
 出力器303は、上記のようなサンプリングログを生成する車載システム410に第2時間長よりも長い範囲で第1時間長を変更させる変更指示を車載システム410へ出力してもよい。例えば、出力器303は、通信データに異常が含まれると判定された場合、車載システム410に第2時間長よりも長い範囲で第1時間長を短くさせる変更指示を出力してもよい。また、出力器303は、通信データに異常が含まれないと判定された場合、車載システム410に第1時間長を長くさせる変更指示を出力してもよい。
 また、例えば、第1時間長は、通信データに関する複数の種別のそれぞれについて定められてもよい。そして、出力器303は、1つの種別について通信データに異常が含まれると判定された場合、車載システム410に第2時間長よりも長い範囲でその種別について第1時間長を短くさせる変更指示を出力してもよい。
 あるいは、出力器303は、1つの種別について通信データに異常が含まれると判定された場合、車載システム410に第2時間長よりも長い範囲で複数の種別のそれぞれについて第1時間長を短くさせる変更指示を出力してもよい。すなわち、出力器303は、この場合、車載システム410に第2時間長よりも長い範囲で全ての種別について第1時間長を短くさせる変更指示を出力してもよい。
 また、出力器303は、通信データに異常が含まれないと判定された場合、車載システム410に短くさせられた第1時間長を長くさせる変更指示を出力してもよい。
 さらに、出力器303は、上記のような変更指示を車両400と車種が同じ複数の車両の複数の車載システムへ出力してもよい。また、出力器303は、変更指示を車両400と地域が同じ複数の車両の複数の車載システムへ出力してもよい。
 また、サンプリングログは、複数のサンプリング期間における通信データを構成する各フレームについて、(i)当該フレームのサンプリング時刻、(ii)当該フレームが最初のフレームであるか否か、及び、(iii)当該フレームのデータを示していてもよい。ここで、当該フレームが最初のフレームであるか否かは、例えば、当該フレームとサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームであるか否かである。
 そして、判定器302は、当該フレームとサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームでない場合、サンプリング時刻の差及びデータの差の少なくとも一方を用いて、通信データに異常が含まれるか否かを判定してもよい。
 ここで、サンプリング時刻の差は、当該フレームとサンプリング期間が同じ1以上のフレームのうち当該フレームの前のフレームのサンプリング時刻と、当該フレームのサンプリング時刻との差である。データの差は、このような前のフレームのデータと、当該フレームのデータとの差である。ここで、前のフレームは、例えば、直前のフレームである。
 また、サンプリングログは、複数のサンプリング期間における1以上の種別の通信データを構成する複数のフレームのそれぞれについて、(i)当該フレームのサンプリング時刻、(ii)当該フレームが最初のフレームであるか否か、及び、(iii)当該フレームのデータを示していてもよい。ここで、当該フレームが最初のフレームであるか否かは、例えば、当該フレームと種別及びサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームであるか否かである。
 そして、判定器302は、当該フレームと種別及びサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームでない場合、サンプリング時刻の差及びデータの差の少なくとも一方を用いて、通信データに異常が含まれるか否かを判定してもよい。
 ここで、サンプリング時刻の差は、当該フレームと種別及びサンプリング期間が同じ1以上のフレームのうち当該フレームの前のフレームのサンプリング時刻と、当該フレームのサンプリング時刻との差である。データの差は、このような前のフレームのデータと、当該フレームのデータとの差である。
 また、取得器301は、送信指示の出力後、フルログを車載システム410から取得してもよい。そして、判定器302は、さらに、フルログを用いて通信データに異常が含まれるか否かを判定してもよい。
 また、出力器303は、サンプリングログを用いて通信データに異常が含まれると判定された場合、異常検知結果を車載システム410へ出力してもよい。そして、出力器303は、フルログを用いて通信データに異常が含まれると判定された場合、異常検知結果を車載システム410へ出力しなくてもよい。すなわち、出力器303は、フルログが取得されていない場合において、通信データに異常が含まれると判定された場合、異常検知結果を車載システム410へ出力してもよい。
 また、出力器303は、通信データに異常が含まれると判定された場合、異常検知結果を端末装置200へ出力してもよい。
 また、取得器301は、車載システム410において圧縮されたサンプリングログを車載システム410から取得し、圧縮されたサンプリングログを解凍してもよい。同様に、取得器301は、車載システム410において圧縮されたフルログを車載システム410から取得し、圧縮されたフルログを解凍してもよい。
 なお、取得器301、判定器302及び出力器303は、専用又は汎用の電気回路であってもよい。そして、端末装置200、サーバ装置300及び車載システム410は、電気回路で構成されていてもよい。具体的には、これらはそれぞれコンピュータであってもよい。また、取得器301は、サーバ装置300の外部の装置から外部ネットワークを介して情報を取得してもよいし、出力器303は、外部ネットワークを介してサーバ装置300の外部の装置へ情報を出力してもよい。
 また、例えば、単位時間あたりに生じるサンプリングログの平均データ量は、単位時間あたりに生じるフルログの平均データ量よりも小さい。単位時間は、1秒間であってもよいし、1分間であってもよいし、1時間であってもよいし、サンプリングログに関するサンプリング間隔であってもよい。
 [具体例]
 図9は、本実施の形態の具体例におけるセキュリティシステム100の構成を示すブロック図である。
 本具体例において、セキュリティシステム100は、端末装置200、サーバ装置300、ゲートウェイ装置430、セキュリティECU440、及び、複数のECU450を備える。図9に示されたセキュリティシステム100、端末装置200、サーバ装置300、ゲートウェイ装置430、及び、セキュリティECU440は、それぞれ、図1に示された構成要素に対応する。また、図9に示された複数のECU450は、図1に示された複数のECU451及び452に対応する。
 ゲートウェイ装置430、セキュリティECU440、及び、複数のECU450は、車載ネットワークに接続される。サーバ装置300は、端末装置200及び外部ネットワークに接続される。サーバ装置300は、外部ネットワークを介して端末装置200に接続されてもよい。外部ネットワークと車載ネットワークとは、ゲートウェイ装置430を介して互いに接続される。ゲートウェイ装置430は、車載ネットワークと外部ネットワークとの間において、通信の中継を行う。
 例えば、ゲートウェイ装置430は、外部ネットワークに無線で接続される。ゲートウェイ装置430は、図1に示されたテレマティクス通信ユニット422又はV2Xモジュール423等を介して外部ネットワークに接続されてもよい。また、外部ネットワークは、無線通信のネットワークであってもよいし、有線通信のネットワークであってもよい。
 セキュリティECU440、サーバ装置300及び端末装置200は、不正アクセスから、車両400及び車載ネットワーク等を保護する役割を有する。
 セキュリティECU440は、車載ネットワークにおける通信データを直接的に監視する。サーバ装置300は、車載ネットワークにおける通信データを間接的に監視することにより、遠隔監視を行う。端末装置200は、遠隔監視の結果等をサーバ装置300から取得する。端末装置200は、SOC又はASIRT等の監視組織において用いられる。
 図10は、図9に示されたセキュリティシステム100の変形構成を示すブロック図である。この変形構成では、図9のゲートウェイ装置430及びセキュリティECU440が統合されている。そして、セキュリティシステム100は、ゲートウェイ装置430及びセキュリティECU440が統合されたセキュリティゲートウェイ装置460を備える。
 なお、セキュリティゲートウェイ装置460は、ゲートウェイ装置430を含むセキュリティECU440であってもよいし、セキュリティECU440を含むゲートウェイ装置430であってもよい。
 図11は、図9に示されたセキュリティECU440の構成を示すブロック図である。セキュリティECU440は、サンプリングログ生成器443、フルログ生成器444、異常検知器445、異常データ無効化器446、蓄積器447及び通信器448を備える。これらの構成要素は、図7に示された取得器441、出力器442、異常検知器510、ログ生成器520及び送信器530等の役割を果たす。
 サンプリングログ生成器443は、通信器448を介して車載ネットワークにおける通信データを取得し、取得された通信データのサンプリングログを生成し、生成されたサンプリングログを蓄積器447に格納する。
 フルログ生成器444は、通信器448を介して車載ネットワークにおける通信データを取得し、取得された通信データのフルログを生成し、生成されたフルログを蓄積器447に格納する。
 異常検知器445は、通信器448を介して車載ネットワークにおける通信データを取得し、取得された通信データに異常が含まれるか否かを判定する。異常検知器445は、蓄積器447に格納されたフルログに異常が含まれるか否かを判定することにより、通信データに異常が含まれるか否かを判定してもよい。あるいは、異常検知器445は、蓄積器447に格納されたサンプリングログに異常が含まれるか否かを判定することにより、通信データに異常が含まれるか否かを簡易的に判定してもよい。
 異常データ無効化器446は、通信データに異常が含まれると判定された場合、異常な通信データを無効化する。具体的には、異常データ無効化器446は、通信器448を介して、CANのエラーフレームを車載ネットワークに出力することにより、異常な通信データを無効化してもよい。
 蓄積器447は、サンプリングログ生成器443で生成されたサンプリングログ、及び、フルログ生成器444で生成されたフルログを蓄積する。例えば、蓄積器447は、メモリで構成される。
 通信器448は、車載ネットワークから情報を取得し、車載ネットワークへ情報を出力することにより、複数のECU450及びゲートウェイ装置430等と通信する。さらに、通信器448は、ゲートウェイ装置430を介して、サーバ装置300等と通信してもよい。
 なお、図7に示された取得器441、出力器442及び送信器530は、通信器448に含まれていてもよい。図7に示された異常検知器510は、異常検知器445に含まれていてもよい。図7に示されたログ生成器520は、サンプリングログ生成器443、フルログ生成器444及び蓄積器447で構成されていてもよい。
 例えば、通信器448において、出力器442が、サンプリングログを周期的に送信するための送信指示を送信器530へ出力してもよい。そして、通信器448に含まれる取得器441が、通信データに異常が含まれるか否かの異常検知結果を異常検知器445から取得してもよい。そして、通信器448において、通信データに異常が含まれることを取得する異常検知結果が取得された場合、出力器442が、フルログを送信するための送信指示を送信器530へ出力してもよい。
 また、例えば、通信器448に含まれる出力器442が、ログ生成器520を構成するサンプリングログ生成器443へサンプリング間隔又は種別に関する指示を出力してもよい。
 図7に示された構成要素と、図11に示された構成要素との間における上記の関係は一例であって、これらの関係は上記の例に限られない。例えば、図7に示された取得器441及び出力器442は、異常検知器445に含まれていてもよい。そして、異常検知器445において、取得器441は、通信データに異常が含まれるか否かを判定する異常検知器510から、通信データに異常が含まれるか否かの異常検知結果を取得してもよい。
 図12は、図10に示されたセキュリティゲートウェイ装置460の構成を示すブロック図である。セキュリティゲートウェイ装置460は、サンプリングログ生成器463、フルログ生成器464、異常検知器465、異常データ無効化器466、蓄積器467、転送処理器469、車外通信器470及び車内通信器471を備える。これらの構成要素は、図7に示された取得器441、出力器442、異常検知器510、ログ生成器520及び送信器530等の役割を果たす。
 また、図12のサンプリングログ生成器463、フルログ生成器464、異常検知器465、異常データ無効化器466及び蓄積器467は、それぞれ、図11のサンプリングログ生成器443、フルログ生成器444、異常検知器445、異常データ無効化器446及び蓄積器447と同様の構成要素である。
 転送処理器469は、車両400の外部から車外通信器470を介して情報を取得し、車内通信器471を介して情報を出力することにより、車両400の外部から内部へ情報を転送する。また、転送処理器469は、車両400の内部から車内通信器471を介して情報を取得し、車両400の外部へ車外通信器470を介して情報を出力することにより、車両400の内部から外部へ情報を転送する。
 車外通信器470は、例えば外部ネットワークを介して、車両400の外部のサーバ装置300等と通信する。車内通信器471は、車載ネットワークを介して、車両400の内部の複数のECU450等と通信する。また、車外通信器470及び車内通信器471は、セキュリティECU440の通信器448と同様の役割を果たす。
 なお、以下において示されるセキュリティECU440の動作は、セキュリティゲートウェイ装置460によって行われてもよい。例えば、セキュリティECU440の通信器448によって行われる動作は、セキュリティゲートウェイ装置460の車外通信器470又は車内通信器471によって行われてもよい。
 また、一例として、図7に示された取得器441、出力器442及び送信器530は、車外通信器470に含まれていてもよい。図7に示された異常検知器510は、異常検知器465に含まれていてもよい。図7に示されたログ生成器520は、サンプリングログ生成器463、フルログ生成器464及び蓄積器467で構成されていてもよい。
 図13は、図9等に示されたサーバ装置300の構成を示すブロック図である。サーバ装置300は、サンプリングログ処理器343、フルログ処理器344、異常検知器345、異常通知器346、蓄積器347及び通信器348を備える。これらの構成要素は、図8に示された取得器301、判定器302及び出力器303等の役割を果たす。
 サンプリングログ処理器343は、通信器348を介してサンプリングログを取得し、取得されたサンプリングログを蓄積器347に格納する。
 フルログ処理器344は、通信器348を介してフルログを取得し、取得されたフルログを蓄積器347に格納する。
 異常検知器345は、蓄積器347に格納されたサンプリングログ又はフルログに異常が含まれるか否かを判定することにより、通信データに異常が含まれるか否かを判定する。
 異常通知器346は、通信データに異常が含まれると判定された場合、通信器348を介して異常通知を端末装置200及びセキュリティECU440へ送信する。
 蓄積器347は、サンプリングログ処理器343で取得されたサンプリングログ、及び、フルログ処理器344で取得されたフルログを蓄積する。例えば、蓄積器347は、メモリで構成される。
 通信器348は、例えば外部ネットワークを介して、セキュリティECU440等と通信する。また、通信器348は、端末装置200と通信する。
 なお、一例として、図8に示された取得器301及び出力器303は、通信器348に含まれていてもよい。図8に示された判定器302は、異常検知器345に含まれていてもよい。
 図14は、図9に示されたセキュリティシステム100におけるサンプリングログの送信に関連する動作を示すシーケンス図である。
 まず、セキュリティECU440の通信器448は、車載ネットワークから通信データを取得する(S101)。次に、セキュリティECU440のサンプリングログ生成器443は、車載ネットワークから取得された通信データに従って、蓄積器447にサンプリングログを記録する(S102)。また、セキュリティECU440のフルログ生成器444は、車載ネットワークから取得された通信データに従って、蓄積器447にフルログを記録する(S103)。
 また、セキュリティECU440の異常検知器445は、車載ネットワークから取得された通信データに従って、異常検知処理を行う(S104)。すなわち、セキュリティECU440の異常検知器445は、車載ネットワークから取得された通信データに異常が含まれるか否かを判定する。
 異常が検知されなかった場合において、すなわち、車載ネットワークから取得された通信データに異常が含まれないと判定された場合において、セキュリティECU440の通信器448は、サンプリングログを周期的に送信する(S105)。例えば、セキュリティECU440の通信器448は、蓄積器447に記録されたサンプリングログを圧縮して、圧縮されたサンプリングログをサーバ装置300へ送信する。
 サーバ装置300の通信器348は、セキュリティECU440からサンプリングログを取得する。そして、サーバ装置300のサンプリングログ処理器343は、セキュリティECU440から取得されたサンプリングログを蓄積器347に記録する。例えば、サーバ装置300のサンプリングログ処理器343は、圧縮されたサンプリングログを解凍し、解凍されたサンプリングログを蓄積器347に記録する。
 そして、サーバ装置300の異常検知器345は、蓄積器347に記録されたサンプリングログに従って、異常検知処理を行う(S106)。すなわち、サーバ装置300の異常検知器345は、サンプリングログに異常が含まれるか否かを判定することにより、車載ネットワークにおける通信データに異常が含まれるか否かを判定する。
 図15は、図9等に示されたサーバ装置300で行われる異常検知処理に関連する動作を示すシーケンス図である。
 サーバ装置300で行われる異常検知処理(S106)において異常が検知された場合、サーバ装置300の異常通知器346は、通信器348を介して異常通知を送信する。すなわち、サンプリングログに従って車載ネットワークにおける通信データに異常が含まれると判定された場合、サーバ装置300の異常通知器346は、通信器348を介して異常通知を送信する。
 例えば、サーバ装置300の異常通知器346は、通信器348を介して、端末装置200へ異常通知を送信する(S107)。そして、端末装置200は、サーバ装置300から異常通知を取得し、監視組織に異常を通知する。
 また、サーバ装置300の異常通知器346は、通信器348を介して、セキュリティECU440へ異常通知を送信する(S108)。そして、セキュリティECU440の通信器448は、異常通知を取得し、ドライバーへ異常を通知する(S109)。
 例えば、セキュリティECU440の通信器448は、ディスプレイ又はスピーカ等の通知インタフェースを有するECU450へ異常通知を出力することにより、通知インタフェースを介して、ドライバーへ異常を通知する。あるいは、セキュリティECU440が、通知インタフェースを有している場合、セキュリティECU440は、セキュリティECU440の通知インタフェースを介して、ドライバーへ異常を通知してもよい。
 また、セキュリティECU440の通信器448は、異常通知を取得した場合、フルログをサーバ装置300へ送信する(S110)。例えば、セキュリティECU440の通信器448は、蓄積器447に記録されたフルログを圧縮して、圧縮されたフルログをサーバ装置300へ送信する。
 そして、サーバ装置300の通信器348は、セキュリティECU440からフルログを取得する。そして、サーバ装置300のフルログ処理器344は、セキュリティECU440から取得されたフルログを蓄積器347に記録する。例えば、サーバ装置300のフルログ処理器344は、圧縮されたフルログを解凍し、解凍されたフルログを蓄積器347に記録する。
 そして、サーバ装置300の異常検知器345は、蓄積器347に記録されたフルログに従って、異常検知処理を行う(S111)。すなわち、サーバ装置300の異常検知器345は、フルログに異常が含まれるか否かを判定することにより、車載ネットワークにおける通信データに異常が含まれるか否かを判定する。
 そして、サーバ装置300の通信器348は、異常検知処理の結果を端末装置200へ送信する(S112)。サーバ装置300の異常通知器346が、通信器348を介して、異常検知処理の結果として異常通知を端末装置200へ送信してもよい。端末装置200は、サーバ装置300から異常検知処理の結果を取得し、監視組織に異常検知処理の結果を通知する。
 そして、端末装置200は、監視組織によって操作されることにより、異常に関する詳細分析を行う(S113)。また、端末装置200は、監視組織によって操作されることにより、証拠保全を行う(S114)。端末装置200は、詳細分析及び証拠保全のため、サーバ装置300からフルログをダウンロードしてもよい。
 図16は、図9等に示されたセキュリティECU440で行われる異常検知処理に関連する動作を示すシーケンス図である。
 セキュリティECU440で行われる異常検知処理(S104)において異常が検知された場合、セキュリティECU440の通信器448は、ドライバーへ異常を通知する(S131)。すなわち、車載ネットワークから取得された通信データに異常が含まれると判定された場合において、セキュリティECU440の通信器448は、ドライバーへ異常を通知する。
 例えば、セキュリティECU440の通信器448は、通知インタフェースを有するECU450へ異常通知を出力することにより、通知インタフェースを介して、ドライバーへ異常を通知する。あるいは、セキュリティECU440が、通知インタフェースを有している場合、セキュリティECU440は、セキュリティECU440の通知インタフェースを介して、ドライバーへ異常を通知してもよい。
 そして、セキュリティECU440の通信器448は、フルログを送信する(S132)。例えば、セキュリティECU440の通信器448は、蓄積器447に記録されたフルログを圧縮して、圧縮されたフルログをサーバ装置300へ送信する。
 そして、サーバ装置300の通信器348は、セキュリティECU440からフルログを取得する。そして、サーバ装置300のフルログ処理器344は、セキュリティECU440から取得されたフルログを蓄積器347に記録する。例えば、サーバ装置300のフルログ処理器344は、圧縮されたフルログを解凍し、解凍されたフルログを蓄積器347に記録する。
 そして、サーバ装置300の異常検知器345は、蓄積器347に記録されたフルログに従って、異常検知処理を行う(S133)。すなわち、サーバ装置300の異常検知器345は、フルログに異常が含まれるか否かを判定することにより、車載ネットワークにおける通信データに異常が含まれるか否かを判定する。
 そして、異常が検知された場合、すなわち、フルログに従って車載ネットワークにおける通信データに異常が含まれると判定された場合、サーバ装置300の異常通知器346は、通信器348を介して異常通知を送信する。例えば、サーバ装置300の異常通知器346は、通信器348を介して、端末装置200へ異常通知を送信する(S134)。そして、端末装置200は、サーバ装置300から異常通知を取得し、監視組織に異常を通知する。
 また、サーバ装置300の異常通知器346は、通信器348を介して、セキュリティECU440へ異常通知を送信する(S135)。そして、セキュリティECU440の通信器448は、異常通知を取得し、ドライバーへ異常を通知する(S136)。また、セキュリティECU440の通信器448は、異常通知を取得した場合、フルログをサーバ装置300へ送信する(S137)。
 そして、サーバ装置300の通信器348は、セキュリティECU440からフルログを取得する。そして、サーバ装置300のフルログ処理器344は、セキュリティECU440から取得されたフルログを蓄積器347に記録する。そして、サーバ装置300の異常検知器345は、蓄積器347に記録されたフルログに従って、異常検知処理を行う(S138)。
 そして、サーバ装置300の通信器348は、異常検知処理の結果を端末装置200へ送信する(S139)。サーバ装置300の異常通知器346が、通信器348を介して、異常検知処理の結果として異常通知を端末装置200へ送信してもよい。端末装置200は、サーバ装置300から異常検知処理の結果を取得し、監視組織に異常検知処理の結果を通知する。
 そして、端末装置200は、監視組織によって操作されることにより、異常に関する詳細分析を行う(S140)。また、端末装置200は、監視組織によって操作されることにより、証拠保全を行う(S141)。
 図16に示された端末装置200に対する異常通知の送信(S134)から証拠保全(S141)までの処理は、図15に示された端末装置200に対する異常通知の送信(S107)から証拠保全(S114)までの処理と同様である。また、処理の繰り返しを避けるため、セキュリティECU440に対する異常通知の送信(S135)から、端末装置200に対する異常検知処理結果の送信(S139)までの処理は、省略されてもよい。
 図17は、図9等に示されたセキュリティECU440の動作を示すフローチャートである。
 セキュリティECU440は、車載ネットワークにおける通信データのログを記録するためのログ記録処理を行う(S201)。また、セキュリティECU440は、通信データにおける異常を検知するための異常検知処理を行う(S202)。そして、セキュリティECU440は、通信ログをサーバ装置300へ送信するためのログ送信処理を行う(S203)。セキュリティECU440は、これらの処理(S201~S203)を繰り返す。
 図18は、図9等に示されたセキュリティECU440で行われるログ記録処理の第1態様を示すフローチャートである。
 まず、通信器448は、車載ネットワークにおける通信データを受信することにより通信データを取得する(S301)。具体的には、通信器448は、CANのフレームを通信データとして取得する。
 次に、フルログ生成器444は、取得された通信データをフルログとして蓄積器447に記録する(S302)。具体的には、フルログ生成器444は、取得されたフレームを図4のログフォーマットに従ってフルログとして蓄積器447に記録する。また、例えば、過去に取得されたフレームがフルログとして蓄積器447に記録されている場合、フルログ生成器444は、新たに取得されたフレームの情報を図4のログフォーマットにおけるペイロードに追加する。
 次に、サンプリングログ生成器443は、例えばサンプリングログ生成器443におけるサンプリングタイマを確認することにより、現在時刻がサンプリング期間内であるか否かを判定する(S303)。現在時刻がサンプリング期間内でない場合(S304でNo)、セキュリティECU440は、ログ記録処理を終了する。
 現在時刻がサンプリング期間内である場合(S304でYes)、サンプリングログ生成器443は、取得された通信データが特定の種別の通信データであるか否かを判定する。その際、具体的には、サンプリングログ生成器443は、取得されたフレームに含まれるIDが特定のIDであるか否かを判定することにより、取得されたフレームが特定の種別のフレームであるか否かを判定する。
 取得された通信データが特定の種別の通信データでないと判定された場合(S305でNo)、セキュリティECU440は、ログ記録処理を終了する。
 取得された通信データが特定の種別の通信データであると判定された場合(S305でYes)、サンプリングログ生成器443は、取得された通信データをサンプリングログとして蓄積器447に記録する(S306)。
 具体的には、サンプリングログ生成器443は、取得されたフレームを図4のログフォーマットに従ってサンプリングログとして蓄積器447に記録する。また、例えば、過去に取得されたフレームがサンプリングログとして蓄積器447に記録されている場合、サンプリングログ生成器443は、新たに取得されたフレームの情報を図4のログフォーマットにおけるペイロードに追加する。そして、セキュリティECU440は、ログ記録処理を終了する。
 なお、サンプリングログ生成器443及びフルログ生成器444は、基本的に、サンプリングログとフルログとを別々に蓄積器447に記録する。
 図19は、図9等に示されたセキュリティECU440で行われるログ記録処理の第2態様を示すフローチャートである。図19に示されたログ記録処理の第2態様において、通信データを取得してから通信データをサンプリングログとして記録するまでの処理(S301~S306)は、図18に示されたログ記録処理の第1態様と同じである。
 図19に示されたログ記録処理の第2態様において、サンプリングログ生成器443は、通信データをサンプリングログとして記録した後、サンプリング間隔の時間長を更新する(S307)。
 例えば、サンプリングログ生成器443は、最小値と最大値との間の範囲でランダムにサンプリング間隔の時間長を更新する。ここで、最小値及び最大値は、それぞれ、サンプリング期間の時間長よりも大きい値に予め定められる。あるいは、サンプリングログ生成器443は、最小値と最大値との間の範囲で線形的にサンプリング間隔の時間長を更新してもよい。
 具体的には、サンプリングログ生成器443は、サンプリング間隔の時間長を最小値から最大値まで徐々に大きくしてもよい。すなわち、サンプリングログ生成器443は、サンプリング間隔の時間長を最小値から最大値まで段階的に大きくしてもよい。そして、サンプリング間隔の時間長が最大値に到達した後、サンプリング間隔の時間長を最大値から最小値まで徐々に小さくしてもよい。すなわち、サンプリングログ生成器443は、サンプリング間隔の時間長を最小値から最大値まで段階的に小さくしてもよい。
 これにより、セキュリティECU440は、サンプリングログに関連するサンプリング間隔の時間長を様々に変更することができる。したがって、セキュリティECU440は、サンプリングログに、固定のサンプリング間隔では含まれない異常等を含ませることができる。また、セキュリティECU440は、サンプリング間隔を解析されにくくすることができる。したがって、セキュリティECU440は、不正なデータに基づく異常等がサンプリングログに含まれない現象を抑制することができる。
 なお、サンプリングログ生成器443は、サンプリング間隔の更新に加えて、又は、サンプリング間隔の更新に代えて、サンプリングログに関連する特定の種別を更新してもよい。
 また、上記のログ記録処理において、例えば、通信器448に含まれる出力器442から、サンプリングログ生成器443で構成されるログ生成器520へ、サンプリング間隔又は特定の種別に関する指示が出力される。そして、サンプリング間隔又は特定の種別に関する指示に従って、サンプリング間隔又は特定の種別が更新される。
 図20は、図9等に示されたセキュリティECU440で行われる異常検知処理を示すフローチャートである。
 異常検知処理において、異常検知器445は、通信器448で取得された通信データと異常パターンとのマッチング処理を行う(S401)。すなわち、異常検知器445は、通信器448で取得された通信データが予め定められた異常パターンにマッチするか否かを判定する。ここで、通信器448で取得された通信データは、より具体的には、通信器448で通信データとして取得された1以上のデータフレームである。
 そして、異常検知器445は、通信器448で取得された通信データが予め定められた異常パターンにマッチすると判定した場合(S402でYes)、異常を検知する(S403)。言い換えれば、異常検知器445は、この場合、通信データに異常が含まれると判定する。さらに言い換えれば、異常検知器445は、通信器448で取得された通信データが予め定められた異常パターンにマッチすることを通信データにおける異常として検知する。
 また、通信器448は、サーバ装置300から異常通知を受信するための異常通知受信処理を行う(S404)。具体的には、サーバ装置300から異常通知が送信された場合、通信器448は、サーバ装置300から送信された異常通知を受信する。
 そして、異常検知器445は、通信器448がサーバ装置300から異常通知を受信した場合(S405でYes)、異常を検知する(S406)。言い換えれば、異常検知器445は、この場合、通信データに異常が含まれると判定する。さらに言い換えれば、異常検知器445は、通信器448がサーバ装置300から異常通知を受信したことを通信データにおける異常として検知する。
 また、通信器448で取得された通信データが予め定められた異常パターンにマッチしないと判定され、通信器448がサーバ装置300から異常通知を受信しなかった場合、異常検知器445は異常を検知しない。すなわち、この場合、異常検知器445は、通信データに異常が含まれないと判定する。
 なお、上記の異常検知処理において、通信データと異常パターンとのマッチング処理が行われているが、通信データと正常パターンとのマッチング処理が行われてもよい。この場合、通信データが予め定められた正常パターンにマッチしないと判定された場合、異常検知器445は異常を検知する。
 また、CANにおいて、同種のデータフレームは一定の周期で流れることが想定される。したがって、同種のデータフレームが一定の周期で流れていない場合、異常検知器445は異常を検知してもよい。具体的には、異常検知器445は、データフレームが取得された時間間隔を用いて、データフレームが一定の周期で流れているか否かを判定し、その判定結果に従って異常を検知してもよい。また、異常パターン又は正常パターンに、CANを流れる同種のデータフレームの周期が含まれていてもよい。
 また、一定の周期で流れる同種の複数のデータフレームはデータ内容において連続性を有することが想定される。例えば、異常検知器445は、同種の複数のデータフレームにおいて、前のデータフレームのデータ値から乖離の大きいデータ値を有するデータフレームを異常として検知してもよい。また、異常パターン又は正常パターンに、乖離の大きさが含まれていてもよい。乖離の大きさは、データ値の差とも表現され得る。
 また、異常通知受信処理(S404)のタイミングは、図20の例に限られない。通信器448は、サーバ装置300から異常通知が送信されたタイミングで、サーバ装置300から送信された異常通知を受信する。
 また、セキュリティECU440は、セキュリティECU440における独自の異常検知(S401~S403)と、サーバ装置300に基づく異常検知(S404~S406)とのうち、一方のみを行ってもよい。
 セキュリティECU440が独自の異常検知(S401~S403)を行う構成は、図7に示された異常検知器510がセキュリティECU440に含まれる構成に対応する。セキュリティECU440がサーバ装置300に基づく異常検知(S404~S406)を行う構成は、図7に示された異常検知器510がサーバ装置300に含まれる構成に対応する。
 そして、独自の異常検知(S401~S403)と、サーバ装置300に基づく異常検知(S404~S406)との両方が行われる構成は、異常検知器510がセキュリティECU440及びサーバ装置300のそれぞれに含まれる構成に対応する。
 図21は、図9等に示されたセキュリティECU440で行われるログ送信処理の第1態様を示すフローチャートである。
 本態様において、異常検知器445は、通信データの異常が検知されたか否かを判定する(S501)。そして、通信データの異常が検知されたと判定された場合、すなわち、通信データに異常が含まれると判定された場合、通信器448は、ドライバーへ異常を通知する(S502)。例えば、通信器448は、通知インタフェースを有するECU450へ異常通知を出力することにより、通知インタフェースを介して、ドライバーへ異常を通知する。
 そして、通信器448は、蓄積器447に記録されたフルログを圧縮する(S503)。例えば、通信器448は、7-Zip等の圧縮方法を用いてフルログを可逆的に圧縮する。そして、通信器448は、圧縮されたフルログをサーバ装置300へ送信する(S504)。通信器448は、フルログの送信後、蓄積器447に記録されたフルログを蓄積器447から削除してもよい。
 一方、通信データの異常が検知されなかったと判定された場合、すなわち、通信データに異常が含まれないと判定された場合、通信器448は、定期送信タイマを確認することにより、現在時刻が定期送信のタイミングであるか否かを判定する(S511)。現在時刻が定期送信のタイミングでないと判定された場合(S512でNo)、セキュリティECU440は、ログ送信処理を終了する。
 現在時刻が定期送信のタイミングであると判定された場合(S512でYes)、通信器448は、蓄積器447に記録されたサンプリングログを圧縮する(S513)。例えば、通信器448は、7-Zip等の圧縮方法を用いてサンプリングログを可逆的に圧縮する。そして、通信器448は、圧縮されたサンプリングログをサーバ装置300へ送信する(S514)。通信器448は、サンプリングログの送信後、蓄積器447に記録されたサンプリングログを蓄積器447から削除してもよい。
 上記のログ送信処理により、セキュリティECU440からサーバ装置300へ、データ量が比較的小さいサンプリングログが周期的に送信され、データ量が比較的大きいフルログが異常時に送信される。
 なお、定期送信のタイミングは、例えば、1分間に1回である。そして、通信器448は、前にサンプリングログを送信してから1分以上経過している場合、現在時刻が定期送信のタイミングであると判定してもよい。これにより、通信器448は、周期的にサンプリングログを送信する。基本的に、サンプリングログが送信される周期は、サンプリングログの記録に関するサンプリング間隔よりも長い。
 また、例えば、サーバ装置300へ送信されるフルログは、過去の所定期間におけるフルログである。所定期間は、例えば、1時間である。蓄積器447には、所定期間分のフルログが記録されてもよい。そのため、フルログの記録には、所定期間分のフルログを記録するためのリングバッファが用いられてもよい。同様に、サンプリングログの記録にも、送信周期分のサンプリングログを記録するためのリングバッファが用いられてもよい。
 また、上記のログ送信処理では、異常が検知された場合、フルログが送信され、サンプリングログが送信されない。しかしながら、サンプリングログは、異常が検知されたか否かにかかわらず、周期的に送信されてもよい。
 また、上記のログ送信処理において、例えば、通信器448に含まれる取得器441は、異常検知器445から異常検知結果を取得する。そして、通信器448において、出力器442から送信器530へ、異常検知結果に従ってサンプリングログ又はフルログの送信の指示が出力される。そして、送信の指示に従って、サンプリングログ又はフルログが送信される。
 図22は、図9等に示されたセキュリティECU440で行われるログ送信処理の第2態様を示すフローチャートである。図22に示されたログ送信処理の第2態様において、フルログ及びサンプリングログを送信するまでの処理(S501~S504及びS511~S514)は、図21に示されたログ送信処理の第1態様と同じである。
 本態様では、フルログが送信された後、サンプリングログ生成器443は、サンプリング間隔を短く更新する(S505)。すなわち、異常が検知された場合、サンプリングログ生成器443は、サンプリング間隔の時間長を小さくする。また、サンプリングログが送信された後、サンプリングログ生成器443は、サンプリング間隔を長く更新する(S515)。すなわち、異常が検知されなかった場合、サンプリングログ生成器443は、サンプリング間隔の時間長を大きくする。
 上記の更新において、サンプリングログ生成器443は、最小値と最大値との間の範囲でサンプリング間隔の時間長を更新する。サンプリングログ生成器443は、1回の更新で、予め定められた固定長分、サンプリング間隔の時間長を小さく又は大きくしてもよい。サンプリングログ生成器443は、1回の更新で、ランダムな長さ分、サンプリング間隔の時間長を小さく又は大きくしてもよい。
 上記のような更新により、セキュリティECU440は、異常時以降において、サンプリングログのデータ量を増加させることができる。そして、セキュリティECU440は、サンプリングログに、長いサンプリング間隔では含まれない異常等を含ませることができる。また、セキュリティECU440は、異常がない場合、サンプリングログのデータ量を減少させることができる。
 なお、本態様では、異常が検知された通信データの種別にかかわらず、全ての種別について、サンプリング間隔を更新する。すなわち、異常が検知されたフレームのIDにかかわらず、全てのIDについて、サンプリング間隔を更新する。
 また、上記の更新において、例えば、通信器448に含まれる出力器442から、ログ生成器520を構成するサンプリングログ生成器443へ、サンプリング間隔に関する指示が出力される。そして、サンプリング間隔に関する指示に従って、サンプリング間隔が更新される。
 図23は、図9等に示されたセキュリティECU440で行われるログ送信処理の第3態様を示すフローチャートである。図23に示されたログ送信処理の第3態様において、フルログ及びサンプリングログを送信するまでの処理(S501~S504及びS511~S514)は、図21及び図22に示されたログ送信処理の第1態様及び第2態様と同じである。
 本態様では、フルログが送信された後、サンプリングログ生成器443は、異常が検知された通信データの種別について、サンプリング間隔を短く更新する(S506)。そして、サンプリングログ生成器443は、他の種別について、サンプリング間隔を維持する。すなわち、1つの種別の通信データにおいて異常が検知された場合、サンプリングログ生成器443は、その1つの種別について、サンプリング間隔の時間長を小さくする。
 また、サンプリングログが送信された後、サンプリングログ生成器443は、短く更新されていたサンプリング間隔を長く更新する(S516)。すなわち、異常が検知されなかった場合、サンプリングログ生成器443は、サンプリング間隔の時間長を元の時間長に戻す。あるいは、この場合、サンプリングログ生成器443は、サンプリング間隔の時間長を元の時間長に近づける。
 図22に示されたログ送信処理の第2態様と同様に、サンプリングログ生成器443は、最小値と最大値との間の範囲でサンプリング間隔の時間長を更新する。サンプリングログ生成器443は、1回の更新で、予め定められた固定長分、サンプリング間隔の時間長を小さく又は大きくしてもよい。サンプリングログ生成器443は、1回の更新で、ランダムな長さ分、サンプリング間隔の時間長を小さく又は大きくしてもよい。
 上記のような更新により、セキュリティECU440は、異常時以降において、サンプリングログのデータ量を種別毎に増加させることができる。また、セキュリティECU440は、異常がない場合、増加したデータ量を減少させることができる。
 図24は、図9等に示されたサーバ装置300の動作の第1態様を示すフローチャートである。
 まず、通信器348は、セキュリティECU440からサンプリングログ又はフルログを受信する(S601)。サンプリングログが受信された場合(S602でYes)、サンプリングログ処理器343は、サンプリングログを蓄積器347に記録する。例えば、サンプリングログ処理器343は、圧縮されたサンプリングログを解凍し、解凍されたサンプリングログを蓄積器347に記録する。
 そして、異常検知器345は、サンプリングログに従って異常検知処理を行う(S603)。例えば、異常検知器345は、セキュリティECU440の異常検知器445が行うマッチング処理(S401)と同じように、通信データと異常パターンとのマッチング処理を行う。ただし、異常検知器345は、サンプリングログによって示される通信データをマッチング処理に用いる。
 すなわち、異常検知器345は、サンプリングログによって示される通信データが予め定められた異常パターンにマッチするか否かを判定する。より具体的には、異常検知器345は、サンプリングログによって示されるデータフレームが予め定められた異常パターンにマッチするか否かを判定する。
 そして、異常検知器345は、サンプリングログによって示される通信データが予め定められた異常パターンにマッチすると判定した場合、異常を検知する。言い換えれば、異常検知器345は、この場合、通信データに異常が含まれると判定する。さらに言い換えれば、異常検知器345は、サンプリングログによって示される通信データが予め定められた異常パターンにマッチすることを通信データにおける異常として検知する。
 ログの受信(S601)において、サンプリングログが受信されなかった場合(S602でNo)、すなわち、フルログが受信された場合、フルログ処理器344は、フルログを蓄積器347に記録する。例えば、フルログ処理器344は、圧縮されたフルログを解凍し、解凍されたフルログを蓄積器347に記録する。
 そして、異常検知器345は、フルログに従って異常検知処理を行う(S604)。例えば、異常検知器345は、セキュリティECU440の異常検知器445が行うマッチング処理(S401)と同じように、通信データと異常パターンとのマッチング処理を行う。ただし、異常検知器345は、フルログによって示される通信データをマッチング処理に用いる。
 すなわち、異常検知器345は、フルログによって示される通信データが予め定められた異常パターンにマッチするか否かを判定する。より具体的には、異常検知器345は、フルログによって示されるフレームが予め定められた異常パターンにマッチするか否かを判定する。
 そして、異常検知器345は、フルログによって示される通信データが予め定められた異常パターンにマッチすると判定した場合、異常を検知する。言い換えれば、異常検知器345は、この場合、通信データに異常が含まれると判定する。さらに言い換えれば、異常検知器345は、フルログによって示される通信データが予め定められた異常パターンにマッチすることを通信データにおける異常として検知する。
 次に、異常検知器345は、通信データの異常が検知されたか否かを判定する(S605)。そして、通信データの異常が検知されたと判定された場合、すなわち、通信データに異常が含まれると判定された場合(S605でYes)、通信器348は、端末装置200へ異常通知を送信する(S606)。ログの受信(S601)において、フルログが受信されていた場合(S607でYes)、サーバ装置300は、一連の処理を終了する。
 ログの受信(S601)において、フルログが受信されていなかった場合(S607でNo)、すなわち、サンプリングログが受信されていた場合、通信器348は、セキュリティECU440へ異常通知を送信する(S608)。通信器348は、セキュリティECU440へ異常通知を送信することにより、セキュリティECU440にフルログをサーバ装置300へ送信させる。そして、サーバ装置300は、一連の処理を終了する。
 なお、サンプリングログの異常検知処理(S603)と、フルログの異常検知処理(S604)とは、図24において別々に記載されているが、これらは共通の処理であってもよい。すなわち、異常検知器345は、サンプリングログかフルログかによらず、共通の異常検知処理を行ってもよい。
 また、上記の異常検知処理(S603及びS604)において、通信データと異常パターンとのマッチング処理が行われているが、通信データと正常パターンとのマッチング処理が行われてもよい。この場合、通信データが予め定められた正常パターンにマッチしないと判定された場合、異常検知器345は異常を検知する。
 また、セキュリティECU440において行われるマッチング処理(S401)よりも複雑なマッチング処理が上記の異常検知処理(S603及びS604)において行われてもよい。サーバ装置300は、車載のための要件に制約されない十分な処理能力を用いて、マッチング処理を行い得る。例えば、セキュリティECU440において行われるマッチング処理(S401)よりも多くの異常パターンが上記の異常検知処理(S603及びS604)において用いられてもよい。
 また、CANにおいて、同種のデータフレームは一定の周期で流れることが想定される。したがって、同種のデータフレームが一定の周期で流れていない場合、異常検知器345は異常を検知してもよい。具体的には、異常検知器345は、データフレームが取得された時間間隔を用いて、データフレームが一定の周期で流れているか否かを判定し、その判定結果に従って異常を検知してもよい。また、異常パターン又は正常パターンに、CANを流れる同種のデータフレームの周期が含まれていてもよい。
 ただし、データフレームが一定の周期で流れているか否かの判定は、前のデータフレームが欠落していない場合において有効であり、前のデータフレームが欠落している場合において有効でない。
 したがって、サンプリングログに含まれるデータフレームがサンプリング期間の最初のデータフレームである場合、異常検知器345は、データフレームが一定の周期で流れているか否かの判定を異常の検知に用いない。一方、サンプリングログに含まれるデータフレームがサンプリング期間の最初のデータフレームでない場合、異常検知器345は、データフレームが一定の周期で流れているか否かの判定を異常の検知に用いる。
 具体的には、サンプリングログに含まれるデータフレームがサンプリング期間の最初のデータフレームでない場合、異常検知器345は、データフレームのサンプリング時刻と、その前のデータフレームのサンプリング時刻との差を異常の検知に用いる。サンプリング時刻の差が一定の周期間隔に該当する場合、異常検知器345は、データフレームを正常と判定する。一方、サンプリング時刻の差が一定の周期間隔に該当しない場合、異常検知器345は、データフレームを異常と判定する。
 また、種別も周期に関連するため、同種のデータフレームに関するサンプリング時刻の差が異常の検知に用いられてもよい。つまり、同じサンプリング期間及び同じ種別において、データフレームのサンプリング時刻と、その前のデータフレームのサンプリング時刻との差が異常の検知に用いられてもよい。
 サンプリングログに含まれるデータフレームが最初のデータフレームに該当するか否かは、図4に示されたログフォーマットのフラグによって識別され得る。また、フルログではデータフレームが欠落しないため、フルログに対して、サンプリング時刻の差が異常の検知に用いられてもよい。
 また、一定の周期で流れる同種のデータフレームはデータ内容において連続性を有することが想定される。したがって、データフレームと、その前のデータフレームとの間におけるデータ値の差が、サンプリング時刻の差と同様に、異常の検知に用いられてもよい。この場合も、サンプリング時刻の差と同様に、最初のデータフレームとは異なるデータフレームに対して、異常の検知にデータ値の差が用いられてもよい。
 図25は、図9等に示されたサーバ装置300の動作の第2態様を示すフローチャートである。図25に示された第2態様において、ログを受信してから異常通知を送信するまでの処理(S601~S608)は、図24に示された第1態様と同じである。
 本態様において、サーバ装置300は、その後、サンプリング間隔更新処理を行う(S609)。例えば、通信器348は、セキュリティECU440にサンプリング間隔の時間長を変更させる変更指示をセキュリティECU440へ送信する。そして、セキュリティECU440は、サンプリング間隔の時間長を変更する。図26及び図27は、上記のサンプリング間隔更新処理に関するより具体的な態様を示す。
 図26は、図9等に示されたサーバ装置300及びセキュリティECU440で行われるサンプリング間隔更新処理の第1態様を示すフローチャートである。
 本態様では、まず、サーバ装置300において、通信器348が、ログの受信(S601)において受信されたログの送信元である車両400の車種を特定する(S701)。通信器348は、ログに含まれる車両IDに従って、車両400の車種を特定してもよい。あるいは、通信器348は、新たにセキュリティECU440等と通信することにより、車両400の車種を特定してもよい。
 次に、通信器348は、特定された車種について、現在のサンプリング間隔を取得する(S702)。現在のサンプリング間隔は、車種毎に、蓄積器347に記録されていてもよい。そして、通信器348は、蓄積器347から現在のサンプリング間隔を取得してもよい。あるいは、通信器348は、新たにセキュリティECU440等と通信することにより、現在のサンプリング間隔を取得してもよい。
 そして、異常検知処理(S603又はS604)において異常が検知された場合(S703でYes)、通信器348は、サンプリング間隔を短く更新する(S704)。すなわち、通信器348は、現在のサンプリング間隔よりも短いサンプリング間隔を定める。
 一方、異常検知処理(S603又はS604)において異常が検知されなかった場合(S703でNo)、通信器348は、サンプリング間隔を長く更新する(S705)。すなわち、通信器348は、現在のサンプリング間隔よりも長いサンプリング間隔を定める。
 そして、通信器348は、特定された車種と車種が同じである複数の車両の複数のセキュリティECUへ、更新されたサンプリング間隔、つまり新たに定められたサンプリング間隔を送信する(S706)。
 サンプリング間隔が送信された複数のセキュリティECUに含まれるセキュリティECU440において、通信器448は、サーバ装置300から送信されたサンプリング間隔を受信する(S801)。そして、サンプリングログ生成器443は、受信されたサンプリング間隔に現在のサンプリング間隔を更新する(S802)。すなわち、通信器448は、サーバ装置300からサンプリング間隔の変更指示を外部指示として受信し、サンプリングログ生成器443は、外部指示に従ってサンプリング間隔を更新する。
 これにより、サーバ装置300は、異常時以降において、サンプリングログのデータ量を増加させることができる。そして、サーバ装置300は、サンプリングログに、長いサンプリング間隔では含まれない異常等を含ませることができる。また、サーバ装置300は、異常がない場合、サンプリングログのデータ量を減少させることができる。また、サーバ装置300は、同一車種の複数の車載システムについて、サンプリングログに関連するサンプリング間隔の時間長を変更することができる。
 なお、通信器348は、種別毎にサンプリング間隔を更新してもよい。例えば、1つの種別について異常が検知された場合、通信器348は、その1つの種別についてサンプリング間隔を短くしてもよい。そして、異常が検知されなかった場合、通信器348は、短くされたサンプリング間隔を長くしてもよい。そして、このような更新を同一車種に対して行ってもよい。これにより、車種毎及び種別毎に適切にデータ量が調整される。
 あるいは、1つの種別について異常が検知された場合、通信器348は、種別によらず、全ての種別についてサンプリング間隔を短くしてもよい。そして、異常が検知されなかった場合、通信器348は、種別によらず、全ての種別についてサンプリング間隔を長くしてもよい。これにより、種別によらず、車種毎に適切にデータ量が調整される。
 図27は、図9等に示されたサーバ装置300及びセキュリティECU440で行われるサンプリング間隔更新処理の第2態様を示すフローチャートである。
 本態様では、まず、サーバ装置300において、通信器348が、ログの受信(S601)において受信されたログの送信元である車両400の地域を特定する(S711)。通信器348は、ログに含まれる車両IDに従って、車両400の地域を特定してもよい。あるいは、通信器348は、新たにセキュリティECU440等と通信することにより、車両400の地域を特定してもよい。
 なお、基本的に国のような大きな範囲が地域として想定されている。このような地域は車両400に対して予め定められ得る。しかしながら、現在走行している車両400のより具体的な地域が用いられてもよい。このような地域は、GPS(Global Positioning System)等により特定され得る。
 次に、通信器348は、特定された地域について、現在のサンプリング間隔を取得する(S712)。現在のサンプリング間隔は、地域毎に、蓄積器347に記録されていてもよい。そして、通信器348は、蓄積器347から現在のサンプリング間隔を取得してもよい。あるいは、通信器348は、新たにセキュリティECU440等と通信することにより、現在のサンプリング間隔を取得してもよい。
 そして、異常検知処理(S603又はS604)において異常が検知された場合(S713でYes)、通信器348は、サンプリング間隔を短く更新する(S714)。すなわち、通信器348は、現在のサンプリング間隔よりも短いサンプリング間隔を定める。
 一方、異常検知処理(S603又はS604)において異常が検知されなかった場合(S713でNo)、通信器348は、サンプリング間隔を長く更新する(S715)。すなわち、通信器348は、現在のサンプリング間隔よりも長いサンプリング間隔を定める。
 そして、通信器348は、特定された地域と地域が同じである複数の車両の複数のセキュリティECUへ、更新されたサンプリング間隔、つまり新たに定められたサンプリング間隔を送信する(S716)。
 サンプリング間隔更新処理の第1態様と同様に、サンプリング間隔が送信された複数のセキュリティECUに含まれるセキュリティECU440において、通信器448は、サーバ装置300から送信されたサンプリング間隔を受信する(S801)。そして、サンプリングログ生成器443は、受信されたサンプリング間隔に現在のサンプリング間隔を更新する(S802)。すなわち、セキュリティECU440は、サンプリング間隔の変更指示を外部指示として受信し、外部指示に従ってサンプリング間隔を更新する。
 これにより、サーバ装置300は、同一地域の複数の車載システムについて、サンプリングログに関連するサンプリング間隔の時間長を変更することができる。
 また、サンプリング間隔更新処理の第1態様と同様に、通信器348は、種別毎にサンプリング間隔を更新してもよい。これにより、地域毎及び種別毎に適切にデータ量が調整される。あるいは、通信器348は、種別によらず、サンプリング間隔を更新してもよい。これにより、種別によらず、地域毎に適切にデータ量が調整される。
 [補足]
 上記の実施の形態では、車載ネットワークとしてCANプロトコルを用いていたが、これに限るものではない。例えば、CAN-FD(CAN with Flexible Data Rate)、FlexRay、Ethernet、LIN(Local Interconnect Network)、MOST(Media Oriented Systems Transport)などを用いてもよい。あるいはこれらのネットワークをサブネットワークとして、CANと組み合わせたネットワークであってもよい。
 なお、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPU又はプロセッサなどのプログラム実行器が、ハードディスク又は半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記実施の形態の情報処理装置などを実現するソフトウェアは、次のようなプログラムである。
 すなわち、このプログラムは、情報処理装置であるコンピュータに、車両に搭載される情報処理装置が行う情報処理方法であって、前記車両の車載ネットワークにおける通信データに異常が含まれるか否かの異常検知結果を異常検知器から取得する取得ステップと、前記通信データの2種類のログのうち単位時間あたりに生じるデータ量が他方のログよりも小さいログであるサンプリングログを前記車両に搭載された送信器から前記車両の外部に設けられたサーバ装置へ周期的に送信させるサンプリングログ送信指示を出力する出力ステップとを含み、前記出力ステップでは、さらに、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得ステップで取得した場合、前記2種類のログのうち単位時間あたりに生じるデータ量が前記サンプリングログよりも大きいログであるフルログを前記送信器から前記サーバ装置へ送信させるフルログ送信指示を出力する情報処理方法を実行させる。
 また、このプログラムは、CD-ROM等の非一時的な記録媒体に記録されてもよい。また、情報処理装置は、集積回路で実装されてもよい。
 また、上記実施の形態において、各構成要素は、回路でもよい。複数の構成要素が、全体として1つの回路を構成してもよいし、それぞれ別々の回路を構成してもよい。また、回路は、それぞれ、汎用的な回路でもよいし、専用の回路でもよい。
 また、上記実施の形態において、送信元から送信先へ情報を送信するための送信方法は、送信される情報に送信元及び送信先の情報が含まれない送信方法であってもよく、結果として送信元から送信先へ情報が送信されるような送信方法であればよい。具体的には、ブロードキャストのような送信方法が用いられてもよい。出力元から出力先へ情報を出力するための出力方法も同様である。また、取得先から情報を取得する取得するための取得方法も、結果として取得先から情報が取得されるような取得方法であればよい。
 以上、一つまたは複数の態様に係る情報処理装置について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、及び異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
 例えば、上記実施の形態において、特定の構成要素が実行する処理を特定の構成要素の代わりに別の構成要素が実行してもよい。また、複数の処理の順序が変更されてもよいし、複数の処理が並行して実行されてもよい。
 本開示は、車両に関するデータを監視するためのセキュリティシステム等に利用可能である。
  100 セキュリティシステム
  200 端末装置
  300 サーバ装置
  301,441 取得器
  302 判定器
  303,442 出力器
  343 サンプリングログ処理器
  344 フルログ処理器
  345,445,465,510 異常検知器
  346 異常通知器
  347,447,467 蓄積器
  348,448 通信器
  400 車両
  410 車載システム
  421 ヘッドアップディスプレイ
  422 テレマティクス通信ユニット
  423 V2Xモジュール
  424 OBDモジュール
  430 ゲートウェイ装置
  440 セキュリティECU
  443,463 サンプリングログ生成器
  444,464 フルログ生成器
  446,466 異常データ無効化器
  450,451,452 ECU
  460 セキュリティゲートウェイ装置
  469 転送処理器
  470 車外通信器
  471 車内通信器
  520 ログ生成器
  530 送信器

Claims (22)

  1.  車両に搭載される情報処理装置であって、
     前記車両の車載ネットワークにおける通信データに異常が含まれるか否かの異常検知結果を異常検知器から取得する取得器と、
     前記通信データの2種類のログのうち単位時間あたりに生じるデータ量が他方のログよりも小さいログであるサンプリングログを前記車両に搭載された送信器から前記車両の外部に設けられたサーバ装置へ周期的に送信させるサンプリングログ送信指示を出力する出力器とを備え、
     前記出力器は、さらに、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記2種類のログのうち単位時間あたりに生じるデータ量が前記サンプリングログよりも大きいログであるフルログを前記送信器から前記サーバ装置へ送信させるフルログ送信指示を出力する
     情報処理装置。
  2.  前記取得器は、前記サーバ装置に含まれる前記異常検知器から前記異常検知結果を取得する
     請求項1に記載の情報処理装置。
  3.  前記情報処理装置は、さらに、前記異常検知器を備え、
     前記異常検知器は、前記車載ネットワークから前記通信データを取得し、前記通信データに異常が含まれるか否かを判定する
     請求項1に記載の情報処理装置。
  4.  前記サンプリングログは、それぞれが第1時間長の期間である複数のサンプリング間隔のうち、前記複数のサンプリング間隔にそれぞれ含まれる複数の期間でありそれぞれが前記第1時間長よりも短い第2時間長の期間である複数のサンプリング期間における前記通信データのログである
     請求項1~3のいずれか1項に記載の情報処理装置。
  5.  前記サンプリングログは、前記複数のサンプリング期間における前記通信データを構成する複数のフレームのそれぞれについて、(i)当該フレームのサンプリング時刻、(ii)当該フレームとサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームであるか否か、及び、(iii)当該フレームのデータを示す
     請求項4に記載の情報処理装置。
  6.  前記フルログは、複数の種別の前記通信データのログであり、
     前記サンプリングログは、前記複数の種別よりも少ない1以上の種別の前記通信データのログであり、前記複数のサンプリング期間における前記1以上の種別の前記通信データを構成する複数のフレームのそれぞれについて、(i)当該フレームのサンプリング時刻、(ii)当該フレームと種別及びサンプリング期間が同じ1以上のフレームにおいて当該フレームが最初のフレームであるか否か、及び、(iii)当該フレームのデータを示す
     請求項4に記載の情報処理装置。
  7.  前記フルログは、複数の種別の前記通信データのログであり、
     前記サンプリングログは、前記複数の種別よりも少ない1以上の種別の前記通信データのログである
     請求項1~4のいずれか1項に記載の情報処理装置。
  8.  前記情報処理装置は、さらに、前記送信器を備え、
     前記送信器は、前記出力器から出力された前記サンプリングログ送信指示に従って前記サンプリングログを前記サーバ装置へ送信し、前記出力器から出力された前記フルログ送信指示に従って前記フルログを前記サーバ装置へ送信する
     請求項1~7のいずれか1項に記載の情報処理装置。
  9.  前記送信器は、
     前記出力器から出力された前記サンプリングログ送信指示に従って、前記サンプリングログを可逆的に圧縮し、圧縮された前記サンプリングログを前記サーバ装置へ送信し、
     前記出力器から出力された前記フルログ送信指示に従って、前記フルログを可逆的に圧縮し、圧縮された前記フルログを前記サーバ装置へ送信する
     請求項8に記載の情報処理装置。
  10.  前記フルログ及び前記サンプリングログは、前記車両に搭載されたログ生成器によって生成され、
     前記出力器は、
     前記ログ生成器で生成された前記サンプリングログを前記送信器から前記サーバ装置へ周期的に送信させる前記サンプリングログ送信指示を出力し、
     前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記ログ生成器で生成された前記フルログを前記送信器から前記サーバ装置へ送信させる前記フルログ送信指示を出力する
     請求項1~9のいずれか1項に記載の情報処理装置。
  11.  前記サンプリングログは、それぞれが第1時間長の期間である複数のサンプリング間隔のうち、前記複数のサンプリング間隔にそれぞれ含まれる複数の期間でありそれぞれが前記第1時間長よりも短い第2時間長の期間である複数のサンプリング期間における前記通信データのログであり、
     前記出力器は、さらに、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長を変更させる変更指示を出力する
     請求項10に記載の情報処理装置。
  12.  前記出力器は、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長を短くさせる前記変更指示を出力する
     請求項11に記載の情報処理装置。
  13.  前記出力器は、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得しなかった場合、前記ログ生成器に前記第1時間長を長くさせる前記変更指示を出力する
     請求項11又は12に記載の情報処理装置。
  14.  前記第1時間長は、前記通信データに関する複数の種別のそれぞれについて定められ、
     前記出力器は、前記複数の種別のうちの1つの種別について前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記ログ生成器に前記第2時間長よりも長い範囲で前記1つの種別について前記第1時間長を短くさせる前記変更指示を出力する
     請求項11に記載の情報処理装置。
  15.  前記第1時間長は、前記通信データに関する複数の種別のそれぞれについて定められ、
     前記出力器は、前記複数の種別のうちの1つの種別について前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得した場合、前記ログ生成器に前記第2時間長よりも長い範囲で前記複数の種別のそれぞれについて前記第1時間長を短くさせる前記変更指示を出力する
     請求項11に記載の情報処理装置。
  16.  前記出力器は、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得器が取得しなかった場合、前記ログ生成器に短くされた前記第1時間長を長くさせる前記変更指示を出力する
     請求項14又は15に記載の情報処理装置。
  17.  前記出力器は、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長をランダムに変更させる前記変更指示を出力する
     請求項11に記載の情報処理装置。
  18.  前記出力器は、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長を線形的に変更させる前記変更指示を出力する
     請求項11に記載の情報処理装置。
  19.  前記取得器は、さらに、前記サーバ装置から前記第1時間長の変更指示を外部指示として取得し、
     前記出力器は、前記サーバ装置から前記取得器が取得した前記外部指示に従って、前記ログ生成器に前記第2時間長よりも長い範囲で前記第1時間長を変更させる前記変更指示を出力する
     請求項11に記載の情報処理装置。
  20.  前記フルログは、複数の種別の前記通信データのログであり、
     前記サンプリングログは、前記複数の種別のうち1以上の種別の前記通信データのログであり、
     前記出力器は、前記ログ生成器に前記1以上の種別を特定させる特定情報を出力する
     請求項10~19のいずれか1項に記載の情報処理装置。
  21.  前記情報処理装置は、さらに、前記ログ生成器を備え、
     前記ログ生成器は、前記車載ネットワークから前記通信データを取得し、前記通信データに従って前記フルログ及び前記サンプリングログを生成する
     請求項10~20のいずれか1項に記載の情報処理装置。
  22.  車両に搭載される情報処理装置が行う情報処理方法であって、
     前記車両の車載ネットワークにおける通信データに異常が含まれるか否かの異常検知結果を異常検知器から取得する取得ステップと、
     前記通信データの2種類のログのうち単位時間あたりに生じるデータ量が他方のログよりも小さいログであるサンプリングログを前記車両に搭載された送信器から前記車両の外部に設けられたサーバ装置へ周期的に送信させるサンプリングログ送信指示を出力する出力ステップとを含み、
     前記出力ステップでは、さらに、前記通信データに異常が含まれることを示す前記異常検知結果を前記取得ステップで取得した場合、前記2種類のログのうち単位時間あたりに生じるデータ量が前記サンプリングログよりも大きいログであるフルログを前記送信器から前記サーバ装置へ送信させるフルログ送信指示を出力する
     情報処理方法。
PCT/JP2017/040728 2016-12-06 2017-11-13 情報処理装置及び情報処理方法 WO2018105321A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201780022304.XA CN108886489B (zh) 2016-12-06 2017-11-13 信息处理装置以及信息处理方法
EP17879597.7A EP3554019B1 (en) 2016-12-06 2017-11-13 Information processing device and information processing method
JP2018554882A JP6490879B2 (ja) 2016-12-06 2017-11-13 情報処理装置及び情報処理方法
US16/241,039 US10861253B2 (en) 2016-12-06 2019-01-07 Information processing device and information processing method
US17/090,391 US11776326B2 (en) 2016-12-06 2020-11-05 Information processing device and information processing method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662430440P 2016-12-06 2016-12-06
US62/430440 2016-12-06
JP2017-198901 2017-10-12
JP2017198901 2017-10-12

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/241,039 Continuation US10861253B2 (en) 2016-12-06 2019-01-07 Information processing device and information processing method

Publications (1)

Publication Number Publication Date
WO2018105321A1 true WO2018105321A1 (ja) 2018-06-14

Family

ID=62491990

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/040728 WO2018105321A1 (ja) 2016-12-06 2017-11-13 情報処理装置及び情報処理方法

Country Status (3)

Country Link
EP (1) EP3554019B1 (ja)
CN (2) CN113542304A (ja)
WO (1) WO2018105321A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111200799A (zh) * 2018-11-20 2020-05-26 华为技术有限公司 一种车联网的异常行为检测方法、装置和系统
KR20200073362A (ko) * 2018-12-13 2020-06-24 한국전자통신연구원 차량 이더넷 네트워크에서 이상 징후 탐지 장치 및 방법
WO2021144858A1 (ja) * 2020-01-14 2021-07-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 異常検知システム、異常検知装置、及び異常検知方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007096799A (ja) * 2005-09-29 2007-04-12 Fujitsu Ten Ltd 車載用電子制御ネットワークの監視装置
JP2014165641A (ja) * 2013-02-25 2014-09-08 Toyota Motor Corp 情報処理装置及び情報処理方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110130916A1 (en) * 2009-12-01 2011-06-02 Ise Corporation Location Based Vehicle Data Logging and Diagnostic System and Method
US10665040B2 (en) * 2010-08-27 2020-05-26 Zonar Systems, Inc. Method and apparatus for remote vehicle diagnosis
EP2680534B1 (en) * 2012-06-28 2017-12-27 Harman Becker Automotive Systems GmbH Logging for telematic systems
EP2896091B1 (en) * 2012-09-12 2019-11-06 Cohda Wireless Pty Ltd Split radio architecture
JP5919205B2 (ja) * 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
US9742624B2 (en) * 2014-01-21 2017-08-22 Oracle International Corporation Logging incident manager
CN106170953B (zh) * 2014-04-17 2019-10-18 松下电器(美国)知识产权公司 车载网络系统、网关装置以及不正常检测方法
US20160203571A1 (en) * 2015-01-12 2016-07-14 Paul Beshah Life Cycle Monitoring and Dispute Resolution Management Systems, Methods and Applications
CN104678850B (zh) * 2015-01-29 2018-04-20 深圳市布谷鸟科技有限公司 一种车载通讯设备智能自我诊断的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007096799A (ja) * 2005-09-29 2007-04-12 Fujitsu Ten Ltd 車載用電子制御ネットワークの監視装置
JP2014165641A (ja) * 2013-02-25 2014-09-08 Toyota Motor Corp 情報処理装置及び情報処理方法

Non-Patent Citations (1)

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

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111200799A (zh) * 2018-11-20 2020-05-26 华为技术有限公司 一种车联网的异常行为检测方法、装置和系统
WO2020103524A1 (zh) * 2018-11-20 2020-05-28 华为技术有限公司 一种车联网的异常行为检测方法、装置和系统
KR20200073362A (ko) * 2018-12-13 2020-06-24 한국전자통신연구원 차량 이더넷 네트워크에서 이상 징후 탐지 장치 및 방법
KR102423886B1 (ko) * 2018-12-13 2022-07-22 한국전자통신연구원 차량 이더넷 네트워크에서 이상 징후 탐지 장치 및 방법
WO2021144858A1 (ja) * 2020-01-14 2021-07-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 異常検知システム、異常検知装置、及び異常検知方法

Also Published As

Publication number Publication date
EP3554019A1 (en) 2019-10-16
CN108886489B (zh) 2021-08-03
EP3554019B1 (en) 2022-06-01
EP3554019A4 (en) 2019-12-25
CN113542304A (zh) 2021-10-22
CN108886489A (zh) 2018-11-23

Similar Documents

Publication Publication Date Title
JP6492234B2 (ja) 情報処理装置及び情報処理方法
WO2018105319A1 (ja) 情報処理装置及び情報処理方法
JP7286326B2 (ja) 情報処理装置及び情報処理方法
US10798114B2 (en) System and method for consistency based anomaly detection in an in-vehicle communication network
JPWO2019142458A1 (ja) 車両監視装置、不正検知サーバ、および、制御方法
JP2018026791A (ja) フレーム伝送阻止装置、フレーム伝送阻止方法及び車載ネットワークシステム
WO2018105321A1 (ja) 情報処理装置及び情報処理方法
CN109005678B (zh) 非法通信检测方法、非法通信检测系统以及记录介质
CN109076016B9 (zh) 非法通信检测基准决定方法、决定系统以及记录介质
CN111066001A (zh) 日志输出方法、日志输出装置以及程序
US10484200B2 (en) Controller area network (CAN) communication system and error information recording device
US11935341B2 (en) Data storage device and non-transitory tangible computer readable storage medium
US10666671B2 (en) Data security inspection mechanism for serial networks
JPWO2020110446A1 (ja) 車両故障予測システム、監視装置、車両故障予測方法および車両故障予測プログラム
WO2019207764A1 (ja) 抽出装置、抽出方法および記録媒体、並びに、検知装置
CN115580471A (zh) 不正当检测方法、不正当检测装置以及存储介质
KR20210096899A (ko) 차량 생성 데이터 관리 방법 및 시스템
WO2018020833A1 (ja) フレーム伝送阻止装置、フレーム伝送阻止方法及び車載ネットワークシステム
CN115622722A (zh) 一种行车数据处理方法、装置及系统

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018554882

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 17879597

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2017879597

Country of ref document: EP

Effective date: 20190708