近年、WebサイトやWebサービスの脆弱性を狙った攻撃が増えています。高度なセキュリティ環境を構築するために注目されているのが、Webアプリケーションを保護するWAFの導入です。
本記事では、WAFの基本やファイアウォールといったセキュリティ対策との違いについて解説します。また、WAFの仕組みや防げる攻撃、導入時のポイントもあわせて解説しているので、強固なセキュリティ対策の導入を検討している方はぜひ参考にしてください。
WAFとは
WAFとはWeb Application Firewallの略で、Webアプリケーションの脆弱性を狙う攻撃を検知して遮断し、Webサイトを保護するセキュリティ対策を指します。従来のファイアウォールでは防ぎきれないSQLインジェクションやクロスサイトスクリプティング(XSS)などによる情報漏えいや改ざんを防止できることから、複雑化する不正攻撃への対策として導入する企業が増えています。
WAFとファイアウォールの違い
WAFと従来型ファイアウォール(FW)は、ともに不正アクセスを防ぐという点では一致していますが、防御する層と方法が大きく異なります。WAFはOSI参照モデルでいうところの最上位層であるアプリケーション層で動作し、HTTPリクエストのヘッダーや本文など通信内容まで詳細に検査します。
従来型ファイアウォールは主にネットワーク層やトランスポート層の情報に基づいて通信を制御します。
一方、WAFはWebアプリケーションの動作やリクエスト内容を深く解析し、SQLインジェクションやXSSといったアプリケーション特有の脆弱性攻撃に特化して防御します。
WAFはWebアプリのコードやパラメータ操作に焦点を当てた、基本情報だけでは見抜けない攻撃コードや不正なリクエストも検知・遮断できるのが大きな違いです。
関連記事:ゼロトラスト(ゼロトラストモデル)とは?重要視される理由と実装するための要素を解説
WAFとIPS/IDSの違い
同じ侵入対策でも、WAFとIPS/IDSでは防御対象が異なります。WAFはWebアプリケーションの脆弱性を突く攻撃に特化して防御するのに対し、IDS/IPS(不正侵入検知/防止システム)はネットワーク全体を通過するパケットを監視し、OSやミドルウェアなどプラットフォーム自体への不正アクセスや攻撃を防ぐものです。
たとえばDoS/DDoS攻撃やサーバーOSの脆弱性攻撃はIPS/IDSが有効ですが、SQLインジェクションやXSSなどアプリケーション層の攻撃はWAFで保護する必要があります。それぞれカバーする範囲が違うため、競合ではなく補完関係にあると言えるでしょう。
そのため、重要なWebアプリがある場合はファイアウォールやIPS/IDSと併用するのが望ましいとされています。
なぜ今「WAFが必要」なのか
現在、サイバー攻撃の手口は多様化・高度化しており、公開されたWebサイトは常に標的になり得ます。特にWebアプリケーションを狙う攻撃が増加しているため、従来以上にアプリケーション層の防御が重要です。では、なぜ今「WAFが必要」なのか、2つの理由について解説します。
Webアプリへの攻撃が急増中
近年、Webアプリケーションを狙った攻撃が顕著に増えています。アジア太平洋地域における金融サービス業界に対するサイバー攻撃を調査した情報によると、2023年のWebアプリケーションおよびAPIへのサイバー攻撃は、前年比449%増加しているという結果が出ています。
実際、データベースに不正なコマンドを送り込むSQLインジェクションや、サイト上に悪質なスクリプトを埋め込むクロスサイトスクリプティング(XSS)といった典型的な手口が後を絶ちません。これらは情報漏えいやWebサイト改ざんなど重大な被害を招く恐れがあり、企業にとって看過できない脅威です。
出典:Akamai脅威レポート:金融サービス業界の Web アプリケーションおよびAPI に対するサイバー攻撃の調査結果を発表|Akamai
リモート化・クラウド活用による攻撃面の拡大
SaaS利用やクラウド移行、リモートワークの定着により、企業のITインフラは社内ネットワークの外側に大きく広がりました。物理的境界を越えてシステムが分散した結果、インターネット上に晒される攻撃対象面(アタックサーフェス)が大幅に増加しています。
従来は想定外だった経路からの侵入リスクも増え、防御すべき入り口が格段に複雑化しました。このように公開範囲が広がった状況では、WAFによるWeb公開部分の防御強化が一段と重要になっています。
WAFの導入で防げるサイバー攻撃
WAFを導入すると、Webアプリケーションを狙ったさまざまなサイバー攻撃を自動検知・遮断できます。ここからは、WAFで防御できる主な攻撃手法を紹介します。
SQLインジェクション
SQLインジェクションは、Webサイトの入力フィールドなどに悪意あるSQL文を挿入し、データベースを不正操作する攻撃です。たとえば本来は検索キーワードとして扱われる入力欄に特定の文字列を仕込むことで、データベースから情報を盗み出したり管理者権限で操作したりします。その結果、顧客データの流出やWebページ改ざんなど深刻な被害につながる可能性があるのです。
WAFはこのような不正なSQLパターンを含むリクエストを検知し遮断できます。
WAFを導入することで、SQLインジェクションによる攻撃を受けても通信をブロックし、データ漏えいを防止することが可能です。ファイアウォールやIDS/IPSでは困難なデータベース攻撃にも、WAFが効果を発揮します。
クロスサイトスクリプティング(XSS)
クロスサイトスクリプティング(XSS)は、Webページの脆弱性を突いてユーザーのブラウザ上で任意のスクリプトを実行させる攻撃です。典型的な例として掲示板や問い合わせフォームに悪意あるJavaScriptコードを埋め込み、別の利用者がそのページを表示した際にスクリプトが実行されるという攻撃があります。
その結果、ブラウザに保存されたクッキー情報(セッションID等)が漏えいしたり、利用者へのなりすましによって個人情報が窃取されたりする恐れがあります。WAFはHTMLタグやスクリプトコードを含む不審なリクエストを検知してブロックできるため、XSSによる攻撃を未然に防ぐことが可能です。
OSコマンドインジェクション/ディレクトリトラバーサル
Webサーバーを直接操作しようとする攻撃もWAFで防ぐことができます。代表的なものとして次の2種類の攻撃が挙げられます。
-
OSコマンドインジェクション
WebサーバーへのリクエストにOSへの命令コマンドを紛れ込ませ、サーバー上でそのコマンドを実行させる攻撃です。これによってサーバー内のファイルを消去・改ざんしたり、機密データを不正取得されたりする可能性があります。
-
ディレクトリトラバーサル
ファイルパスの入力を十分にチェックしていない脆弱性を突き、本来アクセスできない内部ファイルを取得・改ざんしようとする攻撃です。不正なファイル名を指定されると、サーバー内の重要ファイルが削除・改ざんされたり情報漏えいが起こったりする可能性があります。
WAFは不正なコマンド文字列を検知してサーバーへの送信を遮断したり、本来アクセスできないはずのファイルやディレクトリへの不正アクセスを検知してブロックしたりできます。
DDoS
DDoS(Distributed Denial of Service)攻撃は、複数のマシンから大量のリクエストやデータを送りつけてサーバーのリソースを圧迫し、サービスを妨害する攻撃です。特にWebでの典型的な攻撃としてHTTP/HTTPSリクエストを大量に送り、サーバーのCPUやデータベースを過負荷にしてダウンさせる手法があります。
WAFは通常とは異なる異常な量のトラフィックを検知し、自動的に制限をかけることでこうしたアプリケーション層のDDoS攻撃を緩和できます。たとえば短時間に同一IPから大量のリクエストが来た場合に一時的にブロックする、といった設定が可能です。
専門のDDoS対策サービスほど大規模な攻撃に対応することは難しいものの、クラウド型のWAFではDDoS緩和機能をオプションとして備えているものもあり、Webサイトの停止リスク低減への効果が期待できます。
WAFの種類
一口にWAFと言っても、導入形態の違いによっていくつかの種類に分けられます。大きく分けると「ホスト型WAF(ソフトウェア型)」「ゲートウェイ型WAF(アプライアンス型)」「サービス型WAF(クラウド型)」の3種類です。
では、種類ごとの特徴やメリット・デメリットについて解説します。
ホスト型WAF(ソフトウェア型WAF)
ホスト型WAFはソフトウェアをWebサーバーにインストールして導入するタイプのWAFです。自社運用のサーバーに組み込む形で動作し、比較的低コストで導入できるというメリットがあります。
既存のWebサーバーにソフトを入れるだけなので初期導入が簡単で、ライセンス費用はサーバー台数によって決まるため料金の見通しも立てやすいでしょう。一方で、サーバーごとにWAFソフトを設定・維持管理する必要があるため、台数が多い場合は運用負担が大きくなりがちです。
初期設定やチューニング、シグネチャ更新などを自社で継続して行う体制がある場合に適した方式と言えます。
ゲートウェイ型WAF(ネットワーク型WAF)
ゲートウェイ型WAFは専用のハードウェア機器(または仮想アプライアンス)をネットワーク上に設置して導入するタイプです。外部からの通信を一度受け止めてから、内部のWebサーバーに中継する「リバースプロキシ型」の構成をとります。
専用機器で処理するため導入コストは高めですが、WAFの動作がサーバー側に負荷を与えないという利点があります。また、設定変更の柔軟性も高く、細かいポリシー調整が可能です。
ただし、機器の初期設定や運用・保守は自社で行う必要があり、高度なネットワーク知識が求められます。オンプレミス環境でWebを運用している状況で、かつセキュリティ担当者がしっかり管理できる場合に有力な選択肢です。
サービス型WAF
クラウド上のWAFサービスを利用する形態で、現在主流となっている導入形態です。サービス型WAFは、自社で機器やソフトを購入・設置する必要がありません。申し込んで設定を行えばすぐに利用開始できる手軽さが最大のメリットです。
WAF機能の提供やシグネチャ更新・メンテナンスはベンダー側で実施してくれるため、自社の運用負担が小さい点も魅力です。サービスによっては、WAF以外にDDoS緩和や認証強化など多層防御の機能を備え、包括的にセキュリティを向上できるものもあります。
ただし、サービスによって防げる攻撃の種類や提供機能が異なるため、事前に仕様を確認する必要があります。また、ベンダー側で障害やネットワークトラブルが発生した場合、自社のWebも影響を受けるリスクがある点は留意しておきましょう。
WAFの仕組み
WAFがWebアプリケーションを保護する仕組みは、大きく「配置構成」と「検知ロジック」の2点に分けられます。WAFは多くの場合Webサーバーの手前でリバースプロキシとして動作し、定義ルール(シグネチャ)や異常検知アルゴリズムによって悪意ある通信を見分けています。
また、近年のAI搭載方WAFは、従来のルールベースでは検知が難しかったゼロデイ攻撃や未知の攻撃にも対応できるほか、誤検知を減らす効果が期待できます。
リバースプロキシ型の動作原理
リバースプロキシとは、クライアント(ユーザー)からのリクエストを一旦WAFサーバーで受け取り、内部のWebサーバーに代わって応答する仕組みです。WAFがリバースプロキシとして機能し、受け取ったリクエストに攻撃コードや不正なパターンが含まれていないか検査します。
問題なければ内部のWebサーバーへ転送し、返されたレスポンスをユーザーに届けます。不正なリクエストはWebサーバーに到達する前に遮断されるため、利用者に気付かれることなくサイトの安全を守れます。
シグネチャとヒューリスティックの検知手法
WAFの検知ロジックには大きく2つの手法があります。
-
シグネチャベース検知
既知の攻撃パターン(シグネチャ)と通信内容を照合し、一致した場合に攻撃と判断して遮断する方式です。過去の攻撃から抽出した特徴的な文字列や振る舞いにマッチする不正リクエストをブロックします。
-
ヒューリスティック(異常)検知
通常の利用では現れない不審な挙動やパラメータを検知して攻撃とみなす方式です。通常のリクエストパターンから逸脱した通信を分析し、未知の攻撃も検出します。
製品によってはこれら両方を組み合わせ、さらに発信元IPの評判データベース参照(レピュテーション検知)など多角的に分析して判断するWAFも存在します。
ルールベース・AI活用型WAFの違い
従来のWAFはルールベース検知が中心で、新種の攻撃には都度シグネチャ追加が必要なため検知漏れや誤検知が起こりがちでした。近年は機械学習を活用したAI搭載WAFが登場し、シグネチャ依存を脱却して高度な検知を可能にしています。
AI型WAFは通信を高精度に分析し、未知の攻撃を検知するとともに誤検知も大幅に減らせる点が強みとして挙げられますが、ルールベースWAFは既知攻撃への即応性に優れているという利点があります。製品選定時には自社のニーズに合った方式を検討しましょう。
WAFを導入する際の注意点
強力な防御を提供してくれるWAFですが、導入・運用にあたって注意すべきポイントもあります。ここからは、WAF導入時に特に気をつけたい3つのポイントを解説します。
誤検知(False Positive)とその対応
WAF運用で注意したいのは、正常な通信を攻撃と誤判定して遮断してしまう誤検知(フォルスポジティブ)です。誤検知が発生すると一般ユーザーがサイトを利用できず、ビジネスに悪影響を及ぼします。
防ぐにはルールを丁寧にチューニングすることが重要です。たとえば新しいシグネチャを導入する際はいきなり遮断せず、一度「検知のみモード」で動作させて誤検知が起きないか確認し、問題なければブロックを有効化する方法が有効です。
また万一誤検知が発生した場合に備え、原因となったルールを速やかに特定し例外設定を行うフローも用意しておきましょう。
誤検知(False Positive)とその対応
WAFは導入して終わりではなく、継続的なルールメンテナンスが必要です。日々新たな脆弱性や攻撃手法が生まれる中、シグネチャを定期的に見直し更新しなければ防御力が低下してしまいます。
実際、ほぼ毎日のように新たなWeb脆弱性が発見されている状況です。自社でWAFを運用する場合は常に脆弱性情報や攻撃トレンドを監視し、最新の知見をWAF設定に反映し続けることが求められます。
クラウドWAFを利用する場合も自動更新に任せきりにせず、アップデート内容を把握するとともに自社サイト特有のカスタムルールを適用するなど積極的に取り組む姿勢が重要です。ベンダーのシグネチャ更新頻度や緊急時の対応体制も事前に確認しておきましょう。
ログ管理と可視化の重要性
WAFを導入したらログの管理・分析にも取り組みましょう。WAFの検知ログを見れば、1日にブロックされた攻撃の件数や多発する攻撃の種類、攻撃元の傾向から自社のWebが直面する脅威の傾向を把握できます。
これにより自社サイトの弱点や狙われやすいポイントが明確になり、今後の対策強化に役立ちます。WAFログをSIEMに連携して他のセキュリティログと相関分析すれば、より高度な脅威検知やリアルタイム監視も可能です。
単に遮断するだけでなく、WAFのログを貴重な情報源として可視化・分析することでWAF導入の価値を最大化しましょう。
WAFの選び方のポイント
自社に最適なWAFを導入するには、設置形態の違いによるメリット・デメリットを理解し、製品ごとの検出精度(誤検知率)や他セキュリティ製品との連携性などを総合的に評価する必要があります。次の3つのポイントを参考にベストな選択をしてください。
設置形態
WAFにはソフトウェア型・アプライアンス型・クラウド型の3種類がありますが、それぞれ初期コストや運用負担、スケーラビリティなどが異なるため、自社の状況に適した形態を選ぶことが大切です。たとえば、初期費用を抑えて手軽に導入したい場合はクラウド型WAFが有力です。
一方、社内に専門人材がいて細かくチューニングしたい場合や、オンプレミス環境で遅延を極力減らしたい場合には、アプライアンス型WAFも選択肢になります。また、クラウドサービスを多用する企業では、クラウドWAFなら複数サイトを一元管理しやすい利点もあります。
自社のWeb資産規模やセキュリティチームの体制を踏まえ、どの方式が適しているか検討してください。
検出精度と誤検知率
WAF製品を評価するときは、単に「ブロック率が高いもの」を選ぶのではなく、誤検知の少なさにも着目しましょう。極端な話、すべての通信を遮断すればブロック率100%ですが、それでは業務になりません。
重要なのは高度な攻撃を漏らさず検出しつつ、正常な通信をできるだけ誤って遮断しないバランスです。近年はAIを活用して検知精度を高めたWAFも登場し、幅広い攻撃を網羅しながら誤検知を極力抑える検知エンジンが実現されています。
選定時には各製品の「防御可能な攻撃種別」だけでなく、「誤検知対策(チューニングのしやすさや実績値)」もベンダーに問い合わせたり、資料で確認したりするのがおすすめです。
他のセキュリティ製品との連携性
WAF単体で防御を完結させるのではなく、ほかのセキュリティ製品との連携も視野に入れましょう。たとえば、WAFが出力するイベントログをSIEMに集約して相関分析したり、EDR製品と連動して端末側のブロックと組み合わせたりする方法があります。また、製品選定時には、既存のセキュリティ基盤とデータ連携が容易かも重要なチェックポイントです。
すでに社内で運用中の監視システムや脅威インテリジェンスサービスがある場合、それらとスムーズに統合できるWAFを選ぶと、セキュリティ全体の最適化が図れます。
まとめ
Webアプリケーションを守るWAFは、現代の企業にとって重要度を増しているセキュリティ対策です。従来のネットワーク防御だけでは防ぎにくいSQLインジェクションやXSSなどの攻撃からWebサイトを保護し、情報漏洩やサービス停止リスクを大幅に低減できます。
一方で、WAF導入には適切な製品選択と継続的な運用管理が欠かせません。自社システムに合った形態のWAFを選び、導入後はシグネチャ更新やログ分析によって常に最新の脅威に備えることが重要です。また、WAFはWebアプリケーション防御の要ですが、万能ではありません。ファイアウォールやIPS、エンドポイント防御(EDR)、脅威インテリジェンスといった多層防御と組み合わせることで、より強固なセキュリティ体制を構築できます。
ぜひ今回紹介したポイントを参考に、自社に最適なWAF導入とその運用体制について検討してみてください。
この記事の執筆者

ICT事業部 ネットワーク&セキュリティ推進本部
野口 綾香
サイバーセキュリティのマーケティングを担当。
初心者の方にも理解しやすく、役立つ情報を発信することを大切にしています。