WAFのManaged Rulesで Anonymous IP List を適用してた。
これが5分で200アクセスくらい来る。
この200アクセスは403エラーが返されてる。
そのアクセスの中は、bingbotとかクローラーっぽいのばかりだったので、
まぁいいかなと思ってたんだが、一般ユーザも弾かれていたようだ。
問い合わせが来た。
そもそも、SQL InjectionとかXSSとか、色々な他のルールを適用してるから、
Anonymous IP Listは解除しても良いんじゃないかと思って、解除した矢先の問い合わせだった。
Anonymous IP Listを適用するのは危険だな。
AWSManagedRulesCommonRuleSet も少し危険だった。
ユーザーエージェントが空のリクエストをすべて弾く設定なんだが、
その影響で、たぶんブラウザが画像の取得をリクエストしてきた際に弾いてたっぽい。
個別で、NoUserAgent_HEADER これを無効にすることで解決した。
WAFは微調整が必要だな。
AWS Managed Rules rule groups リスト - AWS WAF および AWS Firewall Manager AWS Shield アドバンスド
AWS#AWSManagedRulesCommonRuleSet#CrossSiteScripting_BODY は、
たぶんフォームを使ってHTMLコードなどをPOST送信すると出るものだと思う。
COUNTにしておく。