利用XXE进行SSRF攻击
除了检索敏感数据之外,XXE 攻击的另一个主要影响是它们可用于执行服务器端请求伪造 (SSRF)。这是一个潜在的严重漏洞,其中可以诱导服务器端应用程序向服务器可以访问的任何 URL 发出 HTTP 请求。
要利用 XXE 漏洞执行SSRF 攻击,您需要使用要定位的 URL 定义外部 XML 实体,并在数据值中使用定义的实体。如果您可以在应用程序响应中返回的数据值中使用定义的实体,那么您将能够从应用程序响应中的 URL 查看响应,从而获得与后端系统的双向交互。如果没有,那么您将只能执行盲目的 SSRF攻击(这仍然会产生严重的后果)。
在以下 XXE 示例中,外部实体将导致服务器向组织基础架构内的内部系统发出后端 HTTP 请求:
<!DOCTYPE foo [ <!ENTITY xxe SYSTEM "http://internal.vulnerable-website.com/"> ]>
内容
该实验室具有“检查库存”功能,可解析 XML 输入并在响应中返回任何意外值。
实验室服务器在默认 URL 上运行(模拟的)EC2 元数据端点,即http://169.254.169.254/. 此端点可用于检索有关实例的数据,其中一些可能是敏感的。
为解决实验室,利用XXE漏洞执行SSRF攻击,从EC2元数据端点获取服务器的IAM秘密访问密钥。
方法:
- 访问产品页面,单击“检查库存”&#