目次

WAFとは?| ウェブアプリケーションファイアウォールの説明

Webアプリケーションファイアウォール(WAF)は、悪意のあるWebトラフィックやアプリケーション層の攻撃(DDoS、SQLインジェクション、クッキー操作、クロスサイトスクリプティング(XSS)、クロスサイトフォージェリ、ファイルインクルードなど)をフィルタリング、監視、ブロックすることで、WebアプリケーションやAPIを保護するファイアウォールの一種です。

レイヤ 7 の防御として、WAF はウェブアプリケーションとインターネット間のトラフィックに焦点を当てます。ウェブアプリケーションやウェブサーバーがリクエストを受け入れる前に、悪意のあるリクエストを検出して対応する機能は、企業(およびその顧客)に不可欠なセキュリティを提供します。

 

WAF技術の出現

クラウド以前の時代には、ファイアウォールを使って内部ネットワークと外部ネットワークをセグメント化し、悪意のあるネットワークトラフィックから資産を保護することができました。しかし、従来のファイアウォールのアプローチはクラウドには理想的ではありません。多くのアプリケーションは、インターネットに接続する必要があるため、内部ネットワークで分離することができません。

ウェブアプリケーションに対する攻撃の増加から保護するための取り組みにより、1990年代後半にWAF技術が開発されました。初期のバージョンのウェブアプリケーションファイアウォールは、不正な文字の送信からアプリケーションを保護します。WAFはその後、アプリケーションとクライアントの間に位置するように進化し、「インライン」と呼ばれるようになりました。

レガシーWAFのデプロイメント
図1:レガシーWAFのデプロイメント

WAF 技術の出現と並行して、OASIS Web Application Security Technical Committee (WAS TC) の脆弱性対策は、 Open Web Application Security Project (OWASP) の Top 10 Listにまで拡大されました。数十年経った今でも、OWASP Top 10 はウェブアプリケーションセキュリティコンプライアンスの業界標準となっています。

WAFとOWASP Top 10という2つの開発により、私たちは、システムを侵害し、リソースを消費し、データを流出させようとする脅威アクターを阻止するための防御策を手に入れることができました。

ビデオネットワークファイアウォールとウェブアプリケーションファイアウォール(WAF)の違いを理解します。

 

WAF:重要なセキュリティ・コンポーネント

ウェブアプリケーションへの攻撃が情報漏えいの主な原因となっている現在、アプリケーションと API を保護することは、アプリケーションセキュリティエンジニア、セキュリティアーキテクト、および情報セキュリティ専門家にとって最重要課題となっています。アプリケーションは、しばしば、OWASP トップ 10 脆弱性を含んでリリースされるため、ウェブアプリケーションセキュリティ標準は、 ソフトウェア開発ライフサイクル(SDLC)に統合されなければなりません。

Web アプリケーションファイアウォールは、ネットワークファイアウォールでは実現できないセキュリティ層を提供することで、脆弱性の悪用を防ぐ役割を果たします。従来のネットワークファイアウォールは、インターネットからのウェブコンテンツの要求を受け入れ、それに応答する必要があるウェブフェースのアプリケーションを保護する機能を備えていません。

WAFは、アプリケーションのインターネットへの直接接続を許可しながら、ネットワークトラフィックをフィルタリングする手段を提供することで、この問題を解決します。WAFは内部と外部のネットワークリソースの間に壁を作るのではなく、スクリーンのように機能し、友好的なトラフィックは通過させますが、悪意のあるトラフィックはブロックします。

このように、WAF は、不適切に設計されたアプリやインジェクション攻撃など、一般的な ウェブアプリケーションのセキュリティリスクから保護するのに役立ちます。WAF は、ウェブアプリケーションの根本的な脆弱性や欠陥を修正するものではありませんが、これらの欠陥を悪用しようとする攻撃がアプリケーションに到達するのを防ぐことができます。WAFは、最初のプローブを阻止し、一般的な攻撃経路をブロックし、リクエストをレート制限することで、攻撃者にとって困難な状況を作り出します。

さらに、Web アプリケーションファイアウォールは、Web アプリケーションのトラフィック、攻撃の試行、および Web アプリケーションを保護するために企業が講じた措置を記録することができます。

 

脅威の状況を理解する

