TMAegis
More rules for alibaba

TMA-ALIBABA-2.2

Ensure the OSS used to store ActionTrail logs is not publicly accessible

HighLevel 1Automatedalibaba

Description

ActionTrail logs a record of every API call made in your Alibaba Cloud account. These logs file are stored in an OSS bucket. It is recommended that the access control list (ACL) of the OSS bucket, which ActionTrail logs to, shall prevent public access to the ActionTrail logs. Allowing public access to ActionTrail log content may aid an adversary in identifying weaknesses in the affected account's use or configuration. Every OSS bucket that a trail delivers to (OssBucketName) must have ACL private (aliyun oss stat). Read-only aliyun CLI calls; credentials and default region come from the CLI's normal profile (aliyun configure, ~/.aliyun/config.json or ALIBABA_CLOUD_* environment variables). JSON output is parsed with sed/awk. A missing CLI or credential fails the check.

How it is checked

Audit method: Shell command

shell
out=$(aliyun actiontrail DescribeTrails 2>/dev/null) || exit 1
bs=$(printf '%s\n' "$out" | sed -n 's/.*"OssBucketName"[[:space:]]*:[[:space:]]*"\([^"]\{1,\}\)".*/\1/p' | sort -u)
bad=0
for b in $bs; do
  st=$(aliyun oss stat "oss://$b" 2>/dev/null) || exit 1
  acl=$(printf '%s\n' "$st" | sed -n 's/^[[:space:]]*ACL[[:space:]]*:[[:space:]]*\([^[:space:]]*\).*/\1/p' | head -n 1)
  [ "$acl" = private ] || { echo "trail bucket ACL $acl: $b"; bad=1; }
done
[ "$bad" -eq 0 ] && echo compliant
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

aliyun oss set-acl oss://<bucket> private -b for each listed bucket and review its bucket policy for anonymous grants.

Properties

Operating systems
Any
Tags
alibabalogging
Reference
CIS Alibaba Cloud Foundation Benchmark v2.0.1 - 2.2 Ensure the OSS used to store ActionTrail logs is not publicly accessible

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target alibaba