宽字节注入是什么?
宽字节注入准确来说不是注入手法,而是另外一种比较特殊的情况。 宽字节注入的目的是绕过单双
引号转义。
宽字节注入是一种绕过单双引号转义的手段,严格来说并不是注入手段。
注入练习
让转义符失效
以 sqli-labs-32 关为例子,这一关会转义单双引号,所以没有办法进行 SQL 注入,输入下面语句:
返回页面如下:
返回的 325c27 是 2\' 的 ASCII 码转 16 进制的结果 。
\ 符号的 16 进制是 5c ,这时候想到 GBK 编码,如果能用 GBK 编码和 5c 配对,就能把 5c 变成 GBK 编码的一
部分,强制它变成汉字,从而让 \ 符号失效。
在 https://www.qqxiuzi.cn/bianma/zifuji.php 网站中查询 GBK 编码,在 5c 前面补两位数字,如 825C ,
查询出汉字,说明可以进行拼接。
在 hackbar 的 URL 中输入
返回结果,转义符号已失效:
?id=2'
?id=2%82'