効果的なウェブアプリケーションファイアウォールの重要な構成要素について説明する前に、ウェブアプリケーショ ンに対する様々な種類の脅威について考えてみましょう。XSS、SQLインジェクション、ローカルファイルインクルードについてはすでに述べました。当初のアプリケーション・ファイアウォールの目的は、この種の攻撃から保護することでしたが、戦場は変化し、継続的に進化しています。

オンデマンドクラウドコンピューティングの普及に伴い、サービス拒否( DoS)攻撃やDDoS攻撃が 頻発しています。

最新の OWASPトップ10 リストには、アクセス制御とコンフィギュレーションに関連するリスクがより多く含まれています。2021年のリストでは、アクセス制御の失敗と暗号化の失敗が上位2位を占めています。セキュリティの設定ミスから時代遅れのコンポーネントまで、関連する問題も増えています。攻撃からサービスを保護するだけでなく、機密データが誤って暴露されるのを防ぐ必要があります。

 

効果的なWebアプリケーションファイアウォールの機能

Web アプリケーションファイアウォールは、Web プロトコル、特に HTTP と HTTPS を使用するネットワークトラフィックを監視およびフィルタリングすることによって、Web ベースのアプリケーションの脆弱性から保護するように設計された一連のルールまたはポリシーによって動作します。

WAFの機能は、インバウンド・トラフィックとアウトバウンド・トラフィックの保護という2つの部分に分けることができます。WAF のインバウンド保護機能は、外部からのアプリケーション・トラフィックの検査を担当します。インバウンドトラフィックからウェブアプリを保護する一環として、WAFは危険なアクティビティパターン、疑わしいペイロード、脆弱性を特定する必要があります。

ハッカーは持続的かつ革新的であるため、インバウンド攻撃の性質は変化します。WAFは、Webアプリケーションの既知の脆弱性から保護するセキュリティポリシーのプロアクティブなセットから動作する必要があります。さまざまな種類の悪意のあるトラフィックをフィルタリングするために、各セキュリティ・ポリシーは、進化する攻撃ベクトルに合わせて常に最新の状態に保つ必要があります。ウェブ・アプリケーション・ファイアウォールは、セキュリティ・ポリシーを変更するために設計されているため、特に効果的です。

アウトバウンドプロテクションとは、エンタープライズデータや顧客データの漏えいを防ぐことです。アウトバウンドデータの正確な解析は現実の世界では困難ですが、プロキシベースのインラインWAFはアウトバウンドデータを傍受し、偶発的または悪意のある手段による機密データの漏えいをマスクまたはブロックすることができます。

 

ウェブアプリケーションファイアウォールの種類

WAF を使用して Web アプリケーションを保護する場合、特定の基準に基づいて Web リクエストを許可、ブロック、または監視するルールを定義します。例えば、特定のHTTPヘッダーを含むリクエストや特定のIPアドレスからのリクエストをブロックするようにWAFルールをカスタマイズすることができます。

ブロックリストと許可リストの比較

ウェブアプリケーションファイアウォールは、その仕組みによって区別されます。ブロックリストWAFはネガティブ・セキュリティ・モデルに基づいており、一方、許可リストWAFはポジティブ・セキュリティ・モデルに従っています:

  • ブロックリスト型WAFは、特定のエンドポイントやトラフィックの種類をブロックし、それ以外を許可するように設計されています。
  • Allowlist WAFは、ブロックリストWAFとはやや逆の動作をし、デフォルトですべてのトラフィックをブロックし、明示的に承認されたトラフィックのみを通過させます。

アローリストWAFは、不適切に設定されたファイアウォールルールによって悪意のあるトラフィックが防御を回避するリスクを最小限に抑えるため、より安全であると考えられています。とはいえ、有効なトラフィックのタイプやエンドポイントをすべて予測できない状況では、許可リスト型WAFはうまく機能しません。

これら2つのWAFの長所と短所を考えると、現在多くのWAFが「許可リスト-ブロックリスト」のハイブリッド・セキュリティ・モデルで運用されていることは驚くことではありません。

ネットワークベース、ホストベース、クラウドベースのWAF

