AWS 応用コース

AWS WAF を
安全に効かせる

WAFは攻撃を止める仕組みである一方、正規ユーザーを止めないための配置・優先順位・観測が本体です。

TL;DR
  1. 対象サービスに合うscopeでWeb ACLを置く。
  2. ルールは上から順に評価され、Allow/Blockで終了する。
  3. 導入時はCountで観測し、根拠を得てBlockへ進む。

01 入口と scope を合わせる

CloudFront global WAFとAPI Gateway regional WAFの対比
CloudFrontとリージョナルサービスではWAFのscopeが異なる。
WAFは入口の直前に置く。 CloudFrontにはglobal scope、ALBやAPI Gatewayにはregional scopeを選ぶ。対象とscopeを誤ると、守りたい通信経路を覆えません。

02 ルール順序は挙動そのもの

Allow Count Block の評価順
最初に一致した終端アクションが結果を決める。

AllowもBlockも一致した時点で評価が終わります。信頼済み利用者を通すAllowを後ろに置くと、その前のmanaged ruleで止まることがあります。ルールは小さく分け、優先順位と意図を読めるようにします。

03 Count で学んでから Block する

観測からBlockへ移行する運用
Count→ログ確認→例外調整→Blockを反復する。

いきなりBlockすると誤ブロックが障害になります。まずCountで実トラフィックへの影響を見て、必要ならscope-downや例外を設計してからBlockへ切り替えます。APIログがない失敗時はWAFのログも確認します。

結論: WAFは設定して終わりではなく、順序を読み、実データで調整し続ける運用サービスです。