阅读 CloudTrail 事件记录
解读描述每次调用发起者的 JSON 字段。
阅读 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 反馈 — 无需本地设置。
此课程中的所有课时
- CloudTrail 记录的内容
- 管理事件、数据事件和洞察事件
- 跨账户的组织跟踪
- 阅读 CloudTrail 事件记录