WAFは、デプロイメントモデル(ネットワークベース、ホストベース、クラウドベース)に基づいて分類することができます。

  • ネットワークベース:ネットワークベースのWAFは、ライセンスとメンテナンスが必要なハードウェアアプライアンスの形で、アプリケーションとインターネットの間に位置するネットワークインフラ(スイッチなど)上で動作します。
  • ホストベースのWAF:ホストベースの WAF は、Web アプリケーションが存在するサーバー上に配置されます。アプリケーションのOSの一部としてデプロイイメントされるため、OSレベルのフィルタリングを使用してWebアプリケーションに通過するトラフィックをフィルタリングします。
  • クラウドベースのWAF:クラウドでホストされているアプリケーションは、クラウドベースのWAFを使用できます。このWAFは、クラウドの仮想ネットワークサービスやロードバランサーと統合して、Webトラフィックをフィルタリングします。クラウドベースのWAFは、デプロイやメンテナンスに大規模なチームを必要としませんが、通常、脅威に関する完全なコンテキストを提供しません。

企業が使用する WAF デプロイメント・モデルは、その Web アプリケーションが存在する場所に依存します。例えば、クラウドベースのWAFは、アプリがクラウドにデプロイされた場合にのみ機能します。デプロイメントモデルを選択する際にメンテナンスを考慮する場合、ネットワークベースやホストベースのWAFは通常より多くのセットアップと管理が必要ですが、クラウドベースのWAFはDNSやプロキシを変更する程度で済みます。

 

WAFとその他のセキュリティツール

Web アプリケーション・ファイアウォールは、他のファイアウォールやセキュリティ・ソリューションにはない機能を提供しますが、すべてを網羅するセキュリティ・ツールとして機能するものではありません。実際、WAFはあらゆる種類の攻撃を防ぐようには作られていません。ウェブ・アプリケーション・ファイアウォールは、セキュリティの一要素に過ぎず、考えられるすべての攻撃ベクトルに対する全体的な防御を提供するために、統合されたツール群を補完するように設計されています。

WAFと従来のファイアウォールの比較

従来のファイアウォールは、内部ネットワークで動作するリソースとインターネットに直接接続するリソースを分離する境界を定義するように設計されています。WAFは、保護レイヤーを提供しながら、アプリケーションがインターネットとインターフェースすることを可能にするという点で、より微妙です。

WAFと次世代ファイアウォールの比較

次世代ファイアウォール(NGFW)は、従来のネットワークファイアウォールとWAFの優れた機能を組み合わせたアプリケーションファイアウォールの一種です。ネットワーク層のパケットを検査することで着信要求をブロックするだけでなく、NGFWにはプライベートネットワーク上の不要なトラフィックをブロックする手段を解き放つ検査機能があります。

NGFWとWAFの機能は重複していますが、主な違いはその中核となる責任モデルにあります。次世代ファイアウォールは、より多くのネットワーク・トラフィック・コンテキストをキャプチャし、ユーザー・ベースのポリシーを適用するだけでなく、アンチウイルスやアンチマルウェアなどの重要な機能を追加します。また、セキュリティポリシーにコンテキストを追加することで、NGFWは脅威インテリジェンスエンジンを組み合わせて意思決定プロセスを支援することができます。

対照的に、WAFはアプリケーション層に限定されています。XSS攻撃やDDoS攻撃などの一般的なウェブ攻撃を防ぐことに特化しており、インターネットに面したアプリケーションやクラウドネイティブアプリケーションのセキュリティ確保に不可欠です。

しかし、この2つの技術の包括的な違いは、プロキシという点で最もよく理解できます。サーバーで使用されるWAFは、ほとんどの場合リバースプロキシです。NGFWはクライアントによって使用され、クライアントを保護するように設計されているため、ほとんどの場合フォワードプロキシとなります。

WAFと侵入防御システムの比較

WAFと同様に、侵入防御システム(IPS)は、悪意のあるネットワークトラフィックを識別し、ブロックするように設計されています。しかしIPSは、あらゆるプロトコルのあらゆる種類のトラフィックをフィルタリングするように設計されています。

とはいえ、WAFは通常、ウェブ・プロトコル上で動作する複雑な攻撃を検出する能力において、より洗練されています。IPS ソリューションは通常、汎用的な攻撃シグネチャ(特定の種類のパケットまたはトラフィックパターン)に依存しており、どのトラフィックが悪意のあるトラフィックであるかを判断するためにコンテキストデータ(過去のトラフィックパターンまたはユーザーの行動パターン)を広範に利用することはありません。

 

Webアプリケーションファイアウォールのデプロイメント方法

