首次调用 AWS STS GetCallerIdentity API

编辑

拥有被盗凭证的攻击者可能会尝试验证凭证是否有效,并确定他们正在使用的帐户。此规则会查找在过去 15 天内首次调用 STS GetCallerIdentity API 操作的身份,这可能是凭证泄露的指标。合法的用户不需要调用此操作,因为他们应该知道他们正在使用的帐户。

规则类型: new_terms

规则索引:

  • filebeat-*
  • logs-aws.cloudtrail-*

严重性: 中

风险评分: 47

运行频率: 10 分钟

搜索索引时间范围: now-60m (日期数学格式,另请参阅 额外的回溯时间)

每次执行的最大告警数: 100

参考:

标签:

  • 域: 云
  • 数据源: AWS
  • 数据源: Amazon Web Services
  • 数据源: AWS STS
  • 用例: 身份和访问审计
  • 战术: 发现
  • 资源: 调查指南

版本: 3

规则作者:

  • Elastic

规则许可证: Elastic License v2

调查指南

编辑

分类和分析

调查首次调用的 AWS GetCallerIdentity API

AWS Security Token Service (AWS STS) 是一项服务,使您可以为用户请求临时的、有限特权的凭证。GetCallerIdentity 函数返回有关拥有用于调用操作的凭证的 IAM 用户或角色的详细信息。无需任何权限即可运行此操作,即使拒绝访问也会返回相同的信息。此规则查找 GetCallerIdentity 操作的使用情况。这是一个 新术语 规则,表明这是特定用户身份在过去 15 天内首次调用此操作。

可能的调查步骤

  • 确定帐户及其在环境中的角色,属于 Lambda 或 EC2 实例等服务的角色将高度可疑。
  • 确定应使用此帐户的应用程序或用户。
  • 调查过去 48 小时内与该帐户相关的其他告警。
  • 通过将 user_agent.original 字段中的异常值与预期和授权的使用情况以及历史数据进行比较,来调查它们。可疑的用户代理值包括非 SDK、AWS CLI、自定义用户代理等。
  • 通过查找其他用户类似的事件,评估此行为在环境中是否普遍。
  • 联系帐户所有者,确认他们是否了解此活动。
  • 考虑发出命令的用户的源 IP 地址和地理位置
  • 对于调用用户来说,它们看起来正常吗?
  • 如果源是 EC2 IP 地址,它是否与您的某个帐户中的 EC2 实例相关联,或者源 IP 是否来自不受您控制的 EC2 实例?
  • 如果是授权的 EC2 实例,则此活动是否与该实例角色或多个角色的正常行为相关?是否有任何其他告警或与此实例相关的可疑活动迹象?
  • 查看用户身份的 IAM 权限策略。
  • 如果您怀疑帐户已被入侵,请通过跟踪过去 24 小时内帐户访问的服务器、服务和数据来确定可能受影响的资产的范围。

误报分析

  • 由于服务的预期使用,可能会出现误报。需要进行调整才能获得更高的置信度。考虑添加异常情况 — 最好结合用户代理和 IP 地址条件。
  • 依赖于此 API 请求结果的自动化工作流也可能会产生误报。我们建议添加与 user.nameaws.cloudtrail.user_identity.arn 值相关的异常情况以忽略这些。

响应和补救

  • 根据分类结果启动事件响应流程。
  • 在调查和响应期间禁用或限制该帐户。
  • 确定事件的可能影响并相应地确定优先级;以下操作可以帮助您获取上下文
  • 确定帐户在云环境中的角色。
  • 评估受影响的服务和服务器的关键性。
  • 与您的 IT 团队合作,确定并最大限度地减少对用户的影响。
  • 确定攻击者是否正在横向移动并危及其他帐户、服务器或服务。
  • 确定与此活动相关的任何监管或法律影响。
  • 调查在攻击者入侵或使用的系统上是否存在凭证泄露,以确保识别所有受损帐户。根据需要轮换密钥或删除 API 密钥,以撤销攻击者对环境的访问权限。在此操作期间,与您的 IT 团队合作以最大限度地减少对业务运营的影响。
  • 检查是否创建了未经授权的新用户,删除未经授权的新帐户,并请求其他 IAM 用户重置密码。
  • 考虑为用户启用多因素身份验证。
  • 查看分配给相关用户的权限,以确保遵循最小特权原则。
  • 实施 AWS 概述的安全最佳实践。
  • 采取必要的措施,使受影响的系统、数据或服务恢复到正常的运行级别。
  • 确定攻击者滥用的初始向量,并采取行动防止通过相同的向量再次感染。
  • 使用事件响应数据,更新日志记录和审计策略,以缩短平均检测时间 (MTTD) 和平均响应时间 (MTTR)。

规则查询

编辑
event.dataset: "aws.cloudtrail"
    and event.provider: "sts.amazonaws.com"
    and event.action: "GetCallerIdentity"
    and event.outcome: "success"
    and not aws.cloudtrail.user_identity.type: "AssumedRole"

框架: MITRE ATT&CKTM