【xctf之Background_Management_System】

xctf之Background_Management_System

在这里插入图片描述
在这里插入图片描述
打开网址,主页如上。
发现存在用户注册以及登录功能。
在这里插入图片描述
如果熟悉thinkphp的同学,就会看出,这道题用的就是thinkphp框架,其中可能会存在二次开发的代码。👀

在这里插入图片描述
在这里插入图片描述
在个人信息处,发下提示admin用户,才可以有信息提示。

在这里插入图片描述

万事不绝,先扫为敬。目录扫描后,发现存在一个www.zip,不用说这肯定是源码。先下载下来看下。
在这里插入图片描述
这一看就是thinkphp。。有一说一,对待这种框架,我就没想过一开始就搞代码审计,对待这种比较成熟的框架,我觉得还是翻一翻配置文件或者日志。
在这里插入图片描述
在日志文件中,找到的用户密码全部尝试了,都没用。但是发现一个奇怪的地方,登录用户admin’#。再看下其它的日志文件。

在这里插入图片描述
看着日志文件,我咋看,咋觉得这个存在二次注入漏洞呢。
看下源码。
在这里插入图片描述
看到注册功能源码,发现username字段处并没有过滤 ’以及# 。过滤的基本就是一些sql函数以及=之类的。
我们再看下个人信息处的修改密码功能。
在这里插入图片描述
密码修改的功能,我们发现此处的username过滤情况和注册处的一致,也就是说只要在注册的时候,admin’#如果可以注册成功,就可以成功的

这个时候我们就可以利用二次注入进行修改admin用户的账号了

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
成功获取到admin用户的信息,发现下面提示了一个页面。

在这里插入图片描述
感觉好像是存在ssrf漏洞。

在这里插入图片描述
使用http协议访问,提示如下:
在这里插入图片描述
使用burp爆破下协议。
在这里插入图片描述
发现,gopher好像可以。
在这里插入图片描述
已知,在public文件夹下存在shell.php文件。
在这里插入图片描述
在这里插入图片描述
发现shell.php可以执行。
在这里插入图片描述
ls /发现无法执行,ls后的要加的是+。
在这里插入图片描述
发现/flag文件。
在这里插入图片描述
在这里插入图片描述
成功获取到flag。

总结

这道题结合sql二次注入,ssrf漏洞,伪协议访问,以及最后的符号编码问题,总体来讲难度,中等。尤其是最后的编码问题,?需要二次url编码,空格被过滤,需要使用+进行连接,并且需要+进行编码。

参考链接

官方writeup:https://adworld.xctf.org.cn/challenges/write-up?hash=0b1a9c16-517e-4059-b754-ac2c7d546527_2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值