(57)【要約】【課題】メモリにのみ保持された共有鍵に関する情報を取得し、暗号化通信の解析を可能とする解析装置、監視システム、監視方法及び解析プログラムを提供する。【解決手段】解析モジュール１０は、２つの通信装置間での暗号化通信のための共有鍵の鍵交換プロトコルにおいて、共有鍵を生成するために各装置で一時鍵のシード情報が一時的に生成され、当該シード情報及び共有鍵情報がメモリのみに保持される場合に、一方の通信装置のメモリ内にある変数領域を監視し、新たにシード情報又は共有鍵情報が書き込まれた際に、当該シード情報又は共有鍵情報を取得する取得部１１１と、シード情報又は共有鍵情報を暗号化し、他方の通信装置の接続情報と共に出力する出力部１１２と、を備える。【選択図】図２
2019054364.tif 000002
【特許請求の範囲】
【請求項１】
２つの通信装置間での暗号化通信のための共有鍵の鍵交換プロトコルにおいて、前記共有鍵を生成するために各装置で一時鍵のシード情報が一時的に生成され、当該シード情報及び共有鍵情報がメモリのみに保持される場合に、
一方の通信装置のメモリ内にある変数領域を監視し、新たに前記シード情報又は共有鍵情報が書き込まれた際に、当該シード情報又は共有鍵情報を取得する取得部と、
前記シード情報又は共有鍵情報を暗号化し、他方の通信装置の接続情報と共に、前記暗号化通信の内容を監視する監視装置により参照可能な所定の領域に格納する出力部と、を備える解析装置。
【請求項２】
２つの通信装置間での暗号化通信のための共有鍵の鍵交換プロトコルにおいて、前記共有鍵を生成するために各装置で一時鍵のシード情報が一時的に生成され、当該シード情報及び共有鍵情報がメモリのみに保持される場合に、
一方の通信装置のメモリ内にある変数領域を監視し、新たな前記シード情報又は共有鍵情報が書き込まれた際に、当該シード情報又は共有鍵情報を取得する取得部と、
前記暗号化通信の内容を監視する監視装置との間で事前に共有した暗号鍵により前記シード情報又は共有鍵情報を暗号化し、他方の通信装置の接続情報と共に、前記監視装置へ送信する出力部と、を備える解析装置。
【請求項３】
前記出力部は、前記シード情報又は共有鍵情報を、時刻情報と対応付けて出力する請求項１又は請求項２に記載の解析装置。
【請求項４】
前記変数領域は、所定のアルゴリズムによりデータの格納位置が動的に変更され、
前記取得部は、前記一方の通信装置と前記所定のアルゴリズムを共有する請求項１から請求項３のいずれかに記載の解析装置。
【請求項５】
前記所定のアルゴリズムは、前記変数領域のデータをランダム化するものである請求項４に記載の解析装置。
【請求項６】
前記変数領域は、前記一方の通信装置及び前記取得部が読み取り可能な耐タンパ領域である請求項１から請求項３のいずれかに記載の解析装置。
【請求項７】
請求項１から請求項６のいずれかに記載の解析装置、前記２つの通信装置、及び前記監視装置を備えた監視システムであって、
前記監視装置は、前記解析装置により取得した情報に基づいて、前記２つの通信装置による暗号化通信を復号する監視システム。
【請求項８】
前記監視装置は、前記シード情報を取得して前記共有鍵情報を生成、又は前記共有鍵情報を取得するまで、前記鍵交換プロトコルが終了した以降のデータ通信を停止させる請求項７に記載の監視システム。
【請求項９】
２つの通信装置間での暗号化通信のための共有鍵の鍵交換プロトコルにおいて、前記共有鍵を生成するために各装置で一時鍵のシード情報が一時的に生成され、当該シード情報及び共有鍵情報がメモリのみに保持される場合に、
解析装置が一方の通信装置のメモリ内にある変数領域を監視し、新たに前記シード情報又は共有鍵情報が書き込まれた際に、当該シード情報又は共有鍵情報を取得する取得し、
前記シード情報又は共有鍵情報を暗号化し、他方の通信装置の接続情報と共に出力し、
監視装置が前記解析装置により取得した情報に基づいて、前記２つの通信装置による暗号化通信を復号する監視方法。
【請求項１０】
請求項１から請求項６のいずれかに記載の解析装置としてコンピュータを機能させるための解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化通信の内容を監視するための解析装置、監視システム、監視方法及び解析プログラムに関する。
【背景技術】
【０００２】
従来、暗号化されている通信データを、許可された中間ノードで復号することにより通信内容を監視するシステムが運用されている。このようなシステムは、例えば、侵入検知、不正トラフィックの検出、フィルタリング、ウィルスチェック等のセキュリティの用途、あるいは、トラフィックの傾向分析、エラー診断等の様々な用途で活用される。
【０００３】
暗号化通信の際には、鍵交換によって秘密鍵が共有されるため、監視を行う中間ノードでは、秘密鍵の提供を受けて暗号化データの復号を行う。
暗号化通信には、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）又はＴＬＳ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）といったプロトコルが利用され、暗号化に用いられる秘密鍵は、各通信装置で安全に管理される（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−５２３３１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、暗号化された通信データを復号するためには、通信装置で管理される共有鍵情報を取得する必要がある。しかしながら、例えばＴＬＳ１．３では、鍵交換方式が限定され、シード情報及び共有鍵情報が一時的に生成されてメモリにのみ保持されるため、中間ノードの監視装置が通信データそれぞれの暗号化に用いられた秘密鍵を知ることが難しかった。
【０００６】
本発明は、メモリにのみ保持された共有鍵に関する情報を取得し、暗号化通信の解析を可能とする解析装置、監視システム、監視方法及び解析プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る解析装置は、２つの通信装置間での暗号化通信のための共有鍵の鍵交換プロトコルにおいて、前記共有鍵を生成するために各装置で一時鍵のシード情報が一時的に生成され、当該シード情報及び共有鍵情報がメモリのみに保持される場合に、一方の通信装置のメモリ内にある変数領域を監視し、新たに前記シード情報又は共有鍵情報が書き込まれた際に、当該シード情報又は共有鍵情報を取得する取得部と、前記シード情報又は共有鍵情報を暗号化し、他方の通信装置の接続情報と共に、前記暗号化通信の内容を監視する監視装置により参照可能な所定の領域に格納する出力部と、を備える。
【０００８】
本発明に係る解析装置は、２つの通信装置間での暗号化通信のための共有鍵の鍵交換プロトコルにおいて、前記共有鍵を生成するために各装置で一時鍵のシード情報が一時的に生成され、当該シード情報及び共有鍵情報がメモリのみに保持される場合に、一方の通信装置のメモリ内にある変数領域を監視し、新たな前記シード情報又は共有鍵情報が書き込まれた際に、当該シード情報又は共有鍵情報を取得する取得部と、前記暗号化通信の内容を監視する監視装置との間で事前に共有した暗号鍵により前記シード情報又は共有鍵情報を暗号化し、他方の通信装置の接続情報と共に、前記監視装置へ送信する出力部と、を備える。
【０００９】
前記出力部は、前記シード情報又は共有鍵情報を、時刻情報と対応付けて出力してもよい。
【００１０】
前記変数領域は、所定のアルゴリズムによりデータの格納位置が動的に変更され、前記取得部は、前記一方の通信装置と前記所定のアルゴリズムを共有してもよい。
【００１１】
前記所定のアルゴリズムは、前記変数領域のデータをランダム化するものでもよい。
【００１２】
前記変数領域は、前記一方の通信装置及び前記取得部が読み取り可能な耐タンパ領域でもよい。
【００１３】
本発明に係る監視システムは、前記解析装置、前記２つの通信装置、及び前記監視装置を備えたシステムであって、前記監視装置は、前記解析装置により取得した情報に基づいて、前記２つの通信装置による暗号化通信を復号する。
【００１４】
前記監視装置は、前記シード情報を取得して前記共有鍵情報を生成、又は前記共有鍵情報を取得するまで、前記鍵交換プロトコルが終了した以降のデータ通信を停止させてもよい。
【００１５】
本発明に係る監視方法は、２つの通信装置間での暗号化通信のための共有鍵の鍵交換プロトコルにおいて、前記共有鍵を生成するために各装置で一時鍵のシード情報が一時的に生成され、当該シード情報及び共有鍵情報がメモリのみに保持される場合に、解析装置が一方の通信装置のメモリ内にある変数領域を監視し、新たに前記シード情報又は共有鍵情報が書き込まれた際に、当該シード情報又は共有鍵情報を取得する取得し、前記シード情報又は共有鍵情報を暗号化し、他方の通信装置の接続情報と共に出力し、監視装置が前記解析装置により取得した情報に基づいて、前記２つの通信装置による暗号化通信を復号する。
【００１６】
本発明に係る解析プログラムは、前記解析装置としてコンピュータを機能させるためのものである。
【発明の効果】
【００１７】
本発明によれば、メモリにのみ保持された共有鍵に関する情報を取得し、暗号化通信を解析できる。
【図面の簡単な説明】
【００１８】
【図１】実施形態に係る監視システムの全体構成を示す図である。
【図２】実施形態に係る解析モジュールの機能構成を示す図である。
【図３】実施形態に係る鍵交換プロトコルの第１の例を示す図である。
【図４】実施形態に係る鍵交換プロトコルの第２の例を示す図である。
【図５】実施形態に係る共有鍵情報の導出手順を示す図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態の一例について説明する。
図１は、本実施形態に係る監視システム１の全体構成を示す図である。
【００２０】
監視システム１は、暗号化通信を行う２つの通信装置として、クライアント２と、サーバ３とを備える。さらに、監視システム１は、暗号化通信を監視する監視装置４と、監視装置４に共有鍵情報を提供するための解析モジュール１０（解析装置）とを備える。
ここで、解析モジュール１０は、通信の解析を行う主体がクライアント２であるか、又はサーバ３であるかによって設置場所が異なるが、本実施形態では、一例として、サーバ３側に解析モジュール１０が設けられる場合を説明する。
【００２１】
監視システム１では、２つの通信装置間での暗号化通信のための共有鍵の鍵交換プロトコルにおいて、共有鍵を生成するために各通信装置で一時鍵のシード情報が一時的に生成され、このシード情報及び共有鍵情報が各通信装置のメモリのみに保持される。
【００２２】
図２は、本実施形態に係る解析モジュール１０の機能構成を示す図である。
解析モジュール１０は、制御部１１及び記憶部１２を備えた情報処理装置（コンピュータ）であってもよいが、サーバ３に組み込まれたソフトウェアモジュールとして実装されてもよい。
【００２３】
解析モジュール１０は、取得部１１１と、出力部１１２とを備える。
取得部１１１は、一方の通信装置（例えば、サーバ３）のメモリ内にある変数領域を監視し、新たにシード情報又は共有鍵情報が書き込まれた際に、このシード情報又は共有鍵情報を取得する。
【００２４】
出力部１１２は、取得部１１１により取得したシード情報又は共有鍵情報を暗号化し、他方の通信装置（例えば、クライアント２）の接続情報（例えば、ＩＰアドレス）と共に、監視装置４により参照可能な所定の領域（記憶部１２）に格納する格納部として機能する。
あるいは、出力部１１２は、監視装置４との間で事前に共有した暗号鍵によりシード情報又は共有鍵情報を暗号化し、他方の通信装置（例えば、クライアント２）の接続情報（例えば、ＩＰアドレス）と共に、監視装置４へ送信する送信部として機能してもよい。
【００２５】
ここで、シード情報又は共有鍵情報が保持される変数領域は、所定のアルゴリズムによりデータの格納位置が動的に変更されることが好ましい。この場合、取得部１１１は、一方の通信装置（例えば、サーバ３）と所定のアルゴリズムを共有する。
また、所定のアルゴリズムは、変数領域のデータをランダム化するメモリ保護機能を有していてもよい。
あるいは、変数領域は、一方の通信装置（例えば、サーバ３）及び取得部１１１が読み取り可能な、ハードウェアで構成された耐タンパ領域であってもよい。
【００２６】
図３は、本実施形態に係る鍵交換プロトコルの第１の例を示す図である。
この例は、ＴＬＳ１．２でＥＣＤＨＥ（Ｅｌｌｉｐｔｉｃ  Ｃｕｒｖｅ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ｋｅｙ  ｅｘｃｈａｎｇｅ，  Ｅｐｈｅｍｅｒａｌ）を用いた場合を示している。
【００２７】
クライアント２とサーバ３とは、ＴＬＳ通信を開始すると、共有鍵情報（セッション鍵）のネゴシエーションにおいて、共有鍵のシード情報（乱数ｘ，ｙ）を一時的に生成し、公開鍵（ｇｘ，ｇｙ）を交換する（ＳｅｒｖｅｒＫｅｙＥｘｃｈａｎｇｅ及びＣｌｉｅｎｔＫｅｙＥｘｃｈａｎｇｅ）。
【００２８】
このとき、解析モジュール１０の取得部１１１は、サーバ３からシード情報（ｙ）を取得する。監視装置４は、このシード情報とクライアント２から送信される公開鍵（ｇｘ）とを用いて、共有鍵情報（ｇｘｙ及びその派生）を生成する。これにより、監視装置４は、暗号化通信の内容を復号することができる。
ここで、監視装置４は、共有鍵情報と共に、対応する接続情報（ＩＰアドレス）を取得することにより、暗号化通信の相手であるクライアント２を特定できるので、暗号化データそれぞれを、対応する共有鍵情報を用いて復号できる。
なお、監視装置４は、シード情報ではなく共有鍵情報を取得した場合、共有鍵情報を生成する処理を省略し、同様に暗号化データを復号できる。
【００２９】
また、取得部１１１は、取得したシード情報又は共有鍵情報に対して、時刻情報を対応付けてもよい。これにより、監視装置４は、暗号化された通信データの接続情報及び時刻情報に応じて、対応する共有鍵情報を用いて事後に解析することができる。
【００３０】
図４は、本実施形態に係る鍵交換プロトコルの第２の例を示す図である。
この例は、ＴＬＳ１．３による鍵交換プロトコルの一形態を示している。
【００３１】
クライアント２は、自身の公開鍵（ｇｘ）をサーバ３へ送信し（ＣｌｉｅｎｔＨｅｌｌｏ）、サーバ３からも公開鍵（ｇｙ）がクライアント２へ送信される（ＳｅｒｖｅｒＨｅｌｌｏ）。
【００３２】
このとき、解析モジュール１０の取得部１１１は、サーバ３からシード情報（ｙ）を取得する。監視装置４は、このシード情報と、先にクライアント２から送信された公開鍵（ｇｘ）とを用いて、共有鍵情報（ｇｘｙ及びその派生）を生成する。これにより、監視装置４は、暗号化通信の内容を復号することができる。
【００３３】
図５は、本実施形態に係る共有鍵情報の導出手順を示す図である。
まず、前述のように、クライアント２及びサーバ３のそれぞれで生成された一時的な公開鍵（ｇｘ及びｇｙ）を交換することにより、ｐｒｅ  ｍａｓｔｅｒ  ｓｅｃｒｅｔとしての秘密鍵（ｇｘｙ）が生成される。
【００３４】
例えば、ＴＬＳ１．３では、ＨＫＤＦ（ＨＭＡＣ−ｂａｓｅｄ  Ｅｘｔｒａｃｔ−ａｎｄ−Ｅｘｐａｎｄ  Ｋｅｙ  Ｄｅｒｉｖａｔｉｏｎ  Ｆｕｎｃｔｉｏｎ）と呼ばれるハッシュ関数を用いて、ハンドシェイク用鍵、Ｆｉｎｉｓｈｅｄ用鍵の他、いわゆるセッション鍵として、ｒｅｓｕｍｐｔｉｏｎ用鍵、アプリデータ用鍵、ｅｘｐｏｒｔｅｒ用鍵の３種類が導出される。
ここで、図中のセッションハッシュは、それまでに送受信した総ハンドシェイクデータのハッシュ値である。
【００３５】
これらの共有鍵情報の導出アルゴリズムは、監視装置４と共有される。これにより、監視装置４は、取得したシード情報に基づいて共有鍵情報を導出し、暗号化通信の内容を復号する。
また、監視装置４は、シード情報を取得して共有鍵情報を生成、又は共有鍵情報を取得するまで、鍵交換プロトコルが終了した以降のデータ通信を停止させてもよい。具体的には、監視装置４は、暗号化データを復号するための共有鍵情報が得られるまで、鍵交換プロトコルにおいてＦｉｎｉｓｈｅｄが送信されて以降のＡｐｐｌｉｃａｔｉｏｎ  Ｄａｔａの送信を中間ノードで遮断し、復号できない暗号化データを通過させない。
【００３６】
本実施形態によれば、解析モジュール１０は、クライアント２又はサーバ３のメモリ内の変数領域を監視し、一時的に生成される共有鍵のシード情報又は共有鍵情報を取得して接続情報と共に出力する。したがって、この監視装置４は、メモリにのみ保持された共有鍵に関する一時的な情報を取得し、暗号化通信を解析できる。
【００３７】
また、解析モジュール１０がシード情報又は共有鍵情報に時刻情報を対応付けて出力することにより、監視装置４は、暗号化通信されたデータの時刻情報に対応する共有鍵情報を用いて、通信内容を事後に解析できる。
【００３８】
また、シード情報又は共有鍵情報が保持される変数領域は、メモリ保護機能によってデータの格納位置が動的に変更され、さらにデータがランダム化されることにより、第三者に対して秘匿されてよい。あるいは、変数領域は、ハードウェア等で構成された耐タンパ領域であってもよい。これにより、秘密情報が第三者に対して秘匿され、安全性が向上すると共に、解析モジュール１０は、これらの保護技術が適用されたメモリへのアクセス方法を共有することで、監視装置４にシード情報又は共有鍵情報を安全に提供できる。
【００３９】
また、監視装置４は、シード情報から共有鍵情報を導出、又は共有鍵情報を受信して暗号化データを復号する準備が整うまで、ユーザデータの送受信を停止させる。これにより、暗号化通信を確実に監視し、内容を解析できる。
【００４０】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
【００４１】
監視システム１による監視方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置（コンピュータ）にインストールされる。また、これらのプログラムは、ＣＤ−ＲＯＭのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したＷｅｂサービスとしてユーザのコンピュータに提供されてもよい。
【符号の説明】
【００４２】
１  監視システム
２  クライアント
３  サーバ
４  監視装置
１０  解析モジュール（解析装置）
１１  制御部
１２  記憶部
１１１  取得部
１１２  出力部
【図１】
2019054364.tif 000003
【図２】
2019054364.tif 000004
【図３】
2019054364.tif 000005
【図４】
2019054364.tif 000006
【図５】
2019054364.tif 000007