SSL 復号化(SSL Forward Proxy)は、SSL の暗号化を解いてデータの中身を検査できるため、脅威防御を目的としたセキュリティ制御に大きな効果があります。ただし、問題もあります。
1つ目は、パフォーマンスです。SSL 復号化(SSL Forward Proxy)は負荷の高い処理なので、すべての通信を復号すると、パフォーマンスに影響が出る可能性があります。
2つ目は、機密情報の保護です。たとえば、クレジットカードの番号などは SSL の暗号化で通信経路上の漏洩を防いでいるのに、経路上で一度復号されていることに利用者は気付けません。場合によっては、事前の告知も検討が必要です。また、個人の趣味・嗜好や健康に関するプライバシー情報も復号されてしまいます。
そこで、一部のサイトは SSL 復号化の対象外にできます。この記事では、ホスト名で指定する「SSL 復号化例外」と、URL カテゴリで指定する「復号ポリシー」の2つの方法で、復号の対象外にするサイトを登録し、動作を確かめます。
- あらかじめ登録されている SSL 復号化例外と、その動き
- ホスト名を SSL 復号化例外に追加して、復号の対象外にする
- 復号ポリシーで、URL カテゴリ単位に復号の対象外にする
次の記事の構成をもとに設定しますので、先にお読みいただくことをおすすめします。
>> 参考記事 : SSL復号化(SSL Forward Proxy)の設定と動作確認
PAN-OS 10.0.8 で検証しています(初版は 9.0.9 で検証。9.0 と設定項目の差はほとんどありません)。端末のブラウザは Microsoft Edge です。PAN-OS 10.0 は 2022年7月16日でサポートが終了(End-of-Life)しています。画面の項目の並びや表記は、バージョンによって変わります。
SSL 復号化例外の設定
あらかじめ登録されている例外を見る
Paloalto には、SSL 復号化の対象外にするサイトが、あらかじめ登録されています。DEVICE ›› 証明書の管理 ›› SSL 復号化例外 を開くと、SSL 復号化の対象外のサイトが一覧で表示されます。
この記事の画面は、実際の画面ではなく、検証時の画面から設定する項目(見るポイント)を抜き出して描いたイメージです。バージョンによって、項目の並びや表記は変わります。
| ホスト名 | 場所 | 内容 | 復号化からの除外 |
|---|---|---|---|
| 1*.icloud.com | 事前定義済み | 2icloud: pinned-cert | ☑ |
| No. | 表示 | 意味 |
|---|---|---|
| 1 | ホスト名 | 復号の対象外にするサイトです。場所が「事前定義済み」のものは、Palo Alto Networks が登録したものです。 |
| 2 | 内容 | 復号できない理由です。pinned-cert は、アプリケーションが特定の証明書だけを信頼する(証明書のピン留め)ため、Paloalto が発行した証明書では通信できないことを示します。 |
復号されるサイト・されないサイトを比べる
たとえば、端末から Google にアクセスすると、SSL 復号化されていることがわかります。証明書の発行者が、Paloalto で作った証明書(hirotanoblog.com)になっています。
一方、SSL 復号化の対象外として登録されている icloud.com にアクセスすると、SSL 復号化されていないことがわかります。証明書の発行者は、本来の認証局(Apple Public EV Server RSA CA 2 – G1)のままです。
1発行者:hirotanoblog.com
有効期間:2021/12/27 から 2022/03/21SSL 復号化されている
2発行者:Apple Public EV Server RSA CA 2 – G1
有効期間:2021/06/16 から 2022/07/16SSL 復号化されていない
MONITOR ›› ログ ›› トラフィック のトラフィックログでも、iCloud へのアクセスは復号化されておらず(no)、Google は SSL 復号化されている(yes)ことがわかります。
| 復号化 | 送信元 | 宛先 | 宛先ポート | アプリケーション | アクション | ルール |
|---|---|---|---|---|---|---|
| 1no | 10.0.2.11 | 23.79.174.175 | 443 | icloud-base | allow | LAN-to-Internet |
| no | 10.0.2.11 | 17.248.166.83 | 443 | icloud-base | allow | LAN-to-Internet |
| ⋮ | ||||||
| 2yes | 10.0.2.11 | 172.217.175.227 | 443 | google-base | allow | LAN-to-Internet |
| yes | 10.0.2.11 | 172.217.25.98 | 443 | google-base | allow | LAN-to-Internet |
| ⋮ | ||||||
Google を SSL 復号化例外に追加する
では、Google へのアクセスを SSL 復号化の対象外にしてみます。DEVICE ›› 証明書の管理 ›› SSL 復号化例外 で「追加」をクリックし、次の画面で設定します。
| 1ホスト名 | *.google.com |
| 2内容 | |
| 3除外 | ☑ 除外 注: 復号化からエントリを除外するにはチェックします |
| No. | 項目 | 設定内容 |
|---|---|---|
| 1 | ホスト名 | 復号の対象外にするサイトです。今回は *.google.com にしました。 |
| 2 | 内容 | 任意のコメントです。今回は Google と入力しました。 |
| 3 | 除外 | チェックを入れます。 |
| 4 | OK | OK をクリックすると、一覧の最後に *.google.com(内容 Google、復号化からの除外 ☑)が登録されます。 |
動作を確かめる
コミットしたあと、端末から Google にアクセスすると、SSL 復号化されていないことがわかります。証明書の発行者が、本来の認証局(GTS CA 1C3)になっています。
1発行者:GTS CA 1C3
有効期間:2021/12/27 から 2022/03/21SSL 復号化されていない
MONITOR ›› ログ ›› トラフィック のトラフィックログでも、Google へのアクセスが復号化されていない(no)ことがわかります。
| 復号化 | 送信元 | 宛先 | 宛先ポート | アプリケーション | アクション | ルール |
|---|---|---|---|---|---|---|
| 1no | 10.0.2.11 | 216.58.220.98 | 443 | google-base | allow | LAN-to-Internet |
| no | 10.0.2.11 | 142.250.196.110 | 443 | google-base | allow | LAN-to-Internet |
| no | 10.0.2.11 | 142.250.196.132 | 443 | google-base | allow | LAN-to-Internet |
| no | 10.0.2.11 | 216.58.220.98 | 443 | google-base | allow | LAN-to-Internet |
| no | 10.0.2.11 | 216.58.220.98 | 443 | google-base | allow | LAN-to-Internet |
| no | 10.0.2.11 | 216.58.197.234 | 443 | google-base | allow | LAN-to-Internet |
Palo Alto Networks のドキュメントでは、SSL 復号化例外の一覧は、証明書のピン留めやクライアント認証など、技術的な理由で復号できないサイトのためのもの、とされています。事前定義済みの例外は、アプリケーションおよび脅威のコンテンツ更新で追加・更新されます。法律・業務・プライバシーなどの理由で復号しないサイトは、次の「復号ポリシー」で除外することが推奨されています。
URL カテゴリで除外する(復号ポリシー)
復号ポリシーを使うと、URL カテゴリ単位で SSL 復号化を除外できます。今回は、Yahoo! JAPAN へのアクセスを SSL 復号化から除外してみます。
まず、設定する前に Yahoo! JAPAN にアクセスし、SSL 復号化されていることを確かめます。証明書の発行者が、Paloalto で作った証明書(hirotanoblog.com)になっています。
1発行者:hirotanoblog.com
有効期間:2021/12/09 から 2023/01/08SSL 復号化されている
Yahoo! JAPAN が URL カテゴリのどれに分類されるかは、次のサイトで検索できます。検証時、Yahoo! JAPAN は Internet Portals(internet-portals)に分類されていました。
>> Palo Alto Networks URL filtering – Test A Site
復号ポリシーを追加する
POLICIES ›› 復号 で「追加」をクリックし、5つのタブ(全般、送信元、宛先、サービス/URL カテゴリ、オプション)を設定します。
| 1名前 | NO_SSL_Decryption_Policy |
| 2送信元ゾーン | LAN |
| 送信元アドレス | ☑ いずれか |
| 3宛先ゾーン | Internet |
| 宛先アドレス | ☑ いずれか |
| サービス | any |
| 4URL カテゴリ | ☐ いずれか ☑ internet-portals |
| 5アクション | ◉ 復号なし ○ 復号 |
| 6タイプ | SSL フォワード プロキシ |
| 7復号プロファイル | None |
| ログ設定 | ☐ 成功した SSL ハンドシェイクをログに記録 ☑ 失敗した SSL ハンドシェイクをログに記録 |
| No. | 項目 | 設定内容 |
|---|---|---|
| 1 | 名前 | 任意の名前です。今回は NO_SSL_Decryption_Policy にしました。 |
| 2 | 送信元 | 送信元ゾーンに LAN を選びます。送信元アドレスは制限しないので、「いずれか」にチェックを入れます。 |
| 3 | 宛先 | 宛先ゾーンに Internet を選びます。宛先アドレスは制限しないので、「いずれか」にチェックを入れます。 |
| 4 | URL カテゴリ | サービスは any のままにします。URL カテゴリは「追加」をクリックし、internet-portals を選びます。 |
| 5 | アクション | 「復号なし」にチェックを入れます。 |
| 6 | タイプ | SSL フォワード プロキシを選びます。 |
| 7 | 復号プロファイル | None のままにしました。 |
| 8 | OK | OK をクリックすると、復号ポリシーの一覧に NO_SSL_Decryption_Policy が追加されます。 |
ポリシーを一番上に移動する
復号ポリシーは上から順に照合され、最初に一致したルールが使われます。SSL 復号化を除外するポリシーは、復号するポリシーより先に一致させる必要があるので、一番上に移動します。追加したポリシーを選び、移動 ›› 最上部へ をクリックします。
| 名前 | タグ | 送信元ゾーン | 送信元アドレス | ユーザー | デバイス | |
|---|---|---|---|---|---|---|
| 1 | 1NO_SSL_Decryption_Policy | none | LAN | any | any | any |
| 2 | SSL_Decryption_Policy | none | LAN | any | any | any |
NO_SSL_Decryption_Policy が1番目になったことを確かめて、コミットします。
動作を確かめる
端末から Yahoo! JAPAN にアクセスすると、SSL 復号化されていないことがわかります。証明書の発行者が、本来の認証局(Cybertrust Japan SureServer CA G4)になっています。
1発行者:Cybertrust Japan SureServer CA G4
有効期間:2021/12/09 から 2023/01/08SSL 復号化されていない
機密情報の観点から、financial-services(金融サービス)や health-and-medicine(健康と医療)のカテゴリは、SSL 復号化の対象外にすることが多いです。SSL 復号化の除外を設定し、こまめに運用することで、機器の負荷を抑えながら、UTM と組み合わせてセキュリティを高められます。
現在のドキュメントでは、復号しないルールにも「復号なし」用の復号プロファイルを付けることが推奨されています(任意)。復号しない通信でも、期限切れの証明書や信頼できない発行者の証明書を使ったセッションをブロックできます。ただし、TLS 1.3 の通信では証明書の情報が暗号化されているため、このプロファイルは付けないように、とされています。
まとめ
| 方法 | 場所 | 指定のしかた | 今回の設定 |
|---|---|---|---|
| SSL 復号化例外 | DEVICE ›› 証明書の管理 ›› SSL 復号化例外 | ホスト名 | *.google.com を追加(除外 ☑) |
| 復号ポリシー | POLICIES ›› 復号 | URL カテゴリなど | internet-portals を「復号なし」にして最上部へ移動 |
| 確認 | MONITOR ›› ログ ›› トラフィック | 復号化の列 | 除外したサイトは no |
更新履歴
- 2020/11/4 初版(バージョン 9.0.9 を使用)
- 2022/1/23 バージョン 10.0.8 用に更新
- 画面の更新(9.0.9 → 10.0.8)※ 9.0 と設定項目の差はほとんどありません
- 端末のブラウザを IE から Edge へ変更
コメント