(57)【要約】【課題】新製品に生じるセキュリティーホールを容易に品質管理できる脆弱性評価装置を提供する。【解決手段】コンピュータの記憶部（40）に、製品の構成情報保持部（41）と、セキュリティーホールを示す構成要素−脆弱性対応保持部（42）と、製品の構成要素（54）毎の資産価値を格納する資産情報保持部（43）と、セキュリティ対策毎に防御対象の構成要素及び対策効果の係数を格納するセキュリティ対策分類保持部（44）と、攻撃経路を示す攻撃マップが格納される攻撃マップ保持部（46）を備え、処理部（20）は、プログラムの実行により、情報収集処理部（21）と、製品毎に攻撃マップ（11）を作成する攻撃マップ作成処理部（22）と、資産価値に基づいて構成要素（54）毎のセキュリティーホールに対する脅威レベルから対策の優先順位を算出する脆弱性評価処理部（23）を形成する。【選択図】  図２
2020052686.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを応用した製品に複数のセキュリティーホールがあれば、該セキュリティーホール毎の脅威レベルを評価し、セキュリティ対策の優先順位を決定するために、少なくとも記憶部、及び処理部を備えた脆弱性評価用コンピュータにより構成された脆弱性評価装置であって、
前記記憶部には、
前記製品の構成要素の情報を格納する構成情報保持部と、
前記構成要素毎に前記セキュリティーホールを明示する脆弱性情報を格納する構成要素−脆弱性対応保持部と、
前記製品毎の製品ＩＤに該製品の前記構成要素毎の資産価値を紐付けて格納する資産情報保持部と、
前記セキュリティ対策毎に、防御対象の構成要素、及び対策効果を数値化した係数が紐付けられて格納されたセキュリティ対策分類保持部と、
攻撃経路を形成する要素名、及び該要素名に対応した前記脆弱性情報を紐付けた攻撃マップが格納される攻撃マップ保持部と、
前記処理部で実行可能なプログラムと、
を備え、
該処理部は該プログラムの実行により、
前記製品の情報を取得して前記記憶部に格納する情報収集処理部と、
前記製品毎に前記攻撃マップを作成する攻撃マップ作成処理部と、
前記資産価値に基づいて、前記構成要素毎のセキュリティーホールに対する前記脅威レベルを算出するとともに、対応すべきセキュリティ対策の優先順位を決定する脆弱性評価処理部と、
を形成する、
脆弱性評価装置。
【請求項２】
脆弱性評価用コンピュータは、さらに入出力部又は通信部を備え、
構成情報保持部は、
資産に対する前記構成要素の距離の違いを階層として示す情報が格納され、該階層の順に並べて、構成情報テーブルと、構成要素−脆弱性対応テーブルと、攻撃マップテーブルと、の各情報テーブルが前記構成要素の前記階層を形成し、
前記脆弱性評価処理部は、
前記攻撃経路を形成する要素を識別する前記要素名と、
前記セキュリティーホールを特定する前記脆弱性情報と、
前記要素名で特定される前記構成要素に紐付けられた前記脆弱性情報又は該脆弱性情報の有無を示す情報と、
前記セキュリティ対策毎に防御対象とする前記構成要素の情報と、
前記セキュリティ対策毎に効果を発揮する程度を数値化した係数と、
を用いて前記脅威レベルを算出し、
該脅威レベル及び前記優先順位の少なくとも何れかを前記階層に基づいて整理された形式で、前記入出力部又は前記通信部を介して表示、出力可能である、
請求項１に記載の脆弱性評価装置。
【請求項３】
前記製品は、自動車を構成するか又は自動車に搭載される車載電子機器である請求項１に記載の脆弱性評価装置。
【請求項４】
請求項１に記載の脆弱性評価装置に管理者端末が有線又は無線で接続されてシステム構成された脆弱性評価システム。
【請求項５】
コンピュータ応用機器でなる製品に複数のセキュリティーホールがあれば、それらの脅威レベルを評価してセキュリティ対策の優先順位を算出する処理を、少なくとも記憶部と、処理部と、該処理部で実行可能なプログラムと、を有する脆弱性評価用コンピュータにおいて実行する脆弱性評価方法であって、
前記記憶部は、前記プログラムのほかに、
前記製品の構成要素の情報を格納する構成情報保持部と、
前記構成要素毎に前記セキュリティーホールを明示する脆弱性情報を格納する構成要素−脆弱性対応保持部と、
前記製品毎の製品ＩＤに該製品の前記構成要素毎の資産価値を紐付けて格納する資産情報保持部と、
前記セキュリティ対策毎に、防御対象の構成要素、及び対策効果を数値化した係数が紐付けられて格納されたセキュリティ対策分類保持部と、
攻撃経路を形成する要素名、及び該要素名に対応した前記脆弱性情報を紐付けた攻撃マップが格納される攻撃マップ保持部と、
を備え、
前記処理部で前記プログラムが実行されて形成される脆弱性評価処理部により前記記憶部に格納された情報を用いて前記優先順位を決定する処理は、
前記構成要素−脆弱性対応保持部から前記脆弱性情報を1つ取得するステップと、
前記攻撃マップ保持部から前記攻撃マップを1つ選択するステップと、
取得した攻撃マップの資産に対応する資産価値を前記資産情報保持部から取得するステップと、
該当セキュリティーホールへの攻撃難易度を前記構成要素-脆弱性保持部から取得するステップと、
前記資産価値と前記攻撃難易度を乗算するステップと、
該乗算した計算結果に基づいて評価数値を設定するステップと、
を有する、
脆弱性評価方法。
【請求項６】
前記優先順位を決定する手順は、
前記脆弱性評価用コンピュータに配設された入出力部又は通信部を介して管理者端末と前記脆弱性評価用コンピュータとの間の交信に基づいて実行され、
前記製品の情報が前記管理者端末から前記脆弱性評価用コンピュータへ入力されるステップと、
前記セキュリティーホールに関する情報が前記管理者端末から前記脆弱性評価用コンピュータへ入力されるステップと、
前記脆弱性評価処理部が前記攻撃経路を前記攻撃マップの形式で示す攻撃マップ生成ステップと、
求めに応じて脆弱性評価結果を前記脆弱性評価用コンピュータから前記管理者端末へ送信するステップと、
を有する請求項５に記載の脆弱性評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は脆弱性評価装置、脆弱性評価システム及びその方法に関し、特に新製品開発において適用可能な脆弱性評価装置、脆弱性評価システム及びその方法に関する。
【背景技術】
【０００２】
近年、複数の電子制御装置（ＥＣＵ：Electronic Control Unit）を有する車載通信システムにおいて、外部の情報通信機器と通信を行うことで様々な情報を取得し、取得した情報を用いて車両の安全運転支援や自動運転を実現する技術が普及し始めている。このような車載通信システムでは、外部からのサイバー攻撃を受ける危険性が高まっており、セキュリティ性能の向上が求められている。特に、自動車には、乗員保護はもちろんのこと、その走行環境に対する安全義務について、他に多くの類例を見ない程に重い負担が課せられている。また、自動車の制御機能や自動運転支援の表示画面は、安全上重要で、しかも資産価値の高い構成要素、すなわち重要部であるため、攻撃から手厚く防御する必要がある。
【０００３】
一方、それら機器を構成するソフトウェアには、コンピュータプログラム上の不具合や仕様上の問題点等、ソフトウェア脆弱性（以下、「セキュリティーホール」、「セキュリティ脆弱性」、又は単に「脆弱性」ともいう）と呼ばれる欠陥を有していることがある。機器メ−カは、脆弱性セキュリティ性能を維持するために、製品出荷後にも引き続き脆弱性について監視するとともに情報収集する必要がある。すなわち、機器メ−カは、自社製品及びそれに関係して動作する機器が、脆弱性による害を被る危険性の程度を判定し、その危険性が無視できない程度である場合には対策を提供する。
【０００４】
このような背景から、対象システムが持つ脆弱性に基づいてシステムの脆弱性を評価する技術に関して、特許文献１が知られている。特許文献１には、製品、対象システムの脆弱性に基づく侵入ルートを検出し、その検出された侵入ルートに基づいてセキュリティ診断することができるセキュリティ診断システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２５７５７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載されたセキュリティ診断システムは、コンピュータ装置そのもの、又はコンピュータ応用機器全般に対する汎用的なセキュリティ診断、評価、そして対策となる技術が開示されている。特に、対象システムにおける脆弱性を持つポイントの情報に基づき、当該ポイントを組み合わせて当該対象システムに対する侵入ルートを探索する機能が開示されている。
【０００７】
しかしながら、特許文献１に記載されたセキュリティ診断システムでは、防御対象の重要性を考慮した上で、対応すべき優先順位を決定できるものではなかった。また、頻繁な仕様変更を伴う新製品開発において、セキュリティーホールが新たに生じても、それに対する品質管理を容易にすることもできなかった。
【０００８】
本発明は、かかる問題点に鑑みてなされたものであり、その目的とするところは、頻繁な仕様変更を伴う新製品開発において、セキュリティーホールが新たに生じても、防御対象の重要性を考慮した上で、品質管理を容易にすることが可能な脆弱性評価装置を提供することにある。
【課題を解決するための手段】
【０００９】
請求項１に係る発明は、コンピュータを応用した製品に複数のセキュリティーホールがあれば、該セキュリティーホール毎の脅威レベルを評価し、セキュリティ対策の優先順位を決定するために、少なくとも記憶部、及び処理部を備えた脆弱性評価用コンピュータにより構成された脆弱性評価装置であって、前記記憶部には、前記製品の構成要素の情報を格納する構成情報保持部と、前記構成要素毎に前記セキュリティーホールを明示する脆弱性情報を格納する構成要素−脆弱性対応保持部と、前記製品毎の製品ＩＤに該製品の前記構成要素毎の資産価値を紐付けて格納する資産情報保持部と、前記セキュリティ対策毎に、防御対象の構成要素、及び対策効果を数値化した係数が紐付けられて格納されたセキュリティ対策分類保持部と、攻撃経路を形成する要素名、及び該要素名に対応した前記脆弱性情報を紐付けた攻撃マップが格納される攻撃マップ保持部と、前記処理部で実行可能なプログラムと、を備え、該処理部は該プログラムの実行により、前記製品の情報を取得して前記記憶部に格納する情報収集処理部と、前記製品毎に前記攻撃マップを作成する攻撃マップ作成処理部と、前記資産価値に基づいて、前記構成要素毎のセキュリティーホールに対する前記脅威レベルを算出するとともに、対応すべきセキュリティ対策の優先順位を決定する脆弱性評価処理部と、を形成するものである。
【００１０】
請求項１に係る発明によれば、製品台数や構成要素毎の資産価値に基づいて、構成要素毎のセキュリティーホールに対する脅威レベルを評価し、セキュリティ対策の優先順位を決定することにより、頻繁な仕様変更を伴う新製品開発において、セキュリティーホールが新たに生じても、それに対する品質管理を容易にすることが可能な脆弱性評価装置を提供できる。
【００１１】
また、請求項５に係る発明は、コンピュータ応用機器でなる製品に複数のセキュリティーホールがあれば、それらの脅威レベルを評価してセキュリティ対策の優先順位を算出する処理を、少なくとも記憶部と、処理部と、該処理部で実行可能なプログラムと、を有する脆弱性評価用コンピュータにおいて実行する脆弱性評価方法であって、前記記憶部は、前記プログラムのほかに、前記製品の構成要素の情報を格納する構成情報保持部と、前記構成要素毎に前記セキュリティーホールを明示する脆弱性情報を格納する構成要素−脆弱性対応保持部と、前記製品毎の製品ＩＤに該製品の前記構成要素毎の資産価値を紐付けて格納する資産情報保持部と、前記セキュリティ対策毎に、防御対象の構成要素、及び対策効果を数値化した係数が紐付けられて格納されたセキュリティ対策分類保持部と、攻撃経路を形成する要素名、及び該要素名に対応した前記脆弱性情報を紐付けた攻撃マップが格納される攻撃マップ保持部と、を備え、前記処理部で前記プログラムが実行されて形成される脆弱性評価処理部により前記記憶部に格納された情報を用いて前記優先順位を決定する処理は、前記構成要素−脆弱性対応保持部から前記脆弱性情報を1つ取得するステップと、前記攻撃マップ保持部から前記攻撃マップを1つ選択するステップと、取得した攻撃マップの資産に対応する資産価値を前記資産情報保持部から取得するステップと、該当セキュリティーホールへの攻撃難易度を前記構成要素-脆弱性保持部から取得するステップと、前記資産価値と前記攻撃難易度を乗算するステップと、該乗算した計算結果に基づいて評価数値を設定するステップと、を有するものである。
【００１２】
請求項５に係る発明によれば、請求項１に係る発明と同等の作用効果が得られる。
【発明の効果】
【００１３】
本発明によれば、頻繁な仕様変更を伴う新製品開発において、セキュリティーホールが新たに生じても、それに対する品質管理が容易である。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施例１に係る脆弱性評価装置（以下、「本装置」ともいう）の利用形態を示すブロック図である。
【図２】本装置の内部構成を示すブロック図である。
【図３】本装置、管理者端末及び車載機器の各々のハードェア構成を示すブロック図である。
【図４】本装置、管理者端末の処理を示すシーケンス図である。
【図５】構成情報テーブルである。
【図６】構成要素−脆弱性対応テーブルである。
【図７】資産情報テーブルである。
【図８】セキュリティ対策分類テーブルである。
【図９】本装置での攻撃マップ作成処理を示すフローチャートである。
【図１０】製品台数管理テーブルである。
【図１１】攻撃経路マップテーブル（以下、「攻撃マップテーブル」ともいう）である。
【図１２】本装置での脆弱性評価処理を示すフローチャートである。
【図１３】本装置の脆弱性評価結果の出力画面である。
【図１４】本発明の実施例２に係る脆弱性評価装置（これも「本装置」という）の利用形態を示すブロック図である。
【図１５】車載機器の内部構成を例示するブロック図である。
【図１６】実施例２に係る本装置、管理者端末及び車載機器の処理シーケンス図である。
【発明を実施するための形態】
【００１５】
［実施例１］
まず、実施例１に係る脆弱性評価装置（本装置）について、図１〜図１３を用いて詳細に説明する。その後、システム構成の若干異なる実施例２について、図１４〜図１６を用いて簡単に説明する。
【００１６】
図１は、実施例１に係る本装置の利用形態を示すブロック図である。図１に示すように実施例１の構成は、脆弱性評価装置（本装置）１に管理者端末２が有線又は無線による伝送経路を介して直接接続されてシステム構成された脆弱性評価システム（以下、「本システム」又は「本実施例１」ともいう）である。このように、本システムは、本装置１と管理者端末２とから構成されるが、管理者端末２を本装置１の入出力部として付設することにより一体構成したものであっても良い。
【００１７】
図２は、本装置１の内部構成を示すブロック図である。本装置１は、処理部２０と、記憶部４０と、入出力部２７と、通信部２８とを備えて構成されている。処理部２０は、車載機器情報収集処理部２１と、攻撃マップ作成処理部２２と、脆弱性評価処理部２３と、評価結果出力処理部２４と、端末結果通知処理部２５と、脆弱性取得処理部２６とからなる。入出力部２７は、操作者からの指示の受け付け、各種データの入出力、及び処理結果の出力等を行う。通信部２８は、ネットワークを介して外部と通信する。
【００１８】
記憶部４０は、図５を用いて後述する構成情報テーブル５を保持する構成情報保持部４１と、図６を用いて後述する構成要素−脆弱性対応テーブル６を保持する構成要素−脆弱性対応保持部４２と、図７を用いて後述する資産情報テーブル７を保持する資産情報保持部４３と、図８を用いて後述するセキュリティ対策分類テーブル８を保持するセキュリティ対策分類保持部４４と、図１０を用いて後述する製品台数管理テーブル１０を保持する製品台数管理テーブル保持部４５と、図１１を用いて後述する攻撃マップテーブル１１を保持する攻撃マップ保持部４６と、を有する。
【００１９】
車載機器情報収集処理部２１は、入出力部２７又は通信部２８を介して管理者端末２から車載機器の情報を取得するとともに、そのように取得した各種情報を構成情報保持部４１、資産情報保持部４３、セキュリティ対策分類保持部４４、製品台数管理テーブル４５に格納する。
【００２０】
攻撃マップ作成処理部２２は、構成情報テーブル５（図５）と構成要素−脆弱性対応テーブル６（図６）と資産情報テーブル７（図７）とセキュリティ対策分類テーブル８（図８）とに格納される情報を用いて、車載機器の製品及び製品の構成バリエーション毎に攻撃マップを作成する処理を行う。攻撃マップを作成する処理については、図９を用いて後述する。
【００２１】
脆弱性評価処理部２３は、構成情報テーブル５（図５）と構成要素−脆弱性対応テーブル６（図６）と資産情報テーブル７（図７）とセキュリティ対策分類テーブル８（図８）と製品台数管理テーブル１０（図１０）と攻撃マップテーブル１１（図１１）とに格納される情報を用いて、脆弱性の対応優先度を評価する処理を行う。
【００２２】
この処理部２３は、資産価値や稼動台数に基づく影響の大きさを構成要素毎に算出した結果を比較することにより、セキュリティ脆弱性を構成要素毎に判定する脆弱性評価して、優先順位を決定する。この処理部２３における、脆弱性の対応優先度を評価する処理については、図１２を用いて後述する。なお、対応優先度を評価するとは、処理部２３が、対応すべき優先順位を決定する処理を継続中に、変化した条件に優先順位を適応させることをいう。
【００２３】
評価結果出力処理部２４は、脆弱性評価処理部２３の処理結果を入出力部２７又は通信部２８を介して管理者端末２へ出力するために、評価結果として形式を整える処理を行う。端末結果通知処理部２５は、実施例２で後述するような車載機器と接続する構成において、評価対象とする車載機器に対し、脆弱性評価結果と、脆弱性対応結果と、管理者への注意喚起等の情報と、の少なくとも何れかを送信するための処理を行う。
【００２４】
脆弱性取得処理部２６は、入出力部２７又は通信部２８を介して管理者端末２から脆弱性に関する情報を取得し、図５及び図６を用いて詳述するように、図５の構成情報テーブル５の列５４から構成要素を読み出して、図６の構成要素−脆弱性対応テーブル６の列６１，６２で隣り合わせた行に示すように、構成要素に関連する脆弱性情報が紐付けられる。
【００２５】
そのように紐付けられた構成要素及び脆弱性に関する情報は、構成要素−脆弱性対応保持部４２に格納される。脆弱性に関する情報とは、ソフトウェアの持つ情報セキュリティ上の欠陥に関する情報であり、セキュリティホ−ルとも呼ばれる。脆弱性情報は、例えばセキュリティナレッジを公開する機関のサ−バが配信している。なお、ここでは脆弱性情報の配信元は問わない。
【００２６】
脆弱性に関する情報は、管理者が上記の配信サ−バから製品に関連する情報を選択して取得し、入出力部２７又は通信部２８を介して本装置１に入力しても良いし、脆弱性取得処理部２６が通信部２８を介して外部の配信サ−バから自動的に取得するようにしても良い。
【００２７】
図３は、図１に示した本装置１、管理者端末２及び、図１５を用いて後述する車載機器の各々のハードェア構成を示すブロック図である。これらのうち、脆弱性装置１、及び管理者端末２は、一般的なコンピュータ（電子計算機）である。図３に示すように、コンピュータは、ＣＰＵ（Central Processing Unit）３２と、メモリ３３と、外部記憶装置３４と、通信装置３５と、入力装置３６と、出力装置３７と、読取装置３８と、内部通信線（例えば、ＢＵＳ）３１と、を備えて構成されている。
【００２８】
ＣＰＵ３２は、各種処理や演算を始めとしてコンピュータ全体の制御も行う。メモリ３３、及びハードディスクその他の外部記憶装置３４は、各種プログラム及びデータを読み出し自在に記憶する。通信装置３５は、ネットワーク３を介して他コンピュータと通信を行う。入力装置３６は、キーボードやボタン・スイッチ等により構成され、管理者の意思をコンピュータに入力する。出力装置３７は、モニタやプリンタ等により構成され、コンピュータの処理結果を管理者へ通知できるように表示する。読取装置３８は、ＣＤ−ＲＯＭやＵＳＢメモリ等の可搬性を有する記憶媒体３９から情報を読み取る。内部通信線３１は、コンピュータ内における各部の間でデータの送受信を行う経路である。
【００２９】
ＣＰＵ３２は、外部記憶装置３４から各種プログラムをメモリ３３にロードし、所定のプログラムを実行することにより上術の各処理を実現する。すなわち、処理部２０は、ＣＰＵ３２の処理プロセスとして実現され、記憶部４０は、ＣＰＵ３２がメモリ３３や外部記憶装置３４を利用することにより実現される。また、通信部２８は、ＣＰＵ３２が通信装置３５を利用することにより実現され、入出力部２７は、ＣＰＵ３２が入力装置３６や出力装置３７や読取装置３８を利用することにより実現される。
【００３０】
図２に示した処理部２０の下位に括られた各処理部２１〜２６を実現する所定のプログラムは、以下の経路で利用可能に提供される。すなわち、予め外部記憶装置３４で保持されているプログラムでも良い。また、このコンピュータによって利用可能な可搬性を有する記憶媒体３９に格納されたプログラムであり、読取装置３８を介して必要に応じて読み出されるものでも良い。あるいは、このコンピュータが利用可能な通信媒体であるネットワーク又はネットワーク上を伝搬する搬送波を利用する通信装置３５と接続された他のコンピュータから必要に応じてダウンロードされて外部記憶装置３４に格納されるプログラムであっても良い。
【００３１】
図４は、本装置１、及び管理者端末２の処理を示すシーケンス図である。最初に脆弱性の対応優先度評価をする事前準備のシーケンスについて説明する。図４の上方に示すように、ステップＳ１〜Ｓ４では、評価対象の車載機器の情報、及びその他の必要な情報を取得し、それらを記憶部４０（図２）の適切なところに読み出し自在に格納する。この事前準備は、評価対象となり得る車載機器の製品の数に応じた回数だけ実行される。なお、同じ製品でも構成要素を異ならせた構成バリエーションが複数ある場合には、それら構成バリエーションの数に応じた回数だけ実行されるものとする。
【００３２】
まず、ステップＳ１では、管理者端末２が、本装置１に対して評価対象となる車載機器についての各種情報を入力する。それら車載機器の情報は、本装置１の車載機器情報収集処理部２１で処理され、それぞれに適した各保持部４１〜４６に格納される。つぎに、ステップＳ２では、管理者端末２は、本装置１に対して、脆弱性に関する情報を入力する。
【００３３】
脆弱性に関する情報は脆弱性取得処理部２６で処理され、構成要素−脆弱性対応保持部４２に格納される。なお、上述したステップＳ２では、管理者が脆弱性情報の配信サ−バから製品に関連する情報を選択して取得し、本装置１に入力しても良いし、脆弱性取得処理部２６が通信部２８を介して外部の配信サ−バから自動的に取得するようにしても良い。
【００３４】
つぎに、ステップＳ３では、本装置１の車載機器情報収集処理部２１が、ステップＳ１で入力された車載機器の情報のなかから、製品ＩＤを取得し、構成情報テーブル５（図５）の製品ＩＤ列５１に同じ製品ＩＤが存在するか否かについて確認する。同じ製品ＩＤが存在した場合、車載機器情報収集処理部２１は、車載機器情報の構成要素情報の組み合わせがテーブルに格納された情報と入力された情報で同じ構成要素の組み合わせで有るか否かについて確認する。同じ構成要素の組み合わせである場合（Ｓ３でＹｅｓ）、車載機器情報収集処理部２１は、攻撃マップが作成済みであると判断し、事前準備を終了する。
【００３５】
逆に、構成要素の組み合わせが異なっている場合（Ｓ３でＮｏ）、車載機器情報収集処理部２１は、新規の構成バリエーションＩＤを付与し、構成情報テーブル５（図５）に車載機器の構成要素の階層と構成要素を格納する。そして、車載機器情報収集処理部２１は、これまで格納されていない構成要素に関する情報を、構管理者成要素−脆弱性対応テーブル６（図６）、資産情報テーブル７（図７）、セキュリティ対策分類テーブル８（図８）、製品台数管理テーブル１０（図１０）にそれぞれ格納し、ステップＳ４へ進む。
【００３６】
つぎに、ステップＳ４では、本装置１の攻撃マップ作成処理部２２が、構成情報テーブル５（図５）と構成要素−脆弱性対応テーブル６（図６）と資産情報テーブル７（図７）とセキュリティ対策分類テーブル８（図８）とに格納された情報を用いて、該当の構成バリエーションＩＤの攻撃マップを作成する。攻撃マップを作成する処理については、図９を用いて後述する。
【００３７】
つぎに、脆弱性の対応優先度を評価するシーケンス（Ｓ５〜Ｓ１３）について説明する。ステップＳ５では、管理者が管理者端末２を用い、本装置１に対して新規に取得した又は問い合わせのあった脆弱性情報を入力する。このとき、管理者端末２からは、製品ＩＤを入力し、評価対象の製品を限定して脆弱性評価を実行しても良い。脆弱性評価を実行するためのトリガ−は限定しない。もしくは、ステップＳ５において、脆弱性の情報を入力せず評価実行ボタンを押下するようにしても良い。もし、そのように、脆弱性の情報を入力せず脆弱性評価処理を実行したならば、ステップＳ５を省略してステップＳ６から実行される。
【００３８】
ステップＳ６では、本装置１の脆弱性取得処理部２６が、構成要素−脆弱性対応テーブル６（図６）を取得する。つぎに、ステップＳ７では、本装置１の脆弱性取得処理部２６が、構成要素−脆弱性対応テーブル６（図６）内にステップＳ５で入力された脆弱性情報が格納されているか否かについて確認する。既に脆弱性情報が格納されている場合（Ｓ７でＹｅｓ）、ステップＳ１１に進む。逆に、脆弱性情報が格納されていない場合（Ｓ７でＮｏ）、入力された脆弱性情報は新規の脆弱性であるため、その新規の脆弱性情報を構成要素−脆弱性対応テーブル６（図６）に格納し、ステップＳ８へ進む。
【００３９】
ステップＳ８では、本装置１の攻撃マップ作成処理部２２が、新たに格納された脆弱性情報を含めて、既に保持している製品ＩＤ及び構成バリエーションＩＤの攻撃マップを全て作成し直す。そのように再作成するとき、それぞれの攻撃マップの作成処理はステップＳ４と同様であり、図９を用いて後述する。
【００４０】
つぎに、ステップＳ１１では、本装置１の脆弱性評価処理部２３が、構成情報テーブル５（図５）と、構成要素−脆弱性対応テーブル６（図６）と、資産情報テーブル７（図７）と、セキュリティ対策分類テーブル８（図８）と、製品台数管理テーブル１０（図１０）と、攻撃マップテーブル１１（図１１）と、に格納される情報を用いて、脆弱性の対応優先度を評価する。脆弱性の対応優先度を評価する処理については、図１２で述べる。
【００４１】
つぎに、ステップＳ１２では、本装置１の評価結果出力処理部２５が、ステップＳ１１による脆弱性評価処理の結果を整形し、管理者端末２へ送信する。最後に、通知シーケンスは、ステップＳ１３により、脆弱性の対応結果や対応計画について、管理者端末２から本装置１へ通知するシーケンスである。なお、この通知シーケンス（Ｓ１３）は、省略しても構わない。
【００４２】
図５は、構成情報テーブル５である。この構成情報テーブル５は、構成情報保持部４１（図２）に格納される。図５に示すように、構成情報テーブル５は、製品ＩＤの列５１と、構成バリエーションＩＤの列５２と、構成要素の階層の列５３と、構成要素の列５４とを有する。
【００４３】
製品ＩＤの列５１は、製品の種別を特定するための情報を格納する。構成バリエーションＩＤの列５２は、同じ製品の中から構成要素の組み合わせを特定するための情報を格納する。構成要素の階層の列５３は、構成要素の資産までの物理的又はネットワーク的又は概念的な距離を示す情報を格納する。構成要素の列５４は、構成要素の各コンポ−ネントを示す情報を格納する。
【００４４】
構成要素の階層の列５３に格納されて距離を示す情報は、例えば、構成レイヤやネットワーク構成、サイバーキルチェーンによるもの等が考えられる。資産に対する構成要素の距離を表現できる情報であれば、特にその表現方法は限定しない。
【００４５】
構成要素の列５４に格納される情報は、構成要素の具体的な製品名、ソフトウェア名、機能名、インターフェース名、要素技術名等が考えられる。製品名やソフトウェア名に関しては、脆弱性情報はソフトウェアのバ−ジョンにより関連が異なってくるため、詳細なバ−ジョン名等の情報も本列に格納するものとする。
【００４６】
図５に示すように、一つの製品ＩＤで複数の構成バリエーションＩＤを持つことも想定される。構成要素の数は、製品及び構成バリエーションにより異なって良い。また、一つの構成要素の階層に対し、構成要素は複数保持しても良い。この構成要素構成情報テーブル５は、評価対象とする車載機器の攻撃マップ作成に必要な構成情報を保持するテーブルであり、管理者により予め登録される。また、この構成情報テーブル５は、車載機器の構成変更（例えば、アップデートや仕様変更等）の度に変更登録されるものとする。
【００４７】
図６は、構成要素−脆弱性対応テーブル６である。この構成要素−脆弱性対応テーブル６は、構成要素−脆弱性対応保持部４２（図２）に格納される。図６に示すように、構成要素−脆弱性対応テーブル６は、構成要素の各コンポーネントを示す情報を格納する構成要素の列６１と、脆弱性を特定する情報を格納する脆弱性情報の列６２と、各脆弱性の資産に対する影響レベルを示す情報を格納する攻撃難易度の列６３と、を有する。
【００４８】
構成要素の列６１は、構成情報テーブル５（図５）の構成要素の列５４を参照して作成される。ただし、脆弱性が確認されていない構成要素も存在するため、格納される内容は同一とは限らない。また、脆弱性取得処理部２６（図２）により自動化処理とする場合、外部の配信サーバで既に脆弱性情報に構成要素名（例えば、Wi-Fi（登録商標）やWindows 7（登録商標）等）が紐付けられているならば、それも利用可能である。その紐付けに基づいて構成要素−脆弱性対応テーブル６（図６）を作成すれば、処理が簡素化できることもある。もし、それで不足があれば、別途、構成情報テーブル５（図５）の列５４に格納されている構成要素を参照して紐付けた情報を用いても良い。
【００４９】
脆弱性情報の列６２は、例えば、ＣＶＥ番号のほか、脆弱性の固有名称等が考えられる。一つの構成要素に対して、複数の脆弱性が紐付けられる場合も有り得る。その場合には一つの構成要素に対して複数行の脆弱性情報を格納する。
【００５０】
攻撃難易度の列６３は、脆弱性のリスク値として、例えば、共通脆弱性評価システムＣＶＳＳ（Common Vulnerability Scoring System）により定義されたＣＶＳＳ値を用いることができる。また、ＣＶＳＳ値でなければ、管理者が、何らかの指標に基づいて予め設定したものとしても良い。その指標とは、ＣＷＥ識別子、製品の社会への影響度、あるいは、セキュリティポリシー等に基づいて定めても良い。
【００５１】
本発明の目的が、防御対象の重要性を考慮した優先順位付けであり、新製品に生じるセキュリティーホールを容易に品質管理するため、その目的を達成できるように、脆弱性のリスク値を例えば１〜１０の範囲に数値設定する。その結果、使い勝手の良好な脆弱性評価装置、脆弱性評価システム及びその方法を実現できる。
【００５２】
また、既に客観性を有するように確立された指標に依存することなく、独自に攻撃難易度の指標を設定する場合は、列６２に格納される脆弱性情報に対して影響レベルをそれぞれ割当てる処理を実行する。何れの規定によって設定されたリスク値であっても、その数値が少ないほど安全性が高く、その数値が大きいほど、攻撃に対して脆弱であるため、問題が大きいことを示している。図６の例示によれば、Wi-Fiの攻撃難易度は８．５２であり、Windows 7の攻撃難易度１．６４より大きい数値であるため、Wi-Fiの方が、Windows 7よりも攻撃に対して脆弱である。
【００５３】
図７は、資産情報テーブル７である。この資産情報テーブル７は、資産情報保持部４３（図２）に格納される。図７に示すように、資産情報テーブル７は、製品を特定する情報を格納する製品ＩＤの列７１と、車載機器の構成要素のうち資産を示す情報を格納する資産の列７２と、その資産の価値を示す情報を格納する資産価値の列７３と、を有する。
【００５４】
資産の列７２に格納される車載機器の構成要素のうち資産を示す情報とは、当該製品の仕様とされる機能及びデータ情報をいう。すなわち、製品の機能は、構成要素でもあり資産でもある。ただし、資産情報テーブル７（図７）は、脆弱性の対応優先度を評価する際に考慮すべき資産の情報を格納していれば良いため、全ての機能を資産としても良いし、予め管理者が資産とすべき機能を選択したうえで資産として登録しても良い。
【００５５】
資産価値の列７３に格納されるその資産の価値を示す情報は、予め管理者により資産の価値を順位付けして設定される。例えば、自動車の制御に直接係わる機能や、個人を特定できる個人情報等、その資産が攻撃を受けた際に及ぼす影響によって資産の価値が順位付けされる。図７の資産価値の列７３において、客観的な価値の貴賤に相関するように数値設定しているが、その価値観については、必ずしも客観的である必要はなく、その価値の大きさが比較できれば、独自の価値判断基準に基づく設定でも構わない。
【００５６】
図８は、セキュリティ対策分類テーブル８である。このセキュリティ対策分類テーブル８は、セキュリティ対策分類保持部４４で保持されている。図８に示すように、セキュリティ対策分類テーブル８は、製品に搭載されたセキュリティ対策を示す情報を格納するセキュリティ対策の列８１と、そのセキュリティ対策が影響する構成要素の情報を格納する防御対象の構成要素の列８２と、そのセキュリティ対策の種類に関する情報を格納する分類８３の列８３と、攻撃を受けた際にそのセキュリティ対策が資産に対して影響する影響度合い（以下、「攻撃緩和度合い」又は「セキュリティ効果」ともいう）を示す情報を格納する係数の列８４と、を有する。
【００５７】
特に、分類８３の列８３は、例えば、セキュリティ対策の種類をつぎの４つで分類した情報等が格納される。ここに例示した４つの分類は、防御、検知、対応、復旧であるが、分類の仕方はこの限りではない。係数の列８４は、予め管理者により分類に合わせて設定される。脆弱性による資産への攻撃を該当セキュリティ対策が緩和する度合いを予め決めておくものとする。
【００５８】
図８の例では、分類が防御や検知のものは資産への影響を緩和し、分類が対応のものは攻撃後の対策であるため資産への影響緩和は無い（セキュリティ対策が無い構成要素）に等しく計算することを示している。ただし、本例は一例であり、係数の設定内容は限定しない。
【００５９】
図９は、本装置１の攻撃マップ作成処理を示フローチャートである。この処理は、本装置１の攻撃マップ作成処理部２２（図２）によって実行される。図９に示すように、最初のステップＳ２１では、攻撃マップ作成処理部２２が、製品ＩＤに基づいて、構成情報テーブル５（図５）を検索し、構成要素の階層の列５３及び構成要素の列５４の情報を取得する。なお、構成バリエーションＩＤの列５２に、複数の該当製品ＩＤが保存されている場合、攻撃マップ作成処理は複数の構成バリエーションＩＤ毎に実行される。
【００６０】
つぎに、ステップＳ２２では、攻撃マップ作成処理部２２が、資産情報テーブル７（図７）から該当製品ＩＤの資産情報を一つ取得する。攻撃マップ作成処理部２２は、取得した資産情報を攻撃マップテーブル１１（図１１）の資産の列１１２に格納する。つぎに、ステップＳ２３では、攻撃マップ作成処理部２２が、構成情報テーブル５の構成要素の階層の列５３および構成要素の列５４に基づいて、ステップＳ２２で取得した資産情報につながる構成要素をその階層順に並べ、攻撃マップテーブル１１の要素名の列１１３を形成し、それぞれの資産への攻撃経路を作成する。なお、ステップＳ２２〜Ｓ２６については、図１１に例示する攻撃マップテーブル１１と照合させながら後述する。
【００６１】
つぎに、ステップＳ２４では、攻撃マップ作成処理部２２が、ステップＳ２３で並べた要素名の列１１３に格納される構成要素のうち一つを取得する。つぎに、ステップＳ２５では、攻撃マップ作成処理部２２が、セキュリティ対策分類テーブル８（図８）の防御対象の構成要素の列８２に、ステップＳ２４で取得した構成要素の情報が有るか否かについて確認する。
【００６２】
該当する構成要素が、防御対象の構成要素の列８２に存在した場合（Ｓ２５でＹｅｓ）、ステップＳ２６へ進む。存在しない場合（Ｓ２５でＮｏ）、ステップＳ２６へ進む。そのステップＳ２６では、攻撃マップ作成処理部２２か、セキュリティ対策分類テーブル８（図８）の該当構成要素に対応するセキュリティ対策を取得し、ステップＳ２３で並べた攻撃マップテーブル１１の要素名の列１１３の該当構成要素の次の行(下の行)に取得したセキュリティ対策を並べる。すなわち、攻撃マップテーブル１１の要素名の列１１３は、構成要素とその構成要素に対応するセキュリティ対策とが格納されることになる。
【００６３】
つぎに、ステップＳ２７では、攻撃マップ作成処理部２２が、構成要素−脆弱性対応テーブル６（図６）の構成要素の列６１に、ステップＳ２４で取得した構成要素の情報が有るか否かについて確認する。構成要素が列６１に存在した場合（Ｓ２５でＹｅｓ）、ステップＳ２８へ進む。存在しない場合（Ｓ２５でＮｏ）、ステップＳ２９へ進む。
【００６４】
つぎに、ステップＳ２８では、攻撃マップ作成処理部２２が、構成要素―脆弱性対応テーブル６（図６）の該当構成要素に対応する脆弱性情報を脆弱性情報の列６２から取得し、ステップＳ２３で並べた攻撃経路の構成要素に割付け、攻撃マップテーブル１１の脆弱性情報の列１１４を形成する。なお、一つの構成要素に対して、複数の脆弱性情報が紐づいている場合も有り得る。また、要素名の列１１３のうち、ステップＳ２６で格納したセキュリティ対策や構成要素には、対応する脆弱性情報のない要素も有り得る。
【００６５】
つぎに、ステップＳ２９では、ステップＳ２５〜Ｓ２８の処理が実行されたか否かについて確認する。すなわち、攻撃マップ作成処理部２２が、ステップＳ２３で作成した攻撃経路の構成要素の全てをステップＳ２４で取得し、それら攻撃経路の該当構成要素に対応する脆弱性情報が全て割付けを完了していることを確認する。ステップＳ２９がＹｅｓの場合、すなわち、ステップＳ２５〜Ｓ２８の処理が完了していれば、該当製品ＩＤの該当資産（Ｓ２２で取得した資産）に対する攻撃マップを作成終了したことになり、ステップＳ３０へ進む。
【００６６】
逆に、ステップＳ２９がＮｏ場合、すなわち、ステップＳ２５〜Ｓ２８の処理が未完了ならば、ステップＳ２４へ戻る。そのステップＳ２４で取得した構成要素に対し、いまだステップＳ２５〜Ｓ２８が未完了状態の構成要素を取得して完了させる。なお、ステップＳ２５〜Ｓ２８の処理対象となった構成要素のなかには、何れのセキュリティ対策も脆弱性が割り付かないものが有る。その場合、ステップＳ２５〜Ｓ２８が実行されていれば問題無い。
【００６７】
つぎに、ステップＳ３０では、攻撃マップ作成処理部２２が、資産情報（図７の列７２）の全てに対し、攻撃マップを作成したか否かについて確認する。ここでいう全ての資産情報とは、資産情報テーブル７（図７）で該当製品ＩＤ（列７１）の資産（列７２）として格納されている全てを意味する。これら全ての資産に対する攻撃マップが作成できている場合（Ｓ３０でＹｅｓ）、ステップＳ３１へ進む。作成できていない場合（Ｓ３０でＮｏ）、ステップＳ２２へ戻り、ステップＳ２２〜Ｓ２９を繰り返す。
【００６８】
つぎに、ステップＳ３１では、作成した攻撃マップ群に対し、製品ＩＤと構成バリエーションＩＤを付与し、攻撃マップ保持部４６（図２）に格納する。これらの製品ＩＤと構成バリエーションＩＤは、ステップＳ２１で取得した構成情報テーブル５（図５）と同一のものである。なお、攻撃マップの保持データテーブル例については、図１１を用いて後述する。
【００６９】
以上、図９に示したステップＳ２１〜Ｓ３１により、攻撃マップ作成処理部２２（図２）が、攻撃マップを作成する処理について説明した。これにより、資産それぞれに対する攻撃経路について、考慮すべきセキュリティ対策、及び脆弱性情報が紐づく形式で攻撃マップが作成される。
【００７０】
図１０は、製品台数管理テーブルである。この製品台数管理テーブル１０は製品台数管理テーブル保持部４５（図２）に格納される。図１０に示すように、製品台数管理テーブル１０は、製品の種別を特定するための情報を格納する製品ＩＤの列１０１と、該当製品ＩＤの稼動している台数を示す情報を格納する列１０２と、同じ製品の中から構成要素の組み合わせを特定するための情報を格納する構成バリエーションＩＤの列１０３と、該当構成バリエーションＩＤの稼動している台数を示す情報を格納する列１０４とを有する。
【００７１】
なお、製品台数及び構成バリエーション台数については、製品が譲渡先で稼動している実際の台数を厳密に確認して計数する必要はない。すなわち、実際の台数に代えて、比較的容易に計数できる台数が管理者により登録される。容易に計数できる台数の例として、出荷台数、出荷見込み台数、又は想定する運用対象の台数を用いても良い。
【００７２】
図１１は、攻撃マップテーブル１１である。この攻撃マップテーブル１１は、構成情報テーブル５（図５）から取得された構成バリエーションＩＤ一つを単位とし、複数の単位に及ぶ攻撃マップ１１−１，１１−２，・・・が、攻撃マップ群を形成して攻撃マップ保持部４６（図２）で保持されている。
【００７３】
図１１に示すように、攻撃マップテーブル１１は、製品ＩＤ−構成バリエーションＩＤの列１１１と、資産の列１１２と、要素名の列１１３と、脆弱性情報の列１１４と、を有する。製品ＩＤ−構成バリエーションＩＤの列１１１には、図１０で示した製品ＩＤの列１０１と、構成バリエーションＩＤの列１０３と、それぞれの列１０１，１０３で保持されている情報を流用して格納する。
【００７４】
これらのうち、一方の列１０１から流用される製品ＩＤは、製品の種別を特定するための情報である。また、他方の列１０３から流用される構成バリエーションＩＤは、同じ製品の中から構成要素の組み合わせを特定するための情報である。
【００７５】
資産の列１１２には、図７で示した資産の列７２で保持されている資産の情報を流用して格納する。要素名の列１１３には、要素名を格納する。要素名とは、資産１１２への攻撃経路を形成する要素を識別する情報をいう。
【００７６】
要素名の列１１３に格納される要素は、資産への攻撃経路を形成する要素である。資産への攻撃経路を形成する要素には、つぎの第１〜第３で示す３つの情報のうち少なくとも何れかが割当てられる。第１の情報は、構成情報テーブル５（図５）の列５４で保持されている構成要素の情報である。
【００７７】
第２の情報は、資産情報テーブル７（図７）の列７２で保持されている資産の情報である。第３の情報は、セキュリティ対策分類テーブル８（図８）の列８１で保持されているセキュリティ対策の情報である。
【００７８】
脆弱性情報の列１１４には、図１１で同じ行の左の列、すなわち、要素名の列１１３に記載された要素名に紐付け対応する脆弱性情報が格納される。つまり、この脆弱性情報は、要素毎に紐付けられた脆弱性情報であり、構成要素−脆弱性対応テーブル６（図６）で保持されている該当情報を流用して格納される。
【００７９】
その構成要素−脆弱性対応テーブル６において、構成要素６１に紐付けられた脆弱性情報６２が無い場合、図１１の攻撃マップテーブル１１（図１１）における脆弱性情報の列１１４は、空欄（Ｎ／Ａ）のままで構わない。一方で、要素に紐づく脆弱性が複数あった場合には、一つの要素名に対して複数の脆弱性情報を格納する。
【００８０】
攻撃マップは、図９を用いて上述した攻撃マップ作成処理（Ｓ２１〜Ｓ３１）の結果、製品ＩＤ及び構成バリエーションＩＤを特定した形で作成される。図１１に例示する攻撃マップテーブル１１は、資産一つずつに対する攻撃経路を示す攻撃マップであり、製品ＩＤ毎に資産の数だけ図１１に示すテーブルが作成され、またその製品ＩＤの構成バリエーションＩＤ毎に、個別の攻撃マップテーブルも作成できる。それら複数の攻撃マップ１１−１，１１−２は、製品ＩＤ及び構成バリエーションＩＤにそれぞれ紐付けたテーブル形式で保持される。なお、攻撃マップのテーブル形式は、この形式に限定されない。
【００８１】
図１２は、本装置での脆弱性評価処理を示すフローチャートである。この処理を示すステップＳ４１〜Ｓ５２の説明において、各処理の基本的な実行主体は、本装置１の脆弱性評価処理部２３（図２）である。最初のステップＳ４１では、構成要素−脆弱性対応テーブル６（図６）から脆弱性情報を１つ取得する。
【００８２】
つぎに、ステップＳ４２では、脆弱性評価処理部２３が、攻撃対象となる資産とその資産に繋がる攻撃経路内に該当脆弱性を持つ要素が含まれているか否かについて確認する。換言すると、ステップＳ４２では、攻撃マップ保持部４６の中に、該当脆弱性が記載された攻撃マップテーブル１１が存在するか否かを確認する。
【００８３】
攻撃経路内に該当脆弱性を持つ要素が存在しない場合（Ｓ４２でＮｏ）、ステップＳ４３へ進む。逆に、該当脆弱性を持つ要素が存在する場合（Ｓ４２でＹｅｓ）、ステップＳ４４へ進む。ステップＳ４４では、脆弱性評価処理部２３が、資産情報テーブル７（図７）から資産価値の列７３を取得し、ステップＳ３１（図９）で取得した攻撃マップ群のうち資産価値の高いものから攻撃マップを１つ選択する。
【００８４】
つぎに、ステップＳ４５では、脆弱性評価処理部２３が、資産情報テーブル７を参照し、取得した攻撃マップの資産に対応する資産価値の列７３の値を取得する。つぎに、ステップＳ４６では、構成要素-脆弱性テーブル６（図６）を参照し、該当脆弱性の攻撃難易度の列６３の値を取得する。
【００８５】
つぎに、ステップＳ４７では、脆弱性評価処理部２３が、資産価値と攻撃難易度の値を乗算する。すなわち、ステップＳ４６の脆弱性毎の評価計算結果に、攻撃対象の資産の資産価値を掛け合わせる。換言すれば、攻撃対象となる資産の価値と、攻撃マップの攻撃経路上の要素の持つ脆弱性の攻撃難易度とを掛け合わせる。ステップＳ４７の処理は、攻撃マップの構成要素に紐づく脆弱性情報全てに対して計算される。
【００８６】
つぎに、ステップＳ４８では、脆弱性評価処理部２３が、ステップＳ４４で取得した攻撃マップにおいて、該当脆弱性が紐付けられている要素の行よりも下の行にセキュリティ対策が1つ以上記載されているか否かを確認する。記載されている（Ｓ４８でＹｅｓ）ならば、ステップＳ４９へ進む。逆に、記載されていなければ（Ｓ４８でＮｏ）、Ｓ４９を飛び越えてＳ５０へ進む。
【００８７】
つぎに、ステップＳ４９では、脆弱性評価処理部２３が、攻撃マップに記載されている脆弱性情報と、その脆弱性に対するステップＳ４７の評価計算結果とをリストにする。換言すれば、ステップＳ４９では、脆弱性評価処理部２３は、セキュリティ対策分類テーブル８（図８）から該当セキュリティ対策の係数情報（列８４）を参照し、その係数をステップＳ４６の値に乗算する。このとき、該当脆弱性より下の行に記載されているセキュリティ対策の数だけ乗算を繰り返す。
【００８８】
ここでは脆弱性の評価計算方法の単純な例として、ステップＳ４７およびステップＳ４９において、資産価値、攻撃難易度、および攻撃緩和度合の係数といった係数同士を掛け合わせる例を述べているが、セキュリティ対策の攻撃に対する攻撃緩和度合い（セキュリティ効果）と脆弱性の資産に対する影響度合いを考慮した計算方法であればその具体的な計算方法は限定しない。
【００８９】
つぎに、ステップＳ５０では、評価数値にステップＳ４７又はＳ４９で計算された評価計算結果を設定する。このとき、同一脆弱性に対し複数計算結果が出た場合は、大きい方の値を評価数値とする。ここで、脆弱性評価処理部２３が、ステップＳ４９で作成した評価結果としての脆弱性情報と計算結果数値のリストを設定する。そして、脆弱性の対応優先度の候補として評価計算結果の数値の大きい順に並び替える。ただし、対応優先度の候補が評価計算結果の数値であることは一例に過ぎない。図１３を用いて後述するように製品台数と脆弱性の割合を示す保有割合のほか、評価計算数値と保有割合とを勘案した総合値等、複数の候補が表示できる。それらは管理者により選択可能とする。
【００９０】
つぎに、ステップＳ５１では、脆弱性評価処理部２３が、該当脆弱性の記載された攻撃マップは全て計算したか否かについて確認する。換言すると、評価対象製品ＩＤに別の構成バリエーションＩＤが残っているか否かについて確認する。つまり、ステップＳ５１では、全ての攻撃マップを選択して脆弱性毎の評価計算を実行した否かを確認する。全ての攻撃マップに対して評価計算を実行した場合（Ｓ５１でＹｅｓ）は、ステップＳ５２へ進む。
【００９１】
実行していない場合（Ｓ５１でＮｏ）は、ステップＳ４４へ戻る。換言すると、攻撃マップテーブル１１に格納されている全ての構成バリエーションＩＤの攻撃マップに対して評価処理（Ｓ４２〜Ｓ５０）を実行したか否かについて確認する。完了していない場合（Ｓ５１でＮｏ）には、ステップＳ４４へ戻り他の構成バリエーションＩＤに対しても評価処理を実行する。そのとき、脆弱性評価処理部２３は、資産価値や稼動台数に基づく影響の大きさを構成要素毎に算出した結果を比較することにより、セキュリティ脆弱性を構成要素毎に判定する脆弱性評価して、優先順位を決定する。
【００９２】
最後に、ステップＳ５２では、構成要素−脆弱性対応テーブル６に記載された脆弱性情報の全てについての計算を実行し尽くしたか否かを確認する。完了した（Ｓ５２でＹｅｓ）ならば、脆弱性評価処理を終了する。逆に、未完了（Ｓ５２でＮｏ）ならば、Ｓ４１へ戻ってＳ５１までの処理を繰り返す。
【００９３】
図１３は、本装置の脆弱性評価結果の出力画面１３である。評価結果出力画面１３は、本装置１の評価結果出力処理部２４によって整形され、本装置１の入出力部２７もしくは、管理者端末２の出力装置で表示される。
【００９４】
評価結果出力画面１３は、製品表示切替タブ１４と、脆弱性情報とその評価数値を表示するテーブル１５と、優先順位指標切替ボタン１６と、攻撃マップの出力ボタン１７と、選択した優先順位の脆弱性情報の結果を出力できるレポート出力ボタン１８と、を有する。製品表示切替タブ１４は、製品ＩＤ毎又は構成バリエーションＩＤ毎に優先順位を切り替えて表示できる。又は全製品の脆弱性や、全構成バリエーションの脆弱性を統合して優先順位づけした形で表示しても良い。
【００９５】
優先順位指標切替ボタン１６は、評価数値又は台数情報から該当脆弱性の製品保有割合、又は評価数値と保有割合を合わせて計算した総合値等の、優先順位の指標別に脆弱性情報を昇順又は降順に表示切替できる。複数の指標を勘案して最終的な脆弱性の対応優先順位は管理者が決定するものとし、どの指標に基づいた優先順位のリストを出力するかは管理者が選択できる。
【００９６】
以上、説明したように、実施例１によれば、価値の高い資産又は安全上重要な構成要素への影響や稼働台数を勘案して脆弱性の対応優先順位を判定することが可能であり、またその結果を出力して判定の根拠とすることが可能である。
【００９７】
実施例１では、車載機器の構成情報や稼働台数を管理者端末から管理者が入力するものとしているが、本装置と車載機器をネットワークで接続し、ネットワーク越しに車載機器からそれら情報を収集するように構築しても良い。
【００９８】
［実施例２］
本発明の実施例２について、図１４〜図１６を用いて詳細に説明する。実施例２は、ネットワークを通して車載機器の情報を収集し脆弱性を評価するものである。なお、実施例１と同様の部分については説明を省略する。
【００９９】
図１４は、本発明の実施例２に係る脆弱性評価装置（これも「本装置」という）の利用形態を示すブロック図である。実施例２に係る脆弱性評価システムは、本装置１と、管理者端末２と、評価対象となる複数の車載機器４a〜４ｎ（以下、特定しない場合は車載機器４と記す）とが、インターネット、無線ＬＡＮ、携帯電話回線網、その他各種のネットワーク３に接続されて構成される。
【０１００】
図１５は、車載機器４の内部構成を例示するブロック図である。車載機器４は、処理部９０と、記憶部９５と、入出力部９７と、通信部９８とを有する。処理部９０は、構成情報送信処理部９１と、構成情報更新処理部９２と、管理者通知処理部９３と、ソフトウェア更新処理部９４と、を有する。
【０１０１】
記憶部９５は、その車載機器の構成情報を格納した端末構成情報保持部９６を有する。ただし、通信内容を攻撃者に傍受されるか、あるいは、車載機器を解析され情報を取得されるといったリスクを考え、車載機器で保持する構成情報は、実施例１で構成情報テーブル５（図５）に格納した構成情報の一部でも良い。その場合、構成情報テーブル５（図５）の格納に足りない情報に関しては管理者が管理者端末から登録する形としても良い。
【０１０２】
構成情報送信処理部９１は、ネットワークを介して、定期的に車載機器４の端末構成情報を脆弱性処理装置へと送信する処理を行う。構成情報更新処理部９２は、車載機器４に対して実施された各種ソフトウェアのバージョンアップ等の更新の際に、端末構成情報保持部９６を更新する処理を実行する。
【０１０３】
管理者通知処理部９３は、本装置１から送信される対策結果通知を管理者に対して表示する処理を行う。管理者には、自動車の運転手だけでなく、メンテナンスを行う保守員等も含む。そのため、管理者通知処理は、全ての内容を運転手に表示するだけでなく、情報を管理者の分かりやすい内容に整形する等といった情報の加工処理も含め、表示タイミングも特定のコマンドにより表示できるようにしても良い。
【０１０４】
ソフトウェア更新処理部９４は、本装置１から送信される対策結果通知の一つとして、対策ソフトウェアの更新処理の実行処理を行う。例えば、特定のパッチのダウンロード及びインストール処理や、ＯＴＡ更新機能の実行処理等である。
【０１０５】
図１６は、実施例２に係る本装置１、管理者端末２及び車載機器４の処理シーケンス図である。図１６において、事前準備その１に係るシーケンス、すなわち、ステップＳ６１〜Ｓ６３は、実施例１のステップＳ１〜Ｓ４（図４）と概ね同様であるため省略する。図１６において、事前準備その２に示すように、車載機器４は、車載機器の製品ＩＤと構成情報を本装置１へ定期的に送信する（Ｓ６４）。Ｓ６５〜Ｓ６６は、実施例１のステップＳ３〜Ｓ４（図４）と同様である。
【０１０６】
なお、本装置１は、ステップＳ６４により車載機器４から送信される製品ＩＤと構成情報の内容を用いて、製品台数管理テーブル１０（図１０）を更新するものとする。こうすることで、市場内で稼動している製品台数に近い製品台数、構成バリエーション台数を把握できる。ただし、市場に出回る全ての車載機器４の通信環境が整っているわけではないため、完全な台数を把握できるわけではない。
【０１０７】
脆弱性の対応優先度を評価するシーケンス、すなわち、ステップＳ６７〜Ｓ７２は、実施例１のステップＳ５〜Ｓ９と概ね同様である。通知するシーケンスにおいて、本装置１は管理者端末２から受信した対策結果通知の全て、又は一部情報を車載機器４へネットワーク３を介して送信する。
【０１０８】
以上、本発明の実施例２について説明した。本実施例によれば、ネットワークを介して車載機器から情報を取得することにより、車載機器のソフトウェア更新の実際の状況及び、稼働台数を考慮して、脆弱性の対応優先順位を判定することが可能である。
【０１０９】
なお、これらの実施例１及び実施例２は、それらの構成により本発明を限定するものではない。実施例１及び実施例２では、車載機器単体に対しての評価を前提に説明したが、構成情報テーブル５（図５）の構成要素を車載機器等の構成機器として保持することで、自動車システム全体を構成する各種の構成機器に対する脆弱性の対応優先度を評価することも可能である。
【０１１０】
以下、特許請求の範囲の記載に沿って、本発明の要点を説明する。
［１］本装置１は、コンピュータを応用した製品に複数のセキュリティーホールがあれば、それらセキュリティーホール毎の脅威レベルを評価し、セキュリティ対策の優先順位（図１３の左列）を決定するものである。本装置１は、少なくとも記憶部４０と、処理部２０と、を備えた脆弱性評価用コンピュータ（図３）により構成されている。
【０１１１】
記憶部４０には、処理部２０で実行可能なプログラムと、構成情報保持部４１（図５）と、構成要素−脆弱性対応保持部４２（図６）と、資産情報保持部４３（図７）と、セキュリティ対策分類保持部４４（図８）と、攻撃マップ保持部４６（図１１）と、を備えている。
【０１１２】
構成情報保持部４１（図５）は、製品の構成要素の情報を格納する。構成要素−脆弱性対応保持部４２（図６）は、構成要素毎にセキュリティーホールを明示する脆弱性情報を格納する。資産情報保持部４３（図７）は、製品毎の製品ＩＤに製品の構成要素毎の資産価値を紐付けて格納する。セキュリティ対策分類保持部４４（図８）は、セキュリティ対策毎に、防御対象の構成要素、及び対策効果（セキュリティ効果）を数値化した係数が紐付けられて格納される。
【０１１３】
攻撃マップ保持部４６は、攻撃経路を形成する要素名、及び要素名に対応した脆弱性情報を紐付けた攻撃マップ１１-１,２が格納される。
【０１１４】
処理部２０はプログラムの実行により、情報収集処理部２１と、攻撃マップ作成処理部２２と、脆弱性評価処理部２３と、を形成する。
【０１１５】
情報収集処理部２１は、製品の情報を取得して記憶部４０に格納する。攻撃マップ作成処理部２２は、製品又は製品の構成バリエーション毎に攻撃マップ１１-１,２を作成する。脆弱性評価処理部２３は、資産価値に基づいて、構成要素毎のセキュリティーホールに対する脅威レベルを算出するとともに、対応すべきセキュリティ対策の優先順位（図１３）を決定する。
【０１１６】
本装置１は、製品台数や構成要素毎の資産価値に基づいて、構成要素毎のセキュリティーホールに対する脅威レベルを評価し、セキュリティ対策の優先順位を決定することにより、頻繁な仕様変更を伴う新製品開発において、セキュリティーホールが新たに生じても、それに対する品質管理を容易にすることが可能である。
【０１１７】
［２］本装置１は、脆弱性評価用コンピュータは、さらに入出力部２７又は通信部２８を備えている。また、構成情報保持部４１（図５）は、構成情報テーブル４１（図５）と、構成要素−脆弱性対応テーブル４２（図６）と、攻撃マップテーブル（図１１）と、を備えている。これら各情報テーブルにおいて、構成要素が階層を形成している。すなわち、各情報テーブルには、資産に対する構成要素の距離の違いを階層の順に並べて情報が格納されている。
【０１１８】
脆弱性評価処理部２３は、要素名と、脆弱性情報と、脆弱性情報６２又は脆弱性情報の有無を示す情報と、防御対象とする構成要素の情報と、セキュリティ効果を発揮する程度を数値化した係数と、を用いて脅威レベルを算出する。
【０１１９】
要素名は、攻撃経路を形成する要素を識別する。脆弱性情報は、セキュリティーホールを特定する。脆弱性情報は、要素名で特定される構成要素に紐付けられている。防御対象とする構成要素は、セキュリティ対策毎に定められる。係数は、セキュリティ対策毎に効果を発揮する程度を数値化して定められる。
【０１２０】
構成情報保持部４１（図５）において、構成情報テーブル４１（図５）、構成要素−脆弱性対応テーブル４２（図６）、及び攻撃マップテーブル４６（図１１）は、階層に基づいて整理された形式で情報を保持している。したがって、脅威レベルや優先順位（図１３）について、わかりやすく表示することができるように、各テーブルから入出力部２７又は通信部２８を介して出力することが可能である。
【０１２１】
本発明によれば、比較的容易に得られる情報を入出力部２７から入力し、これらの情報は記憶部４０の各情報テーブルにおいて、資産に対する構成要素の距離の違いに基づく階層を用いて整理されているため、より一層、品質管理に寄与し易くなる。
【０１２２】
［３］本装置１で取り扱う製品は、自動車を構成するか又は自動車に搭載される車載電子機器である。したがって、コンピュータを応用した製品が、自動車を構成するか又は自動車に搭載される車載電子機器である場合に好適に採用される。すなわち、本装置１は、その製品の稼動台数が多く、構成要素の資産価値が高いとの理由のみならず、自動車に課せられた乗員保護、及び走行環境に対する安全義務のため、サイバー攻撃から手厚く防御することが可能である。
【０１２３】
［４］脆弱性評価システムは、本装置１に管理者端末２が有線又は無線で接続されてシステム構成されたものである。本システムは、使い勝手が良いので、現実に新製品開発されている製品に対して、好適に採用される。
【０１２４】
［５］本方法は、複数のセキュリティーホールがあれば、それらの脅威レベルを評価してセキュリティ対策の優先順位（図１３）を算出する処理を、脆弱性評価用コンピュータ（図３）において実行する脆弱性評価方法である。脆弱性評価用コンピュータは、脆弱性評価装置（本装置）１そのものとみなし得る。また、取り扱い対象とする製品は、本装置１と同様にコンピュータ応用機器である。
【０１２５】
記憶部４０は、本装置１で説明したとおりである。また、処理部２０でプログラムが実行されると脆弱性評価処理部２３が形成される。その脆弱性評価処理部２３により記憶部４０に格納された情報を用いて優先順位（図１３）を決定する処理は、以下のステップＳ４１〜Ｓ４７を有している。本方法は、本装置と同等の作用効果が得られる。
【０１２６】
ステップＳ４１では、構成要素−脆弱性対応保持部６から脆弱性情報を1つ取得する。つぎに、ステップＳ４４では、攻撃マップ保持部４６から攻撃マップを1つ選択する。つぎに、ステップＳ４５では、取得した攻撃マップ１１-１,２の資産に対応する資産価値を資産情報保持部４３から取得する。つぎに、ステップＳ４６では、該当セキュリティーホールへの攻撃難易度を構成要素-脆弱性保持部４２から取得する。つぎに、ステップＳ４４では、資産価値と攻撃難易度を乗算する。つぎに、ステップＳ４７では、乗算した計算結果に基づいて評価数値を設定する。
【０１２７】
［６］本方法において、優先順位（図１３）を決定する手順は、以下のステップＳ１，Ｓ６１〜Ｓ１２，Ｓ７２を有していることが好ましい。これらの手順は、脆弱性評価用コンピュータ（本装置１）に配設された入出力部２７又は通信部２８を介して管理者端末２と脆弱性評価用コンピュータとの間の交信に基づいて実行される。
【０１２８】
ステップＳ１，Ｓ６１は、製品の情報が管理者端末２から脆弱性評価用コンピュータへ入力される。ステップＳ２，Ｓ６２では、セキュリティーホールに関する情報が管理者端末２から脆弱性評価用コンピュータへ入力される。攻撃マップ生成ステップＳ４，Ｓ６３では、脆弱性評価処理部２３が攻撃経路を攻撃マップ１１-１,２の形式で示す。ステップＳ１２，Ｓ７２では、求めに応じて脆弱性評価結果（図１３）を脆弱性評価用コンピュータから管理者端末２へ送信する。本方法は、新製品開発等の現状に即しており、大変使い勝手が良い。
【０１２９】
（変形例）
実施例１および実施例２は次のように変形してもよい。図３ではＣＰＵ３２は、外部記憶装置３４から各種プログラムをメモリ３３にロードし、所定のプログラムを実行することにより上術の各処理を実現すると説明した。しかしコンピュータは、ＣＰＵ３２、外部記憶装置３４、およびメモリ３３の組み合わせの代わりに書き換え可能な論理回路であるＦＰＧＡ（Field  Programmable  Gate  Array）や特定用途向け集積回路であるＡＳＩＣ（Application  Specific  Integrated  Circuit）により実現されてもよい。またコンピュータは、ＣＰＵ３２、外部記憶装置３４、およびメモリ３３の組み合わせの代わりに、異なる構成の組み合わせ、たとえばＣＰＵ３２、外部記憶装置３４、およびメモリ３３とＦＰＧＡの組み合わせにより実現されてもよい。
【符号の説明】
【０１３０】
１  脆弱性評価装置（本装置）、２  管理者端末、３  ネットワーク、４  車載機器、２０  処理部、２１  情報収集処理部、２２  攻撃マップ作成処理部、２３  脆弱性評価処理部、２７  入出力部、２８  通信部、４０  記憶部、４１  構成情報保持部、４２  構成要素−脆弱性対応保持部、４４  セキュリティ対策分類保持部、４６  攻撃マップ保持部
【図１】
2020052686.tif 000003
【図２】
2020052686.tif 000004
【図３】
2020052686.tif 000005
【図４】
2020052686.tif 000006
【図５】
2020052686.tif 000007
【図６】
2020052686.tif 000008
【図７】
2020052686.tif 000009
【図８】
2020052686.tif 000010
【図９】
2020052686.tif 000011
【図１０】
2020052686.tif 000012
【図１１】
2020052686.tif 000013
【図１２】
2020052686.tif 000014
【図１３】
2020052686.tif 000015
【図１４】
2020052686.tif 000016
【図１５】
2020052686.tif 000017
【図１６】
2020052686.tif 000018