• sqli-labs Less46-less49


    知识补充:

       默认的是从小到大

       降序排列

     

      将一句话木马转码

     

     

     

    Lesson 46  GET - Error based - Numeric - ORDER BY CLAUSE

    (1)打开这一关可以看到,这次不再是id值,而变成了sort

    (2)先测试

      ?sort=1

      SELECT * FROM users ORDER BY 1

       显示出来是这样子的,展现出user表中的所有信息,sort后的数字会写在order by后。这里的1没有进行包裹。

    (3)我们再尝试一下23,看一下有什么区别

       2

       ?sort=2

      

      3

      ?sort=3

      我们可以观察到123的情况各不相同。通过比对(看23),我们可以看到数字是几,哪一列就是从小到大。是1id值是从小到大;是2username的开头字母就是从az

    (4)通过以上分析我们可以知道可以通过控制sort后的数字来拿取信息,这代表有注入点。

    (5)尝试用union select语句

      ?sort=3 union select 1,2,3

       出现报错,因为本身语句中就有order byunion select不能和其一起使用。我们需要换一种方法。

    (6)报错注入

      ?sort=2 and updatexml(1,concat(0x7e,(database())),1) --+

       出现信息

       ?sort=2 and updatexml(1,concat(0x7e,(select schema_name from information_schema.schemata limit 0,1)),1) --+

       取出信息

      接下来和之前一样,不再展示

      Lesson 46结束

    Lesson 47  GET - Error based - String - ORDER BY CLAUSE

    (1)先测试

      ?sort=1

      SELECT * FROM users ORDER BY '1'

       显示正常,这里的1被单引号进行了包裹。这也是与46关唯一不同的地方,其他均相同。

    (2)接着测试

      ?sort=1' and '1'='1

      SELECT * FROM users ORDER BY '1' and '1'='1'

       显示正常

    (3)进行报错注入

      ?sort=1' and updatexml( 1,concat(0x7e,(database())),1 ) --+

       显示出信息

      接下来与上一关相同,不再展示

      Lesson 47结束

    Lesson 48  GET - Error based - Blind - Numeric - ORDER BY CLAUSE

    (1)先测试

      ?sort=1

      SELECT * FROM users ORDER BY 1

       显示正常,1没有被包裹。

      乍一看与46关没有不同,我们再继续尝试一下

    (2)加上单引号

      ?sort=1'

      这里看出不同,输入了错误的,按理说应该会回显错误信息,这里并没有进行回显,说明这一关使用的是盲注。

    所有这一关不能使用报错注入了,只能使用基于时间的盲注,但是会特别麻烦。

      Lesson 48结束

    Lesson 49  GET - Error based - String - Blind - ORDER BY CLAUSE

    (1)先测试

      ?sort=1

      SELECT * FROM users ORDER BY '1'

       显示正常,1被单引号包裹,与47关一样。

    (2)输入一个错误的,查看一下回显情况

      ?sort=1')

       并没有错误回显,说明是盲注

      Lesson 49结束

     
  • 相关阅读:
    nyoj 599-奋斗的小蜗牛 (double ceil(); (temp
    nyoj 596-谁是最好的Coder (greater, less)
    nyoj 517-最小公倍数 (python range(start, end) range(length))
    用深度学习预测专业棋手走法
    阿里AI设计师一秒出图,小撒连连惊呼,真相是...
    想成为数据科学家?先做到这6点吧!
    Kubernetes 弹性伸缩全场景解析 (一)- 概念延伸与组件布局
    机器学习基础:(Python)训练集测试集分割与交叉验证
    Data Lake Analytics + OSS数据文件格式处理大全
    聊聊Flexbox布局中的flex的演算法
  • 原文地址:https://www.cnblogs.com/zhaihuijie/p/12601448.html
Copyright © 2020-2023  润新知