WAF は、アプリケーションのデプロイ先、必要なサービス、管理方法、必要なアーキテクチャの柔軟性とパフォーマンスのレベルに応じて、いくつかの方法でデプロイできます。

検討すべき質問

  • WAFを自社で管理しますか、それともアウトソーシングしますか。
  • クラウドベースのモデルが良いのか、それともWAFをオンプレミスに置きたいのか?

どのようにデプロイしたいかによって、どのWAFが適しているかが決まります。その後、WAFをWebアプリのネットワークスタックに統合する方法を決定する必要があります。3つのアプローチから選ぶことができます:

  • 透明な橋:透過ブリッジモードでは、WAF は保護する Web アプリケーションと同じポートにバインドされます。ウェブアプリとそれに接続するクライアントの両方から見ると、ファイアウォールは存在しないように見えますが、ポートバインディングは舞台裏で機能し、WAFがトラフィックを傍受し、通過させるかどうかを決定します。
  • 透過的なリバースプロキシ:透過的なリバースプロキシのアプローチでは、ウェブアプリケーションはファイアウォールの存在を認識しますが、クライアントは認識しません。WAF は外部のエンドポイントからはアプリケーションとして見えるポートやアドレスのトラフィックを受け付けますが、アプリケーション自体は別の内部ポートやアドレスで動作します。WAFはトラフィックを検査し、それらのポートやアドレスに転送するかどうかを決定します。
  • リバースプロキシ:リバースプロキシとは、クライアントがプロキシサービスを実行するために使用されるポートまたはアドレスで動作するWAFにリクエストを送信し、アプリケーションにリクエストを転送することを意味します。リバースプロキシは透過的なリバースプロキシと似ていますが、主な違いは、単純なリバースプロキシが設置されているときに、クライアントがプロキシサーバの存在を認識することです。

トランスペアレント・ブリッジ・モデルは、ネットワーク・バインディング、アドレス、ポート設定が最も少ない要件で済むため、実装が最も簡単です。しかし、ネットワークレベルでウェブアプリケーションをWAFから分離することはできません。トランスペアレント・リバース・プロキシとリバース・プロキシは、アプリケーションに到達する前にトラフィックを検査し、より高い分離性を提供します。

WAFをデプロイするステップの次は、WAFをどこでホスティングするかの選択です。主なオプションは以下の通りです:

  • クラウドベースのフルマネージドサービス:WAFはフルマネージドサービスとしてクラウド上で稼働します。ユーザーは電源を入れて設定するだけで、必要なネットワーク・ポリシーを設定する以外の管理は必要ありません。
  • クラウドベースで自己管理:WAFはクラウドでホストされますが、デプロイ、設定、管理はユーザーの責任です。
  • クラウドベースで自動プロビジョニング:WAFはクラウドでホストされています。ユーザーが設定・管理する必要がありますが、クラウド環境に適合するように設計されたネットワークルールが自動的に入力されます。このアプローチは、フルマネージドWAFオプションとセルフマネージドWAFオプションの中間を提供します。
  • オンプレミスの高度なWAF:WAFはオンプレミスのインフラでホストされています。オンプレミスではセットアップに手間がかかり、企業はWAF用のホストインフラを用意しなければなりません。その代償として、WAFの設定方法をより細かく制御できるようになります。
  • エージェントまたはエージェントレスホストベースの WAF:WAFはホストサーバーまたはアプリケーションコンテナ上で実行されます。ユーザーは、Web アプリケーションファイアウォールサービスをホストするために、各サーバーにエージェントをデプロイする必要があるかもしれませんが、ファイアウォールルールが適用されるエージェントレスアプローチも利用できます。

 

ウェブアプリケーション・セキュリティ・ソリューションを選択する際の留意点

ウェブアプリケーションファイアウォールのオプションを評価する際に考慮すべき要素:

  • どのデプロイメント・モデルに対応していますか?最適なWAFは、オンプレミスでもクラウドでも運用できるように、さまざまなデプロイメントオプションをサポートしています。
  • WAFはどのようにトラフィックをフィルタリングするのですか?WAFがトラフィックを評価する際に考慮できるコンテキストが多ければ多いほど、一般的なファイアウォールを回避しがちな高度な攻撃を検知する能力が高まります。
  • WAFはどの程度効率的である必要がありますか?すべてのWAFは、アプリケーションの実行に必要なインフラリソースを奪わないように、効率的に動作する必要があります。

