xxe原理就不进行介绍了
XXE环境搭建
xxe下载地址:
https://download.vulnhub.com/xxe/XXE.zip
也可以进去vulnhub,搜索xxe然后下载
下载之后直接用虚拟机打开ovf文件
vulnhub xxe解析
安装之后的界面
vulnhub xxe解析
使用nmap扫描内网,发现一个157地址开放80
vulnhub xxe解析

打开之后出现下面界面表示安装成功
vulnhub xxe解析
根据要求是在/xxe/目录下进行测试,如果不知道的话可以用目录扫描工具进行扫描

vulnhub xxe解析
使用bp抓包
vulnhub xxe解析看到用户名和密码被xml语句包含,由此想到xxe漏洞
在构造语句前,目录扫描也有了结果,
vulnhub xxe解析可以看到有一个admin.php

vulnhub xxe解析然后就可以构造payload了

<?xml version="1.0" ?> <!ENTITY sp SYSTEM "php://filter/read=convert.base64-encode/resource=admin.php">

]>
&sp;hj

vulnhub xxe解析发现有一串base64加密文件,解密之后审查代码发现一个flagmeout.php

vulnhub xxe解析
在带入进去
vulnhub xxe解析再次解码得到如下一串代码
vulnhub xxe解析经验丰富的人就可以看出它是base32加密,为什么呢?因为它全是大写字母和数字,在base32解码之后得到一个base64加密
vulnhub xxe解析在解密得到
/etc/.flag.php
vulnhub xxe解析之后在带入进去
vulnhub xxe解析再次解码
vulnhub xxe解析看出来是php代码,用php在线代码工具运行得到flag
vulnhub xxe解析

总结:顺腾摸瓜,一步一步的往下走,不要慌乱!

相关文章: