WAF(Web Application Firewall)は、不正なトラヒックや攻撃からWebアプリケーションを守るために使用され、セキュリティにおいて重要な役割を果たします。
WAFのデプロイの形式は、Network-based、Host-based、Cloud-basedの3つあります。多くの場合、WAFはリバースプロキシーとしてシステムの前段に配置され、ネットワーク上でトラヒックを監視し、攻撃と判断した通信を遮断することで、Webアプリケーションへの攻撃を未然に防ぎます。
今日のビジネスにおいて、Webアプリケーションの普及は急速に進んでおり、多くの企業にとって顧客との情報のやり取りを行うための重要なチャネルになっています。例えば、ECサイトであれば、ユーザーのログイン処理や会計処理を行うため、顧客の機密情報を扱うことになります。このようなWebアプリケーションに脆弱性が内在し、攻撃者に悪用されると、データ漏洩、システムの制御権の奪取、サービス停止など、企業や組織が大きな損害を受けることに繋がります。
WAFの基本的な動作について
WAFは、HTTPおよびHTTPSプロトコルを使用したウェブトラヒックを監視および制御するためのセキュリティサービスです。Layer 7(アプリケーション層)での通信を監視し、アプリケーションレベルの情報やコンテキストを使用してトラヒックを分析します。これにより、HTTPおよびHTTPS通信に悪意のある活動や攻撃が含まれていないかどうかを判断し、必要に応じて適切なアクションを実行します。
WAFは、プロキシ機能を使用してリクエストとレスポンスをフィルタリングし、不正なリクエストをブロックしたり、許可されたトラヒックのみをサーバーに転送したりします。また、WAFはHTTPSトラヒックを復号化します。WAFがHTTPSを復号化すると、暗号化されたデータを元のテキスト形式に戻すことができ、リクエストやレスポンスの内容を分析して、悪意のある活動や攻撃を検出することができます。
ただし、WAFがHTTPSトラヒックを復号化する場合、SSL/TLSセッションの暗号化を解除するためにSSL証明書を使用する必要があります。WAFは通常、サーバーにアタッチされた証明書を使用して、暗号化されたトラヒックを解読します。
デプロイ方法による違い
デプロイの方法としては、Network-based、Host-based、Cloud-basedの3つがあります。それぞれの特性に応じて異なる利点と用途があり、自社のニーズやインフラストラクチャに適したWAFを選択する必要があります。
Network-based
ネットワークベースのWAFは、通常、ネットワークインフラストラクチャ内に配置されます。これらのWAFは、トラヒックを監視し、アプリケーションレベルでの攻撃を検知およびブロックするために使用されます。このタイプのWAFは、データセンターやオンプレミスのネットワーク内でアプライアンス機器として利用されることが一般的です。通常、プロキシまたはリバースプロキシとして機能し、アプリケーションサーバーの前に配置されます。
- メリット:
- ネットワークレベルでのトラヒックを監視し、すべてのアプリケーションに適用できます
- ローカルネットワークにデプロイされるため、レイテンシーを最小化することができます
- デメリット:
- 専用のハードウェアまたはソフトウェア・ソリューションが必要
- ホストベースのWAFほどきめ細かな制御ができない場合がある
Host-based
ホストベースのWAFは、アプリケーションサーバー自体に直接インストールされます。これにより、アプリケーションレベルでの攻撃を検知し、防御することができます。特定のアプリケーションやサーバーに対してより細かい制御を提供し、カスタマイズされたセキュリティポリシーを実装することができます。
- メリット:
- サーバーごとに個別に構成可能で、柔軟性が高い
- 専用のハードウェア・ソリューションを必要としない
- デメリット:
- 各サーバーにWAFをインストールする必要があり、管理や運用が複雑化します
- サーバーのパフォーマンスに影響を与える可能性があり、リソース消費が高い場合があります
- サーバー単位での保護なので、ネットワークレベルの攻撃に対処できない場合があります
Cloud-based
クラウドベースのWAFは、クラウドプロバイダーが提供するサービスとして利用可能です。これらのWAFは、クラウド内のアプリケーションに対してトラヒックの監視、攻撃の検知、および防御を行います。スケーラビリティと柔軟性を提供し、クラウドネイティブなアプリケーションやマイクロサービスアーキテクチャに対応しています。
- メリット:
- クラウド上に展開されるため、即座にスケーリングや拡張が可能です
- グローバルな規模での攻撃データを活用し、新たな攻撃パターンに対応できます
- デメリット:
- カスタマイズ性が他の方式より低い傾向があり、独自のセキュリティポリシーの実装が制限される場合があります
現在の主流は、3つ目のクラウドベース(Cloud-based)のWAFです。複雑なセキュリティインフラストラクチャを自社で構築せずに、アプリケーションを保護することができます。また、クラウドベースのWAFは、スケーラビリティや柔軟性を提供し、必要に応じてリソースを拡張したり縮小したりすることができます。
一方で、ネットワークベース(Network-based)やホストベース(Host-based)のWAFも依然として使用されていますが、クラウドネイティブなアプリケーションの普及が進んでいることから、クラウドベースのWAFの需要が高まっています。
その他セキュリティ機器との違い
WAFと同様、Firewall、IPS(Intrusion Prevention System) / IDS(Intrusion Detection System)は、すべてネットワークセキュリティを強化するための重要なプロダクトですが、それぞれ異なる役割と機能を持っています。
Firewall
ファイアウォールは、ネットワークレベルでトラヒックを制御し、不正なネットワークアクセスをブロックします。通常、ネットワークのエントリーポイントや出口ポイントに配置され、特定のネットワークポートやプロトコルの使用を許可またはブロックします。ファイアウォールは、特定のIPアドレス、ポート番号、およびトランスポートプロトコルに基づいてトラヒックを制御します。主な役割は、ネットワークレベルでの不正なアクセスを防止することです。
IPS(Intrusion Prevention System) / IDS(Intrusion Detection System)
IPSおよびIDSは、不正なネットワークトラヒックを検出し、対応するセキュリティ対策を実行するためのシステムです。IDSは、ネットワーク内の不正なトラヒックや攻撃を検出して警告を発行しますが、トラヒックをブロックする機能はありません。IPSは、IDSの機能に加えて、検出された不正なトラヒックを自動的にブロックする能力を持っています。
つまり、Firewallはネットワークレベルでのトラヒックを制御し、IPS/IDSは不正なネットワークトラヒックを検出し、WAFはWebアプリケーション層での攻撃を検出およびブロックします。これらのセキュリティ機器は、組み合わせて使用することで、包括的なネットワークセキュリティを実現します。
検知システムの違い
デプロイ方法とは別に、脆弱性を検知する方法にもいくつかの種類があります。
Signature-Based(シグネチャベース)
Signature-Based WAFは、既知の攻撃パターンや脆弱性のシグネチャを使用して攻撃を検出します。シグネチャは、特定の攻撃ベクトルや攻撃のパターンに関連付けられており、WAFはこれらを監視し、一致する攻撃を検出します。このタイプのWAFは、特定の攻撃や脆弱性に対して非常に効果的ですが、新しい攻撃や変形した攻撃には対応できない場合があります。
Scoring-Based(スコアリングベース)
Scoring-Based WAFは、トラヒックやリクエストに対してスコアを割り当て、不正な活動を特定するためのポリシーを適用します。スコアは、特定のリクエストや挙動がセキュリティ上のリスクを示す程度を示します。
このタイプのWAFは、複数の異なる指標や要因を考慮してリスクを評価し、異常な挙動を検出するために使用されます。攻撃パターンのシグネチャに依存せず、より動的な挙動分析を行います。
Rule-Based(ルールベース)
Rule-Based WAFは、特定のセキュリティポリシーに基づいてトラヒックをフィルタリングするためのルールを使用します。これらのルールは、特定の攻撃パターンや挙動に基づいて作成され、これらのルールに一致するトラヒックをブロックします。
このタイプのWAFは、特定の攻撃パターンに対して非常に効果的であり、カスタマイズ可能なセキュリティポリシーを実装することができます。ただし、新しい攻撃や変化した攻撃に対応するために、定期的なルールの更新が必要です。
WAFと一口で言っても、異なるアプローチを使用して攻撃を検出および防御しています。シグネチャベースのWAFは攻撃の特定のパターンに対して効果的ですが、スコアリングベースとルールベースのWAFはより動的なアプローチを採用し、より広範囲なセキュリティリスクをカバーすることができます。
おわりに
本記事では、WAFの基本的な動作と、デプロイ方法やその他セキュリティ機器との違いを説明しました。それぞれの特徴を踏まえ、自社システムにとって最適なWAFを選択いただくための一助となれば幸いです。
次回は、WAFの必要性について改めて見ていきます。
記事一覧ページはこちらです。