最終更新日:2026年7月9日
fe fe-technology security
まず結論
WAFとは、Webアプリケーションへの通信内容を検査し、SQLインジェクションやXSSなどの攻撃を遮断する仕組みです。
WAFは Web Application Firewall の略です。
基本情報技術者試験では、WAFは クライアントとWebサーバの間で、Webアプリに送られるデータを検査する防御策 と押さえると分かりやすいです。
問題文に Webサーバに送信されたデータを検査、SQLインジェクションを遮断、Webアプリケーションを防御 といった表現が出たら、WAFを疑います。
直感的な説明
WAFは、Webアプリケーションの入口に立つ警備員のようなものです。
利用者からWebサーバへ送られるリクエストの中身を見て、危ない入力がないかを確認します。
クライアント
↓ HTTPリクエスト
WAF
↓ 安全なら通す
Webサーバ
例えば、ログインフォームや検索フォームに、攻撃用の文字列が送られることがあります。
' OR '1'='1
<script>...</script>
WAFは、このようなWebアプリ向けの攻撃らしい入力を検査し、必要に応じて遮断します。
定義・仕組み
WAFは、Webアプリケーションを保護するためのファイアウォールです。
通常のファイアウォールが主にIPアドレスやポート番号を見て通信を制御するのに対し、WAFはWebアプリケーションに送られる通信内容を詳しく見ます。
| 仕組み | 主に見るもの |
|---|---|
| 通常のファイアウォール | IPアドレス、ポート番号、通信方向など |
| WAF | HTTPリクエスト、パラメータ、入力値、URLなど |
WAFで防ぎやすい代表例は次のとおりです。
| 攻撃 | ざっくり意味 |
|---|---|
| SQLインジェクション | 入力値にSQL文を混ぜて、DBを不正操作する攻撃 |
| XSS | Webページに悪意あるスクリプトを混入させる攻撃 |
| パストラバーサル | 想定外のファイルへアクセスしようとする攻撃 |
| 不正なリクエスト | 通常想定しない形式のHTTPリクエスト |
このテーマは、基本情報技術者試験の「情報セキュリティ」や「Webアプリケーションの防御」と関係する内容です。公式の出題範囲やシラバスは、IPA:基本情報技術者試験 から確認できます。
科目Aでどう出る?
科目Aでは、WAFの役割を選ぶ問題や、SSL-VPN、クラスタ構成、ロードバランシングとの違いを問う問題が出やすいです。
判断するときは、次のキーワードを見ます。
Webアプリケーション
HTTPリクエスト
入力値の検査
SQLインジェクション
XSS
選択肢では、次のように切り分けます。
| 選択肢の表現 | 疑う用語 |
|---|---|
| Webサーバへ送信されたデータを検査し、SQLインジェクションなどを遮断 | WAF |
| TLSを使ってブラウザ経由でVPN接続する | SSL-VPN |
| 複数台のコンピュータを結合して性能や可用性を高める | クラスタ構成 |
| 複数サーバへ処理を分散する | ロードバランシング |
FE試験では、Webアプリへの攻撃を通信内容から検査する と読めたらWAFです。
科目Bでどう使う?
科目Bでは、Webシステムの構成図やセキュリティ対策を読むときに役立ちます。
例えば、次のような構成です。
インターネット
↓
WAF
↓
Webサーバ
↓
DBサーバ
この構成では、WAFがWebサーバへ届く前のリクエストを検査します。
SQLインジェクションのような攻撃は、入力値を通じてWebアプリやDBを狙います。
そのため、科目Bで読むときは、次のように整理するとよいです。
1. 守りたい対象はWebアプリか
2. 攻撃はSQLインジェクションやXSSか
3. HTTPリクエストの中身を検査しているか
この3つがそろえば、WAFの可能性が高いです。
SG試験向けの記事では、運用面や誤検知、ルール設定の考え方も整理しています。あわせて確認するなら、WAFとは?Webアプリケーションを守る防御策【SG試験】 も参考になります。
よくある誤解・混同
WAFでよくある誤解は、Webに関係する仕組みなら何でもWAFだと思ってしまうことです。
| 誤解 | 正しい理解 |
|---|---|
| WAFはVPN接続の仕組み | VPN接続ならSSL-VPNなど |
| WAFは負荷分散の仕組み | 負荷分散ならロードバランシング |
| WAFは可用性を高める複数台構成 | 可用性や性能ならクラスタ構成 |
| WAFはすべての攻撃を防ぐ | 主にWebアプリへの攻撃を検査・遮断する |
| 通常のファイアウォールと同じ | WAFはHTTPリクエストや入力値など、Webアプリ層を詳しく見る |
特に、通常のファイアウォールとの違いは試験で迷いやすいです。
通常のファイアウォール
→ IPアドレスやポート番号を見て通信を制御する
WAF
→ Webアプリに送られるデータの中身を見て攻撃を検査する
また、ロードバランシングとの違いも押さえておくと安心です。
ロードバランシング
→ 処理を複数サーバへ分散する
WAF
→ Webアプリへの攻撃を検査・遮断する
まとめ(試験直前用)
- WAFは、Webアプリケーションへの通信内容を検査する防御策
- SQLインジェクションやXSSなどのWebアプリ攻撃を遮断しやすい
- 通常のファイアウォールはIPアドレスやポート番号を見る
- SSL-VPNは安全なリモート接続、ロードバランシングは負荷分散
- 判断ポイントは「Webアプリ」「HTTPリクエスト」「SQLインジェクション」