【わふ】

WAF とは?

💡 Webアプリの「門番」—不正なリクエストをブロック
📌 このページのポイント
WAF(Webアプリケーションファイアウォール) 正常な リクエスト 攻撃 SQLi / XSS WAF ルールに基づき HTTPリクエストを検査 ✓ 正常 → 通過 ✕ 攻撃 → ブロック Webサーバー Webアプリ データベース 安全に保護 WAFが防御する攻撃例 SQLインジェクション クロスサイトスクリプティング ディレクトリトラバーサル
WAFのイメージ
ひよこ ひよこ

普通のファイアウォールと何が違うの?

ペンギン先生 ペンギン先生

従来のファイアウォールIPアドレスポート番号(L3/L4)で通信を制御する。WAFはHTTPリクエストの中身(URL、ボディ、ヘッダー)を検査するL7ファイアウォール。「正当なHTTPSリクエストに見えるけど実はSQLインジェクション」のような攻撃を検知できるのがWAFの強みだよ

ひよこ ひよこ

何を防げるの?

ペンギン先生 ペンギン先生

SQLインジェクション(DBへの不正クエリ)、②XSS(悪意のあるスクリプト注入)、③CSRFの一部、④パストラバーサル(不正なファイルアクセス)、⑤DDoS攻撃の一部(レート制限)。OWASP Top 10に含まれる主要なWeb攻撃のほとんどに対応できるよ

ひよこ ひよこ

WAFがあればアプリ側の対策は不要?

ペンギン先生 ペンギン先生

絶対に不要にはならないよ。WAFは「門番」だけど完璧ではない。WAFをバイパス(迂回)するテクニックも存在する。アプリ側でプリペアドステートメントSQLインジェクション対策)、出力エスケープ(XSS対策)などの基本対策を確実に実装した上で、追加の防御層としてWAFを導入するのが正しいアプローチだよ

ひよこ ひよこ

クラウドWAFの選び方は?

ペンギン先生 ペンギン先生

AWS WAF(AWSユーザーなら統合が楽)、Cloudflare WAF(CDNと一体で高速・簡単)、Azure Front Door + WAF(Azure環境向け)が主流。マネージドルール(一般的な攻撃パターンをプリセット)を使えば初期設定が簡単。カスタムルールで自社アプリ固有の攻撃パターンもブロックできるよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「WAF」って出てきたら「Webアプリへの攻撃を防ぐファイアウォール」と思えればだいたいOK!
📖 おまけ:英語の意味
「Web Application Firewall」 = Webアプリケーションファイアウォール
💬 Web Application(Webアプリ)専用のFirewall(防火壁)だよ
← 用語集にもどる