AWS WAFのアクセスログ記録でフィルタリング処理が可能になりました
AWSチームのすずきりょうです。
2021年5月のAWS WAFのアップデートで、アクセスログのフィルタリングがサポートされました。
AWS WAFルールで 「Count」、「Block」と判定されたログのみ記録する設定を試す機会がありましたので、紹介させていただきます。
WAFダッシュボード
Web ACLs > Logging and metrics
WAFのログ設定画面に「Filter Logs」が追加されました。
フィルタ設定
デフォルトは記録対象外(Drop)、「Count」、「Block」と判定されたログのみを記録する設定としました。
2021年4月よりAWS WAFでサポートされたラベルをフィルタ対象とする事も可能です。
結果
フィルタ設定後、WAFアクセスログを記録するFirehoseの容量(IncommingBytes)は、約85%の節減となりました。
変更前(17MB)
- 5/8 17時0分
変更後(3MB)
- 5/15 17時0分
まとめ
AWS WAFのアクセスログ、WAFのルール情報やリクエストヘッダなどが記録されるため1レコードあたりの容量が数KB〜と大きくなる場合があり、 アクセス数の多いサイトでは ログ記録、解析時に発生するコストが課題になる事がありました。
今回リリースされたフィルタ機能を利用する事で、コストを抑えたアクセスログの記録が可能になりました。 特に多機能なマネージドルールを利用して遮断を行う場合には、WAFルールの誤判定が発生した場合の調査対応を可能とするために「Block」ログを記録する事をおすすめします。