SSL インスペクション アプライアンス展開の分析
ライセンス: 機能に依存
ここでは Life Insurance Example, Inc.(LifeIns)という架空の生命保険会社で使われる複数のシナリオを例にして、同社のプロセス監査で利用されている暗号化トラフィックの SSL インスペクションについて解説します。LifeIns はそのビジネス プロセスに基づいて、以下の展開を計画しています。
- カスタマー サービス部門では、単一の ASA FirePOWER デバイスをパッシブ展開する
- 契約審査部門では、単一の ASA FirePOWER デバイスをインライン展開する
カスタマー サービスのビジネス プロセス
LifeIns はすでに顧客対応用の Web サイトを構築済みです。LifeIns は、保険契約に関する見込み顧客からの暗号化された質問や要求を、Web サイトや電子メールで受け取ります。LifeIns のカスタマー サービスは、これらの要求を処理して 24 時間以内に必要な情報を返信しなければなりません。カスタマー サービスでは、着信するコンタクト メトリックのコレクションを拡張したいと思っています。LifeIns では、すでにカスタマー サービスに対する内部監査用のレビューが確立されています。
また、LifeIns は暗号化された申請書もオンラインで受信します。カスタマー サービス部門は申請書を 24 時間以内に処理し、申請書類のファイルを契約審査部門に送信しなければなりません。カスタマー サービスでは、オンライン フォームからの不正な申請をすべて除外するようにしていますが、この作業が同部門での作業のかなりの部分を占めています。
契約審査部門のビジネス プロセス
LifeIns の契約審査担当者は、Medical Repository Example, LLC(MedRepo)という医療データ リポジトリに、オンラインで暗号化された医療情報要求を送信します。MedRepo はこれらの要求を評価し、LifeIns に暗号化されたレコードを 72 時間以内に送信します。その後は契約審査担当者が申請書類を査定し、保険契約および保険料に関連する判定を送信します。契約審査部門では、そのメトリック コレクションを拡張したいと思っています。
最近、不明な送信元からのスプーフィング(なりすまし)応答が LifeIns に送られてくるようになりました。LifeIns の契約審査担当者はインターネット使用に関する適切なトレーニングを受けていますが、LifeIns の IT 部門はまず、医療応答の形式で送られてくる暗号化トラフィックをすべて分析し、すべてのスプーフィング行為をブロックしたいと考えています。
LifeIns では、経験の浅い契約審査担当者に対して 6 ヵ月のトレーニング期間を設けています。最近、こうした契約審査担当者が MedRepo のカスタマー サービス部門への暗号化された医療規制リクエストの送信を正しく行わない事例がありました。そのため MedRepo から LifeIns に複数の苦情が提出されています。LifeIns は、新任の契約審査担当者用のトレーニング期間を延長し、契約審査担当者から MedRepo への要求についても監査を入れることを計画しています。
詳細については、次の項を参照してください。
例:パッシブ展開でのトラフィック復号
ライセンス: 機能に依存
LifeIns のビジネス要件では、カスタマー サービスに次の要求をしています。
- すべての要求と申請書類を 24 時間以内に処理する
- 着信するコンタクト メトリックのコレクション プロセスを改善する
- 着信した不正な申請書類を特定して廃棄する
カスタマー サービス部門では、追加の監査用レビューを必要としません。
LifeIns ではカスタマー サービス デバイスのパッシブ展開を計画しています。
外部ネットワークからのトラフィックは LifeIns のルータに送信されます。ルータはトラフィックをカスタマー サービス部門にルーティングし、検査用にトラフィックのコピーを ASA FirePOWER モジュールに送信します。
管理する ASA FirePOWER モジュールでは、[アクセス コントロール(Access Control)] および [SSL エディタ(SSL Editor)] のカスタム ロールを持つユーザにより、次の SSL インスペクションの設定を行います。
- カスタマー サービス部門に送信された暗号化トラフィックをすべてログに記録する
- オンラインの申請フォームからカスタマー サービスに送信された暗号化トラフィックを復号する
- カスタマー サービスに送信された他の暗号化トラフィックは、オンライン リクエスト フォームからのトラフィックも含め、すべて復号しない
さらに、復号された申請フォーム トラフィック中に偽の申請データが含まれていないかを検査し、検出された場合はログに記録するためのアクセス コントロールも設定します。
次のシナリオでは、ユーザからカスタマー サービスにオンライン フォームが送信されます。ユーザのブラウザは、サーバとの TCP 接続を確立してから、SSL ハンドシェイクを開始します。ASA FirePOWER モジュールは、このトラフィックのコピーを受信します。クライアントとサーバが SSL ハンドシェイクを完了することで、暗号化されたセッションが確立されます。システムは、ハンドシェイクと接続の詳細に応じて、接続のログを記録し、暗号化トラフィックのコピーを処理します。
詳細については、次のトピックを参照してください。
パッシブ展開で暗号化トラフィックをモニタする
ライセンス: 任意
システムは、カスタマー サービスに送信されるすべての SSL 暗号化トラフィックについて、接続のログを記録します。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( info
)を送信します。クライアントがこれを暗号化( AaBb
)し、カスタマー サービスに暗号化トラフィックを送信します。
2.
LifeIns のルータが暗号化トラフィックを受信し、カスタマー サービス部門のサーバにルーティングします。また、ASA FirePOWER モジュールにそのトラフィックのコピーを送信します。
3.
カスタマー サービス部門のサーバが、暗号化された情報の要求( AaBb
)を受信し、これをプレーン テキスト( info
)に復号します。
4.
モジュールはトラフィックを復号しません。
アクセス コントロール ポリシーが暗号化トラフィックの処理を続行し、これを許可します。セッション終了後、モジュールは接続イベントを生成します。
5.
ASA FirePOWER モジュールが接続イベントを受信します。
パッシブ展開で暗号化トラフィックを復号しない
ライセンス: 任意
保険契約に関する要求を含むすべての SSL 暗号化トラフィックは復号されずに許可され、接続のログが記録されます。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( info
)を送信します。クライアントがこれを暗号化( AaBb
)し、カスタマー サービスに暗号化トラフィックを送信します。
2.
LifeIns のルータが暗号化トラフィックを受信し、カスタマー サービス部門のサーバにルーティングします。また、ASA FirePOWER モジュールにそのトラフィックのコピーを送信します。
3.
カスタマー サービス部門のサーバが、暗号化された情報の要求( AaBb
)を受信し、これをプレーン テキスト( info
)に復号します。
4.
ASA FirePOWER モジュールはトラフィックを復号しません。
アクセス コントロール ポリシーが暗号化トラフィックの処理を続行し、これを許可します。セッション終了後、モジュールは接続イベントを生成します。
5.
ASA FirePOWER モジュールが接続イベントを受信します。
パッシブ展開で暗号化トラフィックを秘密キーで検査する
ライセンス: 任意
申請フォームのデータを含むすべての SSL 暗号化トラフィックは復号され、接続のログが記録されます。
(注
) パッシブ展開の場合、DHE または ECDHE 暗号スイートで暗号化されたトラフィックは、既知の秘密キーを使って復号することはできません。
有効な申請フォームの情報を含むトラフィックについては、接続のログが記録されます。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( form
)を送信します。クライアントがこれを暗号化( AaBb
)し、カスタマー サービスに暗号化トラフィックを送信します。
2.
LifeIns のルータが暗号化トラフィックを受信し、カスタマー サービス部門のサーバにルーティングします。また、ASA FirePOWER モジュールにそのトラフィックのコピーを送信します。
3.
カスタマー サービス部門のサーバが、暗号化された情報の要求( AaBb
)を受信し、これをプレーン テキスト( form
)に復号します。
4.
ASA FirePOWER モジュールは、アップロードされた既知の秘密キーで取得したセッション キーを使用して、暗号化トラフィックをプレーン テキスト( form
)に復号します。
アクセス コントロール ポリシーは、復号されたトラフィックの処理を継続します。偽の申請書であることを示す情報は検出されません。セッション終了後、モジュールは接続イベントを生成します。
5.
ASA FirePOWER モジュールは、暗号化および復号されたトラフィックの情報とともに、接続イベントを受信します。
これに対し、復号されたトラフィックに偽の申請データが含まれていた場合、接続および偽のデータについてのログが記録されます。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( fake
)を送信します。クライアントがこれを暗号化( CcDd
)し、カスタマー サービスに暗号化トラフィックを送信します。
2.
LifeIns のルータが暗号化トラフィックを受信し、カスタマー サービス部門のサーバにルーティングします。また、デバイスにそのトラフィックのコピーを送信します。
3.
カスタマー サービス部門のサーバが、暗号化された情報の要求( CcDd
)を受信し、これをプレーン テキスト( fake
)に復号します。
4.
ASA FirePOWER モジュールは、アップロードされた既知の秘密キーで取得したセッション キーを使用して、暗号化トラフィックをプレーン テキスト( fake
)に復号します。
アクセス コントロール ポリシーは、復号されたトラフィックの処理を継続して、偽の申請書であることを示す情報を検出します。モジュールは侵入イベントを生成します。セッション終了後、デバイスは接続イベントを生成します。
5.
ASA FirePOWER モジュールは、暗号化および復号されたトラフィックの情報とともに、接続イベントおよび偽の申請データの侵入イベントを受信します。
例:インライン展開でのトラフィック復号
ライセンス: 機能に依存
LifeIns のビジネス要件では、契約審査部門に次の要求をしています。
- 新採用および経験の浅い契約審査担当者を監査し、MedRepo への情報要求が適切なすべての規則に準じていることを検証する
- その契約審査によるメトリック コレクション プロセスを改善する
- MedRepo が送信元と思われるすべての要求を調査し、スプーフィング行為を排除する
- 契約審査部門から MedRepo のカスタマー サービス部門へのすべての不適切な規制要求を排除する
- 経験豊富な契約審査担当者は監査しない
LifeIns の契約審査部門では、デバイスのインライン展開を計画しています。
MedRepo のネットワークからのトラフィックは、MedRepo のルータに流されます。そこから LifeIns のネットワークにトラフィックがルーティングされます。管理対象デバイスはトラフィックを受信し、許可されたトラフィックを LifeIns のルータに転送して、ASA FirePOWER モジュールにイベントを送信します。LifeIns のルータは、トラフィックを宛先ホストにルーティングします。
ASA FirePOWER モジュールでは、次の SSL インスペクションの設定を行います。
- 契約審査部門に送信された暗号化トラフィックをすべてログに記録する
- LifeIns の契約審査部門から MedRepo のカスタマー サービス部門に不正に送信された暗号化トラフィックをすべてブロックする
- MedRepo から LifeIns の契約審査部門宛て、および LifeIns の経験の浅い契約審査担当者から MedRepo のリクエスト部門宛てに送信される暗号化トラフィックをすべて復号する
- 経験豊富な契約審査担当者から送信される暗号化トラフィックは復号しない
さらに、カスタムの侵入ポリシーと以下の設定を使用して、復号トラフィックを検査するアクセス コントロールを設定します。
- 復号トラフィックでスプーフィング行為が検出された場合はそのトラフィックをブロックし、スプーフィング行為をログに記録する
- 規制に準拠しない情報を含んでいる復号トラフィックをブロックし、不適切な情報をログに記録する
- 他の暗号化および復号されたトラフィックをすべて許可する
許可された復号トラフィックは、再暗号化されて宛先ホストに転送されます。
次のシナリオでは、ユーザが情報をオンラインでリモート サーバに送信します。ユーザのブラウザは、サーバとの TCP 接続を確立してから、SSL ハンドシェイクを開始します。モジュールはこのトラフィックを受信し、ハンドシェイクと接続の詳細に応じて、システムが接続をログに記録し、トラフィックを処理します。システムがトラフィックをブロックした場合、TCP 接続も切断されます。トラフィックがブロックされない場合、クライアントとサーバが SSL ハンドシェイクを完了することで、暗号化されたセッションが確立されます。
詳細については、次のトピックを参照してください。
インライン展開で暗号化トラフィックをモニタする
ライセンス: 任意
契約審査部門で送受信されるすべての SSL 暗号化トラフィックについて、接続のログが記録されます。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( help
)を送信します。クライアントがこれを暗号化( AaBb
)し、MedRepo のリクエスト部門のサーバに暗号化トラフィックを送信します。
2.
LifeIns のルータが暗号化トラフィックを受信し、リクエスト部門のサーバにルーティングします。
3.
ASA FirePOWER モジュール はトラフィックを復号しません。
アクセス コントロール ポリシーが暗号化トラフィックの処理を続行してこれを許可し、セッション終了後に接続イベントを生成します。
4.
外部ルータがトラフィックを受信し、これをリクエスト部門のサーバにルーティングします。
5.
契約審査部門のサーバは、暗号化された情報の要求( AaBb
)を受信し、これをプレーン テキスト( help
)に復号します。
6.
ASA FirePOWER モジュールが接続イベントを受信します。
インライン展開で特定ユーザからの暗号化トラフィックを許可する
ライセンス: Control
経験豊富な契約審査担当者から送信されるすべての SSL 暗号化トラフィックは復号されずに許可され、接続のログが記録されます。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( help
)を送信します。クライアントがこれを暗号化( AaBb
)し、MedRepo のリクエスト部門のサーバに暗号化トラフィックを送信します。
2.
LifeIns のルータが暗号化トラフィックを受信し、リクエスト部門のサーバにルーティングします。
3.
ASA FirePOWER モジュールはトラフィックを復号しません。
アクセス コントロール ポリシーが暗号化トラフィックの処理を続行してこれを許可し、セッション終了後に接続イベントを生成します。
4.
外部ルータがトラフィックを受信し、これをリクエスト部門のサーバにルーティングします。
5.
リクエスト部門のサーバは、暗号化された情報の要求( AaBb
)を受信し、これをプレーン テキスト( help
)に復号します。
6.
ASA FirePOWER モジュールが接続イベントを受信します。
インライン展開で暗号化トラフィックをブロックする
ライセンス: 任意
LifeIns の契約審査部門から MedRepo のカスタマー サービス部門に不正に送信されるすべての SMTPS 電子メール トラフィックは SSL ハンドシェイク時にブロックされ、追加の検査なしで接続のログが記録されます。
次のステップが実行されます。
1.
カスタマー サービス部門のサーバは、クライアント ブラウザから SSL ハンドシェイクの確立要求を受信すると、SSL ハンドシェイクの次のステップとして、サーバ証明書( cert
)を LifeIns の契約審査担当者に送信します。
2.
MedRepo のルータが証明書を受信し、これを LifeIns の契約審査担当者にルーティングします。
3.
ASA FirePOWER モジュールは追加の検査を行わずにトラフィックをブロックし、TCP 接続を終了します。これにより、接続イベントが生成されます。
4.
内部ルータは、ブロックされたトラフィックを受信しません。
5.
契約審査担当者は、ブロックされたトラフィックを受信しません。
6.
ASA FirePOWER モジュールが接続イベントを受信します。
インライン展開で暗号化トラフィックを秘密キーで検査する
ライセンス: 任意
MedRepo から LifeIns の契約審査部門に送信されるすべての SSL 暗号化トラフィックは復号され、接続のログが記録されます。復号には、アップロードされたサーバ秘密キーを使って取得されたセッション キーが使用されます。正規のトラフィックは許可され、再暗号化されて契約審査部門に送信されます。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( stats
)を送信します。クライアントがこれを暗号化( AaBbC
)し、契約審査部門のサーバに暗号化トラフィックを送信します。
2.
外部ルータがトラフィックを受信し、これを契約審査部門のサーバにルーティングします。
3.
ASA FirePOWER モジュールは、アップロードされた既知の秘密キーで取得したセッション キーを使用して、このトラフィックをプレーン テキスト( stats
)に復号します。
アクセス コントロール ポリシーは、カスタムの侵入ポリシーを使用して復号トラフィックの処理を継続します。スプーフィング行為は検出されません。デバイスは暗号化トラフィック( AaBbC
)を転送し、セッション終了後に接続イベントを生成します。
4.
内部ルータがトラフィックを受信し、これを契約審査部門のサーバにルーティングします。
5.
契約審査部門のサーバは、暗号化された情報( AaBbC
)を受信し、これをプレーン テキスト( stats
)に復号します。
6.
ASA FirePOWER モジュールは、暗号化および復号されたトラフィックの情報とともに、接続イベントを受信します。
これに対し、スプーフィング行為の復号トラフィックはすべてドロップされ、接続およびスプーフィング行為についてのログが記録されます。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( spoof
)を送信しますが、このトラフィックは改変されており、発信元が MedRepo, LLC であるかのように偽装されています。クライアントがこれを暗号化( FfGgH
)し、契約審査部門のサーバに暗号化トラフィックを送信します。
2.
ASA FirePOWER モジュールは、アップロードされた既知の秘密キーで取得したセッション キーを使用して、このトラフィックをプレーン テキスト( spoof
)に復号します。
アクセス コントロール ポリシーは、カスタムの侵入ポリシーを使用して復号トラフィックの処理を継続し、スプーフィング行為を検出します。ASA FirePOWER モジュールはトラフィックをブロックし、侵入イベントを生成します。セッション終了後、接続イベントを生成します。
3.
内部ルータは、ブロックされたトラフィックを受信しません。
4.
契約審査部門のサーバは、ブロックされたトラフィックを受信しません。
5.
ASA FirePOWER モジュールは、暗号化および復号されたトラフィックの情報とともに、接続イベントおよびスプーフィング行為の侵入イベントを受信します。
インライン展開で特定ユーザの暗号化トラフィックを、再署名された証明書で検査する
ライセンス: Control
新任および経験の浅い契約審査担当者から MedRepo のリクエスト部門に送信されるすべての SSL 暗号化トラフィックは復号され、接続のログが記録されます。復号には、再署名されたサーバ証明書を使って取得されたセッション キーが使用されます。正規のトラフィックは許可され、再暗号化されて MedRepo に送信されます。
(注
) インライン展開においてサーバ証明書の再署名によりトラフィックを復号する場合、ASA FirePOWER モジュールは中間者(man-in-the-middle)として機能します。ここでは 2 つの SSL セッション(クライアントと ASA FirePOWER モジュール の間に 1 つ、ASA FirePOWER モジュール とサーバの間に 1 つ)が作成されます。その結果、暗号セッションの詳細はセッションごとに異なります。
次のステップが実行されます。
1.
ユーザがプレーン テキストの要求( help
)を送信します。クライアントがこれを暗号化( AaBb
)し、リクエスト部門のサーバに暗号化トラフィックを送信します。
2.
内部ルータがトラフィックを受信し、これをリクエスト部門のサーバにルーティングします。
3.
ASA FirePOWER モジュールは、再署名されたサーバ証明書と秘密キーで取得したセッション キーを使用して、このトラフィックをプレーン テキスト( help
)に復号します。
アクセス コントロール ポリシーは、カスタムの侵入ポリシーを使用して復号トラフィックの処理を継続します。不適切な要求は検出されません。モジュールはトラフィックを再暗号化( CcDd
)して、送信を許可します。セッション終了後、接続イベントを生成します。
4.
外部ルータがトラフィックを受信し、これをリクエスト部門のサーバにルーティングします。
5.
リクエスト部門のサーバは、暗号化された情報( CcDd
)を受信し、これをプレーン テキスト( help
)に復号します。
6.
ASA FirePOWER モジュールは、暗号化および復号されたトラフィックの情報とともに、接続イベントを受信します。
(注
) 再署名されたサーバ証明書で暗号化されたトラフィックにより、信頼できない証明書についての警告がクライアントのブラウザに表示されます。この問題を避けるには、組織のドメイン ルートにある信頼できる証明書ストアまたはクライアントの信頼できる証明書ストアに CA 証明書を追加します。
これに対し、規制要件を満たさない情報を含んでいる復号トラフィックは、すべてドロップされます。接続および非準拠情報についてのログが記録されます。
次のステップが実行されます。
1.
ユーザが規制要件に準拠していない要求をプレーン テキスト( regs
)で送信します。クライアントがこれを暗号化( EeFf
)し、リクエスト部門のサーバに暗号化トラフィックを送信します。
2.
内部ルータがトラフィックを受信し、これをリクエスト部門のサーバにルーティングします。
3.
ASA FirePOWER モジュールは、再署名されたサーバ証明書と秘密キーで取得したセッション キーを使用して、このトラフィックをプレーン テキスト( regs
)に復号します。
アクセス コントロール ポリシーは、カスタムの侵入ポリシーを使用して復号トラフィックの処理を継続し、不適切な要求を検出します。モジュールはトラフィックをブロックし、侵入イベントを生成します。セッション終了後、接続イベントを生成します。
4.
外部ルータは、ブロックされたトラフィックを受信しません。
5.
リクエスト部門のサーバは、ブロックされたトラフィックを受信しません。
6.
ASA FirePOWER モジュールは、暗号化および復号されたトラフィックの情報とともに、接続イベントおよび不適切な要求の侵入イベントを受信します。