zoukankan      html  css  js  c++  java
  • Sqli-LABS通关笔录-2

    在这个关卡学习到了

    1.程序的错误不是学校收费乱来的,单引号的错误和减号的错误要明白

     单引号报错。

    用第一关的PAYLOAD尝试了下。

    来看看源码:

    那么我们构造的sql也就变成了

    $sql="SELECT * FROM users WHERE id=1' or 1=1 --+ LIMIT 0,1";
    

    如此一来id=1'就不被执行,语句也就成了:

    $sql="or 1=1 --+ limit 0,1";
    

    用mysql测试一下,如下图。的确如此!

    那么单引号不行就换负号,就是减号呗。

    这回自然是可以了。

    完整的sql语句如下:

    $sql="SELECT * FROM users WHERE id=-1 or 1=1 --+ LIMIT 0,1";

    最终执行的mysql语句为:

    select * from users where 1=1 --+ limit 0,1;该条语句是一条有效的sql语句,即可以成功执行。

    这里需要理解的是单引号的错误负号的错误是什么概念。

    单引号的错误是指语法错误

    负号的是因为不存在而提示的错误

    如此知道了缘故那么继续操作哈。

     

  • 相关阅读:
    POJ
    FZU
    HDU
    HDU
    HDU
    HDU
    Educational Codeforces Round 84 E. Count The Blocks
    B Boundary(由弦求圆)
    D. Maximum Sum on Even Positions(翻转1次,求最大偶数位和)
    E. DeadLee(思维,拓扑图处理)
  • 原文地址:https://www.cnblogs.com/xishaonian/p/6103230.html
Copyright © 2011-2022 走看看