AWS STS 罕见用户和成员账户的 AssumeRoot

编辑

AWS STS 罕见用户和成员账户的 AssumeRoot

编辑

识别 AWS 中罕见用户执行 STS AssumeRoot 操作的情况。AssumeRoot 操作允许用户承担根成员账户角色,并根据指定的任务策略授予提升但特定的权限。攻击者可能已泄露用户凭证(例如访问密钥和密钥),他们可以使用此技术来提升权限并获得对 AWS 资源的未授权访问。这是一个[新术语](https://elastic.ac.cn/guide/en/security/current/rules-ui-create.html#create-new-terms-rule) 规则,用于识别当 STS AssumeRoot 操作由很少承担此角色和特定成员账户的用户执行时的情况。

规则类型: new_terms

规则索引:

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

严重性: 低

风险评分: 21

运行频率: 5 分钟

搜索索引起始时间: now-9m (Date Math 格式,另请参阅 额外回溯时间)

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

参考:

标签:

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

版本: 1

规则作者:

  • Elastic

规则许可: Elastic License v2

调查指南

编辑

分类和分析

调查 AWS STS 罕见用户和成员账户的 AssumeRoot

此规则识别使用 AWS STS(安全令牌服务)承担根角色,从而获得 AWS 资源访问的临时凭据的情况。虽然此操作通常是合法的,但攻击者可能会利用它来获得未授权访问、提升权限或在 AWS 环境中横向移动。

可能的调查步骤

  • 识别执行者和承担的角色:
  • 用户身份:查看 aws.cloudtrail.user_identity.arnaws.cloudtrail.user_identity.type 字段,以确定谁发起了 AssumeRoot 操作。
  • 账户上下文:检查 aws.cloudtrail.recipient_account_id 字段,了解受该操作影响的账户。这很可能是管理账户。
  • 身份验证:如果可用,请查看 aws.cloudtrail.user_identity.access_key_id,以识别用于该操作的访问密钥。如果发生未经授权的活动,此密钥可能会被泄露。
  • 资源:检查 aws.cloudtrail.resources.typeaws.cloudtrail.resources.arn,以确定承担的资源或角色。这是承担根角色的成员账户。
  • 分析请求参数:
  • 会话详细信息:检查 aws.cloudtrail.flattened.request_parameters.durationSeconds,了解会话持续时间。
  • 权限:查看 aws.cloudtrail.flattened.request_parameters.taskPolicyArn,了解关联的策略。这些策略是预定义的,并向承担的根账户授予特定权限。
  • 目标实体:检查 aws.cloudtrail.flattened.request_parameters.targetPrincipal 字段,了解正在访问的实体。这通常是成员账户。
  • 目标策略:检查 aws.cloudtrail.flattened.request_parameters.targetPolicyArn 字段,了解应用于临时根凭证的策略。这可以帮助确定授予的权限范围。
  • 检查响应详细信息:
  • 已颁发的凭证:查看 aws.cloudtrail.flattened.response_elements.credentials,以确认已颁发凭证并记录其过期时间(expiration 字段)。可以通过在 aws.cloudtrail.user_identity.access_key_id 中搜索该值,将临时访问密钥用于由承担的根账户执行的其他操作。
  • 检查源详细信息:
  • 源 IP 和位置:评估 source.addresssource.geo 字段,以确认请求的来源。异常位置可能表示未经授权的活动。
  • 用户代理:分析 user_agent.original,以确定使用的工具或应用程序(例如,AWS CLI、SDK 或自定义工具)。
  • 与相关事件关联:
  • 并发事件:查找周围的 CloudTrail 事件,这些事件指示后续操作,例如访问敏感资源或权限提升尝试。
  • 历史活动:查看 aws.cloudtrail.user_identity.arn 的历史活动,以确定此操作是否异常。
  • 评估权限提升风险:
  • 角色权限:检查承担的角色或任务策略授予的权限 (aws.cloudtrail.flattened.request_parameters.taskPolicyArn)。
  • 操作上下文:确认该操作是否符合例行操作或是否异常。

误报分析

  • 授权管理活动:
  • 验证该活动是否由 AWS 管理员出于合法目的发起。
  • 自动化工作流程:
  • 确定该操作是否为自动化流程或工作流程的一部分。

响应和补救

  1. 撤销未经授权的凭证:

    • 如果确定存在恶意活动,请立即撤销与 AssumeRoot 操作关联的会话令牌和访问密钥。
    • 可能需要从受影响的用户或服务账户中删除已泄露的访问密钥。
  2. 增强监控:

    • 提高敏感角色和操作(尤其是 AssumeRoot)的监控频率。
  3. 查看 IAM 策略:

    • 限制账户或角色承担根角色的权限,并在适用情况下强制执行多因素身份验证 (MFA)。
  4. 隔离和调查:

    • 隔离受影响的账户或角色,并遵循事件响应程序来确定活动的范围和影响。

附加信息

有关 AssumeRoot 的更多信息,请参阅 AWS STS 文档

规则查询

编辑
event.dataset: "aws.cloudtrail"
    and event.provider: "sts.amazonaws.com"
    and event.action: "AssumeRoot"
    and event.outcome: "success"

框架: MITRE ATT&CKTM