AWS認定資格 WEB問題集&徹底解説

ソリューションアーキテクト – アソシエイト

AWS WAF の概要と試験出題ポイントは?

AWSサービスの一つであるAWS WAFはどんな内容なのでしょうか?また、AWS認定資格のソリューションアーキテクト-アソシエイト(SAA)に合格するためには、サービスのどんなポイントを押さえておけばよいのでしょうか?
ここでは、そんなあなたの疑問に回答していきたいと思います

AWS WAF 徹底解説 | AWS認定試験の頻出ポイントまとめ

1. サービス概要

AWS WAF(Web Application Firewall)は、WebアプリケーションをSQLインジェクション・クロスサイトスクリプティング(XSS)・ボット・DDoS等の一般的なWeb脅威から保護するマネージドファイアウォールサービスです。

HTTP/HTTPSリクエストをリアルタイムに検査し、定義したルールに基づいて許可・拒否・カウント・CAPTCHAチャレンジのアクションを実行します。CloudFront・ALB・API Gateway・AppSync・Cognito等と統合されます。

2. 主な特徴と機能

2.1 WebACL(Webアクセスコントロールリスト)

ルールグループとルールを組み合わせたポリシーの単位。各ルールに容量(WCU: WAF Capacity Unit)が割り当てられ、WebACL全体で上限5,000 WCU。

2.2 ルールタイプ

  • マネージドルールグループ(AWSが管理): AWSやサードパーティが提供する事前定義ルール。AWS Managed Rules(無料)・AWSマーケットプレイスの有料ルール(Fortinet・F5等)。
  • カスタムルール: 独自のマッチ条件(IPアドレス・URIパス・クエリ文字列・HTTPヘッダー・ボディ等)でルールを定義。
  • レートベースルール: 特定のIPアドレスから指定時間内(デフォルト5分)に一定数以上のリクエストを検出したらブロック。DDoS・ブルートフォース対策。
  • ジオマッチ条件: 特定の国・地域からのアクセスを許可/拒否。
  • IPセット: 許可/拒否するIPアドレス・CIDR範囲のリスト。

2.3 統合サービス

  • Amazon CloudFront: グローバルエッジロケーションでリクエストを検査。リージョナルなWAFより広いカバレッジ。
  • ALB(Application Load Balancer): リージョンレベルでWebアプリを保護。
  • Amazon API Gateway: API エンドポイントへの攻撃から保護。
  • AWS AppSync: GraphQL APIの保護。

2.4 ログ記録と可視化

WAFログをCloudWatch Logs・S3・Kinesis Data Firehoseに送信。Athenaでログを分析したり、CloudWatchダッシュボードでリアルタイムモニタリング。

2.5 Bot Control と Fraud Control

AWS WAF Bot Controlでボットトラフィックを検出・管理。AWS WAF Fraud Control(Account Takeover Prevention)でアカウント乗っ取り攻撃から保護。

3. アーキテクチャおよび技術要素

  1. WebACLをCloudFront/ALB/API Gatewayに関連付け。
  2. リクエストがルールグループ→個別ルールの順に評価(優先度順)。
  3. ルール一致時にAllow/Block/Count/CaptchaのアクションをWAFが実行。
  4. ブロックされたリクエストは403応答。カウントは通過させながら記録のみ。

4. セキュリティと認証・認可

  • AWS Firewall Manager統合: Organizations全体にWAF WebACLを一括デプロイして組織全体のWAFポリシーを集中管理。
  • Shield Advanced統合: DDoS攻撃に対してWAFと組み合わせてより強力な保護を提供。

5. 料金形態

  • WebACL: WebACL1個あたり月額固定料金。
  • ルール: ルール1個あたり月額固定料金(マネージドルールグループも同様)。
  • リクエスト: 処理したWebリクエスト数(100万リクエストあたり)に課金。

6. よくあるアーキテクチャ・設計パターン

  • 基本的なWebアプリ保護: CloudFront + WAF(AWSマネージドルール: SQLi/XSS/共通脅威ルールグループ)でWebアプリをOWASP Top 10から保護。
  • レートリミット: APIエンドポイントにレートベースルールを設定。同一IPから5分間に1000リクエスト超えでブロック。
  • IP許可リスト: 社内IPアドレスのみ管理画面へのアクセスを許可するIPセットルール。
  • 地域制限: 特定の国からのアクセスをジオマッチルールでブロック(法的要件・不審なトラフィック源)。

7. 設定・デプロイ手順(ハンズオン例)

  1. WAFコンソールで「WebACLの作成」→リソースタイプ(CloudFront/ALB等)を選択。
  2. ルールグループを追加(AWS Managed Rules: AWSManagedRulesCommonRuleSet等を選択)。
  3. 必要に応じてカスタムルール(IPブロック・レートリミット等)を追加。
  4. WebACLを対象のCloudFront/ALBに関連付け。
  5. WAFログをKinesis Data Firehose経由でS3に送信してAthenaで分析設定。

8. 試験で問われやすいポイント

8.1 WAFの保護対象

  • Q: AWS WAFを適用できるサービスは?
    A: CloudFront、ALB、API Gateway、AppSync、Cognito User Pool、AWS App Runner。EC2に直接は適用不可(ALB経由)。

8.2 ルールタイプ

  • Q: DDoS・ブルートフォース対策に使えるWAFのルールタイプは?
    A: レートベースルール(特定IPからの一定期間内のリクエスト数制限)。
  • Q: SQLインジェクション・XSSを防ぐための最速の方法は?
    A: AWS Managed Rules(AWSManagedRulesCommonRuleSet / SQLiRuleSet)を使用。設定が容易でAWSが継続的に更新。

8.3 WAF vs Shield vs GuardDuty

  • Q: WAF・Shield・GuardDutyの役割の違いは?
    A: WAFはWebアプリへの攻撃(SQLi/XSS等)を防ぐL7ファイアウォール。ShieldはDDoS攻撃からの保護。GuardDutyはAWS環境全体の脅威検出(侵害検出)。

8.4 組織全体への展開

  • Q: Organizations全体のリソースにWAF WebACLを一括適用するには?
    A: AWS Firewall Managerを使ってWAFポリシーを作成し、Organizations全体のリソースに自動適用。