ウェブアプリケーションセキュリティソリューションを選択する際には、上記の検討事項に加え、スケーラビリティを考慮することが賢明です。今後、WAFはどのように拡大していく必要があるのでしょうか?ハイブリッドやマルチクラウドのアーキテクチャで動作するアプリケーションをサポートする必要がありますか? APIをサポートする必要がありますか?APIがアプリからユーザーへの通信の中心的存在になるにつれ、APIだけでなくウェブアプリケーションを保護する能力も重要になります。

 

ウェブアプリとAPIセキュリティ(WAAS)の未来

クラウドネイティブアーキテクチャで構築された最新のウェブアプリケーションは、かつてないほど複雑になっています。アジャイル開発プロセス、継続的インテグレーションとデプロイメント、進化する環境は、従来のWAFに新たな課題をもたらします。 ウェブアプリケーションとAPI保護の 次世代は、ウェブアプリケーションとAPIセキュリティ(WAAS)です。

WAASには、ウェブアプリケーションの自動検出のような従来のWAF機能が含まれています。また、さらに一歩進んで、環境内のすべてのAPIエンドポイントを検出します。このアプローチにより、 Web アプリケーションや API を保護 したり、環境内の既存のアプリケーションを更新したりするためのセキュリティ・ルールの構成が簡素化されます。

モノリシック・アプリケーションから最新のクラウド・ネイティブ・アプリケーションへの移行
図2:モノリシック・アプリケーションから最新のクラウド・ネイティブ・アプリケーションへの移行

ウェブに面したアプリケーションと API を自動的に検出して保護することで、アプリケーションが設定ミスしたり、保護されずにデプロイされたりするリスクも低減できます。

効果的なWAASソリューションは、SwaggerやOpenAPIなどの様々なフォーマットからAPI仕様を受け入れ、これらの定義を使用してリクエストをスクリーニングし、仕様への適合性を判断します。エンドポイントによっては、保護レベルが低くてもアクセスできる場合もありますが、機密データを扱うエンドポイントでは、最高レベルの保護と精査が必要になります。さらに、WAASソリューションには、DoS保護が最初から含まれています。

アプリケーション・セキュリティ・ソリューションを選択する際に考慮すべきその他の機能には、発信地に基づいてリクエストを選別する機能があります。また、各アプリケーションやAPIに適用される防御措置のレベルをカスタムルールでカスタマイズする機能も必要です。また、重大度と潜在的なリスクの組み合わせに基づいて、各アプリケーションからの警告とエラー報告のレベルを設定することもできます。

 

将来に向けたアプリの保護

クラウド・コンピューティングが産業界でその地位を固めるにつれ、クラウドネイティブ・アプリケーションは重要性と複雑性を増しながら増殖を続けています。セキュリティは、ダイナミックな脅威の状況と同じように迅速に進化する能力を持たなければなりません。

情報セキュリティの専門家( DevOps エンジニア、セキュリティアーキテクト、アプリケーションセキュリティチーム)は、現代の企業を防御できる包括的なセキュリティ戦略を構築するために協力し、互いの経験を活用する必要があります。

 

WAF FAQ

ウェブベースおよびネットワークベースのソリューションは、さまざまな種類のトラフィックから企業を保護します。ネットワークファイアウォールはネットワーク層の攻撃を防御し、WAFはウェブサイトの攻撃を防ぎます。この2つのセキュリティ・ソリューションが連携することで、保護範囲が広がります。
Webアプリケーションファイアウォール(WAF)は、SQLインジェクション、クロスサイトスクリプティング(XSS)、分散型サービス拒否(DDoS)などの一般的な攻撃からWebアプリケーションを保護するセキュリティソリューションです。WAFは、クライアントとWebアプリケーション間のHTTP/HTTPSトラフィックを監視およびフィルタリングすることで、組織はカスタムセキュリティルールを実装し、悪意のあるリクエストをブロックすることができます。対照的に、アプリケーション・プログラミング・インターフェース(API)は、ソフトウェア・アプリケーションが互いに通信するためのルールとプロトコルのセットです。APIは、異なるサービス間のデータや機能の交換を容易にし、開発者が既存のコンポーネントを活用して機能豊富なアプリケーションを作成できるようにします。
API WAFは、APIをセキュリティ上の脅威や脆弱性から保護するために設計された、専用のWebアプリケーションファイアウォールです。RESTfulまたはGraphQLプロトコルの使用、JSONまたはXMLデータ形式、認証トークンなど、API通信のユニークな側面に焦点を当てることで、従来のWAF機能を拡張します。API WAF は、API トラフィックを監視してフィルタリングし、セキュリティルールとポリシーを適用して、API エンドポイントへの不正アクセス、データ漏洩、不正使用を防止します。API WAFは、悪意のあるリクエストを検出してブロックすることで、APIとAPIが処理するデータの完全性、機密性、可用性の維持を支援します。
WebアプリケーションおよびAPI保護(WAAP)は、WAFとAPIセキュリティ機能を包含する包括的なセキュリティソリューションです。WAFは、一般的な攻撃からWebアプリケーションを保護することに主眼を置いていますが、WAAPはこの保護を、最新のアプリケーションアーキテクチャでますます重要となっているAPIにまで拡張します。

