我们先来看看这个环境有哪些题:

Sqli-labs之Less-1

接下来开始我们的学习之旅吧!

                                                                  Less-1

Sqli-labs之Less-1翻译:GET-基于错误-单引号-字符串

Sqli-labs之Less-1

                                                         欢迎  Dhakkan

                                                请输入ID作为带数值的参数

我们可以在http://192.168.33.1/sqli/Less-1/ 后面直接添加 ?id=1' ,来看一下效果:

Sqli-labs之Less-1

翻译:您的SQL语法有错误;请查看与MySQL服务器版本相对应的手册,以获取在第1行“1”限制0,1附近使用的正确语法 。

    从上述错误当中,我们可以看到提交到 sql 中的 1'  在经过 sql 语句构造后形成  '1'' LIMIT 0,1,
多加了一个 ' 。这种方式就是从错误信息中得到我们所需要的信息,那我们接下来想如何将多余的 ' 去掉呢?
尝试 'or 1=1 --+

PS   --+可以用#替换,都代表注释  在url 提交过程中 Url 编码后的#为%23

        在url中空格和一些特殊字符会进行url编码例如:#是%23,空格是%20, '是%27 

        url编码表:https://www.w3school.com.cn/tags/html_ref_urlencode.html

        在此环境中要想使用注释符#就得写成%23,否则会报错。

此时构造的 sql 语句就成了

Select ****** where id = '1' or 1 = 1 --+ ' LIMIT 0,1 或者
Select ****** where id = '1' or 1 = 1 # ' LIMIT 0,1

结果:

Sqli-labs之Less-1

或者:

Sqli-labs之Less-1

不能这样写:

Sqli-labs之Less-1

 

相关文章:

  • 2021-08-28
  • 2021-06-08
  • 2022-12-23
  • 2022-01-06
  • 2021-09-02
  • 2021-10-14
  • 2021-10-30
  • 2021-08-23
猜你喜欢
  • 2021-06-08
  • 2021-10-18
  • 2021-10-12
  • 2021-05-09
  • 2022-12-23
相关资源
相似解决方案