AWS IMDS 服务模拟漏洞解析与应对策略

本文详细介绍了AWS实例元数据服务存在的潜在模拟漏洞,该漏洞可能导致凭证泄露。文章解释了漏洞的原理、影响范围,并提供了官方的缓解措施与基于SIGMA规则的安全监控方案,帮助用户在非AWS环境安全使用AWS工具。

IMDS模拟漏洞

发布日期: 2025年10月8日 太平洋夏令时上午11:15 公告ID: AWS-2025-021 范围: AWS 内容类型: 重要(需关注)

描述

AWS已意识到一个潜在的实例元数据服务模拟问题,该问题可能导致客户与意外的AWS账户进行交互。当IMDS在EC2实例上运行时,它在回环网络接口上运行并提供实例元数据凭证,客户使用这些凭证与AWS服务交互。这些网络调用从未离开EC2实例,客户可以信任IMDS网络接口位于AWS数据边界内。

当从非EC2计算节点(例如本地服务器)使用AWS工具(如AWS CLI/SDK或SSM代理)时,存在由第三方控制的IMDS提供意外AWS凭证的风险。这需要计算节点运行在第三方具有特权网络位置的网络上。AWS建议,在AWS数据边界之外使用AWS工具时,客户应遵循安装和配置指南(AWS CLI/SDKSSM代理)以确保此问题得到缓解。我们还建议您监控可能正在本地环境中运行的IMDS端点,以主动防止来自第三方的此类模拟问题。

受影响版本: IMDSv1 和 IMDSv2

解决方案

AWS建议,在AWS数据边界之外使用AWS工具时,客户应遵循安装和配置指南(AWS CLI/SDKSSM代理)以确保此问题得到缓解。

监控

组织应监控本地环境中意外的AWS实例元数据服务流量,因为这可能表明存在潜在的错误配置、本地运行的云应用程序或安全问题。

监控连接到 169.254.169.254(AWS IPv4本地链路元数据端点)和 fd00:ec2::254(AWS IPv6元数据端点)的连接、对AWS特定路径(如 /latest/meta-data/latest/api/token)的HTTP请求,以及是否存在AWS元数据头(如 X-aws-ec2-metadata-token)。这些端点绝不应出现在纯粹的本地网络中,因为它们是保留给AWS EC2实例用于检索配置数据、IAM凭证和实例信息的。

此检测指南概述以SIGMA格式提供,SIGMA是一种通用规则格式,可转换为特定的SIEM查询语言,从而实现通用检测部署。要构建此规则,请定义 logsource: category: network 以关联不同的网络遥测数据,然后创建多个选择块。ip_aws_dst: dst_ip: 169.254.169.254 捕获直接连接,而 http_url_paths: url|contains: ['/latest/meta-data', '/latest/api/token'] 使用SIGMA的列表语法检测元数据请求。在不同的选择块中使用字段变体,如 destination.ipc-iprequest_url|contains,以适应不同供应商的日志模式。实现条件逻辑以通过其给定前缀匹配所有选择块(例如,condition: 1 of ip_* or 1 of http_*,其中通配符 * 匹配以这些前缀开头的所有选择块)。可以通过使用SIGMA的 contains 修饰符来提高检测的精确度:request_headers|contains: 'X-aws-ec2-metadata-token' 用于IMDSv2令牌请求。部署后,SIGMA将此通用语法转换为您的SIEM的原生查询语言——Splunk的SPL、QRadar的AQL、Sentinel的KQL或Elastic的KQL——在适应平台特定字段名称和运算符的同时保持相同的检测逻辑。

为了提高规则的保真度,客户可以考虑仅对本地网络流量触发警报,方法是应用基于源子网或VLAN的抑制逻辑。

如有任何安全问题或疑问,请发送邮件至 aws-security@amazon.com

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计