ファイアウォール インサイトの概要

ファイアウォール インサイトを使用すると、ファイアウォール ルールについての理解を深めながら、安全に最適化できます。ファイアウォール ルールの使用状況に関するデータを使用して、構成の誤りを確認し、より厳格なルールを特定できます。また、機械学習を使用して今後のファイアウォール ルールの使用量を予測するため、制限が緩すぎるルールを削除するか、厳格なルールに変更できます。

ファイアウォール インサイトは、Cloud Monitoring の指標と Recommender の分析情報を使用します。これらのプロダクトの背景情報については、次のドキュメントをご覧ください。

利点

ファイアウォール インサイトは、ファイアウォール ルールについて適切な判断を下すことができる指標と分析情報を生成します。

ファイアウォール インサイトの指標を使用して、次のタスクを実行できます。

  • ファイアウォール ルールが意図したとおりに使用されていることを確認する。
  • 指定した期間中、ファイアウォール ルールが目的の接続を許可またはブロックしていることを確認する。
  • ファイアウォール ルールが原因で間違ってドロップされる接続をリアルタイムでデバッグする。
  • ファイアウォールへのヒット数の大幅な変更に関するアラートを受け取るなどして、ネットワークへの悪意のある試みを検出する。

分析情報によって、次のタスクを実行できます。

  • IPv4 または IPv6 の IP アドレス範囲を含むファイアウォール ルールのファイアウォールの構成ミスを特定する。
  • 制限が緩すぎる allow ルールを特定し、将来の使用状況を予測して、ファイアウォール ルールの最適化とセキュリティ境界の強化を行う。
  • カスタム サイクルをスケジュールして、シャドウルールの分析情報を更新する。

指標

ファイアウォール インサイトの指標により、ファイアウォール ルールの使用状況を分析できます。これらの指標は、Cloud Monitoring と Google Cloud Console の両方で利用できます。

指標はファイアウォール ルール ロギングから取得されます。これらは、ファイアウォール ルール ロギングが有効になっているルールでのみ使用できます。また、ファイアウォール ルール ロギングが有効になっている間にのみ正確な値となります。また、ファイアウォール指標は、ファイアウォール ルール ロギングの仕様に適合するトラフィックに対してのみ生成されます。たとえば、データは TCP と UDP のトラフィックについてのみログに記録され、指標が生成されます。条件の一覧については、ファイアウォール ルール ロギングの概要の仕様をご覧ください。

ファイアウォール ヒット数の指標

firewall_hit_count 指標は、ファイアウォール ルールでトラフィックが許可または拒否された回数をトラッキングします。

Cloud Monitoring は、TCP または UDP トラフィックでルールがヒットした場合にのみ、ファイアウォール ルールごとに firewall_hit_count 指標のデータを保存します。つまり、Cloud Monitoring は、ヒットしないルールのデータを保存しません。

この指標から得られるデータは、コンソールの次のページでも確認できます。

これらのページのデータは、Cloud Monitoring に保存されている firewall_hit_count 指標データと同一ではありません。たとえば、Cloud Monitoring ではヒットしないルールを明示的に識別しませんが、コンソールでは、特定の条件を満たすルールのヒットカウントが 0 になります。つまり、ファイアウォール ルール ロギングが有効になっていて、Cloud Monitoring がルールのヒットを記録しなかった場合、コンソールにはヒット数が 0 と表示されます。この状態は、TCP、UDP、ICMP などのトラフィックを許可または拒否するように構成されているルールで発生します。

この動作は、ヒットのない許可ルールの分析情報とは異なります。この分析情報でヒットのないルールが特定されると、TCP または UDP 以外のトラフィックを許可するように構成されたファイアウォール ルールは除外されます。こうしたルールは、TCP や UDP のトラフィックも許可している場合でも当てはまります。

ファイアウォールが最後に使用した指標

トラフィックを許可または拒否するために特定のファイアウォール ルールが最後に使用された時間を確認するには、firewall_last_used_timestamp 指標を表示します。これらの指標を表示すると、最近使用されていないファイアウォール ルールを見つけることができます。

