通过假定角色获取 AWS EC2 管理员凭据

编辑

通过假定角色获取 AWS EC2 管理员凭据编辑

识别使用 GetPassword 获取 EC2 实例管理员密码的 AWS 中用户身份的首次出现。攻击者可能会使用此 API 调用来提升特权或在 EC2 实例中横向移动。

规则类型: new_terms

规则索引:

  • filebeat-*
  • logs-aws.cloudtrail*

严重程度: 中等

风险评分: 47

: 5m 运行一次

搜索索引自: now-9m (日期数学格式,另请参见 附加回溯时间)

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

参考:

标签:

  • 领域: 云
  • 数据源: AWS
  • 数据源: 亚马逊网络服务
  • 数据源: 亚马逊 EC2
  • 用例: 身份和访问审计
  • 资源: 调查指南
  • 策略: 凭据访问

版本: 3

规则作者:

  • Elastic

规则许可证: Elastic 许可证 v2

调查指南编辑

分类和分析

调查通过假定角色获取 AWS EC2 管理员凭据

此规则检测使用 AWS 中的 GetPasswordData API 调用获取 EC2 实例管理员密码的用户身份的首次出现。这可能是攻击者尝试提升特权或在 EC2 实例中横向移动的指标。

这是一个新的术语规则,这意味着它只会在 aws.cloudtrail.user_identity.session_context.session_issuer.arn 字段的每个唯一值触发一次,该字段在过去 7 天内未被发现执行此 API 请求。此字段包含触发 API 调用的假定角色的亚马逊资源名称 (ARN)。

可能的调查步骤

  • 识别用户身份和角色: 检查 AWS CloudTrail 日志以确定发出 GetPasswordData 请求的用户身份。特别注意与用户相关的角色和权限。
  • 查看请求和响应参数: 分析 aws.cloudtrail.request_parametersaws.cloudtrail.response_elements 字段以了解 API 调用的上下文和检索的密码。
  • 将上下文与用户行为关联起来: 将此活动与用户的典型行为模式进行比较。查找用户或角色在事件之前和之后采取的异常登录时间、IP 地址或其他异常操作。
  • 查看 EC2 实例详细信息: 检查从中检索密码的 EC2 实例的详细信息。评估在此实例上运行的应用程序的关键性和敏感性。
  • 检查相关的 CloudTrail 事件: 搜索由同一用户身份发出的其他 API 调用,尤其是修改安全组、网络访问控制或实例元数据的那些调用。
  • 检查横向移动: 查找使用获得的凭据访问 AWS 中其他资源或服务的证据。
  • 调查 API 调用的来源: 分析请求发出的 IP 地址和地理位置。确定它是否与合法管理活动的预期位置一致。

误报分析

  • 合法的管理操作: 确保活动不是合法管理任务(如系统维护或更新)的一部分。
  • 自动化脚本: 验证活动是否由授权使用 GetPasswordData 用于合法目的的自动化或部署脚本生成。

响应和补救措施

  • 立即隔离: 如果可疑,请隔离受影响的实例以防止任何潜在的横向移动或进一步的未经授权的操作。
  • 凭据轮换: 轮换受影响实例或假定角色以及任何其他可能被泄露的凭据的凭据。
  • 用户帐户审查: 检查受牵连的用户身份的权限。通过调整权限以防止滥用,应用最小权限原则。
  • 增强监控: 提高对触发规则的用户身份和类似 EC2 实例的监控。
  • 事件响应: 如果确认恶意意图,请启动事件响应协议。这包括进一步调查、威胁 containment、消除任何威胁行为者存在以及恢复受影响的系统。
  • 预防措施: 实施或增强安全措施,例如多因素身份验证和对 GetPasswordData 等敏感操作的持续审计。

其他信息

参考 AWS 特权提升方法 和 MITRE ATT&CK 技术 T1552.005 - 云实例元数据 API 等资源,以了解有关潜在漏洞和缓解策略的更多详细信息。

规则查询编辑

event.dataset:"aws.cloudtrail"
    and event.provider:"ec2.amazonaws.com" and event.action:"GetPasswordData"
    and aws.cloudtrail.user_identity.type:"AssumedRole" and aws.cloudtrail.error_code:"Client.UnauthorizedOperation"

框架: MITRE ATT&CKTM