WAF(Webアプリケーションファイアウォール)とは
WAFは、WebサイトやWebアプリケーションへのアクセスを監視し、不正な攻撃から守るためのセキュリティ対策システムです。一般的な「ファイアウォール」がネットワーク全体の通信を制御するのに対し、WAFはWebの通信(HTTP/HTTPS)に特化しています。通信の中身(リクエストデータ)を詳細にチェックし、SQLインジェクションやクロスサイトスクリプティング(XSS)といったWebアプリ特有の脆弱性を狙った攻撃パターンを検知して遮断します。
具体例
例えば、ネットショッピングサイトの検索窓やお問い合わせフォームに、悪意のあるプログラムコードを入力してデータベースを改ざんしようとする攻撃(SQLインジェクション)が発生したとします。WAFはこの悪意ある通信を事前に検知し、サイトの裏側にあるサーバーに届く前に自動的にブロックします。
【一般的なブロックの流れ】\n[攻撃者] --(不正な入力: ' OR 1=1; --)--> [ WAF ] (不正なパターンとして検知・遮断)\n[一般ユーザー] --(通常のアクセス)--> [ WAF ] --> [Webサーバー](安全に通過)もう少し詳しく
WAFは、HTTP/HTTPSリクエストのペイロード(データ部分)に含まれる不正な文字列や通信パターンを解析し、あらかじめ登録された攻撃シグネチャ(ブラックリスト)や振る舞い検知ルールと照合することで、Webアプリケーション層(OSI参照モデルの第7層)への攻撃を検知・防御します。従来のパケットフィルタリング型のファイアウォール(IPアドレスやポート番号のみを監視)や、トランスポート層を対象とするIDS/IPS(侵入検知・防止システム)では防ぎきれない、アプリケーションレベルでの不正なパラメーター操作を検知できるのが特徴です。WAFの導入形態には、Webサーバーの前面に専用のハードウェアや仮想アプライアンスを配置する「ゲートウェイ型(アプライアンス型)」、Webサーバー自体にソフトウェアモジュールをインストールする「ホスト型(ソフトウェア型)」、およびDNSを変更するだけで容易に導入可能な「クラウド型」の3種類が存在します。近年は、初期コストを抑えつつ迅速に導入でき、脅威情報の自動更新が可能なクラウド型WAFの採用が急速に進んでいます。
試験でのポイント
応用情報技術者試験では、各種ファイアウォール、IDS/IPSとの役割分担や動作するレイヤーの違いが頻出テーマです。「WAFはOSI参照モデルの第7層(アプリケーション層)で動作し、HTTP/HTTPS通信の中身(リクエストとレスポンス)を解析して攻撃を防ぐ」という点を強く意識してください。また、SQLインジェクション、クロスサイトスクリプティング(XSS)、OSコマンドインジェクション、ディレクトリトラバーサルなど、具体的にどのような脆弱性を狙った攻撃を検知・防御できるかが選択肢で問われます。さらに、正規の通信を攻撃と誤認して遮断してしまう「誤検知(フォールスポジティブ)」や、実際の攻撃を検知できずにすり抜けてしまう「検知漏れ(フォールスネガティブ)」というセキュリティ用語もWAFの運用課題と絡めてよく出題されます。攻撃パターンを定義するシグネチャの定期的な更新や、誤検知発生時のチューニングの必要性について理解を深めておきましょう。
関連する用語
ネットワーク層やトランスポート層で動作する一般的なファイアウォール、オペレーティングシステムやネットワーク全体への不正侵入を監視・防御するIDS/IPS、およびWebサイトの脆弱性を突く代表的な攻撃手法であるSQLインジェクションやクロスサイトスクリプティング(XSS)があります。これらとWAFの違いを明確に区別できるように整理することが重要です。