Spacebar Campaigns

AL-002 CloudTrail Secrets/RDS Discovery Log

Log ID:
AL-002
Source:
AWS CloudTrail
Representative Path:
Wazuh-AWS / /var/ossec/logs/archives/archives.log
Collection:
Wazuh aws-s3 module
Primary Use:
Secrets Manager 및 RDS API 조회를 통한 내부 DB 접속정보 식별 여부 확인

공격 행위 요약

AL-002는 공격자가 획득한 AWS 임시 자격증명으로 Secrets Manager와 RDS API를 조회한 행위를 설명하는 CloudTrail 로그이다.

공격자는 ListSecrets API로 Secrets Manager에 저장된 Secret 목록을 조회하고, GetSecretValue API로 nodefall-rds-credential Secret 값을 조회했다. 이후 DescribeDBInstances API를 호출하여 RDS 인스턴스 메타데이터를 확인했다.

CloudTrail에서 ListSecrets, GetSecretValue, DescribeDBInstances가 같은 AssumedRole 세션으로 확인되므로, EC2 Instance Profile 기반 임시 자격증명이 내부 DB 접속정보와 RDS 자산 식별에 사용되었음을 판단할 수 있다.

로그 발생 위치

구분위치설명
AWSCloudTrailAWS API 호출 이벤트 기록
StorageCloudTrail S3CloudTrail 원본 JSON 저장
WazuhWazuh-AWSWazuh가 수집한 CloudTrail 로그 확인

수집 방식

구분방식
AWSCloudTrail이 Secrets Manager 및 RDS 관리 이벤트를 기록
DestinationCloudTrail 원본 JSON 로그를 S3 버킷에 저장
CollectorWazuh manager의 aws-s3 모듈이 CloudTrail S3 로그를 수집
ParsingWazuh가 수집 로그를 integration="aws" 형식으로 파싱
Storage수집된 이벤트를 Wazuh archives에 저장
AnalysiseventName="ListSecrets", GetSecretValue, DescribeDBInstances 기준으로 AL-002 이벤트 확인

로그 출력 명령어

sudo docker exec single-node_wazuh.manager_1 grep -R 'vuln-eks-node-role' /var/ossec/logs/archives \
| grep -E '"eventName": "(ListSecrets|GetSecretValue|DescribeDBInstances)"' \
| grep '2026-05-27T08:59'

실제 관측 로그

{
  "integration": "aws",
  "aws": {
    "eventTime": "2026-05-27T08:59:31Z",
    "eventSource": "secretsmanager.amazonaws.com",
    "eventName": "ListSecrets",
    "requestParameters": {
      "maxResults": 20
    },
    "userIdentity": {
      "type": "AssumedRole",
      "arn": "arn:aws:sts::814871720550:assumed-role/vuln-eks-node-role/i-0fceb9d1e28db3cd7",
      "sessionIssuer": "vuln-eks-node-role",
      "credentialsIssuedTo": "arn:aws:ec2:ap-northeast-2:814871720550:instance/i-0fceb9d1e28db3cd7"
    },
    "sourceIPAddress": "13.125.8.139",
    "source": "cloudtrail"
  }
}
{
  "integration": "aws",
  "aws": {
    "eventTime": "2026-05-27T08:59:46Z",
    "eventSource": "secretsmanager.amazonaws.com",
    "eventName": "GetSecretValue",
    "requestParameters": {
      "secretId": "nodefall-rds-credential"
    },
    "userIdentity": {
      "type": "AssumedRole",
      "arn": "arn:aws:sts::814871720550:assumed-role/vuln-eks-node-role/i-0fceb9d1e28db3cd7",
      "sessionIssuer": "vuln-eks-node-role",
      "credentialsIssuedTo": "arn:aws:ec2:ap-northeast-2:814871720550:instance/i-0fceb9d1e28db3cd7"
    },
    "sourceIPAddress": "13.125.8.139",
    "source": "cloudtrail"
  }
}
{
  "integration": "aws",
  "aws": {
    "eventTime": "2026-05-27T08:59:58Z",
    "eventSource": "rds.amazonaws.com",
    "eventName": "DescribeDBInstances",
    "requestParameters": null,
    "userIdentity": {
      "type": "AssumedRole",
      "arn": "arn:aws:sts::814871720550:assumed-role/vuln-eks-node-role/i-0fceb9d1e28db3cd7",
      "sessionIssuer": "vuln-eks-node-role",
      "credentialsIssuedTo": "arn:aws:ec2:ap-northeast-2:814871720550:instance/i-0fceb9d1e28db3cd7"
    },
    "sourceIPAddress": "13.125.8.139",
    "source": "cloudtrail"
  }
}

주요 필드

필드의미예시
locationWazuh 수집 위치wazuh->Wazuh-AWS
eventTimeAWS API 호출 발생 시각2026-05-27T08:59:31Z
eventName호출된 AWS APIListSecrets, GetSecretValue, DescribeDBInstances
requestParameters조회 대상 또는 요청 조건{"secretId": "nodefall-rds-credential"}
userIdentity.arnAPI 호출에 사용된 Role 세션arn:aws:sts::814871720550:assumed-role/vuln-eks-node-role/i-0fceb9d1e28db3cd7

커버 대상 Techniques Used

Primary LogTechniqueMapping Reason
AL-002T1213.006 Data from Information Repositories: DatabasesAWS API로 Secret 및 RDS 메타데이터를 조회한 행위를 설명한다.
FL-006T1213.006 Data from Information Repositories: Databases확보한 접속정보로 MySQL을 실행해 RDS에 접근한 행위를 설명한다.

탐지 포인트

Technique관찰 행위주요 필드
T1213.006 Data from Information Repositories: DatabasesWazuh에 CloudTrail 로그가 Wazuh-AWS 위치로 수집되었는지 확인한다.location
T1213.006 Data from Information Repositories: DatabasesListSecrets 호출을 통해 Secrets Manager 목록 조회가 발생했는지 확인한다.eventName, eventTime
T1213.006 Data from Information Repositories: DatabasesGetSecretValue 호출에서 nodefall-rds-credential Secret이 조회되었는지 확인한다.eventName, requestParameters
T1213.006 Data from Information Repositories: DatabasesDescribeDBInstances 호출을 통해 RDS 인스턴스 메타데이터 조회가 발생했는지 확인한다.eventName, eventTime
T1213.006 Data from Information Repositories: Databases해당 API 호출이 vuln-eks-node-role AssumedRole 세션으로 수행되었는지 확인한다.userIdentity.arn