实验室:利用XXE执行SSRF攻击
学徒
这个实验室有一个“检查库存”功能,可以解析XML输入,并在响应中返回任何意外值。
实验室服务器正在默认URL上运行(模拟的)EC2元数据端点,默认URL为http://169.254.169.254/
。此终结点可用于检索有关实例的数据,其中一些可能是敏感的。
要解决实验室问题,利用XXE执行以下操作的漏洞:SSRF攻击从EC2元数据端点获取服务器的IAM秘密访问密钥。
解决方案
- 访问产品页面,单击“检查库存”,并在Burp Suite中拦截生成的POST请求。
在XML声明和库存支票
要素:
]>
- 替换
productId
参考外部实体的编号:&xxe;
。响应应包含“无效产品ID:”后跟元数据终结点的响应,该响应最初将是文件夹名称。
- 迭代更新DTD中的URL以探索API,直到到达
/最新/元数据/iam/安全凭据/管理员
。这将返回包含秘钥
.