AWS Security Academy · 课时

阅读 CloudTrail 事件记录

解读描述每次调用发起者的 JSON 字段。

第 4 / 4 课13 个步骤

阅读 CloudTrail 事件记录 是 CoddyKit 上的免费 AWS Security Academy 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 AWS Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 AWS Security Academy 课程共包含 4 节课。

事件剖析

CloudTrail 事件是一个包含一组固定字段的JSON 记录。学习读取这些字段,可以让您在调查期间准确还原发生了什么。

每条记录描述一次 API 调用:谁发起了调用、执行了什么操作、何时执行、从哪里发起,以及结果如何。

userIdentity 字段

对安全而言,最重要的字段是 userIdentity。它描述发起调用的主体,包括其类型(IAMUser、AssumedRole、Root、AWSService)、账户和 ARN(Amazon 资源名称)。

借助此字段,您可以准确地将某项操作归因于特定人员、角色或服务。

"userIdentity": {
  "type": "AssumedRole",
  "arn": "arn:aws:sts::1111:assumed-role/Admin/alice"
}

事件名称和来源

eventName 是被调用的 API 操作,例如 DeleteBucket 或 RunInstances;eventSource 是该操作所属的服务,例如 s3.amazonaws.com。

二者结合起来,可以准确说明发生了哪项操作,这是理解任何事件的核心。

时间、区域和 IP

eventTime 时间戳(采用 UTC)、awsRegion 和 sourceIPAddress 可以确定调用发生的时间和位置。

来自意外区域或陌生 IP 的调用是典型的危险信号。用户代理字段还会说明调用方式——控制台、CLI 或 SDK。

请求与响应

requestParameters 显示调用的输入内容——使用了哪个存储桶、哪个实例和哪项策略;responseElements 显示 AWS 返回的内容,例如新创建资源的 ID。

这些字段让您准确了解更改了什么以及结果如何,而不仅仅是知道某件事发生过。

错误揭示线索

如果调用被拒绝,记录会包含 errorCode 和 errorMessage,例如 AccessDenied。

同一个主体突然发起大量被拒绝的调用,通常意味着攻击者正在探测被窃取的凭证能够执行哪些操作。失败事件与成功事件一样具有调查价值。

角色链

当访问通过承担的角色进行时,请沿着角色链进行追踪。userIdentity 可能会显示一个承担角色的会话,而 sessionContext 会揭示承担该角色的底层主体。

即使涉及多次角色跳转,追踪这条链也能回答最终是谁执行了某项操作。

只读与管理标志

像 readOnly 和 managementEvent 这样的字段,可以让您一眼了解调用的性质——它是否更改了任何内容,以及是否属于控制平面操作。

在大量记录中进行扫描时,这些字段可以帮助您快速筛选出更改了环境的事件。

大规模查询记录

手动读取一条记录没有问题,但筛查数百万条记录就不现实了。您可以将日志发送到 CloudWatch Logs,或使用 SQL 通过 Athena 查询 S3 存档。

您可以根据 userIdentity、eventName、sourceIPAddress 或 errorCode 进行筛选,从而在调查中准确定位重要的调用。

关注用户代理

userAgent 字段会显示调用的发起方式——AWS 控制台、特定版本的 CLI、SDK,还是自动化工具。

异常的用户代理可能暗示攻击者使用了某种工具。通常来自控制台的调用,突然通过来自异常 IP 的原始 SDK 发起,这类细微异常值得进一步检查。

综合运用

进行调查时,请结合多个字段:谁(userIdentity)对哪个资源(requestParameters)执行了什么操作(eventName),何时执行(eventTime),从哪里发起(sourceIPAddress),以及结果如何(responseElements 或 errorCode)。

从一条记录中还原出的完整情况,正是 AWS API 活动取证的核心。

快速检查

找出归因字段。

回顾

CloudTrail 事件是一个 JSON 记录,其关键字段可以回答完整的调查问题:userIdentity(谁发起操作,包括通过 sessionContext 获取的 ARN 和角色链)、eventName/eventSource(做了什么)、eventTime/awsRegion/sourceIPAddress(何时何地),以及 requestParameters/responseElements 或 errorCode(更改内容和结果)。失败的 AccessDenied 事件是很有价值的信号,而 Athena 可以让您大规模查询记录。

免费开始

用 AI 导师学习 AWS Security Academy — 免费

在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。

课程
30
课程
120

常见问题解答

「阅读 CloudTrail 事件记录」课时是免费的吗?

是的 — 「阅读 CloudTrail 事件记录」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 AWS Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 AWS Security Academy 课程共包含 4 节课。

「阅读 CloudTrail 事件记录」这节课中我会学到什么?

解读描述每次调用发起者的 JSON 字段。 你通过在浏览器中直接运行的动手代码来练习 AWS Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 AWS Security Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 AWS Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。

「阅读 CloudTrail 事件记录」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 AWS Security Academy 课中编写并运行代码吗?

能。每节 AWS Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. CloudTrail 记录的内容
  2. 管理事件、数据事件和洞察事件
  3. 跨账户的组织跟踪
  4. 阅读 CloudTrail 事件记录
← 返回 AWS Security Academy