WAAPソリューションは、従来のWAFの機能に、レート制限、認証、アクセス制御などの高度なAPIセキュリティ機能を組み合わせたものです。WAAPソリューションは、WebアプリケーションとAPIのセキュリティに対する総合的なアプローチを提供することで、組織がより効果的かつ効率的にデジタル資産を保護し、アプリケーションとサービスのセキュリティとコンプライアンスを確保することを可能にします。
ウェブAPIは多くのアプリケーションに不可欠であり、シームレスなデータ交換と機能共有を可能にします。例えば、FacebookやTwitterのようなソーシャルメディアプラットフォームは、開発者がソーシャル機能をアプリケーションに統合するためのAPIを提供しています。StripeやPayPalのような決済代行サービスは、安全なオンライン取引のためのAPIを提供しています。OpenWeatherMapやWeatherAPIのような気象アプリケーションは、APIを通じてリアルタイムの気象データを配信します。WordPressやDrupalなどのコンテンツ管理システムは、コンテンツの検索と管理のためのAPIを公開しています。さらに、Amazon Web Services (AWS)、Microsoft Azure、Google Cloud Platform (GCP)などのクラウドサービスプロバイダーは、それぞれのサービスとプログラムでやり取りするための広範なAPIを提供しています。
Web API を保護 するには、複数の保護レイヤーが必要です。まず、OAuth 2.0やJWTトークンのような強力な認証・認可メカニズムを実装し、認可されたクライアントやユーザーのみがAPIにアクセスできるようにします。 最小限のアクセス権原則を実施し、タスクの実行に必要な最小限のアクセス権をユーザーに付与します。インジェクション攻撃を防ぐために、入力検証と出力エンコーディングを適用します。HTTPS を使用して転送中の機密データを暗号化し、AES のような暗号化アルゴリズムを使用して静止状態で暗号化します。不正使用や分散型サービス拒否(DDoS)攻撃を防ぐために、レート制限を実装します。API アクティビティを定期的に監視してログに記録し、異常や潜在的なセキュリティ脅威を検知します。最後に、API WAFやWeb Application and API Protection (WAAP)ソリューションのようなAPIセキュリティツールを活用してセキュリティを強化します。
WAFは一般的な攻撃からWebアプリケーションを効果的に保護しますが、HTTP/HTTPSトラフィックに主眼を置いているため、包括的なAPIセキュリティを提供できない場合があります。APIは多くの場合、異なるプロトコル、データフォーマット、認証メカニズムを使用するため、特別なセキュリティ要件が必要となります。従来のWAFは、JSONやXMLのようなAPI固有のデータ形式を解析する機能や、RESTfulまたはGraphQLプロトコルをサポートする機能を欠いている可能性があります。さらに、WAF は API エンドポイントの保護に必要なきめ細かなアクセス制御やレート制限を提供しない場合があります。APIセキュリティには、APIに特化したWAFやWeb Application and API Protection(WAAP)ソリューションなど、APIを脅威や脆弱性から保護するためにカスタマイズされたセキュリティ機能を提供する、より集中的なアプローチが必要です。
ウェブアプリケーションファイアウォールは、従来のネットワークファイアウォールに取って代わるものではありません。WAF は、特定のアプリケーション層の攻撃から Web アプリケーションを保護することに重点を置いています。ネットワーク・ファイアウォールはネットワーク層で動作し、IP アドレス、ポート、プロトコルに基づいてトラフィックをフィルタリングします。WAF とネットワーク・ファイアウォールは、組織のセキュリティ・アーキテクチャにおいて異なる目的を果たし、さまざまな脅威からネットワーク・リソースと Web アプリケーションを保護するための補完的な保護レイヤーを提供します。
ネットワーク・ファイアウォールがある場合でも、WAFを導入することをお勧めします。ネットワーク・ファイアウォールは、ネットワーク層では必要不可欠な防御を提供しますが、ウェブ・アプリケーションを標的とするアプリケーション層の攻撃に対しては防御できない場合があります。WAF は、HTTP/HTTPS トラフィックの監視とフィルタリング、悪意のあるリクエストのブロック、アプリケーション固有の脆弱性の緩和により、Web アプリケーションに特化した保護を提供します。ネットワークファイアウォールとWAFの両方を実装することで、組織のインフラストラクチャの複数のレイヤーをカバーし、より包括的で堅牢なセキュリティ体制を確保できます。