この指標は、過去 24 か月の合計ヒット数、またはロギングが有効になっていた期間の合計ヒット数のうち少ない方を取得します。この期間は、Cloud Logging の保持期間によって決定されます。最後のヒットが過去 24 か月より前に発生した場合は、last hit timeN/A (not applicable) として表示されます。

分析情報

分析情報では、ファイアウォール ルールの構成とファイアウォール ルールの使用状況に関する分析結果を確認できます。google.compute.firewall.Insight の分析情報タイプを使用します。

分析情報のカテゴリと状態

このセクションでは、ファイアウォール インサイトのカテゴリと、分析情報のステータスについて説明します。

分析情報のカテゴリ

ファイアウォール インサイトは、2 つの一般的なカテゴリに分類されます。次の表で、これらのカテゴリについて説明します。

カテゴリ 説明 分析情報
構成ベース これらの分析情報は、ファイアウォール ルールの構成方法のデータに基づいて生成されます。 シャドウルール
ログベース これらの分析情報は、ファイアウォール ルールの使用状況に関するロギングと、ルールの構成方法に基づいて生成されます。
  • 制限が過度に緩いルール
    • ヒットなしの Allow ルール
    • 未使用の属性を含む Allow ルール
    • 制限が過度に緩い IP アドレスまたはポート範囲を含む Allow ルール
  • ヒットが含まれる Deny ルール

分析情報の状態

分析情報は次のいずれかの状態になります。また、次の表で説明するように変更できます。

状態 説明
ACTIVE インサイトはアクティブです。Google は、最新の情報に基づいて、ACTIVE インサイトのコンテンツを継続的に更新します。
DISMISSED

インサイトが拒否され、アクティブなインサイト リストに表示されなくなります。DISMISSED の状態は、[拒否の履歴] ページで ACTIVE に復元できます。

詳細については、分析情報を「閉じる」としてマークをご覧ください。

シャドウルール

ファイアウォール インサイトはファイアウォール ルールを分析して、他のルールによって隠されているファイアウォール ルールを検出します。シャドウルールとは、IP アドレスやポート範囲など、関連するすべての属性が、より高いまたは等しい優先度を持つ 1 つ以上のルールの属性と重複するファイアウォール ルールのことです。これはシャドーイング ルールと呼ばれます。

ファイアウォール インサイトは、可能性のあるシャドウルールをすべて識別するわけではありません。特に、ファイアウォール ルールのタグが他のファイアウォール ルールの複数のタグによってシャドーイングされることは識別しません。

Recommender フレームワークでは、各分析情報のサブタイプに重大度があります。シャドウルールの分析情報の場合、重大度レベルは medium です。詳細については、Recommender のドキュメントの重大度をご覧ください。

シャドウルールの例

この例では、一部のシャドウルールとシャドーイング ルールに重複するソース IP 範囲フィルタがあり、他のルールには異なるルール優先度があります。

次の表に、A から E までのファイアウォール ルールを示します。他のシャドウルールのシナリオについては、表に続くセクションをご覧ください。

タイプ ターゲット フィルタ プロトコルまたはポート アクション 優先度
ファイアウォール ルール A 上り(内向き) すべてに適用 10.10.0.0/16 tcp:80 許可 1,000
ファイアウォール ルール B 上り(内向き) すべてに適用 10.10.0.0/24 tcp:80 許可 1,000
ファイアウォール ルール C 上り(内向き) web 10.10.2.0/24 tcp:80
tcp:443
許可 1,000
ファイアウォール ルール D 上り(内向き) web 10.10.2.0/24 tcp:80 拒否 900
ファイアウォール ルール E 上り(内向き) web 10.10.2.0/24 tcp:443 拒否 900

例 1: ファイアウォール ルール B がファイアウォール ルール A により隠される

この例では、A と B の 2 つのファイアウォール ルールを使用します。2 つのルールは、ソース IP 範囲フィルタを除いて、ほとんど同じです。ファイアウォール ルール A の IP 範囲は 10.10.0.0/16 で、ファイアウォール ルール B のアドレス範囲は 10.10.0.0/24 です。したがって、ファイアウォール ルール B はファイアウォール ルール A により隠されます。

