[アップデート] AWS WAF のマネージドルールグループ「Bot Control」に新しいバージョンが追加され Targeted ルールが強化されました
いわさです。
AWS WAF では追加オプションで Bot Control というマネージドルールグループを使うことが出来ます。
ボット検出・対策における様々なルールが AWS から提供されているものとなります。
先日のアップデートでこちらのマネージドルールが拡張されたとアナウンスがありました。
早速こちらのルールを有効化し変更点を探ってみましたので紹介したいと思います。
バージョン 2.0 と 3.0 が追加された
実は最近 AWS WAF のマネージドルールもバージョン選択が出来るようになっています。
3 ヶ月ほど前に Bot Control でもバージョン選択が出来るようになりました。
その時のタイミングではデフォルトである 1.0 のみ選択出来る状態だったのですが、今回のアップデートで 2.0 と 3.0 が追加されています。
デフォルトは 1.0 なのですが、明示的に 2.0 か 3.0 を選択することで今回の強化された機能を使うことが出来ます。
2.0 と 3.0 は使われるマネージドルール自体は同じものとなっています。
ただし、3.0 で Block や Captcha がアクションとして設定されているものが 2.0 では Count になっているのが違いです。以下は 2.0 のルール。
手動でオーバーライドも出来るので必ずしも 2.0 と 3.0 を使い分ける必要はないのですが、現状この 2 つのバージョンの違いはアクションのみであると覚えておきましょう。
バージョン 1.0 との違いは Targeted のルール構成
2.0 と 3.0 のルールが同じだと確認出来たので、続いてバージョン 1.0 と 2.0/3.0 の違いを確認します。
Bot Control 内のマネージドルールですが、大きくは Common と Targeted の検査レベルに分類されます。詳しくは以下の記事が参考になるのですが、Targeted はより高度な検出が可能になる、更に追加料金が発生するオプションルールです。
上記記事の執筆時点では Targeted ルールは 4 個だったようですが、現在は 1.0 の Targeted レベルのルールは 7 個です。
で、今回のアップデート追加された 2.0/3.0 ですが、Targeted ルールが 19 個に増えています。差分は以下です。
バージョン 1.0 でサポートされていたマネージドルールは以下です。
- TGT_VolumetricipTokenAbsent
- TGT_VolumetricSession
- TGT_SignalAutomatedBrowser
- TGT_SignalBrowserInconsistency
- TGT_ML_CoordinatedActivityMedium
- TGT_ML_CoordinatedActivityHigh
- TGT_TokenReuselp
こちらに以下のルールが新たに追加されています。
- TGT_TokenAbsent
- TGT_VolumetricSessionMaximum
- TGT_SignalBrowserAutomationExtension
- TGT_ML_CoordinatedActivityLow
- TGT_TokenReuseCountryLow
- TGT_TokenReuseCountryMedium
- TGT_TokenReuseCountryHigh
- TGT_TokenReuseAsnLow
- TGT_TokenReuseAsnMedium
- TGT_TokenReuseAsnHigh
さらに「TGT_TokenReuselp」は以下の 3 つに分かれました
- TGT_TokenReuselpLow
- TGT_TokenReuselpMedium
- TGT_TokenReuselpHigh
一番強化されているのはトークン再利用検出が IP アドレスベースで従来は検出されていたのですが、追加で国や ASN での識別も追加され、さらに Low - Medium - High とレベル付けされるようになっています。
WAF トークンについては以下を参照してください。
その他にもブラウザ拡張機能による自動化の検出など、いくつかルールが追加されています。各ルールの詳細は以下のドキュメントもご確認ください。
ラベルが追加された
Bot Control マネージドルールによる検出で設定されるラベルですがいくつか追加されています。
AI ボットの検出や、クラウドサービスプロバイダーの検出ラベルなど設定されるようになっています。
これらの検出ラベルを使ってカスタムルールで独自の判定を行うことが出来ます。
ちょっと数が多いのですが、以下が追加されています。
- HTTP ライブラリ ボット:
- awswaf:managed:aws:bot-control:bot:name:fasthttp
- AIボット:
- awswaf:managed:aws:bot-control:bot:name:bedrockbot
- awswaf:managed:aws:bot-control:bot:name:claudebot
- awswaf:managed:aws:bot-control:bot:name:anthropic
- awswaf:managed:aws:bot-control:bot:name:metaexternalagent
- awswaf:managed:aws:bot-control:bot:name:bytespider
- awswaf:managed:aws:bot-control:bot:name:omgili
- awswaf:managed:aws:bot-control:bot:name:diffbot
- awswaf:managed:aws:bot-control:bot:name:perplexitybot
- awswaf:managed:aws:bot-control:bot:name:timpibot
- awswaf:managed:aws:bot-control:bot:name:cohere
- 検索エンジンボット:
- awswaf:managed:aws:bot-control:bot:name:naver
- 広告ボット:
- awswaf:managed:aws:bot-control:bot:name:naver_ads
- ソーシャル メディア ボット:
- awswaf:managed:aws:bot-control:bot:name:snapchat
- コンテンツ収集ボット:
- awswaf:managed:aws:bot-control:bot:name:naver_preview
- awswaf:managed:aws:bot-control:bot:name:censys
- awswaf:managed:aws:bot-control:bot:name:imessage_preview
- awswaf:managed:aws:bot-control:bot:name:imagesift
- クラウド サービス プロバイダー:
- awswaf:managed:aws:bot-control:signal:cloud_service_provider:aws
- awswaf:managed:aws:bot-control:signal:cloud_service_provider:azure
- awswaf:managed:aws:bot-control:signal:cloud_service_provider:gcp
- awswaf:managed:aws:bot-control:signal:cloud_service_provider:oracle
- awswaf:managed:aws:bot-control:signal:cloud_service_provider:digital_ocean
- awswaf:managed:aws:bot-control:signal:cloud_service_provider:akamai
- awswaf:managed:aws:bot-control:signal:cloud_service_provider:cloudflare
- awswaf:managed:aws:bot-control:signal:cloud_service_provider:ibm_cloud
さいごに
本日は AWS WAF のマネージドルールグループ「Bot Control」に新しいバージョンが追加され Targeted ルールが強化されたので変更点などを確認してみました。
既に Targeted レベルでご利用されている方はぜひ試してみてください。
今回様々なルールが追加されていますので、Bot Control を見送っていた方、あるいは Common レベルまでの利用だった方も今回追加されたルールで使えそうなものがあれば検討してみてください。