[XMAN筛选赛](web)ctf用户登录

0x00 题目概述


就只写了几道web题,有些考察点比较明显,所以个人感觉来说web总体不难。

一航的writeup写得差不多,我这写个他没写的wirteup。

看题:

链接点进去是一个登录页面,习惯性使用admin,admin居然登录成功了。

进去之后什么都没有。

尝试在登录的用户名进行注入,发现 是形如  ' or 1 # 这种。

当然肯定不会这么简单,应该会有过滤什么的,于是进行一波fuzz。

发现过滤了某些字符和关键字:

"     ,     and     or     等等。

还有空格。

0x01 解题思路


这是一个盲注,最后构造出来是  XXX'||(1)#

中间括号这个位置就是我们的注入点。

用 || 代替 or 

mid(user()from 1 for1 )

substr(user()from 1 for 1)

绕过逗号限制

用%09代替空格。页面区别在于是否包含“成功”和“错误”。

如此如此,脚本如下。不好放代码,给个截图。

ctf_user 表的pass那里,得到:WE1BTntET195b3VfbDFrZV9zcWxtYXBfc3FsbWFwfQ==

base64解密就行。

题目有一个fake flag,讲道理,这种没什么意义的,除了浪费时间改改表名,列名,再多跑几次。

.

0x02 小结


感觉注入就那些套路,一个姿势不行就再换一个。

多学学几个比较能通吃的姿势。

哎去不了XMAN,学习学习。

原文地址:https://www.cnblogs.com/deen-/p/7193206.html