通常、shadowed firewall rules インサイトはファイアウォールの構成ミスを示します。たとえば、ファイアウォール ルール A の IP フィルタ設定が不必要に広すぎる場合や、ファイアウォール ルール B のフィルタ設定が過剰に制限していて、不要になる場合などです。

例 2: ファイアウォール ルール C が、ファイアウォール ルール D と E により隠される

この例では、C、D、E の 3 つのファイアウォール ルールを使用します。ファイアウォール ルール C は、HTTP ポート 80 と HTTPS ポート 443 のウェブ トラフィックの進入を許可しており、優先度は 1000 です(デフォルトの優先度)。ファイアウォール ルール D と E は、それぞれ HTTP および HTTPS Web トラフィックの進入を拒否しており、両方の優先度は 900(高優先度)です。したがって、ファイアウォール ルール C は、ファイアウォール ルール D と E の組み合わせにより隠されます。

制限が過度に緩いルール

ファイアウォール インサイトは、ファイアウォール ルールが過度に緩いかどうか包括的な分析結果を提供します。この分析には次の情報が含まれています。

機械学習の予測で説明しているように、これらの分析情報の一部には、ルールまたは属性が将来ヒットする可能性があるかどうかに関する予測が含まれます。

これらの分析情報で提供されるデータは、ファイアウォール ルール ロギングに基づいています。このデータは、観察期間全体でファイアウォール ルール ロギングが継続的に有効になっている場合にのみ正確な情報となります。それ以外の場合は、分析情報カテゴリの実際のルールの数が、実際よりも多くなる可能性があります。

制限が緩すぎるルールの分析情報では、TCP と UDP のトラフィックが評価されます。他のタイプのトラフィックは分析されません。詳しくは、各分析情報の説明をご覧ください。

Recommender フレームワークでは、各分析情報のサブタイプに重大度があります。制限が緩すぎるルールの分析情報の場合、重大度レベルは high です。詳細については、Recommender のドキュメントの重大度をご覧ください。

ヒットのない許可ルール

この分析情報は、観察期間中にヒットがなかった allow ルールを特定します。

この分析情報では、識別されたルールごとに、ルールが今後ヒットする確率についても報告されます。この予測は、ルールとそれに類似した同じ組織内のルールの過去のトラフィック パターンを考慮した機械学習(ML)分析によって生成されます。

予測を理解しやすくするため、識別されたルールと同じプロジェクト内の類似ルールも識別されます。これらの分析情報では、ルールのヒット数の一覧と構成の概要が表示されます。これらの詳細には、各ルールの優先度と、IP アドレスやポート範囲などの属性が含まれます。

Allow rules with no hits では、TCP トラフィックと UDP トラフィックに適用されるファイアウォール ルールが評価されます。他の種類のトラフィックを許可するファイアウォール ルールは、この分析に含まれません。

ファイアウォール インサイトが使用する予測については、機械学習の予測をご覧ください。

未使用の属性を含む許可ルール

観察期間中にヒットした allow ルールについて、IP アドレスやポート範囲など、このルールのヒットに含まれなかったすべての属性を報告します。

この分析情報では、使用されなかった属性について、今後ヒットが発生する可能性が表示されます。この予測は、ルールとそのルールに類似した同じ組織内のルールの過去のトラフィック パターンを考慮した ML 分析に基づいています。

予測を理解しやすくするため、同じプロジェクト内で類似の属性を持つ他のファイアウォール ルールの概要も表示されます。この概要には、これらのルールの属性がヒットしたかどうかに関するデータが含まれます。

Allow rules with unused attributes では、TCP トラフィックと UDP トラフィックで定義されている属性のみが評価されます。TCP と UDP 以外の種類のトラフィックを許可するルールも、この分析に含めることができます。ただし、他のタイプのトラフィックに関連する属性は分析されません。

たとえば、ルールで TCP トラフィックと ICMP トラフィックの両方を許可するとします。許可された IP アドレス範囲が使用されていないように見える場合、そのアドレス範囲は ICMP トラフィックに使用されている可能性があるため、未使用とはみなされません。ただし、未使用の TCP ポート範囲が同じルールに含まれている場合、そのルールは過度に緩いものとしてフラグが設定されます。

ファイアウォール インサイトが使用する予測については、機械学習の予測をご覧ください。

