JP7035791B2 - サイバー攻撃を検知する異常検知装置および異常検知方法 - Google Patents

サイバー攻撃を検知する異常検知装置および異常検知方法 Download PDF

Info

Publication number
JP7035791B2
JP7035791B2 JP2018095688A JP2018095688A JP7035791B2 JP 7035791 B2 JP7035791 B2 JP 7035791B2 JP 2018095688 A JP2018095688 A JP 2018095688A JP 2018095688 A JP2018095688 A JP 2018095688A JP 7035791 B2 JP7035791 B2 JP 7035791B2
Authority
JP
Japan
Prior art keywords
bus
data frame
value
attack
detection device
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
JP2018095688A
Other languages
English (en)
Other versions
JP2019200670A5 (ja
JP2019200670A (ja
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.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Priority to JP2018095688A priority Critical patent/JP7035791B2/ja
Priority to EP19804554.4A priority patent/EP3796195B1/en
Priority to PCT/JP2019/008746 priority patent/WO2019220746A1/ja
Priority to CN201980028573.6A priority patent/CN112119392B/zh
Publication of JP2019200670A publication Critical patent/JP2019200670A/ja
Publication of JP2019200670A5 publication Critical patent/JP2019200670A5/ja
Application granted granted Critical
Publication of JP7035791B2 publication Critical patent/JP7035791B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • 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
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • 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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

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

Description

本開示は、ネットワークに接続された機器に対するサイバー攻撃を検知する装置及び方法に関する。
車両においては、エンジン、ブレーキのみならず複数の機器を電子制御するECUが車載ネットワークに接続され、かつ、車載ネットワークは外部のネットワークに接続されている。
近年、車両の自動運転技術の開発が進められているが、車両の自動運転技術の進化に伴い、車両内の各機器の電子制御の重要度が増す状況において、車載ネットワークに接続された機器に対して外部からのサイバー攻撃を迅速に検知し、対処することは重要な課題である。
このため、車載ネットワークに対するサイバー攻撃を検知する技術が種々開発されている。例えば、特許文献1、2は、データの受信間隔と所定周期とを比較することでサイバー攻撃(不正の検出)を行う技術を開示している。
国際公開第2014/115455号ガゼット 特許2017-73765号明細書
本発明は、車載ネットワークのようなネットワークに接続された機器に対するサイバー攻撃を検知する異常検知装置及び異常検知方法を提供する。
本発明の第一の態様において、所定の周期でデータフレームが伝送されるバスに接続され、当該バスに接続された機器への攻撃を検知する異常検知装置が提供される。異常検知装置は、バスに伝送されるデータフレームを受信するフレーム受信部と、検査対象のデータフレームの受信周期が正常範囲にあるか否かを、正常範囲を示す閾値を用いて判断し、その判断結果に基づき攻撃の有無を検知する攻撃検知部と、フレーム受信部が受信したデータフレームの内容に基づき、バスの混雑さの程度を示すバス負荷値を算出するバス負荷計算部と、バス負荷計算部が算出したバス負荷値に応じて閾値を決定する受信周期閾値計算部と、を備える。
本発明の第二の態様において、所定の周期でデータフレームが伝送されるバスに接続され、当該バスに接続された機器への攻撃を検知する異常検知方法が提供される。異常検知方法は、データフレームを受信するステップと、受信したデータフレームの内容に基づき、バスの混雑さの程度を示すバス負荷値を算出するステップと、算出したバス負荷値に基づき、データフレームの受信周期の正常範囲の閾値を決定するステップと、決定した閾値を用いて、検査対象のデータフレームの受信周期が正常範囲にあるか否かを判断するステップと、その判断結果に基づき攻撃の有無を検知するステップと、を含む。
本発明の第三の態様において、所定の周期でデータフレームが伝送されるバスに接続され、当該バスに接続された機器への攻撃を検知する異常検知装置を制御するプログラムが提供される。当該プログラムは、異常検知装置の制御部に、データフレームを受信するステップと、受信したデータフレームの内容に基づきバスの混雑さの程度を示すバス負荷値を算出するステップと、算出したバス負荷値に基づき、データフレームの受信周期の正常範囲の閾値を決定するステップと、決定した閾値を用いて、検査対象のデータフレームの受信周期が正常範囲にあるか否かを判断するステップと、その判断結果に基づき攻撃の有無を検知するステップと、を実行させる。
本発明によれば、バスの混雑度合いに応じて受信周期の判断における閾値を変化させる。このため、バスの混雑によりデータフレームが遅延した場合において、正常フレームを攻撃フレームであると誤検知することを防止しつつ、バスが混雑していない場合には精度よく、攻撃フレームを検知することができる。
本開示の異常検知装置の車両内ネットワークへの適用例を示した図 ゲートウェイ装置のハードウェア構成を示す図 ゲートウェイ装置の機能的な構成を示す図 CAN(Controller Area Network)ネットワークで送信されるデータフレームの構成を示す図 ゲートウェイ装置の制御において参照される各種のデータを示す図 実施の形態1におけるゲートウェイ装置による攻撃検知動作を説明するための図 実施の形態1におけるゲートウェイ装置による攻撃検知動作を示すフローチャート 単位時間当たりの受信ビット総数の算出方法を説明するための図 期待受信時刻範囲を説明するための図 実施の形態2におけるゲートウェイ装置による攻撃検知動作を説明するための図 実施の形態2におけるゲートウェイ装置による攻撃検知動作を示す第1のフローチャート 実施の形態2におけるゲートウェイ装置による攻撃検知動作を示す第2のフローチャート
以下、適宜図面を参照しながら、本発明のネットワークに対する異常検知装置の実施の形態を詳細に説明する。
(適用例)
本開示の異常検知装置は、ネットワークに接続された機器に対する攻撃(例えば、DoS攻撃)を検知する装置である。図1は、本開示の異常検知装置を車両内のネットワークに適用した例を示した図である。図1に示すように、車両10において車載ネットワーク200a、200bが設けられている。車載ネットワーク200aと車載ネットワーク200bはゲートウェイ装置100によって接続されている。車載ネットワーク200aは、バス201aと、バス201aに接続された複数のECU(Electronic Control Unit:電子制御ユニット)300とを含む。車載ネットワーク200bは、バス201bと、バス201bに接続された複数のECU300とを含む。ECU300は、それに接続される機器を電子的に制御したり、機器から情報を収集したりする装置である。ECU300には、例えば、エンジン、ブレーキ、パワーウィンドウのアクチュエータ、各種センサ等が接続される。なお、以下では、説明の便宜上、車載ネットワーク200aと車載ネットワーク200bをまとめて「車載ネットワーク200」と称することがある。また、バス201aとバス201bをまとめて「バス201」と称することがある。
ゲートウェイ装置100は、車両10のECU300へのサイバー攻撃を検知する機能を有し、異常検知装置として動作する。ゲートウェイ装置100は攻撃を検知したときに、ドライバ、車両の所有者、所定の機関、及びECUに、攻撃を受けた旨を通知する。例えばECUはこの通知にしたがい安全を確保するためにエンジンやブレーキを制御する。
(実施の形態1)
以下、本開示の異常検知装置の一実施形態であるゲートウェイ装置の構成及び動作について説明する。
1.ゲートウェイ装置の構成
図1に示すように、本実施の形態1のゲートウェイ装置100は車載ネットワーク200に接続され、ネットワーク200への攻撃を検知する機能を有する。ゲートウェイ装置100は、ネットワーク200上で周期的に伝送されるデータフレームの受信周期に基づいて攻撃を検知する。
図2は、ゲートウェイ装置100のハードウェア構成を示す図である。同図に示すように、ゲートウェイ装置100はCPU110を含み、所定のプログラムを実行することによって所定の機能を実現する。CPU110に変えて、他の種類の汎用プロセッサ、例えばMPUを用いてもよい。または、CPU110に変えて、所定の機能を実現するように専用に設計されたプロセッサを用いてもよい。すなわち、ゲートウェイ装置100はCPU、MPU、GPU、DSP、FPGA、ASIC等、種々のプロセッサを含むことができる。
さらに、ゲートウェイ装置100は、RAM120と、ROM130と、データ記憶部140とを備える。RAM120は、CPU110が演算を実行するにあたって、必要な情報やプログラムを一時的に記憶するメモリであり、CPU110から適宜アクセスされる作業領域である。ROM130はCPU110で実行されるプログラムを記憶するメモリである。なお、CPU110で実行されるプログラムは、通信回線を介してサーバからダウンロードされてもよいし、不揮発メモリ等のボード上の内部記録媒体、または、光ディスクやメモリカード等の外部記録媒体を介してゲートウェイ装置100に提供されてもよい。
データ記憶部140は、ゲートウェイ装置100の制御において参照する種々の情報を記録する記録媒体である。データ記憶部140は、例えば、不揮発メモリ等の内部記録媒体、または、ハードディスク(HDD)、ソリッドステートドライブ(SSD)、光ディスク装置等の外部記録媒体で構成できる。
さらに、ゲートウェイ装置100は、第1及び第2通信インタフェース150,160を備える。第1通信インタフェース150は車載ネットワーク200aに接続するECUとの間でデータのやりとりを行うための通信回路または通信モジュールである。第2通信インタフェース160は、車載ネットワーク200bに接続するECUとの間でデータのやりとりを行うための通信回路または通信モジュールである。本実施の形態では、第1ないし第2通信インタフェース150、160は、車載ネットワークにおいて広く使用されているCAN(Controller Area Network)プロトコルにしたがい通信を行なう。なお、第1ないし第2通信インタフェース150、160はCANプロトコル以外のプロトコルにしたがい通信を行ってもよい。例えば、CAN FDプロトコルにしたがい通信を行なってもよい。
図3は、ゲートウェイ装置100の機能的な構成を示した図である。図3に示す各機能はCPU110が所定のプログラムを実行することで実現される。
ゲートウェイ装置100は、フレーム受信部121と、フレーム確認部111と、ビットカウント部113と、バス負荷率計算部114と、受信周期閾値計算部115と、受信周期閾値更新部116と、攻撃検知部117とを備える。さらに、ゲートウェイ装置100は、ビットカウント保持部141と、受信周期情報保持部143と、受信周期閾値保持部145と、を備える。
フレーム受信部121は、車載ネットワーク200上を伝送するデータフレームを受信する。フレーム受信部121は第1通信インタフェース150及び/または第2通信インタフェース160で構成される。
フレーム確認部111は、受信したデータフレームのCAN IDに基づき、受信したデータフレームが検査対象であるか否かについて確認する。本実施の形態では、周期的に伝送されるデータフレームを、サイバー攻撃の検知のための検査を実施する対象のフレームとしている。
ビットカウント部113は、検査対象のデータフレームの全体の長さ、すなわち、検査対象のデータフレームのビット数をカウントする。
バス負荷率計算部114は、車載ネットワーク200のバス201上で伝送されるデータの混雑の程度を示す指標であるバス負荷値の一例として、バス負荷率を計算する。バス負荷率は、車載ネットワーク200の負荷の大きさを示す値とも言える。バス負荷率の算出方法の詳細については後述する。
受信周期閾値計算部115は、サイバー攻撃の有無を検知する際の判断基準となる正常周期範囲の閾値を計算する。具体的には、受信周期閾値計算部115は、データフレームの正常な受信周期の範囲を示す正常周期範囲の幅を計算する。
受信周期閾値更新部116は、バス負荷率に基づき正常周期範囲の閾値(幅)を更新する。
攻撃検知部117は、正常周期範囲を参照し、データフレームの受信周期に基づきサイバー攻撃の有無を検知する。
フレーム確認部111と、ビットカウント部113と、バス負荷率計算部114と、受信周期閾値計算部115と、受信周期閾値更新部116と、攻撃検知部117とは、CPU110がプログラムを実行することにより実現される。
ビットカウント保持部141と、受信周期情報保持部143と、受信周期閾値保持部145とは、データ記憶部140により構成される。各保持部141、143、145で保持される情報の詳細については図5を参照して後述する。
車載ネットワーク200a、200bはCANプロトロコルに準拠した通信を行う。図4は、CANプロトコルにおいて規定されるデータフレーム(以下「CANフレーム」と称す)の構成を示す図である。CANフレームは、SOF(Start of Frame)51で始まり、EOF(End of Frame)62で終わる。さらに、CANフレームは、フレームの種類を特定するIDを格納するフィールド52と、RTR53と、DLC56と、データを格納するフィールド57とを有する。RTR(Remote Transmission Request)53は、データフレームとリモートフレームとを識別するための値を格納する。DLC(Data length Code)56は、データフィールド57の長さを示す値を格納する。
図5は、ゲートウェイ装置100の制御において参照される各種のテーブル情報を示す図である。
(1)フレーム情報テーブル
図5(A)は、各種のデータフレームの情報を格納するフレーム情報テーブル81の構成の例を説明した図である。フレーム情報テーブル81は、データフレームの期待周期、DLC、RTR、バス負荷率の許容値を管理する。フレーム情報テーブル81は受信周期情報保持部143に格納される。
DLCおよびRTRはCANプロトコルにより、データフレームの種類毎に規定されている。また、CANプロトコルでは、データフレームの種類毎に伝送周期が規定されている。すなわち、データフレームは、フレームの種類毎(すなわち、CAN ID毎)に予め規定された伝送周期に対応する受信周期(期待周期)で受信されることが期待される。そこで、フレーム情報テーブル81において、CAN ID毎に、データフレームの期待される受信周期(期待周期)を管理している。
期待周期が「0」とは、そのデータフレームが非周期的に伝送されるフレームであることを意味する。本実施の形態のゲートウェイ装置100は、このような非周期的に伝送(受信)されるデータフレームは攻撃検知の検査対象外とし、周期的に伝送(受信)されるデータフレームを検査対象とする。
また、CANプロトコルでは、CAN IDの値は、データフレームの送信制御における優先度を示している。すなわち、CAN IDの値が小さいデータフレームほど、送信の優先度がより高くなっている。バスの混雑時には、データフレームは優先度の高いものから優先的に送信される。
バス負荷率の許容値は、攻撃検知処理において参照される情報であり、データフレームのCAN ID毎に予め設定される(詳細は後述)。バス負荷率の許容値は、データフレームの種類毎(CAN ID毎)に設定される。
(2)ビットカウントテーブル
図5(B)は、所定の受信時刻毎に受信したデータフレームのビットの総数を管理するビットカウントテーブル83である。受信時刻は、所定のタイミング(例えば、制御部110の起動時)を基準時刻として計測される時刻である。ビットカウントテーブル83はビットカウント保持部141に格納される。例えば、図5(B)の例では、時刻2011において3つのデータフレームが受信され、それぞれのビット数が121、95、45ビットであり、ビットカウントテーブル83において、受信ビット総数として、261ビットが記録されている。
(3)周期閾値テーブル
図5(C)は、各CAN IDのデータフレームに対する、正常な受信と判断される受信周期の範囲である正常周期範囲を規定するための閾値情報を管理する周期閾値テーブル85である。周期閾値テーブル85は、受信周期閾値保持部145に格納される。
本実施の形態では、正常周期範囲を規定するための閾値情報として、上側及び下側の周期のマージンである上側閾値幅と下側閾値幅を管理する。すなわち、正常周期範囲は、フレーム毎に予め規定される期待周期Tを基準として、上側および下側においてそれぞれ上側閾値幅と下側閾値幅だけマージンを持たせた範囲に設定される。具体的には、上側閾値幅をΔmhとし、下側閾値幅をΔmlとすると、正常周期範囲Wは下記式で表される。
T-Δml ≦ 正常周期範囲W ≦ T+Δmh (1)
周期閾値テーブル85は、データフレームの種類毎に、すなわち、CAN ID毎に、データフレームの上側閾値と下側閾値を管理する。図5(C)において、CAN IDが「100」のデータフレームについては、上側閾値は10+Δmh(ms)であり、下側閾値は10-Δml(ms)である。よって、CAN IDが「100」のデータフレームについては、正常周期範囲Wは、(10-Δml)ms以上かつ(10+Δmh)ms以下の範囲となる。このように、上側閾値及び下側閾値は、正常と判断される受信周期の範囲の閾値を与える値である。
2.サイバー攻撃の検知動作
以上のように構成されたゲートウェイ装置100におけるサイバー攻撃の検知動作を以下に説明する。ゲートウェイ装置100は車載ネットワーク200上に流れるデータの受信周期の変動に基づきサイバー攻撃を検知する。
CANプロトコルによれば、周期的に送信されるデータフレームの種類と、非周期的に送信されるデータフレームがある。周期的に送信されるデータフレームを、本来の期待される受信周期(期待周期)から大きくずれた周期で受信した場合、そのデータフレームは正規のデータフレームではなく、サイバー攻撃により送信された、なりすましのデータフレームである可能性が高い。そこで、ゲートウェイ装置100は、周期的に送信されるデータフレームの受信周期を監視し、期待される受信周期(期待周期)が正常周期範囲内でない場合にサイバー攻撃があったと判断する。
すなわち、ゲートウェイ装置100は、周期性を有するデータフレームの受信周期を監視し、その周期が正常周期範囲内に入っている場合は、受信周期は正常であり、攻撃を受けていないと判断する。一方、受信周期が正常周期範囲外である場合、受信周期は異常であると判断し、攻撃を受けたことを検知する。
より具体的には、ゲートウェイ装置100は以下のようにして受信周期に基づき攻撃の有無を判断する。図6を参照し、周期Tを有する、あるCAN IDのデータフレームについて、前回の受信から期待される受信時刻がtexpであり、今回実際に受信した時刻がtactである場合を例に説明する。この場合、周期閾値テーブル85に格納された下側閾値幅Δml、上側閾値幅Δmhを用いて、正常周期範囲Wの下限を示す時刻である最小閾値時刻thmin、上限を示す時刻である最大閾値時刻thmaxは次式で算出される。
thmin=texp-Δml (2a)
thmax=texp+Δmh (2b)
ここで、上側閾値幅Δmh及び下側閾値幅Δmlはそれぞれバス負荷率Lに基づき下記式により算出される。バス負荷率Lはバス上で伝送されるデータの混雑さの程度を示す指標であり、その算出方法については後述する。
Δmh = Te×L (3a)
Δml = Δmh (3b)
Te = tact - texp (3c)
受信時刻tactが、以上のようにして求めたthmin以上でかつthmax以下の正常周期範囲W内にあるときは、その受信周期は正常範囲内となるため、正常なデータフレームであると判断する。一方、受信時刻tactが、最小閾値時刻thminよりも早いか、または、最大閾値時刻thmaxよりも遅い場合は、受信周期は正常周期範囲の範囲外となるため、攻撃を受けたと判断する。
このとき、上側閾値幅Δmh及び下側閾値幅Δmlは式(3a)、(3b)に示すように、バス負荷率Lすなわちバスの混雑さに応じて変化させている。すなわち、周期判定のための閾値をバス負荷率Lすなわちバスの混雑さに応じて変化させている。具体的には、バスが混雑しているときには、上側閾値幅Δmh及び下側閾値幅Δmlを大きくし、判断基準となる正常周期範囲Wを大きくしている。これにより、バスの混雑により遅延したフレームを攻撃フレームであると誤認する確率を低減している。一方、バスが混雑していないときには、上側閾値幅Δmh及び下側閾値幅Δmlを小さくして正常周期範囲Wを小さくし、これにより本来の攻撃フレームの検知精度を向上している。
図7は、実施の形態1におけるゲートウェイ装置100による攻撃検知動作を示すフローチャートである。以下、図7を参照して、ゲートウェイ装置100による攻撃検知動作を説明する。なお、図7に示す処理は所定の制御周期で繰り返し実行される。
ゲートウェイ装置100において、フレーム受信部121は、車載ネットワーク200上を伝送するデータフレームを受信する(S1)。
ビットカウント部113は、受信した各データフレームのビット数をカウントし、同じ受信時刻に受信した他のデータフレームのビット数に加算して受信ビット総数を求め、受信時刻毎の受信ビット総数をビットカウント保持部141に記録する(S2)。ビットカウント部113は、受信したデータフレームのビット数を実際にカウントする代わりに、DLCに格納された値をビット数として取得してもよい。
すなわち、ビットカウント部113は、図8に示すように、受信時刻毎に、単位時間当たりの受信ビット総数(Bit_sum)を求め、ビットカウントテーブル83に記録する。例えば、図5(B)の例では、受信時刻「2011」で、3つのデータフレームを受信し、それぞれのビット数が121、95、45である。このため、ビットカウント部113は、受信時刻「2011」において、受信ビットを合算して、単位時間当たりの受信ビット総数として「261」をビットカウントテーブル83に記録する。また、受信時刻「2012」では、68ビットと75ビットの2つのデータフレームが受信されたため、ビットカウント部113は、受信ビット総数として「143」をビットカウントテーブル83に記録する。受信時刻「2013」では、データフレームを受信しておらず、受信ビット総数「0」がビットカウントテーブル83に記録される。受信時刻「2014」では、111ビットのデータフレームを受信したため、受信ビット総数「111」がビットカウントテーブル83に記録される。
フレーム確認部111は、受信したデータフレームがサイバー攻撃の検知のための検査対象のデータフレームであるか否かを確認する(S3)。具体的には、フレーム確認部111は、フレーム情報テーブル81を参照し、受信したデータフレームのCAN IDに基づき、受信したデータフレームが周期性を持つフレームであるか否かを確認する。フレーム確認部111は、受信したデータフレームが周期性を有するフレームである場合、サイバー攻撃の検知のための検査対象のフレームであるとする。
受信したデータフレームが検査対象のフレームでない場合(S3でNO)、本処理を終了する。
一方、受信したデータフレームが検査対象のフレームである場合(S3でYES)、フレーム確認部111はさらにデータフレームの受信時刻tactが期待受信時刻texpと等しいか否かを判断する(S4)。期待受信時刻texpは、前回の受信時刻に、そのデータフレームの期待周期Tを加算して求める。期待周期Tは、受信したデータフレームのCAN IDに基づきフレーム情報テーブル81を参照して取得する。
受信時刻tactが期待受信時刻texpと等しい場合(S4でYES)、データフレームは正規の周期で受信されているため、攻撃検知部117は、サイバー攻撃は検知されなかったと判断し(S12)、本処理を終了する。
受信時刻tactが期待受信時刻texpと等しくない場合(S4でNO)、フレーム確認部111は、受信時刻tactが期待受信時刻texpよりも遅延しているか否かを判断する(S5)。
受信時刻tactが期待受信時刻texpよりも遅延している場合(S5でYES)、バス負荷率計算部114は、期待受信時刻texpに対する受信時刻tactのずれ量を示す偏差時間Teを算出する(S6)。次に、バス負荷率計算部114は下記式にしたがいバス負荷率Lを計算する(S7)。
Figure 0007035791000001
ここで、BPSはバス上でのデータ転送レートである。
すなわち、バス負荷率計算部114は、図8に示すように、偏差時間Teと、期待受信時刻texpから受信時刻tactの間における各受信時刻で受信したビット総数Bit_sumの合計とから、バス負荷率Lを計算する(S7)。期待受信時刻texpから受信時刻tactの間の各受信時刻におけるビット総数Bit_sumはビットカウントテーブル83から取得できる。
バス負荷率Lの算出後、バス負荷率計算部114は、算出したバス負荷率Lを、バス負荷率の許容値PL(許容値)と比較する(S8)。バス負荷率の許容値PLは、受信したデータフレームのCAN IDに基づきフレーム情報テーブル81を参照して取得される。
ここで、バス負荷率の許容値PLについて説明する。バス負荷率の許容値PLは、データフレームの遅延がバスの混雑さに起因したものか否かを判定するための閾値である。バスが許容値PLを超えた混雑さを有する状態にある場合、受信したデータフレームよりも優先度の高い他のフレームが多数伝送されている状況にあると考えられる。よって、この場合、たとえ大きな遅延があったとしても、その遅延は、より優先度の高い他のフレームの伝送によるバスの混雑さが原因であり、攻撃によるものではないと判断する。一方、バスが許容値PLを超えていない状態にある場合は、バスの混雑さの影響を考慮せずにフレームの受信周期の判断を行う。
つまり、バス上のトラフィックが混雑している場合、優先度の高いフレームは優先して伝送される。このため本来優先度の高いデータフレームはバスの混雑さに依らず遅延しにくく、バスのトラフィックの影響は受けにくい。一方、優先度の低いデータフレームは、送信が後回しにされるため、バスのトラフィックの影響を受けやすく、遅延し易くなる。これらの点から、優先度の高いデータフレームは遅延し難いため、バスが混雑していない場合であっても少しの遅延があれば、その遅延が攻撃に起因すると考えることができる。一方、優先度の低いデータフレームは遅延し易いため、バスが混雑している場合は、大きな遅延があっても、その遅延はバスの混雑に起因し、攻撃によるものではないと考えることができる。
そこで、本実施の形態では、遅延の原因がバス201の混雑さである(すなわち、遅延が攻撃のせいではない)と判断するときの基準値であるバス負荷率の許容値PLを、データフレームの優先度に応じて設定している。すなわち、データフレームの優先度が高い場合、許容値PLを低く設定する(混雑していると判断する基準値を厳しくする)。また、データフレームの優先度が低い場合、許容値PLを高く設定している(混雑していると判断する基準値を緩くする)。許容値PLは、図5(A)に示すように、データフレームの優先度、すなわち、データフレームの種類(CAN ID)毎に予め設定され、フレーム情報テーブル81において管理される。
バス負荷率計算部114は、受信周期情報保持部143からフレーム情報テーブル81を読み出す。バス負荷率計算部114は、このフレーム情報テーブル81を参照して、受信したデータフレームのCAN IDに基づきバス負荷率の許容値PL(許容値)を取得する。例えば、図5(A)の例において、CAN IDが「100」である場合、バス負荷率の許容値PLとして「90%」が取得される。
ステップ8において、算出したバス負荷率Lが許容値PL以下の場合(S8でNO)、受信したデータフレームが混雑さの影響を受ける程にバスが混雑した状態にないと考えられる。よって、この遅延(すなわち、受信周期のずれ)が発生しているのは、そのデータフレームが正規のものではなく、サイバー攻撃による、なりすましのデータフレームであるためであると考えられる。そこで、バス負荷率Lが許容値PL以下の場合(S8でNO)、攻撃検知部117はサイバー攻撃を受けたことを検知する(S16)。このとき、受信周期閾値更新部116は、上側閾値幅Δmh及び下側閾値幅Δmlを所定値にリセットし、リセットした値で受信周期閾値保持部145の周期閾値テーブル85を更新する(S15)。
一方、ステップ8において、算出したバス負荷率Lがその許容値PLよりも大きい場合(S8でYES)、受信周期閾値計算部115は正常周期範囲Wの上限を規定する最大閾値時刻(thmax)を算出する(S9)。
このため、受信周期閾値計算部115はまず、偏差時間Teとバス負荷率Lとから式(3a)を用いて上側閾値幅Δmhを求める。そして、受信周期閾値計算部115は、期待受信時刻texpと上側閾値幅Δmhとから式(2b)を用いて最大閾値時刻thmaxを求める。受信周期閾値更新部116は、算出された上側閾値幅Δmhを用いて受信周期閾値保持部145における周期閾値テーブル85を更新する。
その後、攻撃検知部117は、受信時刻tactが最大閾値時刻thmaxと等しいか、またはそれよりも前かを判断する(S10)。
受信時刻tactが、最大閾値時刻thmaxと等しいか、またはそれよりも前である場合(S10でYES)、受信したデータフレームの周期は正常周期範囲W内であるため、攻撃は受けていないと考えられる。この場合、攻撃検知部117は、サイバー攻撃を検知しなかったと判断する(S12)。また、受信周期閾値更新部116は、式(3b)により、下側閾値幅Δmlを算出し、受信周期閾値保持部145の周期閾値テーブル85を更新する(S11)。
一方、受信時刻tactが最大閾値時刻thmaxよりも後の場合(S10でNO)、データフレームの受信周期は正常周期範囲Wの外であるため、攻撃を受けたと考えられるので、攻撃検知部117はサイバー攻撃を受けたことを検知する(S16)。このとき、受信周期閾値更新部116は、上側閾値幅Δmh及び下側閾値幅Δmlを所定値にリセットし、受信周期閾値保持部145の周期閾値テーブル85を更新する(S15)。
ステップS5に戻り、受信時刻tactが期待受信時刻texpよりも前である場合(S5でNO)、受信時刻tactが最小閾値時刻thminと等しいか、それよりも後であるかが判定される(S13)。
受信時刻tactが最小閾値時刻thminと等しいか、それよりも後である場合(S13でYES)、受信したデータフレームの受信周期は正常周期範囲W内であると考えられるため、攻撃は受けていないと判定される(S12)。このとき、受信周期閾値更新部116は、上側閾値幅Δmh及び下側閾値幅Δmlを所定値にリセットし、受信周期閾値保持部145の周期閾値テーブル85を更新する(S14)。
一方、受信時刻tactが最小閾値時刻thminよりも前である場合(S13でNO)、受信周期は正常周期範囲W内ではない。よって、この場合、なりすましのデータフレームによる攻撃を受けていると考えられる。すなわち、攻撃検知部117はサイバー攻撃を受けたことを検知する(S16)。また、受信周期閾値更新部116は、上側閾値幅Δmh及び下側閾値幅Δmlを所定値にリセットし、受信周期閾値保持部145の周期閾値テーブル85を更新する(S15)。
以上のように、本実施の形態では、受信したフレームが正常であると判断する正常周期範囲Wの大きさ(換言すれば、正常周期範囲Wの閾値)をバス201の混雑状況(バス負荷率L)に基づき変動させている。これにより、バス201の混雑時において、混雑さに起因して遅延したフレームに対する攻撃の誤検知を低減しつつ、バスが混雑していないときには、攻撃フレームの検知精度を向上させることができる。
なお、上記のフローチャートにおけるステップS4では、受信時刻tactを期待受信時刻texpと比較した。ジッタ等の、優先度の低さ以外の遅延要因を考慮して、図9に示すように期待時刻texpに幅を持たせても良い。例えば、期待時刻texpを中心として所定のマージン±Δtを持たせた期待受信時刻範囲を設定してもよい。
texp-Δt ≦ 期待受信時刻範囲 ≦ texp+Δt (5)
そして、ステップS4において、受信時刻tactが期待時刻範囲内に入るか否かを判断してもよい。この場合、ステップS5においては、受信時刻tactが期待受信時刻範囲よりも後か否かを判断すればよい。また、ステップS13では、式(2a)で求めた値からさらにΔtだけ減算して最小閾値時刻を求め、この求めた最小閾値時刻と受信時刻tactとを比較すればよい。
以上のように本実施の形態のゲートウェイ装置100は、所定の周期でデータフレームが伝送されるバス201に接続され、当該バス201に接続された機器への攻撃を検知する装置である。ゲートウェイ装置100は、バス201に伝送されるデータフレームを受信するフレーム受信部121と、検査対象のデータフレームの受信周期が正常範囲にあるか否かを、正常範囲を示す閾値(例えば、Thmin、Thmax、またはΔml、Δmh)を用いて判断し、その判断結果に基づき攻撃の有無を検知する攻撃検知部117と、受信したデータフレームの内容に基づき、バスの混雑さの程度を示すバス負荷率Lを算出するバス負荷率計算部114と、算出したバス負荷率に応じて閾値を決定する受信周期閾値計算部115と、を備える。
受信周期閾値計算部115、例えば、バス負荷率がバスの混雑さの程度がより高いことを示すほど、正常周期範囲Wがより広くなるように閾値(例えば、Thmin、Thmax、またはΔml、Δmh)を決定する。
上記の構成によれば、バス201の混雑度合いを示すバス負荷率Lに応じて、正常周期範囲を規定する閾値幅Δml、Δmhや閾値時刻Thmin、Thmaxを変化させている。すなわち、バス負荷率Lに応じて受信周期の判断における正常周期範囲の閾値を変化させている。これにより、バス201の混雑によりデータフレームが遅延した場合において、正常フレームを攻撃フレームであると誤検知することを防止しつつ、バスが混雑していない場合には精度よく、攻撃フレームを検知することができる。
また、CANプロトコルによれば、データフレームの種類毎にデータフレームの送信に対する優先度が異なっている。攻撃検知部117はさらに、バス負荷率が許容値以下であるときに(S8)、攻撃があったことを検知する(S16)。これにより、バスが混雑していないにもかかわらず、データフレームが遅延している場合、その原因はサイバー攻撃であると判断する。また、許容値はデータフレームの優先度に応じて設定される。これにより、優先度が高く遅延しにくいデータフレームと、優先度が低く遅延し易いデータフレームのそれぞれに対して適切な許容値を設定できる。
(実施の形態2)
実施の形態1では、バス201の混雑度を示す指標であるバス負荷率を、式(4)に示すように、期待時刻texpから受信時刻tactの間における、バスの最大可能ビット数に対する受信ビット総数の比率Lとして算出した。バス負荷率の算出方法はこれに限定されない。本実施の形態では、実施の形態1と異なるバス負荷率LBを用いた攻撃検知の動作を説明する。なお、ゲートウェイ装置100のハードウェア構成は実施の形態1のものと同じである。
本実施の形態では、バス負荷率LBは、単位時間当たりの受信したフレームのビット数として算出される。そして、バス負荷率LBが閾値PBを超えている時間に応じて正常周期範囲Wの大きさを設定する。
図10は、実施の形態2におけるゲートウェイ装置100による攻撃検知動作を説明するための図である。本実施の形態では、周期性を有する各種のデータフレームについて、所定の受信時刻毎にバス負荷率LBを算出する。具体的には、バス負荷率計算部114は、単位時間当たりに受信したフレームのビット総数をバス負荷率LBとして求める。
LB=単位時間の間に受信したフレームのビット総数/単位時間 (6)
そして、周期性を有する各種のデータフレームについて、期待受信時刻texpが経過してもデータフレームを受信していない場合に、期待受信時刻texpの経過後から継続してバス負荷率LBが許容値PBを超えている時間Toverを算出する。そして、この経過時間Toverに基づき正常周期範囲Wの大きさを設定する。より具体的には、正常周期範囲Wの上限を示す最大閾値時刻thmaxと下限を示す最小閾値時刻thminとをそれぞれ決定する上側閾値幅Δmhと下側閾値幅Δmlを次式により設定する。
Δmh = Tov (7a)
Δml = Δmh (7b)
ここで、バス負荷率LBの許容値PBは、図5(A)に示すように、フレーム情報テーブル81bに予め記憶されている。バス負荷率LBの許容値PBは、実施の形態1と同様にCAN ID毎に設定されている。
図11は、実施の形態2におけるゲートウェイ装置100による攻撃検知動作を示す第1のフローチャートである。図11に示す処理は、CPU110により所定の周期で繰り返し実行される。また、図11に示す処理は、周期性を有するデータフレームの種類(CAN ID)毎に実施される。
ビットカウント部113は、検査対象の種類のデータフレームの受信時刻tactが期待受信時刻texpを超過しているか否かを判断する(S31)。受信時刻tactが期待受信時刻texpを超過している場合(S31でYES)、ビットカウント部113は、所定の受信時刻毎に、受信した全フレームそれぞれのビット数を合算してビット総数(Bit_sum)を算出することでバス負荷率LBを算出する(S32)。例えば、図5Bに示す例では、時刻「2011」におけるバス負荷率LBは、261(=12+95+45)となる。同様に、時刻「2012」におけるバス負荷率LBは143(=68+75)となる。時刻「2013」におけるバス負荷率LBは0となり、時刻「2014」におけるバス負荷率LBは111となる。
受信周期閾値計算部115は、検査対象のデータフレームの種類のバス負荷率LBが、許容値PBよりも大きいか否かを判断する(S33)。許容値PBはフレーム情報テーブル81bから、データフレームの種類(CAN ID)に応じて取得される。
バス負荷率LBが許容値PBよりも大きい場合(S33でYES)、受信周期閾値計算部115は、継続してビット総数がしきい値を超えている時間Toverに基づき、最大閾値時刻Thmaxを設定する(S34)。
具体的には、受信周期閾値計算部115は、継続して受信ビット総数が許容値PBを超えている時間Toverに基づき、正常周期範囲Wの上側閾値幅Δmhと下側閾値幅Δmlを式(7a)、(7b)により決定する。そして、受信周期閾値計算部115はそれらの値Δmh、Δmlを用いて最大閾値時刻thmaxと最小閾値時刻thminを求める。
受信周期閾値更新部116は、最大閾値時刻thmaxと最小閾値時刻thminの算出過程で求められた上側閾値幅Δmhと下側閾値幅Δmlを用いて周期閾値テーブル85を更新する(S35)。これにより正常周期範囲Wが更新される。
バス負荷率(単位時間当たりの受信ビット総数)LBが許容値PBより大きいことは、バス上に多くのデータが伝送されている混雑状態にあることを示している。このため、フレーム受信の遅延はバスの混雑によるものと考え、攻撃によるものではないと考えられる。よって、バス負荷率LBが閾値PBよりも大きい場合(S33でYES)、攻撃検知部117は、サイバー攻撃がないことを検知する(S36)。
一方、バス負荷率LBが許容値PB以下の場合(S33でNO)、バスは混雑状態にない。バスが混雑していないにもかかわらず、フレームの受信が遅延していること、すなわち、受信周期が異常であることは、そのフレームがサイバー攻撃による、なりすましフレームであると考えられる。よって、バス負荷率LBが許容値PB以下の場合(S33でNO)、攻撃検知部117はサイバー攻撃を受けたことを検知する(S37)。
図12は、以上のようにして設定された最大及び最小閾値時刻に基づく攻撃検知動作を示す第2のフローチャートである。
ゲートウェイ装置100において、フレーム受信部121は、車載ネットワーク200のバス上を伝送するデータフレームを受信する(S51)。
攻撃検知部117は、受信時刻tactが最大閾値時刻thmaxよりも後か否かを判断する(S52)。受信時刻tactが最大閾値時刻thmaxよりも後である場合(S52でYES)、攻撃検知部117は、サイバー攻撃を受けたことを検知する(S56)。
受信時刻tactが最大閾値時刻thmaxと等しいかそれよりも前である場合(S52でNO)、攻撃検知部117は、受信時刻tactが最小閾値時刻thminよりも前か否かを判断する(S53)。
受信時刻tactが最小閾値時刻thminよりも前である場合(S53でYES)、攻撃検知部117は、サイバー攻撃を受けたことを検知する(S56)。
受信時刻tactが最小閾値時刻thminと等しいか、それよりも後である場合(S53でNO)、攻撃検知部117は、サイバー攻撃を受けていないことを検知する(S55)。その際、受信周期閾値計算部115は、上側閾値幅Δmh及び下側閾値幅Δmlを所定値にリセットする(S54)。
以上のように、本実施の形態では、バスの混雑さを示す指標であるバス負荷率LBとして、単位時間当たりの受信ビット総数を用いている。そして、単位時間当たりの受信ビット総数LBが所定値を超えた経過時間Toverに基づき、正常周期範囲を規定する上側閾値幅Δmh及び下側閾値幅Δmlを変化させる。換言すれば、単位時間当たりの受信ビット総数が所定値を超えた経過時間に基づき、周期判定の際の閾値を動的に変化させる。このように周期判定の際の閾値を動的に変化させることで、バスの混雑時の誤検知を防止しつつ、バスが混雑していない時の検知精度を向上させることができる。
(変形例)
上記の実施の形態では、本発明に係る異常検知装置(及び方法)の構成を、車載ネットワークに対して適用した例を説明したが、他の種類のネットワークに対しても同様に適用することができる。
上記の実施の形態では、本開示に係る異常検知装置を、ゲートウェイ装置100に適用した例を説明したが、他の機器に適用することもできる。例えば、本開示に係る異常検知装置は、ECU300のようなネットワークに接続する種々の機器に適用することができる。
上記の実施の形態において、バスの混雑さを示す指標であるバス負荷値の例として、式(4)または式(6)で求められるバス負荷率を提示したが、バス負荷値はこれに限定されない。バスの混雑さを定量的に示す情報であれば、任意の情報をバス負荷値として使用できる。
(本開示)
上記の実施の形態は以下の思想を開示している。
(1)所定の周期でデータフレームが伝送されるバス(201)に接続され、当該バスに接続された機器への攻撃を検知する装置(100)であって、
バスに伝送されるデータフレームを受信するフレーム受信部(121)と、
検査対象のデータフレームの受信周期が正常範囲にあるか否かを、正常範囲を示す閾値を用いて判断し、その判断結果に基づき攻撃の有無を検知する攻撃検知部(117)と、
フレーム受信部が受信したデータフレームの内容に基づきバスの混雑さの程度を示すバス負荷値を算出するバス負荷計算部(114)と、
バス負荷計算部が算出したバス負荷値に応じて閾値を決定する受信周期閾値計算部(115)と、
を備えた異常検知装置。
(2)(1)の異常検知装置において、受信周期閾値計算部は、バス負荷値がバスの混雑さの程度がより高いことを示すほど、正常範囲がより広くなるように閾値を決定してもよい。
(3)(1)または(2)の異常検知装置において、バス上に複数種類のデータフレームが伝送され、データフレームの種類毎にデータフレームの送信に対する優先度が異なってもよい。攻撃検知部はさらに、バス負荷値が許容値以下であるときに(S8、S33)、攻撃があったことを検知してもよい(S16、S37)。許容値はデータフレームの優先度が高いほど小さな値に設定される。
(4)(1)の異常検知装置において、バス負荷値(L)は、データフレームの受信時刻を含み正常周期範囲の幅を持つ期間(Te)における、バスで通信可能なビット総数に対する受信したデータのビット総数の比率であってもよい(式(4)参照)。
(5)(1)の異常検知装置において、バス負荷値(LB)は、単位時間に受信したデータフレームのビット総数であってもよい(式(6)参照)。
(6)(5)の異常検知装置において、受信周期閾値計算部は、データフレームの受信が期待される時刻である期待受信時刻の経過したデータフレームについて、バス負荷値が連続して所定値を超えた時間に応じて、閾値を決定してもよい。
(7)(1)~(6)のいずれかの異常検知装置は、車両内のネットワークに接続されてもよい。
(8)(7)の異常検知装置において、データフレームはCAN(Controller Area Network)プロトコルにしたがって伝送されてもよい。
(9)所定の周期でデータフレームが伝送されるバスに接続され機器への攻撃を検知する方法であって、
データフレームを受信するステップ(S1)と、
受信したデータフレームの内容に基づき、バスの混雑さの程度を示すバス負荷値を算出するステップ(S7、S32)と、
算出したバス負荷値に基づき、データフレームの受信周期の正常範囲の閾値を決定するステップ(S9、S11、S34)と、
決定した閾値を用いて、検査対象のデータフレームの受信周期が正常範囲にあるか否かを判断するステップ(S10、S13、S52、53)と、
その判断結果に基づき攻撃の有無を検知するステップ(S12、S16、S52、S56)と、を含む、
異常検知方法。
(10)所定の周期でデータフレームが伝送されるバスに接続され、当該バスに接続された機器への攻撃を検知する異常検知装置を制御するプログラムであって、
当該プログラムは、異常検知装置の制御部に、
データフレームを受信するステップ(S1)と、
受信したデータフレームの内容に基づき、バスの混雑さの程度を示すバス負荷値を算出するステップ(S7、S32)と、
算出したバス負荷値に基づき、データフレームの受信周期の正常範囲の閾値を決定するステップ(S9、S11、S34)と、
決定した閾値を用いて、検査対象のデータフレームの受信周期が正常範囲にあるか否かを判断するステップ(S10、S13、S52、53)と、
その判断結果に基づき攻撃の有無を検知するステップ(S12、S16、S52、S56)と、を実行させる、
プログラム。
上述の実施の形態は、本開示における技術を例示するためのものであるから、特許請求の範囲またはその均等の範囲において種々の変更、置き換え、付加、省略などを行うことができる。
10 車両
100 ゲートウェイ装置
110 CPU
111 フレーム確認部
113 ビットカウント部
121 フレーム受信部
120 RAM
130 ROM
140 データ記憶部
150 第1通信インタフェース
160 第2通信インタフェース
200a、200b、200 車載ネットワーク
201a、201b、201 バス
300 ECU(電子制御ユニット)

Claims (14)

  1. 所定の周期でデータフレームが伝送されるバスに接続され、当該バスに接続された機器への攻撃を検知する装置であって、
    前記バスに伝送されるデータフレームを受信するフレーム受信部と、
    検査対象のデータフレームの受信周期が正常範囲にあるか否かを、正常範囲を示す閾値を用いて判断し、その判断結果に基づき攻撃の有無を検知する攻撃検知部と、
    前記フレーム受信部が受信したデータフレームの内容に基づき前記バスの混雑さの程度を示すバス負荷値を算出するバス負荷計算部と、
    前記バス負荷計算部が算出した前記バス負荷値に応じて前記閾値を決定する受信周期閾値計算部と、
    を備えた異常検知装置。
  2. 前記受信周期閾値計算部は、前記バス負荷値がバスの混雑さの程度がより高いことを示すほど、前記正常範囲がより広くなるように前記閾値を決定する、
    請求項1記載の異常検知装置。
  3. 前記バス上に複数種類のデータフレームが伝送され、データフレームの種類毎にデータフレームの送信に対する優先度が異なり、
    前記攻撃検知部はさらに、前記バス負荷値が許容値以下であるときに、攻撃があったことを検知し、
    前記許容値は前記データフレームの優先度が高いほど小さな値に設定される、
    請求項1または2に記載の異常検知装置。
  4. 前記バス負荷値は、データフレームの受信時刻を含み正常周期範囲の幅を持つ期間における、前記バスで通信可能なビット総数に対する受信したデータのビット総数の比率である、
    請求項1に記載の異常検知装置。
  5. 前記バス負荷値は、単位時間に受信したデータフレームのビット総数である、
    請求項1に記載の異常検知装置。
  6. 前記受信周期閾値計算部は、データフレームの受信が期待される時刻である期待受信時刻の経過したデータフレームについて、前記バス負荷値が連続して所定値を超えた時間に応じて、前記閾値を決定する、
    請求項5に記載の異常検知装置。
  7. 車両内のネットワークに接続される、請求項1ないし6のいずれか1つに記載の異常検知装置。
  8. 前記データフレームはCAN(Controller Area Network)プロトコルにしたがって伝送される、請求項7に記載の異常検知装置。
  9. 所定の周期でデータフレームが伝送されるバスに接続された機器への攻撃を検知する異常検知装置により実行される異常検知方法であって、
    前記異常検知装置が、データフレームを受信するステップと、
    前記異常検知装置が、受信したデータフレームの内容に基づき、前記バスの混雑さの程度を示すバス負荷値を算出するステップと、
    前記異常検知装置が、前記算出したバス負荷値に基づき、データフレームの受信周期の正常範囲の閾値を決定するステップと、
    前記異常検知検出装置が、前記決定した閾値を用いて、検査対象のデータフレームの受信周期が正常範囲にあるか否かを判断するステップと、
    前記異常検知装置が、その判断結果に基づき攻撃の有無を検知するステップと、を含む、
    異常検知方法。
  10. 前記異常検知装置が、前記バス負荷値がバスの混雑さの程度がより高いことを示すほど、前記正常範囲がより広くなるように前記閾値を決定する、
    請求項9に記載の異常検知方法。
  11. さらに、前記異常検知装置が、前記バス負荷値が許容値以下であるときに、攻撃があったことを検知するステップを含み、
    前記バス上には複数種類のデータフレームが伝送され、データフレームの種類毎にデータフレームの送信に対する優先度が異なり、
    前記許容値は、前記データフレームの優先度が高いほど小さな値に設定される、
    請求項9または10に記載の異常検知方法。
  12. 所定の周期でデータフレームが伝送されるバスに接続され、当該バスに接続された機器への攻撃を検知する異常検知装置を制御するプログラムであって、
    前記プログラムは、前記異常検知装置の制御部に、
    データフレームを受信するステップと、
    前記受信したデータフレームの内容に基づき、前記バスの混雑さの程度を示すバス負荷値を算出するステップと、
    前記算出したバス負荷値に基づき、データフレームの受信周期の正常範囲の閾値を決定するステップと、
    前記決定した閾値を用いて、検査対象のデータフレームの受信周期が正常範囲にあるか否かを判断するステップと、
    その判断結果に基づき攻撃の有無を検知するステップと、を実行させる、
    プログラム。
  13. 前記バス負荷値がバスの混雑さの程度がより高いことを示すほど、前記正常範囲がより広くなるように前記閾値を決定する、
    請求項12に記載のプログラム。
  14. さらに、前記バス負荷値が許容値以下であるときに、攻撃があったことを検知するステップを前記制御部に実行させ、
    前記バス上には複数種類のデータフレームが伝送され、データフレームの種類毎にデータフレームの送信に対する優先度が異なり、
    前記許容値は、前記データフレームの優先度が高いほど小さな値に設定される、
    請求項12または13に記載のプログラム。
JP2018095688A 2018-05-17 2018-05-17 サイバー攻撃を検知する異常検知装置および異常検知方法 Active JP7035791B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018095688A JP7035791B2 (ja) 2018-05-17 2018-05-17 サイバー攻撃を検知する異常検知装置および異常検知方法
EP19804554.4A EP3796195B1 (en) 2018-05-17 2019-03-06 Abnormality detection device and abnormality detection method
PCT/JP2019/008746 WO2019220746A1 (ja) 2018-05-17 2019-03-06 異常検知装置および異常検知方法
CN201980028573.6A CN112119392B (zh) 2018-05-17 2019-03-06 异常检测装置以及异常检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018095688A JP7035791B2 (ja) 2018-05-17 2018-05-17 サイバー攻撃を検知する異常検知装置および異常検知方法

Publications (3)

Publication Number Publication Date
JP2019200670A JP2019200670A (ja) 2019-11-21
JP2019200670A5 JP2019200670A5 (ja) 2021-02-04
JP7035791B2 true JP7035791B2 (ja) 2022-03-15

Family

ID=68540025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018095688A Active JP7035791B2 (ja) 2018-05-17 2018-05-17 サイバー攻撃を検知する異常検知装置および異常検知方法

Country Status (4)

Country Link
EP (1) EP3796195B1 (ja)
JP (1) JP7035791B2 (ja)
CN (1) CN112119392B (ja)
WO (1) WO2019220746A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114545893A (zh) * 2021-11-30 2022-05-27 深圳元戎启行科技有限公司 线控帧检测方法、自动驾驶平台以及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008211644A (ja) 2007-02-27 2008-09-11 Auto Network Gijutsu Kenkyusho:Kk 車載通信装置及び車載通信システム
WO2017061079A1 (ja) 2015-10-09 2017-04-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ セキュリティ装置、攻撃検知方法及びプログラム
JP2017085197A (ja) 2015-10-22 2017-05-18 本田技研工業株式会社 通信システム、送信装置、及び通信方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4878630B2 (ja) * 2009-03-25 2012-02-15 日本電信電話株式会社 通信サーバおよびDoS攻撃防御方法
CN104170326A (zh) * 2012-03-15 2014-11-26 丰田自动车株式会社 通信装置及通信方法
JP5919205B2 (ja) 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
JP6573819B2 (ja) * 2015-01-20 2019-09-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正検知ルール更新方法、不正検知電子制御ユニット及び車載ネットワークシステム
WO2016116973A1 (ja) * 2015-01-20 2016-07-28 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正フレーム対処方法、不正検知電子制御ユニット及び車載ネットワークシステム
JP6369341B2 (ja) * 2015-01-30 2018-08-08 株式会社デンソー 車載通信システム
JP6585001B2 (ja) * 2015-08-31 2019-10-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正検知方法、不正検知電子制御ユニット及び不正検知システム
JP6173541B2 (ja) 2015-10-09 2017-08-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America セキュリティ装置、攻撃検知方法及びプログラム
CN106899614B (zh) * 2017-04-14 2019-09-24 北京梆梆安全科技有限公司 基于报文周期的车内网络入侵检测方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008211644A (ja) 2007-02-27 2008-09-11 Auto Network Gijutsu Kenkyusho:Kk 車載通信装置及び車載通信システム
WO2017061079A1 (ja) 2015-10-09 2017-04-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ セキュリティ装置、攻撃検知方法及びプログラム
JP2017085197A (ja) 2015-10-22 2017-05-18 本田技研工業株式会社 通信システム、送信装置、及び通信方法

Also Published As

Publication number Publication date
EP3796195A1 (en) 2021-03-24
EP3796195B1 (en) 2022-11-09
CN112119392A (zh) 2020-12-22
JP2019200670A (ja) 2019-11-21
CN112119392B (zh) 2024-02-13
EP3796195A4 (en) 2022-02-23
WO2019220746A1 (ja) 2019-11-21

Similar Documents

Publication Publication Date Title
CN109792409B (zh) 用于在拥塞事件期间丢弃消息的方法、系统和计算机可读介质
CN110784458B (zh) 流量异常检测方法、装置及网络设备
KR101853676B1 (ko) 차량 침입 탐지 장치 및 방법
US20160301599A1 (en) Method and first network node for managing a first ip path used by a connection
JP6521346B2 (ja) 通信システム
US20130170342A1 (en) Data communication systems and methods
CN110677355A (zh) 一种丢包应对方法、装置、电子设备及存储介质
CN102577240B (zh) 用于采用速率限制进行病毒扼制的方法和装置
JP2009543523A (ja) 通信システムのためのアクセス媒体の過負荷管理方法
CN111316602B (zh) 攻击通信检测装置及其方法、计算机可读取的记录介质
JP7035791B2 (ja) サイバー攻撃を検知する異常検知装置および異常検知方法
CN112118329A (zh) 一种网络请求处理方法、装置、电子设备及存储介质
JP2019029960A (ja) 検知装置、検知方法および検知プログラム
JP2021136631A (ja) 不正信号検出装置
JP6532162B2 (ja) 通信装置、および通信システム
JP6089518B2 (ja) 転送装置、転送方法および転送プログラム
JP6528239B2 (ja) 通信装置およびプログラム
US10599549B2 (en) Packet backpressure detection method, apparatus, and device
JP5937955B2 (ja) パケット転送遅延計測装置及び方法及びプログラム
JP6463666B2 (ja) 監視支援装置、および、監視支援方法
CN113810383B (zh) Web应用防火墙及拥塞控制方法、介质及电子设备
KR20120067584A (ko) 대량 트래픽 환경에서의 디도스 공격 탐지 및 대응 방법 및 그 장치
US20220329519A1 (en) Packet transmission method and electronic device
JP6792532B2 (ja) 異常検知装置および異常検知方法
KR101902654B1 (ko) 지능형 웜 전파 취약점 진단 방법 및 이를 구현한 프로그램

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201214

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220117

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220214

R150 Certificate of patent or registration of utility model

Ref document number: 7035791

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150