vulnhub-xxe靶场通关(xxe漏洞续)

时间:2023-06-24 16:11:45来源:博客园
vulnhub-xxe靶场通关(xxe漏洞续)

下面简单介绍一个关于xxe漏洞的一个靶场,靶场来源:https://www.vulnhub.com 这里面有很多的靶场。靶场环境需要自己下载:https://download.vulnhub.com/xxe/XXE.zip因为是外国的靶场,下载速度有点慢,也可以通过公众号——星光安全,回复“xxe靶场”获得。接下来我们开始打靶。

一、搭建靶场1>打开虚拟机,将我们下载好的靶场环境导入

这是我们解压后的靶场环境,然后打开虚拟机将其导入


(资料图片仅供参考)

名字可以随便起,选择好路径就可以了

这时你的虚拟机最左侧就会多出一个虚拟机,我们可以打开

到这里,靶场就搭建好了。

二、扫描其网段

我们打开可以发现,不知道密码,根本没有办法登录;他的IP我们也不知道,貌似有点无从下手,但是可以通过我们之前学的信息收集对他逐步深入。我们有一个centos的虚拟机,我们可以查看一下这个虚拟机的IP地址,因为这个centos虚拟机和xxe的虚拟机在同一网段,这样我们通过扫描centos的虚拟机就可以得到xxe虚拟机的IP。

1>查看centos的IP地址2>使用nmap扫描IP3>找到xxe虚拟机的IP

点击服务,我们可以看到有http的,然后看一下,发现有个Ubuntu的,而且80端口还开放,我们访问一下。正常情况下那三个IP我们都可以访问一下,但是我们知道那两个是我们自己的,就直接访问最后一个即可。

4、访问注:如果centos用的桥接模式,xxe虚拟机用的是nat模式,无法扫到,两个必须要用一样的网络状态,要么都是桥接,要么都是nat,xxe虚拟机的网络状态默认是nat。有的人可能没有其他的虚拟机,搭建了xxe环境,只有这一个,那么你需要把xxe这个虚拟机的网络状态改为桥接,扫描的时候只需要扫描本机的IP即可。不懂桥接模式和nat模式的可以自行百度一下。三、扫描目录

有了IP以后,接着往下走,下面的话肯定是扫描他的目录了。使用御剑或者dirsearch对IP进行扫描。先来看一些御剑的扫描

再来看一下dirsearch的扫描

这两款工具都是可以达到一个扫描目录的目的,(公众号回复 “扫描工具” 获得)扫描到一个robots.txt文件,尝试访问。

可以看到里面的内容,有一个是xxe的目录,还有一个admin.php文件,都进行访问一下

再访问一下xxe

可以看到是一个登录页面,我们就可以进行抓包尝试了。

四、寻找flag

随便输入账号密码,进行抓包

发现末尾是xml语句的提交,联想到xxe漏洞,我们可以修改这些语句,使其读取文件,先读取一下xxe.php文件,数据包头部有这个文件

修改代码如下:
]>&sp;hj

然后进行base64解码,选中需要解码的部分,发送到Decoder模块

然后点击Decoder,进行解码

发现没有什么用,这是我们可以想到robots.txt文件中有一个admin.php文件,尝试读取一下他的内容

进行解码

解码之后,我们可以发现有账号密码,但是密码用MD5进行了加密,解密一下

这样就有了账号密码,登录一下

登录一下发现账号和密码错误,这是因为我们获取的是xxe目录下的admin.php,所以应该在这个目录下登录

输入账号密码,登录

看到了他提示我要的flag,我们点击

又提示了一个文件,那我们还需要读取一下这个flag文件中的内容了

进行解码

可以看到the flag in (JQZFMMCZPE4HKWTNPBUFU6JVO5QUQQJ5),这串代码也是进行了加密,我们再进行解密,他的加密方式是base32 (一般MD5加密是32位,base64加密末尾都有等于号,没有等于号的可能是base32加密,严格意义上说是编码),将其解码看一下

这又是一个base64编码,再进行解码

出现了一个flag的路径,读取一下

然后进行解码

解码以后,我们发现看不懂,但是我们知道他是php文件,可能是php代码,找个在线运行工具运行一下,或者新建一个php文件,将代码写进去,访问一下

得到flag,完结!!!!

总结

这个题其实不怎么难,但是考察的比较全面,有信息收集,xxe漏洞,还有一些解码,解密。其实主要还是围绕xxe漏洞展开,题不难,就是绕。以上的靶场环境以及工具,可以通过关注公众号 “星光安全” 获得

关键词:

相关资讯
热门频道