制限が過度に緩い IP アドレスまたはポート範囲を含む許可ルール

観察期間中にヒットした allow ルールの場合、この分析情報により、IP アドレスまたはポート範囲が広すぎる可能性のあるルールを特定できます。

多くの場合、ファイアウォール ルールが必要以上に広い範囲で作成されているため、この分析情報は有用です。対象範囲が広すぎると、セキュリティ リスクにつながる可能性があります。

この分析情報でルールの IP アドレスとポート範囲の実際の使用状況を確認することで、こうした問題を軽減できます。ルールの範囲が広すぎる場合は、IP アドレスとポート範囲の別の組み合わせも提案されます。これにより、観察期間中のトラフィック パターンに基づいて不要と思われる範囲を削除できます。

Allow rules with overly permissive IP address or port ranges では、TCP トラフィックと UDP トラフィックで定義されている属性のみが評価されます。TCP と UDP 以外の種類のトラフィックを許可するルールも、この分析に含めることができます。ただし、他のタイプのトラフィックに関連する属性は分析されません。

たとえば、ルールで TCP トラフィックと ICMP トラフィックの両方を許可するとします。許可された IP アドレス範囲が部分的にしか使用されていないように見える場合、IP アドレス範囲は ICMP トラフィックに使用される可能性があるため、IP アドレス範囲が過度に広いとしてフラグが設定されることはありません。ただし、同じルールの TCP ポート範囲が部分的にしか使用されていない場合、そのルールは過度に緩いものとしてフラグが設定されます。

プロジェクトに、ロードバランサのヘルスチェックや他の Google Cloud 機能のために特定の IP アドレス ブロックへのアクセスを許可するファイアウォール ルールが存在する場合があります。これらの IP アドレスはヒットしない可能性がありますが、ファイアウォール ルールから削除しないでください。これらの範囲の詳細については、Compute Engine のドキュメントをご覧ください。

機械学習の予測

前のセクションで説明したように、2 つの分析情報(ヒットなしの allow ルールと未使用の属性を含む allow ルール)では ML 予測が使用されます。

ファイアウォール インサイトは、予測を生成するために同じ組織内のすべてのファイアウォール ルールに対して ML モデルをトレーニングします。ファイアウォール インサイトは、このように一般的なパターンを学習します。たとえば、ファイアウォール インサイトは、ヒットする可能性の高い属性の組み合わせを学習します。これらの属性には、IP アドレス範囲、ポート範囲、IP プロトコルを含めることができます。分析対象のファイアウォール ルールに、過去にヒットした可能性がある一般的なパターンがいくつか存在する場合、ファイアウォール インサイトは、そのルールが今後ヒットする可能性を高く設定します。その逆も当てはまります。

予測を使用する各分析情報について、ファイアウォール インサイトは、分析情報によって特定されたルールに類似するルールの詳細を表示します。たとえば、[分析情報の詳細] パネルに、予測対象のルールに最も近い 3 つのルールの詳細が表示されます。2 つのルールの属性が重なり合うほど、類似性が高くなります。

ヒットなしの allow ルールについて、次の例で考えてみましょう。

ルール A に次の属性があるとします。

Source IP ranges: 10.0.1.0/24
Target tags: http-server
Protocol and ports: TCP:80

ルール B に次の属性があるとします。

Source IP ranges: 10.0.2.0/24
Target tags: http-server
Protocol and ports: TCP:80

この 2 つのルールは、同じターゲットタグ、プロトコル属性、ポート属性を共有しています。ソース属性だけが異なるため、これらは類似しているとみなされます。

使用されていない属性を持つ allow ルールの場合も、類似性は同様に決定されます。この分析情報の場合、構成に同じ属性が含まれていれば、ファイアウォール インサイトは類似ルールと見なします。

ヒットが含まれる拒否ルール

この分析情報では、観察期間にヒットした deny ルールの詳細を確認できます。

これらの分析情報は、ファイアウォールのパケット ドロップのシグナルとなります。これにより、パケットのドロップがセキュリティ保護によるものなのか、ネットワークの構成ミスが原因なのかを確認できます。

指標と分析情報を確認できる場所

ファイアウォール インサイトの指標と分析情報は、コンソールの次の場所で確認できます。

次のステップ