XXE外部实体注入有回显&无回显利用方式
slug
series-status
status
summary
date
series
type
password
icon
tags
category
前言
XXE(XML External Entity)漏洞是一种常见的Web应用安全漏洞,它存在于使用XML解析器的程序中。XXE漏洞允许攻击者在XML数据中引入外部实体,从而在服务器端解析XML时导致安全问题。
例如,攻击者可以使用XXE漏洞读取服务器上的敏感文件,如配置文件或数据库中的数据。此外,XXE漏洞还可能导致服务器被拒绝服务攻击(DoS)、远程代码执行(RCE)等。
为了预防XXE漏洞,开发人员应该禁用不必要的XML实体解析,并对XML数据进行严格的验证。此外,如果不能禁用XML实体,则可以使用安全配置,以限制外部实体的访问范围。
复现
环境
- pikachu靶场
环境搭建
docker-compose.yml
复现
- 进入pikachu靶场的xxe部分

- 输入以下payload检验是否存在xxe漏洞

显示如上图所示说明存在xxe问题。
- 输入以下payload尝试通过file协议读取本地文件

成功
- 尝试利用以下命令读取远程文件

发现可以正常读取远程文件。
无回显XXE
- 攻击服务器上放置如下dtd文件:
- 启动httpserver
- 发送如下payload给靶场
- 查看httplog:

成功收到回显。

无回显内网探测
- 攻击外部dtd
- 攻击payload
- 攻击效果


可知内网172.17.0.1主机的80端口存活。
Loading...