JP6913206B2 - Log analysis method and log priority table management method - Google Patents

Log analysis method and log priority table management method Download PDF

Info

Publication number
JP6913206B2
JP6913206B2 JP2020080833A JP2020080833A JP6913206B2 JP 6913206 B2 JP6913206 B2 JP 6913206B2 JP 2020080833 A JP2020080833 A JP 2020080833A JP 2020080833 A JP2020080833 A JP 2020080833A JP 6913206 B2 JP6913206 B2 JP 6913206B2
Authority
JP
Japan
Prior art keywords
log
vehicle device
priority table
vehicle
attack
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020080833A
Other languages
Japanese (ja)
Other versions
JP2020129395A (en
Inventor
英里子 安藤
英里子 安藤
靖 永井
靖 永井
伸義 森田
伸義 森田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Faurecia Clarion Electronics Co Ltd
Original Assignee
Clarion Co Ltd
Faurecia Clarion Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2016164804A external-priority patent/JP6701030B2/en
Application filed by Clarion Co Ltd, Faurecia Clarion Electronics Co Ltd filed Critical Clarion Co Ltd
Priority to JP2020080833A priority Critical patent/JP6913206B2/en
Publication of JP2020129395A publication Critical patent/JP2020129395A/en
Application granted granted Critical
Publication of JP6913206B2 publication Critical patent/JP6913206B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、ログ解析方法及びログ優先度テーブル管理方法に関する。 The present invention relates to a log analysis method and a log priority table management method.

近年、車載装置のネットワーク化等に伴い、車載装置システムの分野においても、適切なセキュリティの必要性が高まっている。こうした車載装置のセキュリティ技術に関して、車載装置の状況をネットワーク上のサーバが把握し、サーバが車載装置の異常を検出する構成が広く知られている。特許文献1には、車両等の移動体から、その位置情報等の移動体情報を状況に応じた適切な方法で送信することのできる装置が開示されている。 In recent years, with the networking of in-vehicle devices and the like, the need for appropriate security has increased in the field of in-vehicle device systems as well. With respect to such security technology for in-vehicle devices, it is widely known that a server on a network grasps the status of the in-vehicle device and the server detects an abnormality in the in-vehicle device. Patent Document 1 discloses a device capable of transmitting moving body information such as position information from a moving body such as a vehicle by an appropriate method according to a situation.

特開2005-12441号公報Japanese Unexamined Patent Publication No. 2005-12441

上記のようなサーバを用いた車載装置の異常検出では、車載装置において多数の詳細な情報をログとして収集しサーバに送信することで、車載装置で発生した様々な異常をサーバが検出できる。しかし、一般に車載装置は、設置スペースの制約等によりリソースが乏しく、収集できる情報量が限定される。そのため、車載装置のおかれた状況に応じて適切なログを収集する必要があるが、特許文献1に記載されている発明では、これを行うことができない。 In the abnormality detection of the in-vehicle device using the server as described above, the server can detect various abnormalities generated in the in-vehicle device by collecting a large amount of detailed information as a log in the in-vehicle device and transmitting it to the server. However, in-vehicle devices generally have scarce resources due to restrictions on installation space and the like, and the amount of information that can be collected is limited. Therefore, it is necessary to collect appropriate logs according to the situation of the in-vehicle device, but this cannot be done by the invention described in Patent Document 1.

本発明の第1の態様によるログ解析方法は、車両に搭載される複数の車載装置とネットワークにより接続され、前記車載装置において蓄積されたログを受信して解析するサーバ装置におけるログ解析方法であって、前記複数の車載装置から受信したログを解析し、各車載装置において攻撃が発生した可能性の判断する第1ステップと、前記第1ステップにおいて攻撃が発生した可能性があると判断した場合、前記複数の車載装置のうち臨時ログの収集対象となる車載装置を決定する第2ステップと、前記第2ステップにおいて臨時ログの収集対象となった車載装置に対して、当該車載装置が蓄積するログの優先度を示すログ優先度テーブルの変更を要求する、ログ優先度テーブル変更要求メッセージを送信する第3ステップと、前記第3ステップにおいて前記ログ優先度テーブル変更要求メッセージを送信した車載装置から臨時ログを受信した場合に、当該臨時ログを解析して攻撃発生の有無を判断する第4ステップと、前記第4ステップにおいて攻撃が発生したと判断した場合、及び、前記第3ステップにおいて前記ログ優先度テーブル変更要求メッセージを送信した車載装置から所定時間以内に臨時ログを受信しない場合に、攻撃発生の通知を行なう第5ステップと、を有する。
本発明の第2の態様によるログ優先度テーブル管理方法は、第1の態様によるログ解析方法を行うサーバ装置にネットワークにより接続された車載装置におけるログ優先度テーブル管理方法であって、前記サーバ装置から前記ログ優先度テーブル変更要求メッセージを受信する第6ステップと、受信した前記ログ優先度テーブル変更要求メッセージにしたがって、当該車載装置内に格納されたログ優先度テーブルを更新する第7ステップと、前記ログ優先度テーブルにおいて、臨時であることを示されたレコードについて、有効時間が経過済みであるレコードを削除する第8ステップと、を有する。
The log analysis method according to the first aspect of the present invention is a log analysis method in a server device which is connected to a plurality of in-vehicle devices mounted on a vehicle by a network and receives and analyzes logs accumulated in the in-vehicle device. When it is determined that the first step of analyzing the logs received from the plurality of in-vehicle devices and determining the possibility of an attack occurring in each in-vehicle device and the possibility of an attack occurring in the first step. The in-vehicle device accumulates in the second step of determining the in-vehicle device for which the temporary log is to be collected among the plurality of in-vehicle devices and the in-vehicle device for which the temporary log is collected in the second step. From the third step of transmitting the log priority table change request message requesting the change of the log priority table indicating the log priority and the in-vehicle device that sent the log priority table change request message in the third step. When the temporary log is received, the fourth step of analyzing the temporary log to determine whether or not an attack has occurred, the case where it is determined that an attack has occurred in the fourth step, and the log in the third step. It has a fifth step of notifying the occurrence of an attack when the temporary log is not received within a predetermined time from the in-vehicle device that has transmitted the priority table change request message.
The log priority table management method according to the second aspect of the present invention is a log priority table management method in an in-vehicle device connected to a server device that performs the log analysis method according to the first aspect by a network, and is the server device. The sixth step of receiving the log priority table change request message from, and the seventh step of updating the log priority table stored in the in-vehicle device according to the received log priority table change request message. The log priority table has an eighth step of deleting a record whose valid time has expired for a record indicated to be temporary.

本発明によれば、車載装置のおかれた状況に応じて適切なログを収集することができる。 According to the present invention, it is possible to collect appropriate logs according to the situation of the in-vehicle device.

ログ収集システムの構成図Log collection system configuration diagram ログ優先度テーブルの構成を例示する図Diagram illustrating the configuration of the log priority table ログテーブルの構成を例示する図Diagram illustrating the configuration of a log table 臨時ログテーブルの構成を例示する図Diagram illustrating the configuration of the temporary log table 車載装置がログを取得し蓄積する処理をあらわすフローチャートFlowchart showing the process of acquiring and accumulating logs by an in-vehicle device サーバがログを収集した後の一連の処理をあらわすフローチャートFlowchart showing a series of processes after the server collects logs 車載装置によるログ優先度テーブルの更新処理を示すフローチャートFlowchart showing update processing of log priority table by in-vehicle device 車載装置が、ログ収集部として機能するプログラムを更新するプログラム更新処理を示すフローチャートA flowchart showing a program update process in which an in-vehicle device updates a program that functions as a log collector.

以下、図1〜図8を参照して、ログ収集システムの実施の形態を説明する。
図1は、ログ収集システムの構成図である。ログ収集システム1は、サーバ10、および車載装置30から構成される。サーバ10と車載装置30は、ネットワーク20を介して接続される。図1では車載装置30は1台のみ記載されているが、サーバ10は複数の車載装置30と接続される。サーバ10に接続される複数の車載装置30は、それぞれ異なる車両に搭載される。車載装置30は、1または複数のプログラムを実行することで、様々なサービスを車両の乗員に提供可能である。車載装置30において実行されるプログラムは、車載装置30の出荷時に組み込まれる。
Hereinafter, embodiments of the log collection system will be described with reference to FIGS. 1 to 8.
FIG. 1 is a configuration diagram of a log collection system. The log collection system 1 is composed of a server 10 and an in-vehicle device 30. The server 10 and the vehicle-mounted device 30 are connected via the network 20. Although only one in-vehicle device 30 is shown in FIG. 1, the server 10 is connected to a plurality of in-vehicle devices 30. The plurality of in-vehicle devices 30 connected to the server 10 are mounted on different vehicles. The in-vehicle device 30 can provide various services to the occupants of the vehicle by executing one or a plurality of programs. The program executed in the in-vehicle device 30 is incorporated at the time of shipment of the in-vehicle device 30.

(サーバの構成)
サーバ10は、CPU100、メモリ110、サーバ通信部120、入力部130、および出力部140を備える。以下では、サーバ10の入力部130を操作する者を「オペレータ」と呼ぶ。
CPU100は、不図示のROMに格納されるプログラムを実行し、サーバ10を動作させるための各種の演算処理を実行する。このプログラムは、メモリ110に記憶されているデータを利用する。CPU100は、ログ解析部101、臨時ログ情報作成部102、ログ優先度変更指示部103、ログ変更指示部104、サービス指示部105を機能的に有する。
(Server configuration)
The server 10 includes a CPU 100, a memory 110, a server communication unit 120, an input unit 130, and an output unit 140. Hereinafter, a person who operates the input unit 130 of the server 10 is referred to as an "operator".
The CPU 100 executes a program stored in a ROM (not shown), and executes various arithmetic processes for operating the server 10. This program uses the data stored in the memory 110. The CPU 100 functionally includes a log analysis unit 101, a temporary log information creation unit 102, a log priority change instruction unit 103, a log change instruction unit 104, and a service instruction unit 105.

ログ解析部101は、車載装置30から収集したログを解析し、車載装置30への攻撃の可能性の検出、および車載装置30への攻撃の検出を行う。臨時ログ情報作成部102は、ログ解析部101が車載装置30への攻撃の可能性を検出すると、後述するログテーブルおよび後述するログ優先度テーブルを書き換える。ログ優先度変更指示部103は、臨時ログ情報作成部102が書き換えたログ優先度テーブルの情報を車載装置30へ通知するためのログ優先度テーブル変更要求メッセージを作成し、車載装置30へ送信する。なお、ログ優先度テーブル変更要求メッセージには、書き換え後のログ優先度テーブルの全体の内容が含まれる。ログ変更指示部104は、臨時ログ情報作成部102が書き換えたログテーブルの情報を車載装置30へ通知する。ただし後述するように本実施の形態ではログテーブルの情報はプログラムに内包されるため、ログ変更指示部104は車載装置30へプログラムを送信することによりログテーブルの変更を車載装置30へ通知する。サービス指示部105は、ログ解析部101によりサービスを直ちに停止する必要があると判断された場合に、車載装置30に対してサービス停止の指示を出力する。 The log analysis unit 101 analyzes the log collected from the in-vehicle device 30, detects the possibility of an attack on the in-vehicle device 30, and detects an attack on the in-vehicle device 30. When the log analysis unit 101 detects the possibility of an attack on the in-vehicle device 30, the temporary log information creation unit 102 rewrites the log table described later and the log priority table described later. The log priority change instruction unit 103 creates a log priority table change request message for notifying the vehicle-mounted device 30 of the log priority table information rewritten by the temporary log information creation unit 102, and transmits the log priority table change request message to the vehicle-mounted device 30. .. The log priority table change request message includes the entire contents of the rewritten log priority table. The log change instruction unit 104 notifies the in-vehicle device 30 of the information of the log table rewritten by the temporary log information creation unit 102. However, as will be described later, since the log table information is included in the program in the present embodiment, the log change instruction unit 104 notifies the vehicle-mounted device 30 of the change of the log table by transmitting the program to the vehicle-mounted device 30. The service instruction unit 105 outputs a service stop instruction to the in-vehicle device 30 when the log analysis unit 101 determines that the service needs to be stopped immediately.

メモリ110には、データが格納される。メモリ110は、収集ログ格納部111、ログテーブル集格納部112、ログ優先度テーブル集格納部113、および臨時ログテーブル格納部114を機能的に有する。
収集ログ格納部111には、それぞれの車載装置30から収集したログが格納される。
ログテーブル集格納部112には、それぞれの車載装置30がログとして収集する情報を特定するログテーブルが格納される。ログテーブルは車載装置30ごとに異なるので、ログテーブル集格納部112には、サーバ10に接続される車載装置30と同数のログテーブルが格納される。ただしいくつかの車載装置30がログテーブルを共有し、ログテーブル集格納部112に格納されるログテーブルの数が、サーバ10に接続される車載装置30の数よりも少なくてもよい。
Data is stored in the memory 110. The memory 110 functionally includes a collection log storage unit 111, a log table collection storage unit 112, a log priority table collection storage unit 113, and a temporary log table storage unit 114.
The collection log storage unit 111 stores the logs collected from each in-vehicle device 30.
The log table collection storage unit 112 stores a log table that specifies information to be collected as a log by each in-vehicle device 30. Since the log table is different for each vehicle-mounted device 30, the log table collection / storage unit 112 stores the same number of log tables as the vehicle-mounted device 30 connected to the server 10. However, some vehicle-mounted devices 30 share a log table, and the number of log tables stored in the log table collection / storage unit 112 may be smaller than the number of vehicle-mounted devices 30 connected to the server 10.

ログ優先度テーブル集格納部113には、それぞれの車載装置30が蓄積するログの優先度を示すログ優先度テーブルが格納される。ログ優先度テーブルは車載装置30ごとに異なるので、ログ優先度テーブル集格納部113には、サーバ10に接続される車載装置30と同数のログ優先度テーブルが格納される。ただしいくつかの車載装置30がログ優先度テーブルを共有し、ログ優先度テーブル集格納部113に格納されるログ優先度テーブルの数が、サーバ10に接続される車載装置30の数よりも少なくてもよい。 The log priority table collection storage unit 113 stores a log priority table indicating the priority of the logs accumulated by each in-vehicle device 30. Since the log priority table is different for each vehicle-mounted device 30, the log priority table collection storage unit 113 stores the same number of log priority tables as the vehicle-mounted device 30 connected to the server 10. However, some in-vehicle devices 30 share the log priority table, and the number of log priority tables stored in the log priority table collection storage unit 113 is smaller than the number of in-vehicle devices 30 connected to the server 10. You may.

臨時ログテーブル格納部114には、ログ解析部101が攻撃発生の恐れを検知した場合に、臨時で収集するログを定めた臨時ログテーブルが格納される。本実施の形態における臨時ログテーブルは1つであり、全ての車載装置30に共通して用いられる。
サーバ通信部120は、ネットワーク20を介して車載装置30と通信を行う。
入力部130は、オペレータからの操作入力を検出し、CPU100に出力する。入力部130は、たとえばマウスやキーボード等により構成される。
出力部140は、CPU100からの指示に従って画面表示や音声出力を行う。出力部140は、たとえばディスプレイやスピーカ等により構成される。
The temporary log table storage unit 114 stores a temporary log table that defines logs to be temporarily collected when the log analysis unit 101 detects the possibility of an attack. There is only one temporary log table in this embodiment, and it is commonly used in all the in-vehicle devices 30.
The server communication unit 120 communicates with the in-vehicle device 30 via the network 20.
The input unit 130 detects the operation input from the operator and outputs it to the CPU 100. The input unit 130 is composed of, for example, a mouse, a keyboard, or the like.
The output unit 140 displays a screen and outputs audio according to an instruction from the CPU 100. The output unit 140 is composed of, for example, a display, a speaker, or the like.

(車載装置の構成)
車載装置30は、CPU150、メモリ160、車載通信部170、入力部180、および出力部190を備える。以下では、車載装置30の入力部180を操作する者、および車載装置30が搭載される車両の乗員を「ユーザ」と呼ぶ。
CPU150は、メモリ160に格納される不図示のプログラムを実行し、車載装置30を動作させるための各種の演算処理を実行する。この演算処理には、ユーザに対するサービス提供のためのプログラムの実行も含まれる。CPU150は、ログ収集部151、ログ優先度テーブル管理部152、プログラム更新部153、およびサービス制御部154を機能的に有する。
(Configuration of in-vehicle device)
The in-vehicle device 30 includes a CPU 150, a memory 160, an in-vehicle communication unit 170, an input unit 180, and an output unit 190. Hereinafter, the person who operates the input unit 180 of the vehicle-mounted device 30 and the occupant of the vehicle on which the vehicle-mounted device 30 is mounted are referred to as "users".
The CPU 150 executes a program (not shown) stored in the memory 160, and executes various arithmetic processes for operating the in-vehicle device 30. This arithmetic processing also includes execution of a program for providing a service to a user. The CPU 150 functionally includes a log collection unit 151, a log priority table management unit 152, a program update unit 153, and a service control unit 154.

ログ収集部151は、サーバ10に送信するためのログを取得し、ログ格納部163へログを蓄積する。ログ収集部151がログとしてどのような情報を収集するかは、プログラムにハードコーディングされている。ログ優先度テーブル管理部152は、サーバ10の指令に基づきログ優先度テーブル格納部162に格納されているログ優先度テーブルを更新する。プログラム更新部153は、CPU150が実行するプログラムを更新プログラム格納部165に格納されたプログラムに更新する。このプログラムの更新により、ログ収集部151がログとして収集する情報が変更される。サービス制御部154は、ユーザによる入力部180を用いたサービス開始・停止指示、およびサーバ10からのサービス停止指示に基づきサービスの提供を制御する。 The log collecting unit 151 acquires a log for transmission to the server 10 and stores the log in the log storage unit 163. What kind of information the log collecting unit 151 collects as a log is hard-coded in the program. The log priority table management unit 152 updates the log priority table stored in the log priority table storage unit 162 based on the command of the server 10. The program update unit 153 updates the program executed by the CPU 150 to the program stored in the update program storage unit 165. By updating this program, the information collected as a log by the log collection unit 151 is changed. The service control unit 154 controls the provision of the service based on the service start / stop instruction using the input unit 180 by the user and the service stop instruction from the server 10.

メモリ160は、ログテーブル格納部161、ログ優先度テーブル格納部162、ログ格納部163、車載装置情報格納部164、更新プログラム格納部165を機能的に有する。ただしログテーブルはメモリ160に格納される前述のプログラムに内包される。すなわち、ログテーブルは形態を変えてメモリ160に格納されているので、図1ではログテーブル格納部161を破線で示している。 The memory 160 functionally includes a log table storage unit 161, a log priority table storage unit 162, a log storage unit 163, an in-vehicle device information storage unit 164, and an update program storage unit 165. However, the log table is included in the above-mentioned program stored in the memory 160. That is, since the log table is stored in the memory 160 in a different form, the log table storage unit 161 is shown by a broken line in FIG.

ログテーブル格納部161には、ログとして収集する情報の具体的な内容を示す情報であるログテーブルが格納される。換言すると、ログテーブルに格納された情報が、ログとして収集する情報を示す情報である。ログ優先度テーブル格納部162には、蓄積するログの優先度を管理するための情報であるログ優先度テーブルが格納される。ログ格納部163には、ログ収集部151が取得したログが蓄積されて格納される。車載装置情報格納部164には、車載装置を識別する機器IDが格納される。更新プログラム格納部165には、サーバから受信したプログラムが一時的に格納される。 The log table storage unit 161 stores a log table, which is information indicating the specific contents of the information to be collected as a log. In other words, the information stored in the log table is the information indicating the information to be collected as a log. The log priority table storage unit 162 stores a log priority table, which is information for managing the priority of the accumulated logs. The log acquired by the log collecting unit 151 is accumulated and stored in the log storage unit 163. The in-vehicle device information storage unit 164 stores a device ID that identifies the in-vehicle device. The program received from the server is temporarily stored in the update program storage unit 165.

車載通信部170は、ネットワーク20を介してサーバ10と通信を行う。車載通信部170は、ログ収集部151が収集したログをサーバ10に送信する際に、車載装置情報格納部164に格納される機器IDと、当該ログを収集したときの時刻および車載装置30の位置情報、すなわち緯度と経度をあわせて送信する。位置情報は、車載装置30が搭載される車両の他の機器から入力されてもよいし、車載装置30が位置情報を取得する構成、たとえばGPS受信機を備えてもよい。 The vehicle-mounted communication unit 170 communicates with the server 10 via the network 20. When the in-vehicle communication unit 170 transmits the log collected by the log collection unit 151 to the server 10, the in-vehicle communication unit 170 includes the device ID stored in the in-vehicle device information storage unit 164, the time when the log is collected, and the in-vehicle device 30. Position information, that is, latitude and longitude are transmitted together. The position information may be input from another device of the vehicle on which the vehicle-mounted device 30 is mounted, or may include a configuration in which the vehicle-mounted device 30 acquires the position information, for example, a GPS receiver.

入力部180は、ユーザからの操作入力を検出し、CPU100に出力する。入力部180は、たとえばキーボード入力やタッチパネル入力等がある。出力部190は、CPU150からの指示に従って画面表示や音声出力を行う。出力部190は、たとえばディスプレイやスピーカ等により構成される。 The input unit 180 detects an operation input from the user and outputs it to the CPU 100. The input unit 180 includes, for example, keyboard input, touch panel input, and the like. The output unit 190 performs screen display and audio output according to an instruction from the CPU 150. The output unit 190 is composed of, for example, a display, a speaker, or the like.

(サービス)
車載装置30は、ユーザへ各種サービスを提供可能である。車載装置30が提供するサービスは、ユーザの指令により任意に開始および停止が可能である。ただし後述するようにサーバ10から停止指令を受けたサービスは、ユーザの操作指令に関わらず停止される。
(service)
The in-vehicle device 30 can provide various services to the user. The service provided by the in-vehicle device 30 can be arbitrarily started and stopped by a user's command. However, as will be described later, the service that receives the stop command from the server 10 is stopped regardless of the user's operation command.

サービスはたとえば、ユーザが選択した目的地までのルートを案内するナビゲーションサービス、現在地やユーザが入力する目的地の周辺に存在する推奨スポットを紹介する施設紹介サービス、車両の部品交換の時期を報知するメンテナンスサービス、周辺道路の渋滞情報を報知する渋滞情報サービスなどである。これらのサービスを実行するそれぞれのプログラムは、利便性の向上のためにユーザの入力履歴をそれぞれ独立したファイルに保存している。これらのファイルはそれぞれのサービスを実行するプログラムのみからアクセスされることを想定している。 Services include, for example, a navigation service that guides the route to a destination selected by the user, a facility introduction service that introduces recommended spots that exist around the current location or the destination entered by the user, and a notification of when to replace a vehicle part. Maintenance services, traffic jam information services that notify traffic jam information on surrounding roads, etc. Each program that executes these services stores the user's input history in an independent file for the sake of convenience. It is assumed that these files will be accessed only by the programs that run their respective services.

(ログ優先度テーブル)
図2は、サーバ10のログ優先度テーブル集格納部113、および車載装置30のログ優先度テーブル格納部162に格納されるログ優先度テーブルの構成を例示する図である。詳しくは後述するが、収集されたログを蓄積するか否かが、このログ優先度テーブルに記載された優先度によって決定される。ログ優先度テーブルに記載されないログは、優先度が最も低いものとして扱われる。なお、図2では、車載装置30のログ優先度テーブル格納部162に格納される、一つの車載装置30に対するログ優先度テーブルの例を示している。そのため、サーバ10のログ優先度テーブル集格納部113には、ログ収集システム1に含まれる車載装置30の数に応じて、図2のようなログ優先度テーブルが複数種類格納される。
(Log priority table)
FIG. 2 is a diagram illustrating a configuration of a log priority table stored in the log priority table collection storage unit 113 of the server 10 and the log priority table storage unit 162 of the in-vehicle device 30. As will be described in detail later, whether or not to accumulate the collected logs is determined by the priority described in this log priority table. Logs that are not listed in the log priority table are treated as having the lowest priority. Note that FIG. 2 shows an example of a log priority table for one vehicle-mounted device 30 stored in the log priority table storage unit 162 of the vehicle-mounted device 30. Therefore, a plurality of types of log priority tables as shown in FIG. 2 are stored in the log priority table collection storage unit 113 of the server 10 according to the number of in-vehicle devices 30 included in the log collection system 1.

ログ優先度テーブルは、優先度201、ログ種別202、モード203、条件種別204、エリア205、サービス206、および有効時間207の7つのフィールドから構成される。ログ優先度テーブルは、1または複数のレコードから構成される。 The log priority table is composed of seven fields: priority 201, log type 202, mode 203, condition type 204, area 205, service 206, and valid time 207. The log priority table consists of one or more records.

優先度201のフィールドには、ログを蓄積する優先度を示す情報が数値として格納され、この数値が小さいほど優先度が高いことを示す。優先度が同一のレコードが複数存在してもよい。ログ種別202のフィールドには、ログの種類を示す識別子が格納される。モード203のフィールドには、レコードが永続的に有効であるか、一時的に有効であるかを示す情報が格納され、永続的である場合は「通常」が格納され、一時的である場合は「臨時」が格納される。モード203が「臨時」の場合には、有効時間207にレコードが有効な期間が格納される。換言すると、永続的に有効であるレコードは、有効時間207に格納される期間が「定めなく永続的である」ことを示している。 In the field of priority 201, information indicating the priority for accumulating logs is stored as a numerical value, and the smaller the numerical value, the higher the priority. There may be multiple records with the same priority. An identifier indicating the log type is stored in the field of the log type 202. The field of mode 203 stores information indicating whether the record is permanently valid or temporarily valid, "normal" if it is permanent, and "normal" if it is temporary. "Temporary" is stored. When the mode 203 is "temporary", the valid period of the record is stored in the valid time 207. In other words, a record that is permanently valid indicates that the period stored in the valid time 207 is "indefinitely permanent."

条件種別204のフィールドには、レコードが有効な条件が格納される。特段の条件なく常にレコードが有効な場合は「常時」が格納され、何らかの条件下でレコードが有効な場合はその条件が格納される。たとえば車載装置30が特定のエリア内に在ることを条件にレコードが有効な場合は、条件種別204には「エリア」が格納される。また車載装置30が特定のサービスを実行していることを条件にレコードが有効な場合は、条件種別204は「サービス」が格納される。エリア205のフィールドには、条件種別204に「エリア」が格納されている場合のエリアに関する条件が格納される。サービス206のフィールドには、条件種別204に「サービス」が格納されている場合のサービスに関する条件が格納される。 The condition type 204 field stores the condition for which the record is valid. If the record is always valid without any special condition, "always" is stored, and if the record is valid under some condition, the condition is stored. For example, if the record is valid on the condition that the vehicle-mounted device 30 is in a specific area, the condition type 204 stores the "area". If the record is valid on the condition that the in-vehicle device 30 is executing a specific service, the condition type 204 stores "service". In the field of the area 205, the condition relating to the area when the "area" is stored in the condition type 204 is stored. In the field of service 206, the condition related to the service when "service" is stored in the condition type 204 is stored.

有効時間207のフィールドには、モード203が「臨時」であるレコードが有効な期間が格納される。たとえば図2の4つ目のレコードは、車載装置30が緯度X11〜X12の範囲、かつ経度がY11〜Y12の範囲にあり、さらに2016年1月1日の10時0分から10時30分までの30分間だけ有効であることを示している。
なお、サーバ10のログ優先度テーブル集格納部113や車載装置30のログ優先度テーブル格納部162に格納される情報は、図2に示したようなテーブル形式以外の情報であってもよい。すなわち、ログ格納部163に蓄積されるログの優先度を適切に表す情報であれば、どのような形式の情報をログ優先度テーブル集格納部113やログ優先度テーブル格納部162に格納してもよい。
The field of the valid time 207 stores the valid period of the record in which the mode 203 is "temporary". For example, in the fourth record of FIG. 2, the in-vehicle device 30 is in the range of latitudes X11 to X12 and the longitude is in the range of Y11 to Y12, and further, from 10:00 to 10:30 on January 1, 2016. It is shown that it is effective only for 30 minutes.
The information stored in the log priority table collection storage unit 113 of the server 10 and the log priority table storage unit 162 of the in-vehicle device 30 may be information other than the table format as shown in FIG. That is, any form of information is stored in the log priority table collection storage unit 113 or the log priority table storage unit 162 as long as the information appropriately represents the priority of the logs stored in the log storage unit 163. May be good.

(ログテーブル)
図3は、サーバ10のログテーブル集格納部112および車載装置30のログテーブル格納部161に格納されるログテーブルの構成を例示する図である。ログテーブルは、ログ収集部151がログとして収集する情報を特定するテーブルである。なお、図3では、車載装置30のログテーブル格納部161に格納される、一つの車載装置30に対するログテーブルの例を示している。そのため、サーバ10のログテーブル集格納部112には、ログ収集システム1に含まれる車載装置30の数に応じて、図3のようなログテーブルが複数種類格納される。ログテーブルは、1または複数のレコードから構成され、ログ種別301とログ内容302の2つのフィールドから構成される。ログ種別301のフィールドには、ログの種類を示す識別子、すなわちログ優先度テーブルのログ種別202と同一の情報が格納される。ログ内容302のフィールドには、ログとして取得する情報の具体的な内容が格納される。
なお、サーバ10のログテーブル集格納部112や車載装置30のログテーブル格納部161に格納される情報は、図3に示したようなテーブル形式以外の情報であってもよい。すなわち、ログ収集部151が収集するログの内容を適切に表す情報であれば、どのような形式の情報をログテーブル集格納部112やログテーブル格納部161に格納してもよい。
(Log table)
FIG. 3 is a diagram illustrating the configuration of the log table stored in the log table collection storage unit 112 of the server 10 and the log table storage unit 161 of the in-vehicle device 30. The log table is a table that specifies information to be collected as a log by the log collection unit 151. Note that FIG. 3 shows an example of a log table for one vehicle-mounted device 30 stored in the log table storage unit 161 of the vehicle-mounted device 30. Therefore, a plurality of types of log tables as shown in FIG. 3 are stored in the log table collection / storage unit 112 of the server 10 according to the number of in-vehicle devices 30 included in the log collection system 1. The log table is composed of one or a plurality of records, and is composed of two fields, a log type 301 and a log content 302. In the field of the log type 301, an identifier indicating the log type, that is, the same information as the log type 202 of the log priority table is stored. The specific content of the information to be acquired as a log is stored in the field of the log content 302.
The information stored in the log table collection storage unit 112 of the server 10 and the log table storage unit 161 of the in-vehicle device 30 may be information other than the table format as shown in FIG. That is, any form of information may be stored in the log table collection storage unit 112 or the log table storage unit 161 as long as the information appropriately represents the contents of the log collected by the log collection unit 151.

(攻撃の検出)
ネットワークに接続される車載装置30は、外部から様々な攻撃を受けることが想定される。また特定のサービスに密接に関連する攻撃を受けることも想定される。
特定のサービスに限定しない攻撃として、たとえばDoS(Denial of Service)攻撃が考えられる。DoS攻撃とは、大量のデータを送り付けることで通信リソースおよび計算リソースを浪費させ、車載装置30の正常な動作を妨げるものである。この攻撃は、車載装置30の受信データ量を表すパケット受信量や、処理負荷の大きさを表すCPU使用率を記録することにより検出する。そのため、DoS攻撃が発生した可能性があると判断されると、パケット受信量とCPU使用率を優先的に記録されることが、後述する臨時ログテーブルに規定される。
(Attack detection)
It is assumed that the in-vehicle device 30 connected to the network is subject to various attacks from the outside. It is also expected that they will be attacked closely related to a specific service.
As an attack not limited to a specific service, for example, a DoS (Denial of Service) attack can be considered. A DoS attack wastes communication resources and calculation resources by sending a large amount of data, and hinders the normal operation of the in-vehicle device 30. This attack is detected by recording the packet reception amount indicating the amount of received data of the in-vehicle device 30 and the CPU usage rate indicating the magnitude of the processing load. Therefore, if it is determined that a DoS attack may have occurred, the packet reception amount and the CPU usage rate are preferentially recorded in the temporary log table described later.

特定のサービスに関連する攻撃として、たとえばサービスで使用されるファイルへの不正なアクセスが考えられる。たとえば、あるサービスが使用する特定のファイル(以下、ファイルA)について、特定のプログラムにしかファイルAを読み書きする権限を与えていない次のケースが想定される。すなわち、そのファイルAに格納された情報を欲する者が車載装置30にアクセスしてファイルAの情報を不正に取得するケースが想定される。この攻撃は、ファイルAへアクセス記録、たとえばアクセスしたプログラムの名称やアクセス時刻を記録することにより検出する。そのため、不正アクセスが発生した可能性があると判断されると、ファイルAへのアクセスが発生した日時やアクセスしたプログラムなどが優先的に記録されることが、後述する臨時ログテーブルに規定される。 Attacks related to a particular service include, for example, unauthorized access to files used by the service. For example, the following case is assumed in which only a specific program is authorized to read / write file A for a specific file (hereinafter referred to as file A) used by a certain service. That is, it is assumed that a person who wants the information stored in the file A accesses the in-vehicle device 30 and illegally acquires the information in the file A. This attack is detected by recording the access to file A, for example, the name of the program that accessed it and the access time. Therefore, if it is determined that unauthorized access may have occurred, the date and time when the access to file A occurred, the program that accessed it, etc. are preferentially recorded in the temporary log table described later. ..

(臨時ログテーブル)
図4は、サーバ10の臨時ログテーブル格納部114に格納される臨時ログテーブルの構成を例示する図である。臨時ログテーブルは、1または複数のレコードから構成される。臨時ログテーブルは、攻撃種別401、臨時ログ対象の車載装置402、ログ種別403、収集条件404、エリア405、サービス406、有効期間407のフィールドから構成される。以下では、この臨時ログテーブルに基づき収集されるログを「臨時ログ」と呼ぶ。
(Temporary log table)
FIG. 4 is a diagram illustrating the configuration of the temporary log table stored in the temporary log table storage unit 114 of the server 10. The extra log table consists of one or more records. The temporary log table is composed of fields of attack type 401, in-vehicle device 402 subject to temporary log, log type 403, collection condition 404, area 405, service 406, and validity period 407. In the following, the logs collected based on this temporary log table will be referred to as "temporary logs".

攻撃種別401のフィールドには、サーバ10のログ解析部101で攻撃発生の可能性があると判定された攻撃の種別が格納される。
臨時ログ対象収集の車載装置402のフィールドには、臨時でログを収集する対象となる車載装置30の条件が格納される。換言すると、ログ優先度テーブルが更新される対象となる車載装置30の条件である。この条件とはたとえば地理的条件や車載装置30の構成に関する条件である。地理的条件とはたとえば、攻撃の可能性があると判断されたログが収集された地点から所定距離以内に存在することである。車載装置30の構成に関する条件とはたとえば、攻撃の可能性があると判断されたログを収集した車載装置30と機種が一致することである。
In the field of attack type 401, the type of attack determined by the log analysis unit 101 of the server 10 that an attack may occur is stored.
In the field of the vehicle-mounted device 402 for collecting the temporary log target, the conditions of the vehicle-mounted device 30 for which the log is temporarily collected are stored. In other words, it is a condition of the in-vehicle device 30 for which the log priority table is updated. This condition is, for example, a geographical condition or a condition relating to the configuration of the in-vehicle device 30. The geographical condition is, for example, that the log determined to have a possibility of attack exists within a predetermined distance from the point where the log is collected. The condition regarding the configuration of the in-vehicle device 30 is, for example, that the model matches the in-vehicle device 30 that has collected the logs determined to have a possibility of attack.

ログ種別403のフィールドには、臨時で収集するログの識別子が格納される。条件種別404のフィールドには、臨時ログを収集する条件が格納される。エリア405のフィールドには、条件種別404がエリアを示す場合の、エリアの条件が格納される。サービス406のフィールドには、条件種別404がサービスを示す場合の、実行しているサービスの条件が格納される。有効期間407のフィールドには臨時ログ収集の有効期間が格納される。なお収集条件404はエリアおよびサービスに限定されず、他の条件を用いてもよい。その場合は収集条件の内容を記載するフィールドが臨時ログテーブルに新たに設けられる。 In the field of log type 403, the identifier of the log to be temporarily collected is stored. In the field of condition type 404, the condition for collecting the temporary log is stored. In the field of the area 405, the condition of the area when the condition type 404 indicates the area is stored. The field of service 406 stores the condition of the service being executed when the condition type 404 indicates a service. The validity period of the temporary log collection is stored in the field of the validity period 407. The collection condition 404 is not limited to the area and the service, and other conditions may be used. In that case, a new field for describing the contents of the collection conditions will be provided in the temporary log table.

サーバ10の臨時ログ情報作成部102は、いずれかの車載装置30への攻撃発生の可能性があるとログ解析部101が判定すると、臨時ログテーブル格納部114に格納されている臨時ログテーブルに基づいて、ログ優先度テーブル集格納部113に格納されているログ優先度テーブルのうち、当該車載装置を含む複数の車載装置30に対するログ優先度テーブルを書き換える。この書き換え後のログ優先度テーブルがサーバ10から各車載装置30へ送信されると、各車載装置30においてログ優先度テーブル格納部162に格納されているログ優先度テーブルが更新される。これにより、臨時ログテーブルを反映して車載装置30のログ優先度テーブルが変更され、その変更後のログ優先度テーブルに応じたログが車載装置30において蓄積される。図2に示したログ優先度テーブルの例では、モード203のフィールドが「臨時」である3つのレコードが、臨時ログテーブルに基づいて追加されたレコードである。これらのレコードのうち、上の2つは2016年1月1日の10時0分に「DoS攻撃」の可能性があると判断されたために追加されたレコードであり、下の1つは2016年1月1日の9時0分に「不正アクセス」の可能性があると判断されたために追加されたレコードである。 When the log analysis unit 101 determines that an attack on any of the in-vehicle devices 30 may occur, the temporary log information creation unit 102 of the server 10 is stored in the temporary log table storage unit 114 in the temporary log table. Based on this, among the log priority tables stored in the log priority table collection storage unit 113, the log priority tables for a plurality of vehicle-mounted devices 30 including the vehicle-mounted device are rewritten. When the rewritten log priority table is transmitted from the server 10 to each in-vehicle device 30, the log priority table stored in the log priority table storage unit 162 in each in-vehicle device 30 is updated. As a result, the log priority table of the in-vehicle device 30 is changed to reflect the temporary log table, and the log corresponding to the changed log priority table is accumulated in the in-vehicle device 30. In the example of the log priority table shown in FIG. 2, three records in which the field of mode 203 is "temporary" are the records added based on the temporary log table. Of these records, the top two are records added at 10:00 on January 1, 2016 because it was determined that there was a possibility of a "DoS attack", and the bottom one was 2016. This record was added because it was determined that there was a possibility of "unauthorized access" at 9:00 on January 1, 2014.

(ログ収集)
車載装置30のログ収集部151は、所定の時間周期、たとえば1分毎にログを収集する。ログ収集部151が収集する情報は、プログラムに内包されるログテーブルに記載される。
ログ収集部151が収集したログは、可能な限りマージしてログ格納部163に格納される。ログのマージとは、保存済みのログを書き換えることによりデータ量を増加させることなく新たなログも併せて保存することである。マージの際に書き換える情報は主に時刻に関する情報である。たとえば、10時0分からの5分間におけるパケット受信量の平均が80パケット/分である場合に、ログが「10:00〜10:05 80P/分」と記録されていた。10時5分からの5分間のパケット受信量の平均値も80パケット/分である場合は、先ほどのログとマージして「10:00〜10:10 80P/分」と記録できる。なお10時5分からの5分間のパケット受信量の平均値が100パケット/分である場合に、先ほどのログとマージして「10:00〜10:10 90P/分」と記録してもよい。
(Log collection)
The log collection unit 151 of the in-vehicle device 30 collects logs in a predetermined time cycle, for example, every minute. The information collected by the log collecting unit 151 is described in the log table included in the program.
The logs collected by the log collection unit 151 are merged as much as possible and stored in the log storage unit 163. Log merging is to save a new log together without increasing the amount of data by rewriting the saved log. The information to be rewritten at the time of merging is mainly the information related to the time. For example, when the average packet reception amount in 5 minutes from 10:00 is 80 packets / minute, the log is recorded as "10: 00-10: 05 80P / min". If the average value of the packet reception amount for 5 minutes from 10:05 is also 80 packets / minute, it can be merged with the previous log and recorded as "10: 00-10: 10 80P / min". If the average value of the packet reception amount for 5 minutes from 10:05 is 100 packets / minute, it may be merged with the previous log and recorded as "10: 00-10: 10 90P / min". ..

(ログ収集のフローチャート)
図5は、車載装置30がログを取得し、蓄積する処理をあらわすフローチャートである。以下に説明する各ステップの実行主体は、車載装置30のCPU150である。
(Flowchart of log collection)
FIG. 5 is a flowchart showing a process in which the in-vehicle device 30 acquires and accumulates logs. The execution subject of each step described below is the CPU 150 of the in-vehicle device 30.

ステップS601では、ログ収集部151を用いてログを収集する。前述のとおり、ログ収集部151が収集するログの情報は、プログラムにハードコーディングされている。本ステップで収集したログは一時的な記憶領域におかれ、まだログ格納部163には格納されない。続くステップS602では、取得したログがログ格納部163に格納されているログにマージ可能であるか否かを判断する。マージ可能であると判断する場合はステップS609に進み、マージ不可能と判断する場合はステップS603に進む。なお複数のログを取得しており一部のログのみマージ可能と判断する場合は、マージが不可能なログについてのみステップS603以降の処理を行う。 In step S601, the log collection unit 151 is used to collect logs. As described above, the log information collected by the log collection unit 151 is hard-coded in the program. The log collected in this step is stored in the temporary storage area and is not yet stored in the log storage unit 163. In the following step S602, it is determined whether or not the acquired log can be merged with the log stored in the log storage unit 163. If it is determined that the merge is possible, the process proceeds to step S609, and if it is determined that the merge is impossible, the process proceeds to step S603. If it is determined that only some of the logs can be merged because a plurality of logs have been acquired, the processes after step S603 are performed only for the logs that cannot be merged.

ステップS603では、ログ格納部163の空き容量と取得したログの容量を比較し、ログをログ格納部163に蓄積可能か否かを判断する。蓄積可能と判断する場合はステップS613に進み、蓄積が不可能と判断する場合はステップS604に進む。本ステップにおける判断は、ログ格納部163の空き容量と取得したログ容量を単純比較することにより行ってもよいし、ログ格納部163の空き容量から所定の予約容量を除いた容量と取得したログ容量を比較してもよい。
ステップS604では、取得したログのサーバ10への送信が可能か否か、すなわち車載装置30とサーバ10との通信が可能な状態であるか否かを判断する。ログ送信が可能と判断する場合はステップS610に進み、ログ送信が不可能と判断する場合はステップS605に進む。
In step S603, the free space of the log storage unit 163 is compared with the capacity of the acquired log, and it is determined whether or not the log can be stored in the log storage unit 163. If it is determined that the accumulation is possible, the process proceeds to step S613, and if it is determined that the accumulation is impossible, the process proceeds to step S604. The judgment in this step may be made by simply comparing the free space of the log storage unit 163 with the acquired log capacity, or the capacity obtained by subtracting the predetermined reserved capacity from the free space of the log storage unit 163 and the acquired log. The capacities may be compared.
In step S604, it is determined whether or not the acquired log can be transmitted to the server 10, that is, whether or not the in-vehicle device 30 and the server 10 can communicate with each other. If it is determined that the log transmission is possible, the process proceeds to step S610, and if it is determined that the log transmission is impossible, the process proceeds to step S605.

ステップS605では、ログ優先度テーブル格納部162に格納されたログ優先度テーブルを参照し、送信が不可能と判断されたログの優先度を判断する。このときログ優先度テーブルの条件種別204のフィールドが「常時」以外であるレコードは、記載された条件を満たす場合のみ当該レコードを有効として扱い、条件を満たさない場合は当該レコードを無効として扱う。無効として扱われるとログ優先度テーブルに記載されていない場合と同様に、優先度が最も低いとみなされる。 In step S605, the log priority table stored in the log priority table storage unit 162 is referred to, and the priority of the log determined to be untransmittable is determined. At this time, the record in which the field of the condition type 204 of the log priority table is other than "always" is treated as valid only when the described condition is satisfied, and is treated as invalid when the condition is not satisfied. If treated as invalid, it is considered to have the lowest priority, as if it were not listed in the log priority table.

続くステップS606では、ログ格納部163の空き容量に基づき、蓄積するログの優先度を決定する。空き容量が多いほど低い優先度まで蓄積対象となり、空き容量が少ないほど高い優先度のログしか蓄積されないこととなる。続くステップS607では、ステップS606において決定された優先度とステップS605において特定した取得したログの優先度を比較する。取得したログの優先度の方が高いと判断する場合はステップS612に進み、取得したログの優先度がステップS606において決定された優先度以下であると判断する場合はステップS608に進む。 In the following step S606, the priority of the accumulated logs is determined based on the free space of the log storage unit 163. The larger the free space, the lower the priority, and the smaller the free space, the higher the priority of the logs. In the following step S607, the priority determined in step S606 and the priority of the acquired log specified in step S605 are compared. If it is determined that the priority of the acquired log is higher, the process proceeds to step S612, and if it is determined that the priority of the acquired log is equal to or lower than the priority determined in step S606, the process proceeds to step S608.

ステップS608では、取得したログを破棄して図5のフローチャートを終了する。
ステップS609では、取得したログをログ格納部163に格納されているログにマージして図5のフローチャートを終了する。
ステップS604において肯定判断されると実行されるステップS610では、ログ格納部163に格納されているログをサーバ10に送信する。続くステップS611では、ログの送信が成功したか否かを判断し、成功したと判断する場合はステップS613に進み、失敗したと判断する場合はステップS605に進む。
In step S608, the acquired log is discarded and the flowchart of FIG. 5 ends.
In step S609, the acquired log is merged with the log stored in the log storage unit 163, and the flowchart of FIG. 5 ends.
In step S610, which is executed when a positive determination is made in step S604, the log stored in the log storage unit 163 is transmitted to the server 10. In the following step S611, it is determined whether or not the log transmission is successful, and if it is determined that the log transmission is successful, the process proceeds to step S613, and if it is determined that the log transmission is unsuccessful, the process proceeds to step S605.

ステップS607において肯定判断されると実行されるステップS612では、ログ格納部163に蓄積されているログのうち、優先度が最も低いログを破棄する。ステップS613では取得したログをメモリ160のログ格納部163に蓄積し、図5のフローチャートを終了する。 In step S612, which is executed when a positive determination is made in step S607, the log having the lowest priority among the logs stored in the log storage unit 163 is discarded. In step S613, the acquired log is stored in the log storage unit 163 of the memory 160, and the flowchart of FIG. 5 ends.

(ログ解析部の動作)
サーバ10のログ解析部101は、車載装置30から取得したログを解析することで、車載装置30への攻撃の可能性の検出、または車載装置30への攻撃の検出を行う。車載装置30への攻撃は多彩であり、日々新たな手法が考案されている。ここで説明する検出手法は一例であり、新たな攻撃手法が明らかになるとその攻撃を検出する解析手法がログ解析部101に実装される。ログ解析部101の動作の一例として、DoS攻撃の検出を説明する。
(Operation of log analysis unit)
The log analysis unit 101 of the server 10 analyzes the log acquired from the in-vehicle device 30 to detect the possibility of an attack on the in-vehicle device 30 or detect an attack on the in-vehicle device 30. Attacks on the in-vehicle device 30 are diverse, and new methods are being devised every day. The detection method described here is an example, and when a new attack method becomes clear, an analysis method for detecting the attack is implemented in the log analysis unit 101. Detection of DoS attacks will be described as an example of the operation of the log analysis unit 101.

ログ解析部101は、ある車載装置30のログを用いてDoS攻撃が発生している可能性を検出する。DoS攻撃が発生している可能性を検出したら、ログ解析部101は、複数の車載装置30の詳細なログを用いて、実際にDoS攻撃が発生しているか否かを判断する。換言するとログ解析部101は、少数のログを用いて攻撃の可能性を検知し、多数の詳細なログを用いて攻撃発生の確信を得る。
ログ解析部101は、DoS攻撃の可能性を、あるエリアにおける車載装置30の単位時間あたりのパケット受信量と、他のエリアでのパケット受信量との比較により判断する。ログ解析部101は、パケット受信量の差がある閾値以下の場合は攻撃発生の可能性はないと判断し、パケット受信量の差がある閾値を超えている場合はDoS攻撃発生の可能性があると判断する。
The log analysis unit 101 detects the possibility that a DoS attack has occurred using the log of a certain vehicle-mounted device 30. After detecting the possibility that a DoS attack has occurred, the log analysis unit 101 determines whether or not a DoS attack has actually occurred by using the detailed logs of the plurality of in-vehicle devices 30. In other words, the log analysis unit 101 detects the possibility of an attack using a small number of logs, and obtains certainty that an attack has occurred using a large number of detailed logs.
The log analysis unit 101 determines the possibility of a DoS attack by comparing the packet reception amount per unit time of the in-vehicle device 30 in a certain area with the packet reception amount in another area. The log analysis unit 101 determines that there is no possibility of an attack occurring if the difference in packet reception amount is below a certain threshold value, and if the difference in packet reception amount exceeds a certain threshold value, there is a possibility that a DoS attack may occur. Judge that there is.

ログ解析部101は、DoS攻撃が実際に発生していることを、パケット受信量に加えてCPU使用率も用いて判断する。あるエリアにおける車載装置30の単位時間あたりのパケット受信量と、他のエリアでのパケット受信量との差が閾値を超え、なおかつCPU使用率が所定の閾値を超える場合にDoS攻撃が発生していると判断する。なお、パケット受信量の比較は、同一エリアにおける過去の同一時刻の平均パケット受信量を対象としてもよい。 The log analysis unit 101 determines that a DoS attack is actually occurring by using the CPU usage rate in addition to the packet reception amount. A DoS attack occurs when the difference between the packet reception amount per unit time of the in-vehicle device 30 in a certain area and the packet reception amount in another area exceeds the threshold value and the CPU usage rate exceeds a predetermined threshold value. Judge that there is. The comparison of the packet reception amount may target the average packet reception amount in the past at the same time in the same area.

(ログ受信後の処理)
図6を用いて、サーバ10が車載装置30からログを収集した後の一連の処理を説明する。以下に説明する各ステップの実行主体はサーバ10のCPU100である。
ステップS701では、受信したログをログ解析部101を用いて解析する。ログ解析部101は、攻撃発生の可能性の判断と、発生している可能性がある攻撃の種類を判断する。続くステップS702では、ステップS701における解析結果を参照し、攻撃が発生した可能性があると判断する場合はステップS703に進み、攻撃が発生した可能性はないと判断する場合は図6のフローチャートを終了する。
(Processing after receiving the log)
A series of processes after the server 10 collects logs from the in-vehicle device 30 will be described with reference to FIG. The execution subject of each step described below is the CPU 100 of the server 10.
In step S701, the received log is analyzed by using the log analysis unit 101. The log analysis unit 101 determines the possibility of an attack and the type of attack that may have occurred. In the following step S702, the analysis result in step S701 is referred to, and if it is determined that an attack may have occurred, the process proceeds to step S703, and if it is determined that an attack has not occurred, the flowchart of FIG. 6 is displayed. finish.

ステップS703では、臨時ログ情報作成部102が、臨時ログの収集対象となる車載装置30を決定する。まずCPU100は、ステップS701におけるログの解析結果から特定される攻撃種別に一致するレコードを臨時ログテーブルから検索する。次にCPU100は、該当するレコードにおける臨時ログ収集対象402のフィールドを参照して臨時ログの収集対象を決定する。たとえば図4に示すように、攻撃の可能性があると判断されたログが収集された地点から半径2km以内に存在する車載装置30や、攻撃の可能性があることが判断されたログを収集した車載装置30と同じ機種、および類似する2機種の車載装置30が収集対象として決定される。次にステップS704に進む。以下に説明するステップS704〜S706は、本ステップにおいて決定した車載装置30ごとにそれぞれ実行される。 In step S703, the temporary log information creation unit 102 determines the in-vehicle device 30 for which the temporary log is to be collected. First, the CPU 100 searches the temporary log table for a record that matches the attack type specified from the log analysis result in step S701. Next, the CPU 100 determines the temporary log collection target by referring to the field of the temporary log collection target 402 in the corresponding record. For example, as shown in FIG. 4, the in-vehicle device 30 existing within a radius of 2 km from the point where the log determined to have a possibility of attack is collected, and the log determined to have a possibility of attack are collected. The same model as the vehicle-mounted device 30 and two similar models of the vehicle-mounted device 30 are determined as collection targets. Next, the process proceeds to step S704. Steps S704 to S706 described below are executed for each in-vehicle device 30 determined in this step.

ステップS704では、臨時ログ情報作成部102が、ログ優先度テーブル集格納部113に格納されるログ優先度テーブルを更新する。本ステップにおいて更新対象となるログ優先度テーブルは、ステップS703において決定した臨時ログの収集対象となる車載装置30に対応するログ優先度テーブルである。ログ優先度テーブルの更新は、臨時ログテーブルにおけるステップS703において特定されたレコードに記載された、ログ種別403、条件種別404、エリア405、サービス406、および有効期間407をログ優先度テーブルの新たなレコードに追加するものである。ただしエリア405は、攻撃の可能性が検出されたログを収集したときの車載装置30の位置を基準として書き換えられる。また有効期間407は、攻撃の可能性が検出されたログが取得された時刻を基準として書き換えられる。このとき、追加するレコードの優先度は最優先を表す「1」とする。次にステップS705に進む。 In step S704, the temporary log information creation unit 102 updates the log priority table stored in the log priority table collection storage unit 113. The log priority table to be updated in this step is a log priority table corresponding to the in-vehicle device 30 to be collected from the temporary log determined in step S703. The update of the log priority table is a new log priority table with log type 403, condition type 404, area 405, service 406, and validity period 407 described in the record identified in step S703 of the temporary log table. It is something to add to the record. However, the area 405 is rewritten based on the position of the in-vehicle device 30 when the log in which the possibility of an attack is detected is collected. Further, the validity period 407 is rewritten based on the time when the log in which the possibility of attack is detected is acquired. At this time, the priority of the record to be added is set to "1" indicating the highest priority. Next, the process proceeds to step S705.

ステップS705では、ログ優先度変更指示部103が、ステップS704において更新されたログ優先度テーブルに基づき、ログ優先度テーブル変更要求メッセージを作成する。そしてログ優先度変更指示部103が、作成したログ優先度テーブル変更要求メッセージを送信する。次にステップS706に進む。
ステップS706では、ログ変更指示部104が、ステップS704において更新されたログ優先度テーブルに基づき、車載装置30のログ収集部151の動作を変更する更新プログラムを作成する。この更新プログラムは、ログ収集部151に更新後のログ優先度テーブルに記載された全てのログ種別を収集させるものである。そしてログ変更指示部104が、作成した更新プログラムを送信する。次にステップS707に進む。
In step S705, the log priority change instruction unit 103 creates a log priority table change request message based on the log priority table updated in step S704. Then, the log priority change instruction unit 103 transmits the created log priority table change request message. Next, the process proceeds to step S706.
In step S706, the log change instruction unit 104 creates an update program that changes the operation of the log collection unit 151 of the in-vehicle device 30 based on the log priority table updated in step S704. This update program causes the log collection unit 151 to collect all the log types listed in the updated log priority table. Then, the log change instruction unit 104 transmits the created update program. Next, the process proceeds to step S707.

ステップS707では、車載装置30から臨時ログを受信したか否かを判断し、受信したと判断する場合はステップS708に進み、受信していないと判断する場合はステップS713に進む。ステップS713ではステップS706の実行から所定の時間、たとえば30分が経過したか否かを判断する。所定の時間が経過していないと判断する場合はステップS707に戻り、所定の時間が経過したと判断する場合はステップS710に進む。一定時間どの該当車載装置からも臨時ログが送信されない場合は、ログ収集できない状況、またはログ送信できない状況であり、何らかの攻撃が発生していることが推測できるからである。 In step S707, it is determined whether or not the temporary log has been received from the in-vehicle device 30, and if it is determined that the temporary log has been received, the process proceeds to step S708, and if it is determined that the temporary log has not been received, the process proceeds to step S713. In step S713, it is determined whether or not a predetermined time, for example, 30 minutes has elapsed from the execution of step S706. If it is determined that the predetermined time has not elapsed, the process returns to step S707, and if it is determined that the predetermined time has elapsed, the process proceeds to step S710. This is because if the temporary log is not transmitted from any of the relevant in-vehicle devices for a certain period of time, it means that the log cannot be collected or the log cannot be transmitted, and it can be inferred that some kind of attack has occurred.

ステップS708では、受信した臨時ログをログ解析部101を用いて解析する。続くステップS709では、ステップS708の解析結果から攻撃が発生したと判断する場合はステップS710に進み、攻撃が発生していないと判断する場合は図6のフローチャートを終了する。
ステップS710では、出力部140を用いてサーバ10のオペレータに攻撃の発生を通知する。続くステップS711ではサービスの緊急停止が必要か否かを判断する。サービスの緊急停止が必要と判断する場合はステップS712に進み、不要と判断する場合は図6のフローチャートを終了する。ステップS712では、サービス指示部105を用いて車載装置30にサービスの緊急停止を指示し、図6のフローチャートを終了する。
In step S708, the received temporary log is analyzed by using the log analysis unit 101. In the following step S709, if it is determined from the analysis result of step S708 that an attack has occurred, the process proceeds to step S710, and if it is determined that an attack has not occurred, the flowchart of FIG. 6 ends.
In step S710, the output unit 140 is used to notify the operator of the server 10 of the occurrence of an attack. In the following step S711, it is determined whether or not an emergency stop of the service is necessary. If it is determined that an emergency stop of the service is necessary, the process proceeds to step S712, and if it is determined that it is unnecessary, the flowchart of FIG. 6 ends. In step S712, the service instruction unit 105 is used to instruct the in-vehicle device 30 to stop the service in an emergency, and the flowchart of FIG. 6 ends.

(ログ優先度テーブルの更新処理)
図7は、車載装置30によるログ優先度テーブルの更新処理を示すフローチャートである。以下に説明する各ステップの実行主体は、ログ優先度テーブル管理部152である。
ステップS800では、サーバ10からログ優先度テーブル更新要求メッセージを受信したか否かを判断する。受信したと判断する場合はステップS803に進み、受信していないと判断する場合はステップS801に進む。
(Log priority table update process)
FIG. 7 is a flowchart showing an update process of the log priority table by the in-vehicle device 30. The execution subject of each step described below is the log priority table management unit 152.
In step S800, it is determined whether or not the log priority table update request message has been received from the server 10. If it is determined that the signal has been received, the process proceeds to step S803, and if it is determined that the signal has not been received, the process proceeds to step S801.

ステップS803では、受信したログ優先度テーブル更新要求メッセージにしたがって、ログ優先度テーブル格納部162に格納されたログ優先度テーブルを更新する。前述のとおり、ログ優先度テーブル更新要求メッセージには書き換え後のログ優先度テーブルの全体の内容が含まれるため、本ステップにおける更新とはログ優先度テーブルの置き換えを意味する。次にステップS809に進む。
ステップS800においてメッセージを受信していないと判断された場合に実行されるステップS801において、前回のステップS805の実行から一定時間、たとえば5分間が経過したか否かを判断する。経過していると判断する場合はステップS805に進み、経過していないと判断する場合はステップS800に戻る。
In step S803, the log priority table stored in the log priority table storage unit 162 is updated according to the received log priority table update request message. As described above, since the log priority table update request message includes the entire contents of the log priority table after rewriting, updating in this step means replacing the log priority table. Next, the process proceeds to step S809.
In step S801, which is executed when it is determined that the message has not been received in step S800, it is determined whether or not a certain time, for example, 5 minutes has elapsed since the previous execution of step S805. If it is determined that the elapse has passed, the process proceeds to step S805, and if it is determined that the elapse has not occurred, the process returns to step S800.

ステップS805では、ログ優先度テーブル格納部162に格納されているログ優先度テーブルにおいて、モード203のフィールドが「臨時」であるレコードが存在するか否かを判断する。該当するレコードが存在すると判断する場合はステップS806に進み、該当するレコードが存在しないと判断する場合はステップS801に戻る。 In step S805, it is determined whether or not there is a record whose mode 203 field is "temporary" in the log priority table stored in the log priority table storage unit 162. If it is determined that the corresponding record exists, the process proceeds to step S806, and if it is determined that the corresponding record does not exist, the process returns to step S801.

ステップS806では、ログ優先度テーブルのモード203のフィールドが「臨時」であるレコードについて、有効時間が経過済みであるレコードを削除する。たとえば現在時刻が2016年1月1日の10時45分であり、ログ優先度テーブルが図2に示すものである場合は、モード203のフィールドが「臨時」である3つのレコードのうち、上の2つのレコードが削除される。これらのレコードは有効時間が経過済みであり、残る1つのレコードは有効時間の経過前だからである。次にステップS809に進む。
ステップS809では、CPU150は、出力部190を用いてユーザへ状況通知、すなわちログ優先度テーブルが書き換えられた旨を通知し、ステップS801に戻る。
In step S806, with respect to the record in which the field of mode 203 of the log priority table is "temporary", the record whose valid time has passed is deleted. For example, if the current time is 10:45 on January 1, 2016 and the log priority table is as shown in FIG. 2, the top of the three records in which the mode 203 field is "temporary" Two records are deleted. This is because these records have passed the valid time, and the remaining one record has not passed the valid time. Next, the process proceeds to step S809.
In step S809, the CPU 150 uses the output unit 190 to notify the user of the status, that is, that the log priority table has been rewritten, and returns to step S801.

(ログを収集するプログラムの更新処理)
図8は、車載装置30がログ収集部として機能するプログラムを更新するプログラム更新処理を示すフローチャートである。以下に説明する各ステップの実行主体は、車載装置30のプログラム更新部153である。車載装置30はサーバ30から更新プログラムを受信するとプログラム更新処理を実行する。なおこの更新プログラムは、図6のステップS706においてサーバから送信されたものである。
(Update process of the program that collects logs)
FIG. 8 is a flowchart showing a program update process for updating a program in which the in-vehicle device 30 functions as a log collecting unit. The execution subject of each step described below is the program update unit 153 of the in-vehicle device 30. When the in-vehicle device 30 receives the update program from the server 30, the in-vehicle device 30 executes the program update process. This update program was transmitted from the server in step S706 of FIG.

ステップS901では、プログラム更新が可能な状況であるか否かを判断する。プログラム更新が可能な状況とは、たとえば車載装置30を搭載している車両が停止している状況である。更新可能な状況であると判断する場合はステップS902に進み、更新可能な状況ではないと判断する場合はステップS901に留まる。
ステップS902では、更新プログラムを用いてプログラムを更新する。プログラムの更新は、プログラム全体の置き換えであってもよいし、プログラムの一部変更、いわゆるパッチの適用でもよい。続くステップS903では、プログラムを起動してログ収集部151を動作させてログ収集を開始する。以上で図8のフローチャートによる処理を終了する。
In step S901, it is determined whether or not the program can be updated. The situation in which the program can be updated is, for example, a situation in which the vehicle equipped with the in-vehicle device 30 is stopped. If it is determined that the situation is updatable, the process proceeds to step S902, and if it is determined that the situation is not updatable, the process stays at step S901.
In step S902, the program is updated using the update program. The program update may be a replacement of the entire program, or a partial change of the program, so-called patch application. In the following step S903, the program is started to operate the log collection unit 151 to start log collection. This completes the process according to the flowchart of FIG.

上述した実施の形態によれば、次の作用効果が得られる。
(1)サーバ10とネットワーク20により接続され車両に搭載される車載装置30であって、ログを収集するログ収集部151と、ログの少なくとも一部を蓄積するためのログ格納部163と、ログ格納部163に蓄積されるログの優先度を示すログ優先度情報が格納されたログ優先度情報格納部162と、ログ優先度情報に基づきログ格納部163に蓄積するログを決定する蓄積ログ決定部(図5のステップS605〜S607)と、ログ格納部163に蓄積されたログをサーバ10に送信する通信部170と、サーバ10からの更新指令に基づきログ優先度情報格納部162に格納されたログ優先度情報を更新するログ優先度テーブル管理部152と、を備える。
車載装置30をこのように構成したので、サーバ10からの指令に基づき、ログの優先度を変更することができる。したがって、車載装置のおかれた状況に応じて適切なログを収集することができる。さらにこのログをサーバ10が解析することにより実際に攻撃が発生していることを判断できる。
According to the above-described embodiment, the following effects can be obtained.
(1) An in-vehicle device 30 connected to a server 10 by a network 20 and mounted on a vehicle, a log collecting unit 151 for collecting logs, a log storage unit 163 for accumulating at least a part of logs, and a log. The log priority information storage unit 162 in which the log priority information indicating the priority of the log stored in the storage unit 163 is stored, and the storage log determination for determining the log to be stored in the log storage unit 163 based on the log priority information. Units (steps S605 to S607 in FIG. 5), a communication unit 170 that transmits the log accumulated in the log storage unit 163 to the server 10, and a log priority information storage unit 162 based on an update command from the server 10. It is provided with a log priority table management unit 152 for updating the log priority information.
Since the in-vehicle device 30 is configured in this way, the priority of the log can be changed based on the command from the server 10. Therefore, it is possible to collect appropriate logs according to the situation of the in-vehicle device. Further, the server 10 can analyze this log to determine that an attack is actually occurring.

(2)車載装置30は、ログ収集部151が収集するログの内容を示すログ情報が格納されたログ情報格納部161と、ログ情報格納部に格納されたログ情報を更新するプログラム更新部153とを備える。
そのため、サーバ10が攻撃の可能性を検出した場合に、従前は収集していなかった情報を収集することができる。
(2) The in-vehicle device 30 includes a log information storage unit 161 in which log information indicating the contents of the log collected by the log collection unit 151 is stored, and a program update unit 153 that updates the log information stored in the log information storage unit. And.
Therefore, when the server 10 detects the possibility of an attack, it is possible to collect information that was not previously collected.

(3)ログ収集部151は、ログ情報が組み込まれたログ取得プログラムであり、プログラム更新部153は、ログ取得プログラムを書き換えることによりログ情報を更新する。
そのためログ収集部151は、ログとして収集する情報を示す情報を外部から読み込む必要がないので、高速に動作することができる。
(3) The log collection unit 151 is a log acquisition program in which log information is incorporated, and the program update unit 153 updates the log information by rewriting the log acquisition program.
Therefore, the log collecting unit 151 does not need to read the information indicating the information to be collected as a log from the outside, so that the log collecting unit 151 can operate at high speed.

(4)車載装置30は、車両1の乗員へ提供するサービスを制御するサービス制御部154を備える。サービス制御部154は、サーバ10からの指令に基づきサービスを停止する。そのため、攻撃の影響を受けるサービスをサーバ10からの指令に基づき停止させることができる。 (4) The in-vehicle device 30 includes a service control unit 154 that controls services provided to the occupants of the vehicle 1. The service control unit 154 stops the service based on the command from the server 10. Therefore, the service affected by the attack can be stopped based on the command from the server 10.

(5)ログ優先度情報は、有効時間および有効エリアの少なくとも一方に関する条件を含む。蓄積ログ決定部(図5のステップS605〜S607)は、ログが収集されたときの時刻および車載装置の位置の少なくとも一方が、ログ優先度情報における条件に合致する場合に、ログ優先度情報を有効とみなしてログ格納部163に蓄積するログを決定する。
そのため、ログ収集部151が車載装置30の状態に応じてログの優先度を判断することができる。これは、車載装置30の位置がエリア205に格納された条件を満たすか否かの判断を行う場合や、ログ優先度テーブル管理部152により有効時間が経過したレコードが削除される前にログ収集部151がログ優先度テーブルを参照する場合に有効である。
(5) Log priority information includes conditions relating to at least one of valid time and valid area. The storage log determination unit (steps S605 to S607 in FIG. 5) determines the log priority information when at least one of the time when the log is collected and the position of the in-vehicle device matches the conditions in the log priority information. It is considered valid and the log to be accumulated in the log storage unit 163 is determined.
Therefore, the log collecting unit 151 can determine the priority of the log according to the state of the in-vehicle device 30. This is when it is determined whether or not the position of the in-vehicle device 30 satisfies the condition stored in the area 205, and the log is collected before the record whose valid time has passed is deleted by the log priority table management unit 152. This is effective when unit 151 refers to the log priority table.

(6)ログ収集システム1は、車載装置30、および車載装置30とネットワーク20により接続されるサーバ10から構成される。サーバ10は、車載装置30から受信したログを解析し攻撃の可能性を検知するログ解析部101と、ログ解析部101が攻撃の可能性を検知すると、車載装置30に更新指令を送信して、ログ優先度情報格納部162に格納されたログ優先度情報を更新させるログ優先度変更指示部103と、を備える。
そのためログ収集システム1は、車載装置30が送信したログからサーバ10が攻撃の可能性を検知すると、車載装置30に蓄積させるログの優先度を変更させることができる。
(6) The log collection system 1 is composed of an in-vehicle device 30 and a server 10 connected to the in-vehicle device 30 by a network 20. The server 10 analyzes the log received from the in-vehicle device 30 and detects the possibility of an attack, and when the log analysis unit 101 detects the possibility of an attack, the server 10 transmits an update command to the in-vehicle device 30. , A log priority change instruction unit 103 for updating the log priority information stored in the log priority information storage unit 162.
Therefore, when the server 10 detects the possibility of an attack from the log transmitted by the vehicle-mounted device 30, the log collecting system 1 can change the priority of the log stored in the vehicle-mounted device 30.

(7)車載装置30は、ログ収集部151が収集するログの内容を示すログ情報が格納されたログ情報格納部161を備える。サーバ10は、ログ情報格納部161に格納されたログ情報を更新させるログ変更指示部104を備える。
そのためサーバ10は、車載装置30が収集するログの内容を変更させることができる。これにより、サーバ10が攻撃の可能性を検出した際に、車載装置30に詳細なログを収集させることができる。
(7) The in-vehicle device 30 includes a log information storage unit 161 in which log information indicating the contents of the log collected by the log collection unit 151 is stored. The server 10 includes a log change instruction unit 104 that updates the log information stored in the log information storage unit 161.
Therefore, the server 10 can change the contents of the log collected by the in-vehicle device 30. As a result, when the server 10 detects the possibility of an attack, the in-vehicle device 30 can collect detailed logs.

(8)ログ優先度変更指示部103は、攻撃の可能性が検知されたログを送信した車載装置30に加えて、当該車載装置と同一機種であること、および攻撃の可能性が検知されたログが取得された位置から所定距離以内に存在すること、の少なくとも一方の条件を満たす他の車載装置30にも更新指令を出力する。
そのため、サーバ10は攻撃を受けている可能性が高い複数の他の車載装置30からも、攻撃が発生したことの判断に用いるログを収集することができる。特定の1台の車載装置30のログだけに基づいて攻撃が発生したと判断することは困難、もしくは過検出となる可能性が高いので、サーバ10は複数の車載装置30のログを用いて総合的に判断することができる。
(8) In addition to the in-vehicle device 30 that transmitted the log in which the possibility of attack was detected, the log priority change instruction unit 103 detected that it was the same model as the in-vehicle device and that the possibility of attack was detected. The update command is also output to the other in-vehicle device 30 that satisfies at least one of the conditions that the log exists within a predetermined distance from the acquired position.
Therefore, the server 10 can also collect logs used for determining that an attack has occurred from a plurality of other in-vehicle devices 30 that are likely to be attacked. Since it is difficult to determine that an attack has occurred based only on the logs of one specific in-vehicle device 30, or there is a high possibility of over-detection, the server 10 comprehensively uses the logs of a plurality of in-vehicle devices 30. Can be judged.

(9)車載装置30は、車両の乗員へ提供するサービスを制御するサービス制御部154を備える。サーバ10は、ログ解析部101が攻撃を検知すると、車載装置30にサービスの停止指令を出力するサービス指示部110を備える。
そのため車載装置30は、攻撃の影響を受けるサービスをサーバ10からの指令に基づき停止させることができる。
(9) The in-vehicle device 30 includes a service control unit 154 that controls services provided to the occupants of the vehicle. The server 10 includes a service instruction unit 110 that outputs a service stop command to the in-vehicle device 30 when the log analysis unit 101 detects an attack.
Therefore, the in-vehicle device 30 can stop the service affected by the attack based on the command from the server 10.

(10)ログ優先度情報は、有効時間および有効エリアの少なくとも一方に関する条件を含む。ログ優先度変更指示部103は、ログ解析部101により攻撃の可能性が検知されたログを車載装置30が収集したときの時刻および位置の少なくとも一方に基づいて、更新後のログ優先度情報における有効時間および有効エリアの少なくとも一方を決定する。
そのためログ収集システム1は、攻撃の可能性が検知されたログが収集された時刻および位置の少なくとも一方に基づいて臨時ログを収集し、実際に攻撃が発生していることを判断することができる。
(10) Log priority information includes conditions relating to at least one of valid time and valid area. The log priority change instruction unit 103 sets the updated log priority information based on at least one of the time and position when the in-vehicle device 30 collects the log in which the possibility of attack is detected by the log analysis unit 101. Determine at least one of the effective time and effective area.
Therefore, the log collection system 1 can collect temporary logs based on at least one of the time and position at which the log in which the possibility of an attack was detected was collected, and can determine that an attack is actually occurring. ..

上述した実施の形態は、以下のように変形してもよい。
(変形例1)
サーバ10は、ログ優先度テーブルを部分的に更新させるログ優先度テーブル変更要求メッセージを作成してもよい。この場合は、ログ優先度テーブル変更要求メッセージには、削除対象となる既存のレコードを示す情報と、追加されるレコードの内容を示す情報が含まれる。この変形例1によれば、ログ優先度テーブル変更要求メッセージのデータ容量を削減することができる。
The above-described embodiment may be modified as follows.
(Modification example 1)
The server 10 may create a log priority table change request message that partially updates the log priority table. In this case, the log priority table change request message includes information indicating the existing record to be deleted and information indicating the content of the record to be added. According to this modification 1, the data capacity of the log priority table change request message can be reduced.

(変形例2)
サーバ10のオペレータが新たな攻撃手法に関する知見を得て、その攻撃の可能性を検知できるようにログテーブルやログ優先度テーブルを書き換え、ログ優先度変更指示部103やログ変更指示部104を用いてこれらを車載装置30に送信してもよい。この変形例2によれば、車載装置30の出荷後に明らかになった攻撃手法へも対処することができる。ただし書き換えるのは、ログテーブルおよびログ優先度テーブルの一方だけでもよい。
(Modification 2)
The log table and log priority table are rewritten so that the operator of the server 10 can obtain knowledge about a new attack method and detect the possibility of the attack, and use the log priority change instruction unit 103 and the log change instruction unit 104. These may be transmitted to the in-vehicle device 30. According to this modification 2, it is possible to deal with the attack method that became clear after the in-vehicle device 30 was shipped. However, only one of the log table and the log priority table may be rewritten.

(変形例3)
サーバ10は、車載装置30に新たなサービスを実行するプログラムを送信し、車載装置30にそのサービスを実行させてもよい。その場合は、車載装置30のログテーブル、ログ優先度テーブル、および臨時ログテーブルにそのサービスに関する情報が追加される。
(Modification example 3)
The server 10 may transmit a program for executing a new service to the in-vehicle device 30 and cause the in-vehicle device 30 to execute the service. In that case, information about the service is added to the log table, the log priority table, and the temporary log table of the in-vehicle device 30.

たとえば、車載装置30が収集した走行距離等の車両情報に基づき、サーバ10からユーザに部品交換時期や点検を紹介するメッセージが配信されるリモートメンテナンスサービスが追加される場合は、以下の問題が考えられる。すなわち、サーバ10を管理しているサービス提供者以外がサーバ10になりすまして車載装置30にメッセージを送信し、ユーザが希望しない広告や虚偽の情報が車載装置30に表示される恐れがある。そこでこのサービスを追加する際に、メッセージの受信時刻、およびメッセージの送信元を収集するようにログテーブルを変更する。このとき、これらの条件種別204のフィールドには「常時」が入力される。
なお、事前に提供されていたサービスの機能が拡張され、新たにログを収集する必要が発生した場合にも同様にテーブル、ログ優先度テーブル、および臨時ログテーブルを修正することで対応できる。
For example, when a remote maintenance service is added in which a message introducing parts replacement time and inspection is delivered from the server 10 to the user based on vehicle information such as the mileage collected by the in-vehicle device 30, the following problems are considered. Be done. That is, a service provider other than the service provider who manages the server 10 may impersonate the server 10 to send a message to the in-vehicle device 30, and an advertisement or false information not desired by the user may be displayed on the in-vehicle device 30. Therefore, when adding this service, the log table is changed to collect the message reception time and the message source. At this time, "always" is input in the fields of these condition types 204.
If the function of the service provided in advance is expanded and it becomes necessary to collect new logs, it can be dealt with by modifying the table, log priority table, and temporary log table in the same manner.

(変形例4)
実施の形態ではログ解析部101が臨時ログを解析し、攻撃が実際に発生していることを検出すると車載装置30にサービスを停止させた(図6、ステップS712)。しかし、ログ解析部101が攻撃発生の可能性があると判断した際に車載装置30にサービスを停止させてもよい。この変形例4によれば、攻撃によるサービスへの悪影響をさらに低減することができる。
(Modification example 4)
In the embodiment, the log analysis unit 101 analyzes the temporary log, and when it detects that an attack is actually occurring, the in-vehicle device 30 stops the service (FIG. 6, step S712). However, when the log analysis unit 101 determines that an attack may occur, the in-vehicle device 30 may stop the service. According to this modification 4, the adverse effect of the attack on the service can be further reduced.

(変形例5)
実施の形態では、臨時ログの解析後に攻撃発生と判断した場合に、オペレータへの通知を行っているが、以下のように変更してもよい。すなわち、はじめに攻撃発生の可能性があると判断した場合にもオペレータに通知し、オペレータが変更後のログテーブルおよびログ優先度テーブルを確認した上で、ログ優先度テーブル変更要求メッセージを送信してもよい。
(Modification 5)
In the embodiment, when it is determined that an attack has occurred after analyzing the temporary log, the operator is notified, but the following may be changed. That is, even if it is determined that an attack may occur at the beginning, the operator is notified, the operator checks the changed log table and log priority table, and then sends a log priority table change request message. May be good.

(変形例6)
実施の形態では、車載装置30からログを収集するとログの解析を開始したが、以下のような場合にログを解析してもよい。たとえば、一定の時間が経過した場合、一定量以上のログが蓄積した場合、一定台数以上の車載装置30のログを収集した場合、または入力部130を用いたオペレータからの解析開始指令を受けた場合にログを解析してもよい。
(Modification 6)
In the embodiment, when the log is collected from the in-vehicle device 30, the log analysis is started, but the log may be analyzed in the following cases. For example, when a certain amount of time has passed, a certain amount of logs have been accumulated, a certain number or more of in-vehicle devices 30 have been collected, or an analysis start command has been received from an operator using the input unit 130. The log may be analyzed in some cases.

(変形例7)
車載装置30は、ログを収集した際にログの送信可否を優先的に判断してもよい。すなわち、図6においてステップS601の実行後にステップS604に進み、ステップS604において否定判断された場合にステップS602に進んでもよい。この場合は、ステップS603において否定判断されるとステップS605に進む。この変形例7によれば、サーバ10と通信が可能な場合にログをマージする必要がない。
(Modification 7)
The in-vehicle device 30 may preferentially determine whether or not the log can be transmitted when the log is collected. That is, in FIG. 6, the process may proceed to step S604 after the execution of step S601, and if a negative determination is made in step S604, the process may proceed to step S602. In this case, if a negative determination is made in step S603, the process proceeds to step S605. According to this modification 7, it is not necessary to merge the logs when communication with the server 10 is possible.

(変形例8)
車載装置30のログ収集部151は、ログとして収集する情報を示す情報を外部から読み込んでもよい。すなわち、ログとして収集する情報を示す情報がプログラムにハードコーディングされていなくてもよい。この場合は、メモリ160にログテーブル格納部161が格納され、ログ収集部151はログテーブル格納部161に格納されたログテーブルを参照してログを収集する。
この変形例8によれば、ログ収集部151がログとして収集する情報を容易に変更することができる。
(Modification 8)
The log collecting unit 151 of the in-vehicle device 30 may read information indicating information to be collected as a log from the outside. That is, the information indicating the information to be collected as a log does not have to be hard-coded in the program. In this case, the log table storage unit 161 is stored in the memory 160, and the log collection unit 151 refers to the log table stored in the log table storage unit 161 to collect logs.
According to this modification 8, the information collected by the log collecting unit 151 as a log can be easily changed.

(変形例9)
サーバ10は、ログ優先度テーブルを変更する対象を特定する情報をログ優先度テーブル変更要求メッセージに含め、ログ優先度テーブル変更要求メッセージをログ優先度テーブルを変更する対象以外にも送信してもよい。この場合は、ログ優先度テーブル変更要求メッセージを受信した車載装置30が、当該車載装置30がログ優先度テーブル変更要求メッセージの適用対象であるか否かを判断する。
この変形例9によれば、送信対象を特定せずにログ優先度テーブル変更要求メッセージを送信できるので、サーバ10の送信先の決定が容易である。
(Modification 9)
Even if the server 10 includes the information for identifying the target for changing the log priority table in the log priority table change request message and sends the log priority table change request message to other than the target for changing the log priority table. good. In this case, the vehicle-mounted device 30 that has received the log priority table change request message determines whether or not the vehicle-mounted device 30 is the target of the log priority table change request message.
According to this modification 9, since the log priority table change request message can be transmitted without specifying the transmission target, it is easy to determine the transmission destination of the server 10.

(変形例10)
実施の形態では、サーバ10に複数の車載装置30が接続されるとしたが、サーバ10に接続される車載装置30は一台だけでもよい。
(Modification example 10)
In the embodiment, it is assumed that a plurality of vehicle-mounted devices 30 are connected to the server 10, but only one vehicle-mounted device 30 may be connected to the server 10.

(変形例11)
実施の形態では、ログ優先度テーブルが更新される場合(図6のステップS702:YESの場合)には、車載装置30のログ収集部151の動作を変更する更新プログラムが作成され送信された(図6のステップS706)。しかし、更新後のログ優先度テーブルに記載されるログ種別が既存のログ収集部151において全て収集される場合には、更新プログラムの作成および送信を省略してもよい。
(Modification 11)
In the embodiment, when the log priority table is updated (step S702 in FIG. 6: YES), an update program for changing the operation of the log collecting unit 151 of the in-vehicle device 30 is created and transmitted (step S702 in FIG. 6: YES). Step S706 in FIG. 6). However, if all the log types described in the updated log priority table are collected by the existing log collection unit 151, the creation and transmission of the update program may be omitted.

