🤖
AWS WAF BotControlを導入してみた
AWS WAF BotControlとは
- AWS WAFマネージドルールの1つ
- WAFでBotからのアクセスの可視化、制御が可能
- WAFが導入できる環境なら、簡単にBot対策が可能に
利用料金
リソースタイプ | 料金 |
---|---|
Bot Control | 1 か月当たり 10.00 USD (時間単位で案分) |
リクエスト | 1.00 USD/100 万リクエスト |
AWS WAF の料金
https://aws.amazon.com/jp/waf/pricing/
Bot Controlで見れる情報
- 全体リクエストからのBotの比率
- 許可したBotと拒否したBotリクエストの数
- Botのカテゴリー
- 特定のBotのリクエストの数
Bot Controlのルール設定
- ルール設定でカテゴリー毎に許可、拒否が可能
- カテゴリー中の特定のBotを拒否する事も可能
AWS WAF Bot Control rule group
https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-list.html#aws-managed-rule-groups-bot
Botの検証
Bot Control側で正常なBotからのリクエストであるか自動で検証されます
ほとんどの正当なボットは、ユーザーエージェントを超える検証方法を提供しており、通常は IP アドレスの逆引き DNS によって、ドメイン名とホスト名の妥当性を検証します。
https://aws.amazon.com/jp/blogs/news/fine-tune-and-optimize-aws-waf-bot-control-mitigation-capability/
デフォルト設定では検証済みBotはBot Controlによってブロックされませんが、
カスタムルールでブロックする事も可能です
これをうまく使えばUserAgentを偽装したBotからの攻撃も防げそうです
導入してみた感想
- Botからのアクセスを可視化したい場合には便利
- 「Bot Controlを導入したからBot対策バッチリ」というわけではない
- どのBotが必要なのか精査したり、ルールのチューニングが必要になる
- Countモードで集計したBotのリクエストを見ながらルールをチューニングする運用が安全
AWS WAF BotControlを本番環境に導入してみた
Discussion