(57)【要約】      （修正有）【課題】ログデータの完全性を保護するコンピュータシステムを提供する。【解決手段】コンピュータシステム２０は、第１の論理回路２１と、第１の論理回路から離れた第２の論理回路３０と、を含む。第１の論理回路の動作に関連する一連のログデータ要素を含むログデータの完全性を保護するために、第２の論理回路において、一連のログデータ要素中のログデータ要素を受信し、ログデータ要素と第１の論理回路に対して秘匿の秘密情報とに基づいて、保護済みログデータ要素を生成する。【選択図】図１
2020126586.tif 000002
【特許請求の範囲】
【請求項１】
第１の論理回路（２１）の動作に関連する一連のログデータ要素を含むログデータの完全性を保護する方法であって、
前記第１の論理回路（２１）から離れた第２の論理回路（３０）において前記一連のログデータ要素中のログデータ要素を受信し（１０４）、
該第２の論理回路（３０）において、前記ログデータ要素と前記第１の論理回路（２１）に対し秘匿とする秘密情報とに基づいて、保護済みログデータ要素（５０，６０，７０）を生成する（１０５）、ことを含む方法。
【請求項２】
前記第２の論理回路（３０）がプログラマブル暗号処理ユニット（３３）を備えている、請求項１に記載の方法。
【請求項３】
前記第１の論理回路（２１）がＣＰＵを含み、該第１の論理回路（２１）と前記第２の論理回路（３０）とがコンピュータシステム（２０）を構成している、請求項１又は２に記載の方法。
【請求項４】
前記ログデータ要素が、前記一連のログデータ要素中の先行するログデータ要素に続く現行のログデータ要素であり、
前記保護済みログデータ要素（５０，６０，７０）を生成するときに、
少なくとも、前記現行のログデータ要素のログデータ（５１，６１，７１）と、前記先行するログデータ要素に対し生成された前のハッシュ値（５２，６２，７２）とに基づいて、現行のハッシュ値（５３，６３，７３）を生成し（１２０）、
該現行のハッシュ値（５３，６３，７３）と前記前のハッシュ値（５２，６２，７２）とを前記保護済みログデータ要素（５０，６０，７０）に含める（１２１）ことを含む、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
ランダムに生成されるセッション識別子（４１）に基づいて初期保護ログデータ要素（４０）を生成する（１０２）ことをさらに含み、
該初期保護ログデータ要素（４０）は、システム初期化後の前記一連のログデータ要素中の最初のログデータ要素に先行するログデータ要素として機能する、請求項４に記載の方法。
【請求項６】
前記現行のログデータ要素を受信したときにカウンタ値をインクリメントすることをさらに含み、
前記保護済みログデータ要素（５０，６０，７０）を生成するときに、さらに前記カウンタ値に基づいて、前記現行のハッシュ値（５３，６３，７３）を生成する（１２２）ことを含む、請求項４又は５に記載の方法。
【請求項７】
前記一連のログデータ要素中の前記ログデータ要素を含む複数のログデータ要素を受信し、
前記保護済みログデータ要素（５０，６０，７０）を生成するときに、
前記複数のログデータ要素と前記第１の論理回路（２１）に対し秘匿とする秘密情報とに基づいて、前記保護済みログデータ要素（５０，６０，７０）を生成することを含む、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記保護済みログデータ要素（５０，６０，７０）を前記第１の論理回路（２１）から遠隔検証サービスノード（８１）へ転送するように前記第１の論理回路（２１）に指令する指示を、前記第１の論理回路（２１）に送信することを含む、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記第２の論理回路（３０）と前記遠隔検証サービスノード（８１）との間で時間基準を同期させ（１０１）、
前記第２の論理回路（３０）において、さらに前記時間基準に従う時間情報に基づいて、前記保護済みログデータ要素（５０，６０，７０）を生成する（１２３）、ことを含む請求項８に記載の方法。
【請求項１０】
前記遠隔検証サービスノード（８１）において前記保護済みログデータ要素（５０，６０，７０）が受信されたことを示す前記遠隔検証サービスノード（８１）からの応答が、所定の時間ウィンドウ内で受信されるか否かを判定し（１０７）、
前記遠隔検証サービスノード（８１）からの応答が前記所定の時間ウィンドウ内に受信されていないと判定した（１０８）ときに、少なくとも、それ以降の保護済みログデータ要素の生成を停止する（１１０）か、又は、攻撃アラーム通知を送信する（１１１）、ことを含む請求項８又は９に記載の方法。
【請求項１１】
前記保護済みログデータ要素（５０，６０，７０）を生成するときに、
少なくとも、前記秘密情報に基づく対称暗号化スキームを使用する（１２４）か、又は、前記秘密情報に基づく非対称暗号化スキームを使用する（１２４）ことを含む、請求項１〜９のいずれか１項に記載の方法。
【請求項１２】
第１の論理回路（２１）と、該第１の論理回路（２１）から離れた第２の論理回路（３０）とを有するコンピュータシステムであって、
前記第１の論理回路（２１）から前記第２の論理回路（３０）へ、前記第１の論理回路（２１）の動作に関連する一連のログデータ要素中のログデータ要素を送信し、
前記第２の論理回路（３０）において、前記ログデータ要素と前記第１の論理回路（２１）に対し秘匿とする秘密情報とに基づいて、保護済みログデータ要素（５０，６０，７０）を生成するように構成されている、コンピュータシステム。
【請求項１３】
請求項１〜１１のいずれか１項に記載の方法を実行するように構成されている、請求項１２に記載のコンピュータシステム。
【請求項１４】
前記第１の論理回路（２１）及び前記第２の論理回路（３０）は、前記第１の論理回路（２１）としてのプロセッサと、該プロセッサの外にある前記第２の論理回路（３０）としてのＦＰＧＡとを含むシステムに実装されている、請求項１２又は１３に記載のシステム。
【請求項１５】
プログラムコードを含むコンピュータプログラムであって、
前記プログラムコードは、第１の論理回路（２１）と、該第１の論理回路（２１）から離れた第２の論理回路（３０）とを備えたコンピュータシステム（２０）によって実行可能であり、該プログラムコードを実行する前記コンピュータシステム（２０）が、請求項１〜１１のいずれか１項に記載のログデータの完全性を保護する方法を実行する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の種々の態様は、広くログデータの完全性（インテグリティ）に関する。特に、本発明は、ログデータの完全性を保護する方法及びこの方法を実行するコンピュータシステムに関する。
【背景技術】
【０００２】
ログデータは、ログメッセージ又はログエントリとも呼ばれ、システム上で生成され、システムの挙動を記録することができる。このシステムには、例えば、コンピュータシステム、又は、例えばコンピュータネットワークなどのネットワークが含まれる。システムに対する悪意ある攻撃を検出するために、システムに不正侵入検知システム（ＩＤＳ）が提供される場合がある。例えば、コンピュータシステムには、ホスト型不正侵入検知システム（ＨＩＤＳ）を備えることができ、ネットワークには、ネットワーク型不正侵入検知システム（ＮＩＤＳ）を備えることができる。ＩＤＳは、悪意のあるアクティビティやポリシー違反がないかネットワーク又はシステムを監視するデバイス又はソフトウェアアプリケーションである。悪意のあるアクティビティや違反は、管理者に報告されるか、ログデータに記録され得る。特に、システムへの攻撃や侵入の場合、ログデータは、その攻撃や侵入がどのように行われたかについての情報を提供できる。コンピュータシステムにインストールされたＨＩＤＳは、コンピュータシステムの動作状態に関する情報を収集し、この情報を利用して攻撃を検出することができる。
【０００３】
すなわちＩＤＳは、コンピュータシステム又はコンピュータネットワークを能動的に監視して攻撃を検出することを目的としたシステムである。一般にＩＤＳは、攻撃検出のために２つの異なる技術、シグネチャ型（signature based）攻撃検出と、アノマリ型（anomaly based）攻撃検出を使用する。
【０００４】
シグネチャ型攻撃検出では、データベースに格納された攻撃パターン（攻撃の可能性を示す特別なログメッセージなど）を使用して、アクティブなシステムを監視する。攻撃は、そのデータベースからの攻撃シグネチャとアクティブシステムの挙動とを比較することによって、ＩＤＳにより検出される。格納されているシグネチャが今現在のシステム挙動と一致すれば、ＩＤＳは攻撃が発生したと判断する。
【０００５】
アノマリ型攻撃検出は、システムの挙動の変化に基づいて攻撃を検出することを試みる。すなわち、ＩＤＳが始めのステップでシステムの通常時の挙動を学習／分析し、続くステップで、システムのアクティブな挙動を、前に学習した通常時の挙動と比較する。今現在の挙動が前に学習した通常時の挙動から逸脱していれば、これを異常と解釈し、システムに対する攻撃の兆候とする。システムが通常時の挙動から逸脱しているかどうかの判断は、統計的方法又は機械学習アルゴリズムを使用して行うことができる。これら両方のタイプのＩＤＳ（ＨＩＤＳ、ＮＩＤＳ）を実行するために、現在のシステムの挙動のログデータをまず生成し、そしてチェックする。ログデータには、システムコール、データアクセス、ユーザログイン、失敗したコール、アクティブなネットワーク接続などのシステム挙動プロパティが記録され、記載される。
【０００６】
コンピュータシステムを攻撃してシステムやカーネルに対する管理者権限を取得した攻撃者は、その後にログデータを改ざんする可能性がある。攻撃の証拠を記録したログデータが攻撃者によって削除された場合、システムにおける攻撃者の過去から将来にかけてのアクティビティを証明することは不可能である。例えば、Linuxオペレーティングシステムがプロセッサで実行されているとすると、追加でこのオペレーティングシステムにＨＩＤＳがインストールされ得る。当該ＨＩＤＳは、ユーザー空間で実行されるか、又は、カーネルにアンカーされ、プロセスからのシステムコールを監視／保存する。ＨＩＤＳは、対応する権限をもつユーザー空間から構成できる。攻撃者がシステムを攻撃しようとする場合、該攻撃者は、例えば、正規機能の脆弱性を悪用してシステムに悪意のあるソフトウェア（マルウェア）をインストールし、実行する。マルウェアをシステムにインストールした次には、カーネルを越える制御権限を得て（カーネルルートキットなどにより）、ＨＩＤＳを無効にする。また、マルウェアは、ユーザ空間の領域で完全な権限（ルート権利）を取得し、ＨＩＤＳを再設定する。さらに攻撃者は、ＨＩＤＳによって生成されたログデータを操作し、マルウェアの存在とアクティビティがログに記録されるのを防ぐ。最終的にマルウェアは、過去のログデータを改ざんしてログデータから自身の攻撃の痕跡を消去する。
【０００７】
ログ操作の問題は、いくつかの措置で対処できる。例えば、カーネルが特別なログ保護を提供することで、一例として、ログデータへのアクセスが管理者にのみ付与される、あるいは、特定の危険な機能がシステム上での攻撃者の自由を制限するために完全にブロックされる。ファイル完全性を監視するアプローチもあるが、これらの対策はすべて、攻撃者が管理者権限をもっていたり、カーネルを完全に管理下に置いている場合、失敗する。
【０００８】
加えて、ＴＰＭ（トラステッドプラットフォームモジュール：Trusted Platform Module）に関連するＲＡＳ（遠隔検証サービス：Remote Attestation Service）が知られている。遠隔検証サービスは、「Measured Boot」技術をサポートするために使用される。「Measured Boot」技術によれば、ファームウェアからブートスタートドライバまでの各ブートコンポーネントは、次のブートコンポーネントの暗号化チェックサムを生成することができる。チェックサムは、ＴＰＭの特別なＰＣＲ（Platform Configuration Registers）に格納される。したがって、ＰＣＲは、各ブートコンポーネントに対する（変更されていない／変更された）デバイスの状態へのリファレンスを含む。以降は、ローディング中に変えられた又は変えられていないコンポーネントがあるかどうか及びその該当するコンポーネントを追跡することができる。そして、ＰＣＲ値はＴＰＭに保存された秘密鍵で署名できる。シグネチャとＰＣＲ値は、検証可能な別のインスタンスに渡される。このインスタンスは、システムの起動されたソフトウェアコンポーネントの完全性に関するステートメントを作成し、その次に、例えばサービスへのアクセスをアクティブにすることができる。しかしながらこのメカニズムは、ログデータの完全性を保証したり、実行時にデバイスにおける悪意のある挙動を検出したりするのには、適していない。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
背景技術に鑑み、ログデータの完全性を保護する進歩した技術が必要である。具体的には、上述の欠点及び限界の少なくとも一部を克服又は緩和する技術が必要である。
【課題を解決するための手段】
【００１０】
この要請は、独立形式請求項の特徴によって解決される。引用形式請求項の特徴は具体的態様に関する。
【００１１】
一態様によれば、ログデータの完全性を保護する方法が提供される。ログデータは、第１の論理回路の動作に関する一連のログデータ要素、例えばログメッセージやログエントリなど、で構成される。第１の論理回路には、一例として、Linux又はUnix（登録商標）などのオペレーティングシステム及びアプリケーションが実行されるプロセッサが含まれる。本発明の方法によれば、第１の論理回路から離れた第２の論理回路において、一連のログデータ要素中のログデータ要素が受信される。第２の論理回路には、第１の論理回路に接続してここに説明する方法の過程を実行するように構成された専用ハードウェア、例えば、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）や、特定用途向け集積回路（ＡＳＩＣ）が含まれる。第２の論理回路は、ログデータ要素及び秘密情報に基づいて、保護済みログデータ要素を生成する。秘密情報は、第１の論理回路に対し秘匿とする。さらに、第２の論理回路は、第１の論理回路が第２の論理回路の秘密情報を読み出したり、あるいはアクセスしたりすることができないように構成してもよい。ここで言う「秘密情報」とは、例えばログの保護に使用される秘密データに関連する。秘密情報は、例えば、ログデータを暗号化するための鍵（キー）を含む。これに加えて又は代替として、秘密情報を使用して、例えば、ＨＭＡＣ（Ｋeyed Ｈash Function）を対称的に又は非対称的に用いるログデータのシグネチャを生成することができる。
【００１２】
さらに、一態様によれば、保護済みログデータ要素は、第２の論理回路から第１の論理回路へ送信される。
【００１３】
一態様によれば、保護済みログデータ要素は、第１の論理回路を通すことなく、第２の論理回路から直接、ネットワークデバイスや記憶デバイスなどの遠隔デバイスへ送信してもよい。
【００１４】
例えば、ＩＤＳは、第１の論理回路で実行される各アクティビティに対して、対応するログデータ要素を生成する。これらのログデータ要素は、例えば、プロセスが実行したシステムコール、システムコールと共に転送されたパラメータ、あるいはオープン又はクローズされたファイルなどを記録する。各ログデータ要素が第２の論理回路に送信され、第２の論理回路は、秘密情報を使用してその各ログデータ要素を暗号化することによって、各ログデータ要素の完全性を保護する。第１の論理回路で秘密情報は利用できないので、攻撃者はログデータ要素を復号又は解読したり、改ざんしたりすることはできない。したがって、ログデータ要素を改ざんしようとする試みは、以降、秘密情報に基づいて検出可能である。
【００１５】
一態様によれば、第２の論理回路は、プログラマブル暗号処理ユニットを含む。例えば、第２の論理回路は、ＦＰＧＡなどのハードウエアプログラマブル処理ユニットである。例えば、ＦＰＧＡに実装されたＦＰＧＡマイクロコントローラを使用してハッシュメカニズムを実装可能である。このマイクロコントローラは、ハードウェア記述言語を使用してプログラムすることができ、該マイクロコントローラのロジック（ファームウェア）がソフトウェアから構成される。
【００１６】
さらに、第１の論理回路は、ＣＰＵ（中央処理装置）により構成され得る。
【００１７】
第１の論理回路及び第２の論理回路は、コンピュータシステムを組織し得る。
【００１８】
例えば、第１の論理回路及び第２の論理回路は、組み込みシステムとして実施することができる。この組み込みシステムは、第１の論理回路として機能するＣＰＵと、第２の論理回路として機能する集積型プログラマブル論理回路とを備える。このような組み込みシステムは、プログラマブル論理回路としてＦＰＧＡシステムオンチップ（ＦＰＧＡ‐ＳｏＣ）を使用して実現することができる。当該ＦＰＧＡ−ＳｏＣは、プログラマブル集積回路（ＦＰＧＡ領域）及び１つ以上のプロセッサ（ＣＰＵコアなど）と、メモリ、バスなどの他のコンポーネントで構成される。ＦＰＧＡ−ＳｏＣは、プロセッサでオペレーティングシステム（Unix、Linuxなど）やベアメタルソフトウェアを実行し、このプロセッサに集積型ＦＰＧＡ論理回路と通信させ、所定のインターフェイスを介してコマンド／データを交信することを可能にする。プロセッサとＦＰＧＡパートは、１つのチップ上に集積することができる。ＦＰＧＡはデジタル回路で構成されるのでハードウェアで機能を直接実装できる。ＦＰＧＡのデジタル回路は、ハードウェア記述言語（例えば、ＶＨＤＬ、Verilog）を使用して実装することができ、ユーザによるプログラム、オープンソースプロジェクトとしての購入、又は完成したハードウェア構造（例えばＩＰコア）の形態で購入のいずれかが可能である。まとめると、ＦＰＧＡ−ＳｏＣの利点は、最適化したハードウェア回路として特定の機能をアウトソースでき、通信インタフェースを物理的に露呈させることなくこれらの機能をオペレーティングシステムと効率的に接続でき、オペレーティングシステムから論理的に独立したハードウェアでアウトソースされた機能を操作できることである。さらに、ＣＰＵに外部から接続されるＦＰＧＡ、つまりＣＰＵから離れたＦＰＧＡ、又は、ＣＰＵに外部から接続される専用製造チップ（例えばＡＳＩＣ）も、第１及び第２の論理回路を実装するために使用され得る。ＣＰＵからアウトソースされたハードウェア機能の独立性により、ＦＰＧＡ側で信頼できるハードウェアを動作させることができる。このハードウェアは、暗号鍵マテリアルをセキュアに格納し、攻撃を受けているオペレーティングシステムであっても意図したとおりに暗号化動作を実行する。
【００１９】
一態様によれば、ログデータ要素は、一連のログデータ要素中の先行するログデータ要素に続く現行のログデータ要素である。保護済みログデータ要素を生成する際、現行のハッシュ値は、少なくとも、現行のログデータ要素のログデータと、先行するログデータ要素のために生成された前のハッシュ値とに基づいて生成される。現行のハッシュ値と前のハッシュ値とが、保護済みログデータ要素に含まれる。
【００２０】
各ログデータ要素は、先行するログデータ要素のハッシュ値に関連している情報を含み、各ログデータ要素は、それ自身のハッシュに関連する情報を含み、そして各ログデータ要素は追加で、暗号化したり署名を入れることができ、各ログデータ要素の改ざんや消去を検出可能である。すなわち攻撃者は、ログデータに記録されている直前の痕跡を不明瞭にしたり隠したりすることができない。
【００２１】
さらに、本発明の方法は、第２の論理回路において、ランダムに生成されたセッション識別子に基づいて初期保護ログデータ要素を生成する過程を、含み得る。初期保護ログデータ要素は、システム初期化後の一連のログデータ要素中の最初のログデータ要素に先行するログデータ要素として機能する。
【００２２】
初期保護ログデータ要素は、第２の論理回路から第１の論理回路に送信される。
【００２３】
これにより、一連のログデータ要素のアンカーが提供される。ランダムセッション識別子も第１の論理回路に対し秘匿とすることが可能なので、第１の論理回路にアタックする攻撃者はハッシュチェーンを操作し得ない。したがって、一連の保護済みログデータ要素が保護される。
【００２４】
一態様において、保護済みログデータ要素は、追加的に、例えばグローバル又はローカル時間と同期した時間情報、又は、非同期の時間情報（例えば非同期論理クロック）などの時間情報に基づいて、第２の論理回路で生成される。
【００２５】
本発明の方法は、さらに、現行のログデータ要素を受信したときにカウンタ値をインクリメントする過程を含み得る。保護済みログデータ要素の生成時に、そのカウンタ値に基づいて現行のハッシュ値が生成される。
【００２６】
カウンタ値も、第１の論理回路に対し秘匿とすることが可能である。したがって、カウンタ値は、第１の論理回路にアタックする攻撃者によるログ要素のいかなる操作も検出可能という利点に寄与する。
【００２７】
さらに、一態様によれば、ログデータ要素は、第２の論理回路でそれぞれ個別に処理するのではなくて、ログデータ要素のブロック、グループ、又はセットとして処理することもできる。例えば、一連のログデータ要素中の複数のログデータ要素が第２の論理回路で受信される。この複数のログデータ要素には、上述した（単一の）ログデータ要素が含まれる。この態様では、保護済みログデータ要素の生成にあたり、保護済みログデータ要素は、複数のログデータ要素及び第１の論理回路に対し秘匿してある秘密情報に基づいて生成される。１つのトランザクション内で複数のログデータ要素を処理することにより、第１及び第２の論理回路の間の通信の往復時間を減少させることができる。
【００２８】
一態様によれば、指示が第２の論理回路から第１の論理回路へ送信される。当該指示は、保護済みログデータ要素と共に送信してもよいし、別のメッセージで送信してもよい。この指示は、第１の論理回路に対して、保護済みログデータ要素を、第１の論理回路から離れた位置にある遠隔検証サービスノードに転送するように指令する。
【００２９】
この指示は、第１の論理回路に、保護済みログデータ要素を、例えば、遠隔サーバ、遠隔ネットワークデバイス、又は、第１及び第２の論理回路と同じハードウェアボードに配置可能な周辺コンポーネントなどの、遠隔デバイスに転送するように命令する。
【００３０】
一態様において、第２の論理回路は、第１の論理回路による転送を経ることなく、保護済みログデータ要素を遠隔検証サービスや遠隔デバイスに直接送ることもできる。
【００３１】
遠隔検証サービスノードは、受信した保護済みログデータ要素を格納し、第１の論理回路からのコマンドによってそれらが削除されることを防ぐ。したがって、ログデータ要素の改ざんや消去を検知可能であるうえに、改ざんや消去を一切禁止し得る。
【００３２】
一態様によれば、本発明の方法は、第２の論理回路と遠隔検証サービスノードとの間で時間基準を同期する過程を含む。保護済みログデータ要素は、追加的に、時間基準に従う時間情報に基づいて、第２の論理回路で生成される。時間情報は、例えば、時刻及び日付を含むタイムスタンプ、あるいは、所定の時間基準点を基準とする時間単位を含む。
【００３３】
遠隔検証サービスノードは、信頼できる時間基準を提供できる。第２の論理回路を遠隔検証サービスノードの時間基準と同期させることによって、保護済みログデータ要素の信頼できるタイムスタンプを有効にすることができる。保護済みログデータ要素は攻撃者によって改ざんできないので、攻撃の正確な時期を含む攻撃の痕跡が提供される。
【００３４】
本発明の方法の一態様によれば、第２の論理回路は、遠隔検証サービスノードにおいて保護済みログデータ要素が受信されたことを示す遠隔検証サービスノードからの応答が、所定の時間ウィンドウ内に受信されたか否かを判定する。この遠隔検証サービスノードからの応答が所定の時間ウィンドウ内に受信されていないと判定した場合、第２の論理回路は、それ以降の保護済みログデータ要素の生成を停止することができる。
【００３５】
一態様において、第２の論理回路は、遠隔検証サービスノードにおいて保護済みログデータ要素が受信されたことを示す遠隔検証サービスノードからの応答が、保護済みログデータ要素の規定数を越えない内に受信されるかどうかを判定する。遠隔検証サービスノードからの応答が規定数の保護済みログデータ要素を越えない内に受信されていないと判定した場合、第２の論理回路は、それ以降の保護済みログデータ要素の生成を停止し、さらに、アラーム発生などの必要な過程を実行することができる。これは、同期時間を確立することが不可能な場合に特に有用である。
【００３６】
追加的に又は代替として、遠隔検証サービスノードからの応答が所定の時間ウィンドウ内に又は規定数の保護済みログデータ要素を越えない内に受信されていないと判定した場合に、第２の論理回路は、攻撃アラーム通知を送出することができる。すなわち、遠隔検証サービスノードからの応答喪失に基づいて、第２の論理回路は、第１の論理回路の被攻撃状態を判定することができ、その結果に応じて、警報通知を送ったり、操作され得るそれ以降のログデータ要素の処理を停止したりするなど、対応する措置を開始することができる。
【００３７】
保護済みログデータ要素を生成する際、第２の論理回路は、例えば、対称暗号化スキームや非対称暗号化スキームと秘密情報を使用して、ログデータ要素のログデータを暗号化する。追加的に又は代替として、対称又は非対称のいずれかのシグネチャが、秘密情報に基づいて生成され、保護済みログデータ要素に込められる。
【００３８】
本発明の別の態様によれば、コンピュータシステムが提供される。このコンピュータシステムは、第１の論理回路と、第１の論理回路から離れた第２の論理回路とを備える。このコンピュータシステムは、第１の論理回路から第２の論理回路へ、第１の論理回路の動作に関連する一連のログデータ要素中のログデータ要素を送信するように構成される。さらに、このコンピュータシステムは、第２の論理回路において、ログデータ要素及び第１の論理回路に対し秘匿とする秘密情報に基づいて、保護済みログデータ要素を生成し、この保護済みログデータ要素を第２の論理回路から第１の論理回路へ送信するように構成される。
【００３９】
このコンピュータシステムは、上述の方法とその具体的態様のいずれかを実行するように構成することができる。したがって、当該コンピュータシステムは、上述の利点をもつ。
【００４０】
例えば、第１の論理回路及び第２の論理回路はシステムに実装されるが、当該システムは、第１の論理回路としてプロセッサを含むと共に、該プロセッサの外にある（これから離れた）ＦＰＧＡ（フィールドプログラマブルゲートアレイ）を第２の論理回路として含む。このシステムは、プロセッサとしてのＣＰＵ（中央処理装置）及びＦＰＧＡの部分を含むシステムオンチップとして実現することができる。他の例では、このようなシステムは、１つのボード（基板）に組み込んだ専用ＣＰＵチップ及び専用ＦＰＧＡチップを含んで構成され、例えばそのボードは、これら２つのチップを接続するＰＣＢ（印刷回路基板）である。
【００４１】
また、本発明によれば、プログラムコードを含んだコンピュータプログラム（を記憶した製品）が提供される。そのプログラムコードは、第１の論理回路と、第１の論理回路から離れた第２の論理回路とを備えるコンピュータシステムによって実行可能であり、当該プログラムコードを実行するコンピュータシステムは、ログデータの完全性を保護する本発明に係る方法を実行する。ログデータは、第１の論理回路の動作に関連する一連のログデータ要素から構成される。この方法は、第２の論理回路において、一連のログデータ要素中のログデータ要素を受信し、第２の論理回路において、ログデータ要素と第１の論理回路に対し秘匿とする秘密情報とに基づいて、保護済みログデータ要素を生成することを含む。
【００４２】
以上述べた特徴及び以下に説明する未だ述べてない特徴は、当然ながら、開示する各組み合せに限られず、本発明の範囲から逸脱することなく、他の組み合せにおいて、あるいは個別でも、使用され得る。
【図面の簡単な説明】
【００４３】
【図１】実施形態に係るコンピュータシステムの一揃いのコンポーネントを概略的に示す図。
【図２】実施形態に係る、複数の保護済みログデータ要素を概略的に示す図。
【図３】実施形態に係るコンピュータシステムの一揃いのコンポーネントを概略的に示す図。
【図４】実施形態に係る、ログデータの完全性を保護する方法の各過程を示すプロセスフローチャート。
【発明を実施するための形態】
【００４４】
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。なお、以下の実施形態の説明は、限定的な意味で取り上げられるものではない。本発明の範囲は、以下に説明する例示目的の実施形態や図面によって限定されるものではない。各図中、同じ参照符号は類似又は同一のコンポーネントを指す。
【００４５】
図面は概略表現と理解されるべきであり、図中に示されている要素は同一縮尺で示されているわけではない。むしろ、各要素は、その機能及び一般目的が当業者に明らかになるように表現されている。図面に示しここに説明する機能ブロック、デバイス、コンポーネント、その他の物理的又は機能的ユニットの間の接続は、間接的な接続によって実施することもできる。コンポーネント間の接続は、無線接続を介して確立することもできる。機能ブロックは、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合せで実施することができる。
【００４６】
以下で説明するように、本実施形態によれば、ログメッセージは、信頼できるハードウェアセキュリティアンカーによって、操作に対して暗号でセキュア化される。信頼できるハードウェアセキュリティアンカーは、ＦＰＧＡやＡＳＩＣなどの専用ハードウェアで実装することができる。
【００４７】
図１は、コンピュータシステム２０の例を示しており、例えばＦＰＧＡ−ＳｏＣ（Field Programmable Gate Array - System-on-a-Chip）で実現される組み込みシステムである。
【００４８】
コンピュータシステム２０は、例えばオペレーティングシステム２２などのソフトウェアを実行する、ＣＰＵ（中央処理装置）からなる第１の論理回路２１を含む。オペレーティングシステム２２は、例えばLinuxかUnixシステムからなる。オペレーティングシステム２２は、カーネル２３とアプリケーションを実行するためのユーザ空間２４とを含む。さらに、ＣＰＵは、ホスト型不正侵入検知システム（ＨＩＤＳ）２５を実行することができる。以下では、第１の論理回路２１をプロセッサ領域２１とも呼ぶ。プロセッサ領域２１には、メモリや入出力インターフェイスなどのコンポーネントも備え得る。
【００４９】
コンピュータシステム２０は、さらに第２の論理回路３０を含む。第２の論理回路３０は、ＦＰＧＡによって実装することができる。したがって、以下では、第２の論理回路３０をＦＰＧＡ領域３０とも呼ぶ。ＦＰＧＡ領域３０は、入力モジュール３１と、出力モジュール３２と、ハードウェアセキュリティモジュール（ＨＳＭ）３３とから構成される。
【００５０】
ＨＩＤＳ２５は、ユーザ空間２４及び／又はカーネル２３における各プロセスのアクティビティに関し、対応するログメッセージを生成する。当該ログメッセージは、次のログデータ要素に呼び出される。ログデータ要素は、例えば、対応するパラメータを含むシステムコールを発するプロセス、ファイルを開くプロセス、又はデータを入出力するプロセスを記録する。
【００５１】
ＨＩＤＳ２５により生成される各ログデータ要素は、入力モジュール３１を介してＨＳＭ３３に送信される。ＨＳＭ３３は、当該ログデータ要素と第１の論理回路２１に対し秘匿とする秘密情報とに基づいて、保護済みログデータ要素を生成し、これによりログデータ要素を保護する。例えば、ＨＳＭ３３は、鍵付きハッシュメッセージ認証コード（ＨＭＡＣ）技術を使用して、ログデータ要素のデータのＨＭＡＣ値を決定する。保護済みログデータ要素は、出力モジュール３２を介して第１の論理回路２１に送り返され、第１のログ回路２１のメモリに記憶される。攻撃者による攻撃の痕跡隠蔽を回避すべく保護済みログデータ要素は設定され、すなわち、保護済みログデータ要素が消されてしまった証拠を残すことなく攻撃者が保護済みログデータ要素を消すことができないように、設定される。追加的に又は代替として、保護済みログデータ要素は、攻撃者がアクセス権をもたないメモリに格納され得る。これらの結果、保護済みログデータ要素はセキュアであり、攻撃者から保護される。
【００５２】
保護済みログデータ要素は、コンピュータシステム２０に、具体的にはプロセッサ領域２１に格納することができる。この場合、攻撃者は、保護済みログデータ要素が格納されているメモリにアクセスできる可能性があり、攻撃者が保護済みログデータ要素の１つ以上を消去したり、取り除いたりできる可能性がある。
【００５３】
追加的に又は代替として、保護済みログデータ要素は、第１の論理回路２１に送信されるのではなくて、ＨＳＭ３３から、例えばネットワークデバイスやストレージデバイスなどの遠隔デバイスに送信される。
【００５４】
１つ以上の保護済みログデータ要素の除去を検出できることを保証する目的で、ハッシュチェーンを使用して一連のログデータ要素の完全性を証明する。例えば、ハッシュチェーンでは、現行のログデータ要素のハッシュ値を、前のログデータ要素のハッシュ値と組み合わせることができる。このときの前のログデータ要素は、直前のログデータ要素が適している。例えば、ＨＭＡＣ技術を使用すれば、現行のログデータ要素のデータと、前のログデータ要素のＨＭＡＣ値、好ましくは直前のログデータ要素のＨＭＡＣ値とを含めて、現行のログデータ要素のＨＭＡＣ値を計算することができる。
【００５５】
この原理を図２に示す。初期保護ログデータ要素４０は、第２の論理回路３０で生成され、データフィールド４１とＨＭＡＣ値４２とを含む。データフィールド４１には、例えば、第２の論理回路３０によってランダムに生成されるセッション識別子が含まれる。ＨＭＡＣ値４２は、データフィールド４１に基づいて計算される。すなわち、初期保護ログデータ要素４０は、後続の保護済みログデータ要素５０，６０，７０のアンカーを表す。初期保護ログデータ要素４０は、出力モジュール３２を介して第１の論理回路２１へ送信され、第１の論理回路２１のログメモリに格納される。
【００５６】
第２の論理回路３０がログデータ要素を受信すると、ＨＳＭ３３は、受信したログデータ要素のログデータ５１に、前のＨＭＡＣ値５２として直前のＨＭＡＣ値４２を付加することによって、対応保護済みログデータ要素５０を生成する。そしてＨＳＭ３３は、ログデータ５１及び前のＨＭＡＣ値５２に基づいてＨＭＡＣ値５３を計算する。算出したＨＭＡＣ値５３は、ログデータ５１及び前のＨＭＡＣ値５２に追加して付加される。さらに、保護済みログデータ要素５０の全体又はその一部は、例えば、対称暗号化スキーム又は非対称暗号化スキームを使用して暗号化される。最終的に、生成された保護済みログデータ要素５０は、第１の論理回路２１に送信される。
【００５７】
第２の論理回路３０が次のログデータ要素を受信すると、ＨＳＭ３３は、その受信したログデータ要素のログデータ６１に、前のＨＭＡＣ値６２として直前のＨＭＡＣ値５３を付加することによって、次の対応保護済みログデータ要素６０を生成する。そしてＨＳＭ３３は、ログデータ６１及び前のＨＭＡＣ値６２に基づいてＨＭＡＣ値６３を計算する。算出したＨＭＡＣ値６３は、ログデータ６１及び前のＨＭＡＣ値６２に付加される。さらに、保護済みログデータ要素６０の全体又はその一部は、例えば、対称暗号化スキーム又は非対称暗号化スキームを使用して暗号化される。このようにして生成された当該次の保護済みログデータ要素６０は、第１の論理回路２１に送信される。
【００５８】
さらに受信される後続の各ログデータ要素に対して、ＨＳＭ３３は、対応保護済みログデータ要素（ログデータ７１、前のＨＭＡＣ値７２、及び現行のＨＭＡＣ値７３を含む保護済みログデータ要素７０・・・）を生成する。
【００５９】
一連の保護済みログデータ要素５０，６０，７０の完全性は、ハッシュ値の組み合せに基づいて検証することができる。攻撃者が特定の保護済みログデータ要素を改ざん又は消去しようとすると、当該攻撃者は、それに続く保護済みログデータ要素のすべてのハッシュ値を改ざんする必要がある。しかし、必要な暗号鍵がＨＳＭ３３でのみ利用可能であり、第１の論理回路２１では利用できないから、攻撃者がこれを行うのは不可能である。
【００６０】
入力モジュール３１及び出力モジュール３２は、それぞれＦＩＦＯ（先入れ先出し）モジュールとして実装することができる。
【００６１】
例えば、入力モジュール３１及び出力モジュール３２は、ＦＰＧＡ領域３０内のリングバッファとして実施され、特定のメモリ領域を介してカーネル２３及びＨＩＤＳ２５に接続される。生成されたログデータ要素は、ＨＩＤＳ２５によってリングバッファに格納され、このログデータ要素が、ＨＳＭ３３から保護済みログデータ要素としてリングバッファへ返される。
【００６２】
初期保護ログデータ要素４０の生成時に、カウンタ値を初期化することを追加してもよい。次のログデータ要素を受信したときに、ＨＳＭ３３は、カウンタ値をインクリメントし、ハッシュ値ＨＭＡＣを計算するときにカウンタ値を利用してもよい。
【００６３】
まとめると、例えばＦＰＧＡ−ＳｏＣ２０のリセット後の始めの過程でハッシュチェーンが初期化される。この初期化において、ハッシュチェーンのアンカーとして初期保護ログデータ要素４０が送信される。ＦＰＧＡ−ＳｏＣ２０の動作中、プロセッサ領域２１とＦＰＧＡ領域３０との間の通信は、次のログデータ要素を送信するＨＩＤＳ２５によって開始される要求−応答手順を含む。要求を受信したＨＳＭ３３は、受信されるログデータ要素のログデータと、場合に応じてセッション識別子及びインクリメントされたカウンタ値と、前の保護済みログデータ要素のハッシュ値と、前述したデータ（ログデータ、場合に応じてセッション識別子、カウンタ値、及び前のハッシュ値）に基づいて計算されたハッシュ値とを含む、次の保護済みログデータ要素を生成する。
【００６４】
ＨＩＤＳ２５は、保護済みログデータ要素４０，５０，６０，７０を受信し、受信した保護済みログデータ要素をハッシュチェーンの新しいエントリとして格納する。ＨＳＭ３３は、セッション識別子、最新の保護済みログデータ要素のハッシュ値、及びインクリメントされたカウンタ値を記憶する。ＨＳＭ３３はオペレーティングシステム２２から物理的に分離されているので、攻撃者は、ハッシュキーを決定するために使用される暗号鍵などの秘密情報にアクセスすることができないし、セッション識別子、カウンタ値、及び前のハッシュ値などのプロトコルパラメータにアクセスすることができないので、攻撃者が保護済みログデータ要素を改ざんすることはできず、ハッシュチェーンが保護される。
【００６５】
性能向上のためと、ＨＩＤＳ２５とＨＳＭ３３との間の通信の低減のためには、ログデータが既にＨＩＤＳ２５に存在していることから、当該ログデータを保護済みログデータ要素から除外してもよい。この場合、ＨＳＭ３３でログデータ要素を受信した後、ＨＳＭ３３は、前の保護済みログデータ要素のハッシュ値と、ログデータに基づいて計算されるハッシュ値、場合に応じて、セッション識別子、インクリメントしたカウンタ値及び／又は時間、そして前のハッシュ値とを含む、新しい保護済みログデータ要素を生成する。この新しい保護済みログデータ要素がＨＩＤＳ２５へ（ログデータを含まずに）送信され、ＨＩＤＳ２５は、受信した保護済みログデータ要素を、該当するログデータに割り当てることができる。
【００６６】
保護済みログデータ要素を管理者が又はログデータを分析するツールによって分析する場合、ログデータが完全かどうかが容易に証明され、改ざんが容易に認識される。
【００６７】
図３は、これもまたＦＰＧＡ−ＳｏＣに実装された組み込みシステムとして実現されるコンピュータシステム２０の別の例を示す。図３に示されるコンピュータシステム２０は、図１に示したコンピュータシステム２０と基本的に同じコンポーネント２１〜２５，３０〜３３を備えている。したがって、これらコンポーネントの説明を繰り返す必要はない。
【００６８】
図３には、インターネットなどのデータ通信ネットワーク８０と、遠隔検証サービスノード８１とが追加して示されている。データ通信ネットワーク８０は、遠隔検証サービスノード８１とＨＩＤＳ２５との間のデータ通信を可能にする。
【００６９】
ＨＩＤＳ２５によって生成される各ログデータ要素は、入力モジュール３１を介してＨＳＭ３３へ送信される。ＨＳＭ３３は、受信したログデータ要素と第１の論理回路２１に対し秘匿とする秘密情報とに基づいて、対応保護済みログデータ要素を生成する。ＨＳＭ３３は、受信したログデータの鍵付きハッシュメッセージ認証コード（ＨＭＡＣ）を使用してＨＭＡＣ値を決定し、保護済みログデータ要素を生成する。保護済みログデータ要素は、出力モジュール３２を介してＨＩＤＳ２５へ送られる。この場合のＨＳＭ３３はさらに、保護済みログデータ要素が遠隔検証サービスノード８１へ転送されるべきであることを示す指示をＨＩＤＳ２５に送信する。代替形態として、ＨＩＤＳ２５は、ＨＳＭ３３からの当該専用の指示なしで、受信した保護済みログデータ要素を遠隔検証サービスノード８１へ転送するように構成してもよい。ＨＩＤＳ２５は、保護済みログデータ要素をデータ通信ネットワーク８０を介して遠隔検証サービスノード８１へ転送する。
【００７０】
ＨＩＤＳ２５は、規定数のログデータ要素、例えば１００個のログデータ要素、を含むログデータ要素のブロックを、入力モジュール３１を介してＨＳＭ３３へ送信することもできる。ＨＳＭ３３は、受信したログデータ要素のブロックと秘密情報とに基づいて、対応する保護済みログデータ要素のブロックを生成する。単一のログデータ要素に代えてログデータ要素のブロックを送信する場合、往復時間が短縮されるため、通信速度の向上に寄与する。ただし、ログデータ要素のブロックであっても単一のログデータ要素であってもその保護は、図１及び図２に関連して上述した方法で実施することができる。
【００７１】
遠隔検証サービスノード８１は、受信した保護済みログデータ要素を記憶する。遠隔検証サービスノード８１は、ＨＳＭ３３に対してのみ、データの追加、削除、修正を許可する。これを実現するために、遠隔検証サービスノード８１に提供されるＨＳＭ及び遠隔検証サービス（ＲＡＳ）は、初期化、いわゆるブートストラップ中に、秘密情報及びプロトコルパラメータをネゴシエートして、ＨＳＭ３３とＲＡＳが互いに認証し合うようにする。秘密情報は、例えば対称暗号化又は非対称暗号化のための、暗号鍵を含む。初期化中にはまた、第２の論理回路３０と遠隔検証サービスノード８１との間の時間基準を同期させることもできる。保護済みログデータ要素をＨＩＤＳ２５を介して遠隔検証サービスノード８１へ送信したＨＳＭ３３は、ＲＡＳからの確認を待機する。所定の時間ウィンドウ内にＲＡＳからの確認がＨＳＭ３３で受信できなかった場合、ＨＳＭ３３は、攻撃者がＨＳＭ３３とＲＡＳとの間の通信を操作していると仮定し、それ以降の保護済みログデータ要素の生成を停止する。追加でＨＳＭ３３は、管理者に攻撃アラーム通知を出してもよい。ＨＳＭ３３とＲＡＳとの間の通信をリプレイアタックから保護するために、暗号化ノンス技術を利用することもできる。
【００７２】
上述のブートストラップは、例えば、対称暗号を使用して非対称暗号の特性を達成するＴＥＳＬＡ（Time Efficient Stream Loss-Tolerant Authentication）方式を含み得る。例えば、ＴＥＳＬＡ方式によれば、ルートキーと暗号化パラメータが最初の過程で交換される。これらのパラメータは、暗号化ログデータ要素をＲＡＳに送信し、暗号化ログデータ要素が未操作で受信されたかどうか又はアノマリが検出されたかどうかの応答を受信するために、使用される。代替形態として、暗号化パラメータは、証明書ベースの認証に基づいてネゴシエートされる。
【００７３】
ログデータが遠隔検証サービスノード８１に記憶されるので、第１の論理回路２１にアタックする攻撃者は、攻撃の痕跡を隠すことができない。ＲＡＳは、例えば機械学習アルゴリズムを使用することによって、攻撃を認識するためにログデータを使用することができる。
【００７４】
上述のように、入力モジュール３１は、規定数のログデータ要素、例えば１００個のログデータ要素、のブロックを記憶することができ、ＨＳＭ３３は、当該規定数に達したときにこれらすべてのログデータ要素に署名することができる。この規定数は、１００より大きくても小さくてもよく、例えば、５０又は数百であってもよく、また、各ログデータ要素を別々に処理してもよい。対称暗号化が、ログデータの完全性を保護する高いパフォーマンスを実現するために使用される。
【００７５】
保護済みログデータ要素を遠隔検証サービスノード８１に保存する代わりに、保護済みログデータ要素は、外部保存媒体、例えばＳＤカード又は外部の書き込み専用ハードディスク、に保存することができる。
【００７６】
図４は、ログデータの完全性を保護する方法１００の過程を簡潔に示したものである。方法１００は過程１０１〜１２４を含んでいる。選択的な過程は破線のボックスで示されている。
【００７７】
選択的過程１０１〜１０３は、コンピュータシステム２０の初期化フェーズに関係する。これらの過程は任意のものであり、他の手順で、例えば、該当するデフォルトパラメータを実行し、グローバルクロックに同期化することによって、初期化を実施することもできる。過程１０１で、時間基準の同期が、第２の論理回路３０と遠隔検証サービスノード８１との間で行われる。過程１０２で、第２の論理回路３０において、ランダムに生成されたセッション識別子に基づいて、初期保護ログデータ要素４０が生成される。初期保護ログデータ要素４０は、保護済みログデータ要素５０，６０，７０のハッシュチェーンの先行ログデータ要素として機能する。初期保護ログデータ要素４０は、過程１０３で、第２の論理回路３０から第１の論理回路２１へ送信される。さらに、ＨＳＭ３３で受信したログデータ要素をカウントするためのカウンタを初期化することができる。
【００７８】
過程１０４で、第１の論理回路２１においてログデータ要素が生成され、入力モジュール３１を介してＨＩＤＳ２５から第２の論理回路３０のＨＳＭ３３へ送信される。上述のように、ログデータ要素は例えば１００個等のログデータ要素のブロックとしてＨＩＤＳ２５からＨＳＭ３３へ伝送してもよい。ログデータ要素又はログデータ要素のブロックを受信すると、ＨＳＭ３３は、カウンタをインクリメントする。
【００７９】
過程１０５で、ＨＳＭ３３は、受信したログデータ要素と第１の論理回路２１に対し秘匿とする秘密情報とに基づいて、保護済みログデータ要素５０，６０，７０を生成する。ハッシュは、鍵ベースのハッシュ、例えば鍵付きハッシュメッセージ認証コード（ＨＭＡＣ）、を使用して、又は、鍵無しのハッシュを使用して実行することができる。秘密情報は、ハッシュアルゴリズムの鍵、パラメータ及び／又はアルゴリズム識別子を含む。一例として、ＨＳＭ３３は、過程１２０で、受信したログデータ要素のログデータに基づくと共に、先行するログデータ要素に対して生成された前のハッシュ値に基づいて、現行のハッシュ値を生成する。過程１２１で、現行のハッシュ値及び前のハッシュ値が、保護済みログデータ要素５０，６０，７０に含まれる。さらに、過程１２２で、追加的に、カウンタ値に基づいて現行のハッシュ値を生成することができる。過程１２３で、追加的に、保護済みログデータ要素は、時間基準に従うタイムスタンプに基づいて、例えば、保護済みログデータ要素５０，６０，７０にタイムスタンプを含めることによって、生成される。過程１２４で、保護済みログデータ要素５０，６０，７０に含まれるログデータは、対称暗号化スキームを使用して又は非対称暗号化スキームを使用して、暗号化される。
【００８０】
過程１０６で、このようにして生成された保護済みログデータ要素５０，６０，７０が、第２の論理回路３０から第１の論理回路２１へ送信される。選択肢として、保護済みログデータ要素５０，６０，７０を遠隔検証サービスノード８１へ転送するように第１の論理回路２１に指令する指示が、第１の論理回路２１に送信される。この指示を受け取ると、ＨＩＤＳ２５は、保護済みログデータ要素５０，６０，７０を遠隔検証サービスノード８１に転送する。
【００８１】
過程１０７において、ＨＳＭ３３は、遠隔検証サービスノード８１からの応答が、例えば数百ミリ秒以内など、所定の時間ウィンドウ内で受信されるか否かを、判定する。この応答は、遠隔検証サービスノード８１が保護済みログデータ要素５０，６０，７０を受信したことを示す。過程１０８で、当該応答が所定の時間ウィンドウ内で実際に受信されたことを判定できた場合、ＨＳＭ３３は、過程１０４を継続することができる。しかしながら、当該応答を所定の時間ウィンドウ内に受信できなかった場合は、ＨＳＭ３３は、過程１１０で、それ以降の保護済みログデータ要素の生成を停止し、過程１１１で攻撃アラーム通知を送出する。
【００８２】
ＦＰＧＡ領域３０におけるＨＳＭ３３の使用は、ログメッセージを暗号的にセキュアにすることを可能にし、それらを操作する機会を攻撃者に与えない。これにより、システムへの攻撃後、攻撃者は過去と現在のアクティビティを隠すことができなくなり、管理者、ＨＩＤＳ、又はＲＡＳ手順のインスタンスによって確認される、という問題解決がなされる。
【００８３】
このことは、攻撃にさらされる可能性の高いＩｏＴデバイスやネットワーク産業制御システム（ＩＣＳ）（一般に組み込みシステム）の大きな問題を解決する。これらに対する攻撃は非常に洗練されているため、攻撃後や攻撃中に痕跡が現れない場合がある。その理由は、攻撃者が自分の痕跡を隠すために、それぞれのシステムでセキュリティメカニズムを再設定するからである。上述した方法及びシステムは、ログメッセージの完全性を保護し、攻撃者がその存在又は攻撃の痕跡を隠したり誤魔化したりすることを実質的に困難にする。システム管理者は、攻撃が発生したかどうか、そして、どの脆弱性が悪用されたかを常に確認できる。図３に関連して説明した方法及びシステムによれば、検出されることなく保護済みログデータ要素を消去することが難しいので、攻撃が発生したか否かと攻撃がどのように発生したかを確認することが、システム管理者に対してかなり高いレベルの確実性をもって保証される。図１に関連して説明した方法及びシステムは、攻撃が行われた証拠を提供する。ただしこの場合、特定の状況下では攻撃者が重要なログメッセージを消去可能なことがあるため、攻撃を追跡できない可能性がある。
【００８４】
従来では、生成されたログメッセージがシステムに保存されていたり、セントラルインスタンスへ断続的に転送されて分析とストレージが実行されていた。攻撃者がシステムを攻撃した後に過去から将来のログメッセージを操作して自分の存在を隠すことができるという事実は、大きな問題である。上述した方法及びシステムを利用することにより、ログメッセージの完全性を確保することができる。すなわち、攻撃者は、たとえ攻撃者が完全にオペレーティングシステムを支配できていたとしても、攻撃の痕跡を簡単には隠蔽することができない。その結果、例えば組み込みシステムが攻撃された場合でも、ログメッセージの完全性が常に信頼できるので、攻撃を証明できる確率が大幅に高くなる。
【００８５】
本発明について、好適な実施形態を基に説明したが、本明細書を読んで理解することにより、当業者であれば代替と変更が可能である。本発明は、そのような等価物及び変更のすべてに及ぶものであって、特許請求範囲の範囲によって定義される。
【図１】
2020126586.tif 000003
【図２】
2020126586.tif 000004
【図３】
2020126586.tif 000005
【図４】
2020126586.tif 000006
【外国語明細書】
2020126586000001.pdf