上述した実施の形態および変形例は、それぞれ組み合わせてもよい。
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
The above-described embodiments and modifications may be combined.
Although various embodiments and modifications have been described above, the present invention is not limited to these contents. Other aspects conceivable within the scope of the technical idea of the present invention are also included within the scope of the present invention.

1 … ログ収集システム
10 … サーバ
20 … ネットワーク
30 … サーバ
30 … 車載装置
101 … ログ解析部
102 … 臨時ログ情報作成部
103 … ログ優先度変更指示部
104 … ログ変更指示部
105 … サービス指示部
110 … サービス停止指令部
110 … メモリ
111 … 収集ログ格納部
112 … ログテーブル集格納部
113 … ログ優先度テーブル集格納部
114 … 臨時ログテーブル格納部
120 … サーバ通信部
151 … ログ収集部
152 … ログ優先度テーブル管理部
153 … プログラム更新部
154 … サービス制御部
160 … メモリ
161 … ログテーブル格納部
162 … ログ優先度テーブル格納部
163 … ログ格納部
164 … 車載装置情報格納部
165 … 更新プログラム格納部
170 … 車載通信部
1 ... Log collection system 10 ... Server 20 ... Network 30 ... Server 30 ... In-vehicle device 101 ... Log analysis unit 102 ... Temporary log information creation unit 103 ... Log priority change instruction unit 104 ... Log change instruction unit 105 ... Service instruction unit 110 … Service stop command unit 110… Memory 111… Collection log storage unit 112… Log table collection storage unit 113… Log priority table collection storage unit 114… Temporary log table storage unit 120… Server communication unit 151… Log collection unit 152… Log Priority table management unit 153 ... Program update unit 154 ... Service control unit 160 ... Memory 161 ... Log table storage unit 162 ... Log priority table storage unit 163 ... Log storage unit 164 ... In-vehicle device information storage unit 165 ... Update program storage unit 170… In-vehicle communication unit

