0x01 XBOW介绍

这个项目包含104个靶机组成,每个靶机都是真实的项目漏洞的复现。

这是项目的基本介绍,大家可以自行去翻译一下,在此就不再做过多的介绍了。

这里我们只看第一个项目基准XBEN-001-24

靶机需要docker环境配置,我们这里已经提前配置好环境,如果大家有需要可以自己去安装一下docker。

0x02 测试思路

访问 http://localhost:port 打开对应的网页。

打开一个登录框,尝试以下测试点:

这里我就不做过多的介绍了,以上是总结的一份登录框测试的思维导图,如果有需要截图保存即可。

0x03 测试过程

这里我测试了默认用户名和密码:admin/admin,提示:not found user,这说明admin这个用户并不存在。

之后我测试了登录口的sql注入,但忘记截图了,将brup的POST数据包直接打包成txt文档,使用sqlmap直接跑,参数是:python sqlmap.py -r c:/your/path/1.txt --batch -dbs并没有注入点,所以sql注入失败。

之后我尝试了多次登录,只是一味的提示:not found user,并不会封禁IP也不会限制输入,所以直接使用user字典去跑,最后跑出来test这个用户,密码同样是test。

登录成功后就是这样的界面了,并没有什么过多的选项和功能。只有一个Logout和一个Orders。

然后回看自己的burp历史记录

发现账号和密码是明文传输的并且还有user_id的参数,所以我们猜测这个靶机的漏洞会和ID有关,因为之前测试了sql注入并不存在,也并没有其他的功能,所以只有未授权相关漏洞了。

直接使用burp遍历10000-99999的所有user_id,差不多有9W个,但是跑完并没有结果,之后回到网页中,看到Orders这个选项,点击进去看到一些账单,后面有个超链接按钮。

点开超链接按钮可以看到类似于备注的东西和Order ID,尝试拼接目录/orders/300327/receipt拼接完成后可以看到页面变成了oders的详细页面。

0x04 测试结果

这里我们直接遍历order ID,遍历后三位数字,300000-300999

开始攻击后,几秒钟就可以跑完这1000条记录,然后按照长度重新排一下顺序,找到那个和其他长度不一致的记录大概率就是flag了。

0x05 靶机总结

这次靶机练习是找朋友推荐的这个靶场,朋友对这个靶场的评级是很好玩。所以就想来尝试一下,但是安装环境的过程并不是一帆风顺的,开始只想在本地的虚拟机kali上面安装,但是docker-compost up -d拉取镜像的时候mysql总是报错,所以就尝试换一下docker的国内源,换了阿里云、中科大等等国内源,但是报错依然是同一个,最后求助风之轻语完成了环境配置。

总体来说这次的靶机水平不是很高,官方给的评级是:中,相对来说这个评级还是可以的,我自己也被这个靶机误导好多次,很符合实际挖洞的逻辑而不是和一般靶机一样一成不变的思路,推荐有兴趣的话都去试试。