Table of Contents
SaaSアプリケーションセキュリティのためのファイアウォールルールの理解
ファイアウォールルールは、SaaSアプリケーションに対する防御の第一線であり、事前確立されたセキュリティポリシーに基づいてトラフィックを調節します。マルチテナントクラウド環境では、これらのルールは従来のオンプレミス設定よりもよりnuancedでなければなりません。 それらは、不正なアクセスを防ぎ、DDoS攻撃を緩和し、悪意のあるペイロードをブロックし、SOC 2、HIPAA、またはGDPRのようなフレームワークにコンプライアンスを強化します。 共有責任モデルは、SaaSプロバイダがファイアウォールとネットワークを分離する際のセキュリティ対策を管理します。
SaaSファイアウォールアーキテクチャの主要コンポーネント
効果的なファイアウォールの展開には、仮想プライベートクラウド(VPC)セキュリティグループ、ネットワーク ACL、ホストベースのファイアウォール、および管理された WAF が含まれます。セキュリティグループは、インスタンスレベルでの仮想ファイアウォールとして機能し、IP アドレス、ポート、およびプロトコルに基づいてインバウンドおよびアウトバウンドルールを定義することができます。ネットワーク ACLs は、サブネットレベルでステートレスなフィルタリングを提供します。SaaS アプリケーションの場合、SaaS アプリケーションでは、トラフィックをフィルタリングする際のトラフィックを、各々のファイアウォールに統合するネットワーク (CDN) を使用して、各ファイアウォールが、各ネットワーク ファイアウォール またはネットワーク エリアにリーダリングする機能を使用できます。
SaaSのファイアウォール規則を実装するための包括的なステップ
1. 重要な資産とトラフィックフローを特定する
SaaS アプリケーションスタック全体をマッピングし始めます。API エンドポイント、データベース、キャッシュレイヤー、バックグラウンドジョブキュー、およびサードパーティの統合。データ感度(PII、財務、健康記録)を分類し、インターネットからアクセスできるサービスを特定し、内部のみである必要があります。ユーザー間で期待される通信パス、ロードバランサ、アプリケーションサーバー、データベースを生成するトラフィックフローを作成します。たとえば、企業向けゲートウェイ、またはリモートアクセスを制限する API は、クライアントのトラフィックを制限する必要があります。
トラフィック分析のためのツール
AWS VPC Flow Logs、Azure Network Watcher、Google Cloud VPC Flow Logsなどのクラウドプロバイダーツールを使用して、ベースラインのトラフィックパターンを確立します。 ZeekやSuricataなどのオープンソースツールは、ネットワークトラフィックを分析するのに役立ちます。 このベースラインは、異常をブロックしながら、通常のトラフィックを可能にするルールを作成するのに役立ちます。
2. セキュリティポリシーの定義
ファイアウォールルールは、明確なセキュリティポリシーから派生しなければなりません。ゼロトラストモデルを採用してください。デフォルトでは、すべてのトラフィックを否定し、明示的に必要な範囲のみを許可します。異なるゾーンのポリシーを定義します。
- [] パブリック ファーシング ティア[: HTTPS を任意のソースから許可します。, しかし、速度制限とジオブロックを検討. 他のすべてのポートをブロック.
- []アプリケーションティア]:特定のポート(例えば、8080、3000)で公共の層からのみトラフィックを許可します。 直接インターネットアクセス。
- []データティア]:データベースポート(例えば、3306、5432)のアプリケーションティアからのみトラフィックを許可します。インターネットアクセスはありません。
- []管理インタフェース[]:SSH、RDP、および管理者ダッシュボードをIPの小さなセットに制限します(VPNを組み込む)。
ポリシーは、PCI DSS のコンプライアンス要件にも対処する必要があります。カードホルダーのデータ環境へのアクセスを制限する必要があります。HIPAA では、PHI が非保護プロトコルに露出されていないことを確認してください。ドキュメントポリシー例外は、四半期ごとに検討します。
3.ファイアウォールルールの設定
セキュリティグループ、ネットワーク ACL、WAF ルールの組み合わせでポリシーを実行します。クラウド環境で実行される SaaS アプリケーションの共通構成は次のとおりです。
- []インターネットからロードバランサまたはCDNへのHTTPS(TCP 443)[)のみを割り当てます。 HTTPをHTTPSにリダイレクトします。
- [ SSHアクセスを制限します。 (TCP 22) は、企業VPN IP範囲からのみアクセス可能です。 アプリケーションインスタンスに直接SSHを露出しないでください。
- []脅威インテリジェンスフィード(AbuseIPDB、AlienVault OTX)を使用して、既知の悪意のあるIP[をブロックします。 ファイアウォールAPIを介して更新を自動化します。
- ]WAFの増幅率制限]は、バイトフォース攻撃やDDoSを防ぐことができます。例えば、ログインエンドポイントで1分あたりの100リクエスト、パブリックページごとに1000リクエストを割り当てます。
- [] ユーザベースが地域である場合、ジオロケーションルール[を設定]。 操作しない国からのトラフィックをブロックします。
- [] ディープパケット検査(DPI)[をNGFWsで使用して、SSLトラフィックを検査し、マルウェアやコマンドと制御コールバックを検出します。
- []]のみ、必要なアウトバウンドポート[: 443、DNS、NTP用の123。 デフォルトで他のすべてのアウトバウンドトラフィックをブロックし、ホワイトリストに必要なサービス(例えば、リモートデータベース、監視エンドポイント)。
WAFルールSaaSの一例
ネットワークルールを超えて、WAF を HTTP リクエストを検査するように設定します。例えば、SQL 注射パターン、クロスサイトスクリプト、または異常なユーザエージェント文字列でリクエストをブロックするルールを作成します。OWASP ModSecurity Core Rule Set をベースラインとして使用してください。また、正のセキュリティモデルを実装します。ホワイトリストは HTTP メソッド (GET、POST、PUT、DELETE)、期待されるコンテンツタイプ、および URI パスを許可しました。
4. ファイアウォール規則のテストと検証
生産に展開する前に、生産トラフィックをミラーリングするステージング環境でルールをテストします。 Nmap、OWASP ZAP、またはバープスイートなどのペネトレーションテストツールを使用して、未知のポートが閉鎖されていることを確認し、WAFルールは攻撃ペイロードをブロックします。 正当なユーザーがブロックされていないことを確認するために、さまざまなIP範囲から接続テストを実行します。 テスト中のモニターログは偽陽性をキャッチします。 新しいルールを展開するための「変更ウィンドウ」を確立し、ロールバックの問題がある場合は、計画を立ててください。
ファイアウォールルール管理のベストプラクティス
定期的なルール監査とレビュー
ファイアウォールルールは、期限を過ぎて蓄積する傾向があります。, 除外または過度に許容するルールがセキュリティギャップを作成します。. 四半期ごとに監査をスケジュールし、各規則の必要、使用状況、および現在のアーキテクチャとのアライメントを見直します。 未使用ルールを削除, 特にあまりにも広いルールを許可します (例えば, 0.0.0.0/0 非HTTPSポート). フラグのルールに自動化ツールを使用して、30日間でトラフィックに一致していないルールを固定します。.
イースト・プリビレッジおよび区分の実装
あらゆるレイヤーで少なくとも特権の原則を適用します。 Microservices は、厳格なセキュリティグループルールで内部のサブネット上で通信する必要があります。 相互環境へのアクセスを防止するために、dev、ステージング、および生産環境の別々のセキュリティグループを使用します。 外部アクセスのためのプライベートサブネットとNATゲートウェイとネットワークのセグメンテーションを実行します。
ルールのデプロイメントをコードとしてインフラで自動化
ファイアウォールルールをTerraform、CloudFormation、Ansibleなどのツールを使用してコードとして管理します。バージョンコントロール(Git)で設定を保存します。これにより、プルリクエストによる再現性、ピアレビュー、およびデプロイ前の自動テストが保証されます。たとえば、各階層のセキュリティグループを定義するTerraformスクリプトを記述し、各ルールの目的を文書化します。オートメーションはインシデントレスポンスを高速化します。すべての環境で脅威をブロックするルールをプッシュすることもできます。
SIEM でファイアウォールログを統合
すべてのファイアウォールイベント — 許可されブロックされる — 、Splunk、ELK Stack、AWS GuardDuty などのクラウドネイティブソリューションなどの一元化された SIEM に送信されるべきです。疑わしいパターンのアラートを設定: 繰り返しブロックされた試みは、同じ IP から、予期しないポートのトラフィック、または 突然のスパイクを許容する トラフィックを 機密エンドポイントに。 アプリケーションのログに照合して、マルチステージ攻撃を検出します。 ログは、複数のステージ攻撃を検知します。 毎年 1 年間、 ログが保持されます。
モニターとチューンを継続的に
ファイアウォールルールは静的ではありません。アプリケーションと脅威の風景で進化しなければなりません。偽陽性と偽のネガティブを監視します。正当なトラフィックがブロックされている場合、ルールを調整しますが、慎重に変更を文書化します。脅威インテリジェンスフィードを使用して、新しい悪意のあるIPを動的にブロックします。ハニポットまたは詐欺技術を使用して、攻撃者を検出し、ファイアウォールルールを自動的に更新してブロックします。
障害と冗長性のための計画
ファイアウォールの設定は、可用性ゾーンと領域全体で高い可用性を発揮する必要があります。 主要なファイアウォールが失敗したときに、バックアップが同じ規則セットでキックされることを確認するために、フェイルオーバーシナリオをテストします。 AWS NetworkファイアウォールやAzureファイアウォールなどのクラウドネイティブファイアウォールでは、冗長を自動的に処理するマネージドサービスを使用します。 ファイアウォールの設定のための災害復旧計画を文書化します。
コンテンツ
SaaS アプリケーション用の堅牢なファイアウォールルールを実装することは、初期設定を超えて行く、継続的、レイヤー化された努力です。アセットとトラフィックを徹底的に特定することで、ネットワークとアプリケーションレイヤーファイアウォールの両方を構成する、および自動化と監視のルールの管理、および攻撃面を大幅に削減します。 SaaS環境は敏捷性を要求します。ファイアウォールルールは、ユーザーエクスペリエンスを破ることなく、新しい機能、スケーリングイベント、および新興脅威に適応する必要があります。 定期的な監査に投資し、SIEMAとSecarablesの統合を行い、セキュリティ対策を容易にします。