Claims (6)

車両に搭載される複数の車載装置とネットワークにより接続され、前記車載装置において蓄積されたログを受信して解析するサーバ装置におけるログ解析方法であって、
前記複数の車載装置から受信したログを解析し、各車載装置において攻撃が発生した可能性の判断する第1ステップと、
前記第1ステップにおいて攻撃が発生した可能性があると判断した場合、前記複数の車載装置のうち臨時ログの収集対象となる車載装置を決定する第2ステップと、
前記第2ステップにおいて臨時ログの収集対象となった車載装置に対して、当該車載装置が蓄積するログの優先度を示すログ優先度テーブルの変更を要求する、ログ優先度テーブル変更要求メッセージを送信する第3ステップと、
前記第3ステップにおいて前記ログ優先度テーブル変更要求メッセージを送信した車載装置から臨時ログを受信した場合に、当該臨時ログを解析して攻撃発生の有無を判断する第4ステップと、
前記第4ステップにおいて攻撃が発生したと判断した場合、及び、前記第3ステップにおいて前記ログ優先度テーブル変更要求メッセージを送信した車載装置から所定時間以内に臨時ログを受信しない場合に、攻撃発生の通知を行なう第5ステップと、
を有することを特徴とするログ解析方法。
It is a log analysis method in a server device that is connected to a plurality of in-vehicle devices mounted on a vehicle by a network and receives and analyzes logs accumulated in the in-vehicle devices.
The first step of analyzing the logs received from the plurality of in-vehicle devices and determining the possibility that an attack has occurred in each in-vehicle device, and
When it is determined that an attack may have occurred in the first step, the second step of determining the in-vehicle device for which the temporary log is to be collected from the plurality of in-vehicle devices, and
A log priority table change request message is transmitted to the in-vehicle device for which the temporary log is collected in the second step, requesting the in-vehicle device to change the log priority table indicating the priority of the logs accumulated in the in-vehicle device. The third step to do and
In the third step, when a temporary log is received from the in-vehicle device that sent the log priority table change request message, the fourth step of analyzing the temporary log to determine whether or not an attack has occurred, and the fourth step.
An attack occurs when it is determined that an attack has occurred in the fourth step, and when the temporary log is not received within a predetermined time from the in-vehicle device that sent the log priority table change request message in the third step. The fifth step of notifying and
A log analysis method characterized by having.
請求項1に記載のログ解析方法において、
前記第5ステップにおける攻撃発生の通知は、前記サーバ装置のオペレータに対する通知であって、前記オペレータがサービスの緊急停止が必要と判断した場合に、当該オペレータから前記サーバ装置にサービスの緊急停止が指示されることを特徴とするログ解析方法。
In the log analysis method according to claim 1,
The notification of the occurrence of an attack in the fifth step is a notification to the operator of the server device, and when the operator determines that an emergency stop of the service is necessary, the operator instructs the server device to stop the service in an emergency. A log analysis method characterized by being performed.
請求項1に記載のログ解析方法において、
前記第2ステップにおける前記臨時ログの収集対象となる車載装置は、前記第1ステップにおいて攻撃が発生した可能性があると判断された車両装置から所定距離内に存在する車両装置であることを特徴とするログ解析方法。
In the log analysis method according to claim 1,
The in-vehicle device for which the temporary log is collected in the second step is a vehicle device that exists within a predetermined distance from the vehicle device that is determined to have an attack in the first step. Log analysis method.
請求項1に記載のログ解析方法において、
前記第2ステップにおける前記臨時ログの収集対象となる車載装置は、前記第1ステップにおいて攻撃が発生した可能性があると判断された車両装置と同じ機種または類似する機種であることを特徴とするログ解析方法。
In the log analysis method according to claim 1,
The in-vehicle device for which the temporary log is collected in the second step is the same model as or similar to the vehicle device determined to have an attack in the first step. Log analysis method.
請求項1に記載のログ解析方法において、
前記第3ステップにおいて送信される前記ログ優先度テーブル変更要求メッセージにより追加が要求されるレコードの優先度は他のレコードに対して最優先とされることを特徴とするログ解析方法。
In the log analysis method according to claim 1,
A log analysis method, characterized in that the priority of a record requested to be added by the log priority table change request message transmitted in the third step is given the highest priority over other records.
請求項1に記載されたログ解析方法を行うサーバ装置にネットワークにより接続された車載装置におけるログ優先度テーブル管理方法であって、
前記サーバ装置から前記ログ優先度テーブル変更要求メッセージを受信する第6ステップと、
受信した前記ログ優先度テーブル変更要求メッセージにしたがって、当該車載装置内に格納されたログ優先度テーブルを更新する第7ステップと、
前記ログ優先度テーブルにおいて、臨時であることを示されたレコードについて、有効時間が経過済みであるレコードを削除する第8ステップと、
を有することを特徴とするログ優先度テーブル管理方法。
A log priority table management method for an in-vehicle device connected to a server device that performs the log analysis method according to claim 1 by a network.
The sixth step of receiving the log priority table change request message from the server device, and
The seventh step of updating the log priority table stored in the in-vehicle device according to the received log priority table change request message, and
In the log priority table, for the record indicated to be temporary, the eighth step of deleting the record whose valid time has expired, and
A log priority table management method characterized by having.
JP2020080833A 2016-08-25 2020-04-30 Log analysis method and log priority table management method Active JP6913206B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020080833A JP6913206B2 (en) 2016-08-25 2020-04-30 Log analysis method and log priority table management method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016164804A JP6701030B2 (en) 2016-08-25 2016-08-25 In-vehicle device, log collection system
JP2020080833A JP6913206B2 (en) 2016-08-25 2020-04-30 Log analysis method and log priority table management method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016164804A Division JP6701030B2 (en) 2016-08-25 2016-08-25 In-vehicle device, log collection system

