Upgrade to Pro — share decks privately, control downloads, hide ads and more …

構成を理解するWAF入門

 構成を理解するWAF入門

AWS WAFの構成パターン, 他サービスとの連携, WAFを5分で構築してみた

Avatar for shinadaa_1717

shinadaa_1717

May 22, 2026

More Decks by shinadaa_1717

Other Decks in Technology

Transcript

  1. 構成を理解するWAF入門 アジェンダ 1. WAFの基本 2. WAFの構成パターン 3. CloudFrontのWAF構築とルール確認例 〈おことわり〉 ・Web

    ACL = 保護パックという単語に統一する動きに見受けられますが、 本発表ではWeb ACLの記載を多用しております。
  2. WAFが防ぐもの ツール OSIレイヤー 主な防御対象 限界・注意点 ネットワークFW L3/L4 ・不正 IP のブロック

    ・ポート制限(80/443以外を遮断) ・プロトコル制御 ・L3 / L4 DDoS ・HTTP の中身は見えない。 ・XSS / SQLi は検知不可。 ・アプリ層の攻撃は素通り。 IDS/IPS L4~L7 ・通信パターン異常検知 ・シグネチャベース検知 ・ポートスキャン検知 ・一部の Web アプリ攻撃 ・HTTPS は暗号化で中身が見えないケースあり。 ・Web アプリ攻撃の精度はWAF に劣る。 WAF L7 ・XSS / SQLi ・OWASP Top 10 ・Bot / L7 DDoS (HTTPフラッド等) ・L3/L4 DDoS は対象外 (Shield が担当)。 ・アプリ実装の代替にはならない。 アプリ実装 L7 (コード) ・入力バリデーション ・プリペアドステートメント ・出力エスケープ ・CSRF トークン ・開発コストがかかる。 ・実装漏れのリスクあり。 ・WAF との併用がベストプラクティス。
  3. AWS WAFの基本用語 Web ACL (保護パック) ルール ルール 優先度1 優先度2 Allow

    アクション CAPTCHA および Challenge ・ボット対策やキャプチャを利用する際に使用 Block ・ルール検査は終了 デフォルトアクション ・ホワイトリストでこれまでのルールを作っている 場合はデフォルトアクションをBlockに ・ブラックリストの場合はデフォルトアクションをAllowに Count … ip範囲 地理範囲など
  4. WAF を適用できる AWS サービス Global WAF ・CloudFront にのみ適用可 ・us-east-1 で作成

    Regional WAF ・各リージョンで作成 ・ALB / API GW / AppSync 等に適用 ・同じ Web ACL を複数リソースに関連付け可
  5. WAFの構成パターン:CloudFront + WAF 特徴 ・VPCより遠い場所で防ぐ ・ オリジンへの不正リクエストを防ぐ ・CloudFront の Geo

    Restriction と組み合わせ可能 ユースケース ・インターネット公開 Web アプリ全般 ・静的コンテンツ配信 + API の混在構成 注意点 ・ALBのDNS名 (XXX.◯◯◯.amazonaws.com) が 知られた場合、直叩き可能と考えられるため、CloudFront用の AWS マネージドプレフィックスリスト制限等の対策が必要 https://aws.amazon.com/jp/blogs/news/limit-access-to-your-origins-using-the-aws-managed-prefix-list-for-amazon-cloudfront/
  6. WAFの構成パターン: ALB + WAF 特徴 ・WAF は Regional スコープ(各リージョンで作成) ・API

    Gateway / App Runner にも同様に適用可 ユースケース ・社内システム ・CDN 不要なシステム 注意点 ・全リクエストに対してALBの接続リソースを使うため、 L7DDoSの攻撃に対してはCloudFront構成と比較して弱い 可能性 → CloudFront 構成と挙動差があるため確認
  7. CloudFront or ALBのWAFどちらに置くか? 比較 比較項目 CloudFront (Edge) に適用 ALB (Regional)

    に適用 防御範囲 全リクエストをエッジでブロック キャッシュミスし、オリジンに到達したリクエストのみブロック コスト 高い (全リクエストが課金対象) 安い (オリジン到達分のみ課金対象) オリジン負荷 攻撃リクエストがオリジンに届かないため 負荷減 攻撃リクエストもALBまでは到達する 直接アクセス対策 ALBへ直接アクセスされるとWAFを回避され る ALB自体を守るため、直接アクセスでもWAFが機能する IP制限 クライアントIPで直接制限可能 WAFから見た送信元IPはCloudFrontのIPとなるため、 X-Forwarded-For ヘッダーの参照等が必要 CloudFront構成でWAFをどこに適用するか?ALB適用も視野に入れた技術的検討 https://tech.every.tv/entry/2026/02/13/180610
  8. 〈 WAFの構成パターン:ご参考〉二重 WAF(CloudFront + ALB) 役割分担 ・エッジ(Global): Bot 対策・DDoS 軽減・Geo

    ブロック ・リージョン(Regional): アプリ固有のルール(SQLi/XSS等) メリット ・各 WAF を役割に特化して管理できる ・一方が誤検知しても他方でカバー可能 デメリット・考慮点 ・コスト増(Web ACL × 2) ・ルール重複に注意(不要な二重評価)
  9. CloudFrontのWAF構築とルール確認例 AWSManagedRulesAntiDDoSRuleSet L7 DDoS 検出。怪しいリクエストにラベルを付与。ManagedIPDDoSRateLimit が後続でそのラベルを消費する設計 AWSManagedRulesAmazonIpReputationList AWS が収集した悪意ある IP

    リスト(ボット・スキャナー・既知攻撃元) AWSManagedRulesAnonymousIpList VPN・Tor・プロキシ等の匿名化サービスの IP を遮断 AWSManagedRulesCommonRuleSet OWASP Top 10 共通対策。XSS・パストラバーサル・HTTP プロトコル異常等 AWSManagedRulesKnownBadInputsRuleSet Log4Shell・Spring4Shell・SSRF・XXE など既知の悪意ある入力パターン AWSManagedRulesSQLiRuleSet SQL インジェクション専用ルール。CommonRuleSet より深い検査 AWSManagedRulesLinuxRuleSet Linux 固有の脆弱性(LFI・コマンドインジェクション等) AWSManagedRulesBotControlRuleSet 一般 Bot・検証済み Bot・高度な Bot(TGT)の3段階管理 → 構築は5分と言えるが、中身の確認が必要 AWSマネージドルールが多く適用されていた 全18ルール メディア処理なのでL7DDoSが優先度高か…?
  10. ご参考 AI Activity Dashboard(2026年2月~) → Bot Control の検知カタログを 650 種以上に拡張

    → AI Activity Dashboard で一元可視化・アクション設定が可能に Bot カテゴリ 具体例 課題 AI サーチエンジンクローラー Perplexity Bot, You.com Bot 正規か不正か判別困難 AI データコレクター 訓練データ収集エージェント コンテンツの無断利用 LLM トレーニングクローラー 大規模言語モデル学習データ収集 帯域・サーバ負荷 AI アシスタント ChatGPT Plugins, Claude Artifacts等 権限なきアクセス 背景:AI Bot が新たな脅威層に
  11. 補足. Firewall Manager(組織全体の一元管理) できること ・Organizations 配下の全アカウントに WAF ポリシーを強制 ・新規アカウント作成時に自動で WAF

    を適用 ユースケース ・マルチアカウント環境の統制 ・セキュリティチームによる中央管理 ・コンプライアンス要件への対応 前提条件 ・AWS Organizations の有効化 ・管理アカウントでの Firewall Manager 設定