01 / DECISION
この primitive を選ぶ時
既知の攻撃 class には managed rule、application 固有 invariant には狭い custom expression を使います。
02 / ARCHITECTURE
最小で説明可能な path を作る
log / challenge mode から始め、matched traffic、hostname、path、exception を確認し、rollback owner を決めて action を上げます。
- 01contract を定義
既知の攻撃 class には managed rule、application 固有 invariant には狭い custom expression を使います。
- 02primitive を一つ追加
log / challenge mode から始め、matched traffic、hostname、path、exception を確認し、rollback owner を決めて action を上げます。
- 03failure evidence を残す
matched request と false positive を測定し、承認済み test case を replay し、bypass が必要以上に広くないか確認します。
03 / REPRODUCE
confidence の前に evidence
matched request と false positive を測定し、承認済み test case を replay し、bypass が必要以上に広くないか確認します。
curl -i "https://example.com/test-path?input=known-safe-probe" 04 / BOUNDARY
Production boundary
広すぎる block rule は outage になります。WAF は authentication、authorization、input validation、secure code の代替ではありません。
05 / FIRST-PARTY SOURCES
一次資料を authoritative に保つ
product behavior、limit、pricing、availability は変わります。実行前に source を再確認してください。