WAFの種類は、ネットワークベース、ホストベース、クラウドベースの3つに分類されます。

  • ネットワークベースのWAFは、組織のネットワークインフラ内にデプロイされるハードウェアアプライアンスで、Webアプリケーションに低遅延の保護を提供します。
  • ホストベースの WAF は、Web アプリケーションと同じサーバーにインストールできるソフトウェアソリューションで、アプリケーション環境との統合やカスタマイズ性を高めることができます。
  • クラウドベースのWAFは、サードパーティベンダーによってサービスとして提供されるため、オンサイトでの設定やメンテナンスは最小限で済みます。これらのWAFは、容易に拡張でき、従量課金モデルを提供し、DDoS防御やコンテンツ配信ネットワーク(CDN)の統合などの追加機能が含まれている場合があります。

適切なWAFタイプを選択するかどうかは、組織のニーズ、リソース、セキュリティ要件によって異なります。

WAF は、最新の Web アプリケーション・セキュリティにとって不可欠なコンポーネントであり続けています。ウェブアプリケーションが継続的に進化し、複雑化するにつれて、WAF も新たな脅威や脆弱性に対応する必要があります。先進的なWAFは現在、機械学習、行動分析、API固有のセキュリティなどの機能を組み込み、より包括的な保護を提供しています。WAF だけではアプリケーションのあらゆる側面を保護するには不十分かもしれませんが、深層防衛のセキュリティ戦略において重要なレイヤーを形成します。
WAFはアプリケーション層の攻撃を防御するのに有効ですが、あらゆる種類の脅威を防御できるわけではありません。WAFは、ポートスキャン、IPスプーフィング、SYNフラッド攻撃など、ネットワークファイアウォールや侵入防御システムを必要とするネットワーク層の攻撃を防御できない場合があります。WAFは本来、フィッシングやスピアフィッシングのようなソーシャルエンジニアリング攻撃を防御するものではなく、ユーザーの意識向上トレーニングやメールセキュリティソリューションが必要です。さらに、WAFは、インサイダーの脅威、侵害されたユーザーアカウント、組織内の不十分なセキュリティ慣行から保護することはできません。包括的なセキュリティ戦略には、WAF、ファイアウォール、侵入検知システム、ユーザー教育、強固なセキュリティポリシーなど、複数の保護レイヤーを組み込む必要があります。
ブロックリストWAFでは、すべてのトラフィックの通過が許可され、特定された脅威のリクエストのみがブロックされます。allowlist WAFでは、ほとんどのトラフィックがブロックされ、設定で指定された信頼できるリクエストのみが通過を許可されます。
悪意のあるリクエストとは、システムを悪用するために意図的に使用される有害なドメインリクエストを指します。例えば、クロスサイト・リクエスト・フォージェリとは、認証されたユーザに送信される悪意のあるリクエストのことで、 ユーザが知らないうちにアプリケーションのリクエストを完了するためのパラメータを含んでいます。

DDoS攻撃も悪意のあるリクエストの一例です。DDoS攻撃の目的は、システムのリソースを使い果たすことで、システムに対する正当なリクエストをブロックすることです。ハッカーは、システムに偽のリクエストを殺到させることで、DDoS攻撃を成功させることがあります。

