HTTPS通信の解析【平成29年度 春期 情報処理安全確保支援士試験 午後2 問1 設問2】
平成29年度 春期 情報処理安全確保支援士試験 午後2 問1 設問2
(略)
被疑PCの通信について、観測の結果は次のとおりであった。
(ⅰ)解析用認証サーバに、認証を要求する。
(ⅱ)解析用プロキシサーバを経由して被疑サーバにHTTPS通信を行おうとする。
(ⅲ)被害サーバ以外を宛先としてHTTP/HTTPS通信は行わない。
(ⅳ)被疑PCと同一サブネット上のIPアドレスに対して、何らかのアクセスをする。
(略)
〔マルウェアのHTTPS通信の解析〕
マルウェアのおおよその動きが判明したので、被害の有無を確認するために、被疑サーバにアクセスしている内容を確認すべく、M君は詳細解析環境を図5のように変更した。また、次の三つを行った。
・解析作業による被疑PCの状態変化を考慮し、被疑PCの状態を保存するために、被疑PCのHDDの複製を作成した。
・解析作業による情報漏えいを防ぐために、被疑PC内のファイルのうち、機密情報が含まれているファイルの内容をランダムデータに置き換えた。
・マルウェアがHTTPS通信を行う際、サーバ証明書の検証を行っている可能性を考慮し、検証が成功するよう、②サーバ証明書を発行し、図5の環境に、サーバ証明書と、それに対応する秘密鍵を組み込んだ。
②について、発行する証明書において、サブジェクトのコモンネームは、どのサーバの何を組み込むべきか。:被疑サーバのFQDN
マルウェアの解析について問題文で実施している内容を整理すると、まず、図4の詳細解析環境で、被疑PCが被疑サーバに見立てた解析用WebサーバにHTTPS通信を行っていることが分かりました。
そこで、被疑サーバにアクセスしている内容を確認するため、詳細解析環境を変更して図5の環境としています。実際に被疑PCからインターネット経由で被疑サーバにアクセスする通信内容を、パケットキャプチャ装置で取り込み解析するための構成です。
ここで、被疑PCから被疑サーバへはHTTPS通信を行うため、通信内容は暗号化されています。そこで、中継サーバ1で暗号データを一旦復号してパケットキャプチャ装置に取り込み、中継サーバ2で再度暗号化して被疑サーバに中継するように考えた構成であることが読み取れます。
さて、HTTPS通信においては、暗号化で用いるサーバ証明書を用いて、Webサーバの身元を検証することが可能です。HTTPS通信を開始する際に、Webブラウザ上で、Webサーバのサーバ証明書をその発行元の認証局の情報と照会することで検証します。
設問の「証明書において、サブジェクトのコモンネーム」とは、サーバ証明書の登録情報の一つで、そのサーバ証明書が有効なサーバのドメイン名のことです。例えば、URLが「https://www.xxx.com/index.html」であれば、「www.xxx.com」がコモンネームとしてサーバ証明書に登録されます。
また、コモンネームはホスト名(上記の場合、「www」)を含む、省略のないドメイン名であるFQDN(完全修飾ドメイン名)で登録されます。
Webサイトにアクセスする際に、FQDNがサーバ証明書に登録されたコモンネームと比較し、合っているか確認されます。
したがって、被疑PCが被疑サーバにアクセスする際のURLで指定する被疑サーバのFQDNをサーバ証明書のコモンネームに組み込む必要があります。
②について、発行した証明書と対応する秘密鍵を組み込むべきサーバの名称は?:中継サーバ1
上記のとおり、被疑PCと被疑サーバのHTTPS通信を、中継サーバ1で一旦復号します。復号するにはサーバ証明書に対応する秘密鍵が必要になるため、中継サーバ1に秘密鍵を組み込むことになります。
図5の解析環境を正常に動作させるためには、図5中の解析用プロキシサーバ上で特別な設定を行う必要がある。その設定内容は?:被疑サーバへのHTTPS接続要求を、中継サーバ1に到達するようにする。
被疑PCから被疑サーバへ通信するのに、特に何もしなければ、解析用プロキシサーバでは被疑PCから受信したパケットの宛先である被疑サーバへ通信を中継します。
上記のとおり、被疑PCと被疑サーバのHTTPS通信を中継サーバ1で一旦復号させるためには、解析用プロキシサーバにおいて、通信の宛先を中継サーバ1に変更する必要があります。
図5の環境で被疑PCがHTTPS通信を開始した場合の動作は、図6のとおりである。
M君は、図5の環境で1〜2時間ほど被疑PCを稼働させることにした。パケットデータの収集を待つ間、デバッガを用いた解析を行うことにした。
【出典:情報処理安全確保支援士試験 平成29年度春期午後2問1(一部、加工あり)】