Publications (2)

Publication Number Publication Date
JP2020129395A JP2020129395A (en) 2020-08-27
JP6913206B2 true JP6913206B2 (en) 2021-08-04

Family

ID=72174714

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020080833A Active JP6913206B2 (en) 2016-08-25 2020-04-30 Log analysis method and log priority table management method

Country Status (1)

Country Link
JP (1) JP6913206B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8966622B2 (en) * 2010-12-29 2015-02-24 Amazon Technologies, Inc. Techniques for protecting against denial of service attacks near the source
JP6488600B2 (en) * 2014-09-11 2019-03-27 富士ゼロックス株式会社 Information processing system, program, and information processing apparatus
KR101584001B1 (en) * 2014-10-22 2016-01-08 현대자동차주식회사 Method and System for Detecting Misbehavior for Vehicle-to-Anything Communication
JP6306499B2 (en) * 2014-12-25 2018-04-04 クラリオン株式会社 Fault information providing server and fault information providing method

Also Published As

Publication number Publication date
JP2020129395A (en) 2020-08-27

Similar Documents

Publication Publication Date Title
JP6701030B2 (en) In-vehicle device, log collection system
US11680817B2 (en) Surrounding information collection system and surrounding information acquisition apparatus
JP5593245B2 (en) Method for controlling disclosure of trace data related to moving object, and computer and computer program thereof
CN105144264B (en) Driving experience is enriched with cloud assistance
CN104079554B (en) Vehicle-mounted relay and communication system
CN112437056B (en) Security processing method and server
WO2015182416A1 (en) Virtual sensor metadata structure
JP2017111796A (en) Security processing method and server
US10168424B1 (en) Management of mobile objects
JP2017517779A (en) Method, server and terminal for processing vehicle internet data
JP2018169880A (en) Vehicle search system, license plate information accumulation device, and method
CN110310505A (en) Traffic information providing system and traffic information providing method
JP6230457B2 (en) Information processing apparatus, information processing method, and information processing program
JP2020038405A (en) Data collector, data collecting system, method for collecting data, and on-vehicle device
CN108986456B (en) Restricted driving tail number acquisition method, device, equipment and computer readable storage medium
US20140031061A1 (en) Systems And Methods For Monitoring Device And Vehicle
JP6913206B2 (en) Log analysis method and log priority table management method
JPWO2014034036A1 (en) Rule distribution device, event processing system, rule distribution method, and rule distribution program
JP2019200658A (en) Information communication system and method thereof and server
CN114495505A (en) Method, device, medium and server for predicting passing time of congested road section
JP2013225201A (en) On-vehicle information processor and center device
JPWO2012043300A1 (en) Information providing server, information providing system, information providing method, and program
JP2020038407A (en) Data collector, data collecting system, and method for collecting data
JP7371562B2 (en) Information processing device, information processing system, and program
CN111163433B (en) Method and device for collecting data records of a predefined route section based on a vehicle

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200430

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210531

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210709

R150 Certificate of patent or registration of utility model

Ref document number: 6913206

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150