ActionTrail OSS バケットへの公開アクセス

ActionTrail の監査ログを保存する OSS バケットへの公開アクセスを制限してください。

説明

ActionTrail のログバケットで公開読み取りを許可すると、運用活動、アカウントの操作、セキュリティイベントが外部に漏れる可能性があります。監査ログはインシデント調査の重要な資料なので、必要なサービスと運用担当者だけにアクセスを許可してください。

public-read と public-read-write の ACL を避け、バケットポリシー、オブジェクト ACL、パブリックアクセスのブロックを併せて確認してください。インターネットから接続できる OSS エンドポイントがあるだけで、匿名アクセスが許可されるわけではありません。

想定される影響

  • ログ内のリソース情報や操作履歴が、環境を把握する手がかりになる可能性があります。
  • 書き込みまで公開されている場合、ログオブジェクトの変更や削除によって調査資料の信頼性が損なわれる可能性があります。

対処方法

  • ログバケットの ACL を private にし、ポリシーとオブジェクト ACL の不要な公開権限を削除してください。
  • ActionTrail のログ配信に必要なロール権限は維持し、読み取りは必要な運用担当者だけに許可してください。
  • 変更後も新しいログが届き、許可されていない要求が拒否されることを確認してください。

例

利用可能な一意のバケット名を使い、actiontrail_oss_write_role_arn にログ配信権限を持つ実際の RAM ロール ARN を指定してください。既存バケットの ACL を変更する際は、名前と Terraform リソースアドレスを維持してください。

変更前

hcl
resource "alicloud_oss_bucket" "actiontrail_bucket" {
  bucket = "bucket-actiontrail-3"
  acl    = "public-read"
}

resource "alicloud_actiontrail_trail" "actiontrail" {
  trail_name         = "action-trail"
  oss_write_role_arn = var.actiontrail_oss_write_role_arn
  oss_bucket_name    = "bucket-actiontrail-3"
  event_rw           = "All"
  trail_region       = "All"
}

公開読み取りの ACL を要求しています。実際の公開範囲は、オブジェクト ACL やほかのアクセス制御も併せて確認してください。

変更後

hcl
resource "alicloud_oss_bucket" "actiontrail_bucket" {
  bucket = "bucket-actiontrail-1"
  acl    = "private"
}

resource "alicloud_actiontrail_trail" "actiontrail" {
  trail_name         = "action-trail"
  oss_write_role_arn = var.actiontrail_oss_write_role_arn
  oss_bucket_name    = "bucket-actiontrail-1"
  event_rw           = "All"
  trail_region       = "All"
}

非公開の ACL を使用しています。バケットポリシーの別の許可と、ログ配信に必要な権限も確認してください。

参考資料