DDoS攻撃からシステムを保護する最善の方法は、システムに関連する各IPアドレスを隠すことです。また、悪意のあるユーザーに関連するIPアドレスをセキュリティ・ルールに追加して、このソースからの悪意のあるパケットを将来的に検出してフィルタリングすることも重要です。
DoS 攻撃もDDoS攻撃も サービス拒否(DoS)攻撃です。DoS攻撃では、1台のコンピュータがTCPおよびUDPパケットをサーバーに殺到させます。分散型サービス拒否(DDoS)攻撃では、複数の場所から稼働している複数のシステムが、単一のシステムにパケットを殺到させます。
アプリケーション層攻撃はDDoS攻撃の一種です。アプリケーション(通常はウェブサーバ)を標的とするこの攻撃は、悪意のあるボットがウェブサーバにリソースを繰り返し要求し、サーバに負荷がかかることで発生します。IPアドレスのような識別子はリクエストごとに変わるため、サーバーは攻撃を検知できません。
SQL インジェクションとは、ハッカーがデータベースのクエリに悪意のあるコード文字列を追加することで、ウェブアプリケーションの データベースに不正にアクセスするテクニックを指します。
クッキー操作は、クッキーポイズニングとも呼ばれ、通常、個人情報の窃盗を試みて、ユーザーに関する不正な情報を得るためにクッキーを変更することを含みます。
デバイスは、インターネットプロトコル(IP)パケットを送受信することで、インターネットを介して通信します。IPスプーフィング(IPアドレスのなりすまし)は、ハッカーがこの通信を悪用してコンピュータにアクセスし、マルウェアに感染させたり、データを盗んだり、サーバーをクラッシュさせたりする可能性のある手法です。IPスプーフィングとは、偽のIPアドレスからIPパケットを送信し、身元を隠したり、他のコンピュータ・システムを装ったりすることです。
レイヤ 7 ファイアウォールは、OSI モデルの第 7 層、別名アプリケーション層で動作するファイアウォールで、高度なトラフィックフィルタリングルールが可能です。レイヤ7ファイアウォールは、IPアドレスに基づくフィルタリングの代わりに、データパケットを調査して悪意のあるボットやその他の脅威が含まれているかどうかを判断することができます。
最大の違いは、従来のネットワーク・ファイアウォールが信頼できるネットワーク上のトラフィックを監視するのに対し、WAFはインターネットに公開されたウェブ・アプリケーションとエンドポイントを保護することです。
WAFは、悪意のあるボット、APIの不正使用、OWASPトップ10にリストアップされた項目から保護するために進化してきました。
もともとCDNプロバイダーがWAFを構築したのは、すでにコンテンツを提供していたからであり、これにセキュリティコントロールを追加することは理にかなっていました。その後、WAFプロバイダーは、ボットミティゲーションなどの追加機能を同じ製品に追加し始めました。WAFはやがて境界からクラウドへと移行しました。今日、WAFは、より多くのセキュリティコンテキストを提供するために、分離を解除し、アプリケーションに近づきました。
CDN(コンテンツ配信ネットワーク)とは、インターネットコンテンツの配信を高速化する地理的に分散されたサーバー群のことです。CDNは、様々な地域に設置されたプロキシサーバーにコンテンツをキャッシュすることで、世界中のユーザーがコンテンツの読み込みに法外な待ち時間をかけることなく、ビデオを見たり、ソフトウェアをダウンロードしたりすることを可能にします。

様々なWAFプロバイダーは、3つのカテゴリーに分けることができます:

  • WAFを提供するCDNプロバイダー
  • クラウドサービスプロバイダー(CSP)のWAF
  • 最新のWAFプロバイダー

WAF を提供している CDN プロバイダーには、Akamai、Fastly、Cloudflare、Imperva などがあります。CSP WAFプロバイダには、Google CloudのCloud Armor、AWS WAF、Azure Web Application Firewall、Barracuda Web Application Firewallなどがあります。最新のWAFプロバイダーは、Prisma Cloud、Akamai、Cloudflare、Traceable、Impervaです。

PCI DSSとは、Payment Card Industry Data Security Standardの頭文字をとったもので、クレジットカードを扱う組織のための情報セキュリティ基準です。この規格は、Payment Card Industry Security Standards Council(ペイメントカード業界セキュリティ基準協議会)によって運営されており、クレジットカード詐欺の事例を減らすために作成されました。PCI コンプライアンスを達成するためには、クレジットカード・データを保護するために企業が従う技術的および運用上の基準が必要です。
前へ APIセキュリティとは?
次へ レイヤー7とは?