• sqllab 11-22


    11.有回显,单引号

    首先判断是字符型还是数字型

    通过order by 来获取字段数 方便后续union联合

    注意这里mime表明了内容要进行url编码,测试3报错,2正常,所以有2列。

    还需要判断显示位,因为只有显示位的数据才能被爆出来。

    不信你看,这里使用万能密码,按理来说应该是得到所有数据,但是只得到了一个,就是因为显示位的设置

    使用union联合查询,判断显示位,注意语句当中的空格,select后面要加上空格

    这样就可以把1,2位置换成其他的语句进行爆破即可。

    使用shema(),爆破出数据库名称

    12双引号加括号

    .测试发现上一关的poc这一关用不了

    先判断是字符型还是数值,发现加不加单引号都是没反应

    尝试双引号,果然

    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"") and password=("") LIMIT 0,1' at line 1

    从报错信息当中知道不仅是双引号包裹外面还有括号

    判断字段数 poc(轮子):1") order by 3#

    因为本身就没有数据,只会当列数大的时候报错

    剩下的内容和之前是一样的,变形轮子即可,这道题的关键就在于发现它是双引号和有括号

    13.单引号加括号

    1个单引号报错

    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'') and password=('') LIMIT 0,1' at line 1

    所有知道是单引号加括号

    所以poc和上一关是一样的把双引号换成单引号就行了

    但是这关使用万能密码啥的也没有回显,要用报错注入

    14.双引号

    尝试1个双引号报错 两个正常

    所以和11关是类似的,但是也要用报错注入

    15.盲注无回显,单引号

    构造单双引号发现怎样都是没有报错信息的,是盲注

    通过尝试万能密码,发现是通过单引号闭合的

    poc:1’ or 1=1 #       登录成功

    通过延函数,确定这里存在sql注入

    poc:1 ' or sleep(5) #   //这里是and就不行,因为一个为假的话,后面的延时函数就不会执行

    之后使用延时注入即可

    16.盲注无回显,双引号加括号

    和15关一样也是盲注,错误信息被注释了

    思路就是:既然不会报错的话,那么我们就要想办法构造可以成功执行的语句。

    多次fuzz 

    知道了它是双引号加括号的盲注 

    剩下的就会上面一关是一样的了 构造poc即可

    17修改密码盲注,updata函数

    .这一关的网站首页变了

    变成了修改密码的窗口

    当用户不存在时的错误信息

    尝试构造单双引号,发现也不会返回错误信息,又是盲注。

    查看源码发现,会对输入的用户名进行过滤,所以只能在输入密码的地方尝试注入

    修改密码使用的是updata函数

    使用报错注入可以选择extractvalue()报错注入,updatexml()报错注入和group by()报错注入。

    poc:可以看这个全网最全sqli-labs通关攻略(建议收藏)-腾讯云开发者社区-腾讯云 (tencent.com)

    18.ua盲注

    也是盲注,只会显示登录失败,但不会返回sql语句错误信息。要使用报错函数

    查看源码发现对用户名和密码都做了处理 尝试ua头注入

    因为有一些网站可能会把用户访问信息的ua头存储起来分析用户的使用习惯,是用手机访问的多还是电脑等等。

    在ua头后面加了一个单引号发现报错,但是这里的逻辑是只有用户名和密码正确的时候,它才会去保存你的ua信息,前面试了几次但是用户名和密码是错的,也不行

    接下来就可以尝试报错注入。

    19.refer盲注

    登录成功,发现会显示refer信息

    那就尝试在refer当中构造

    一个单引号,报错

    所以在这个地方构造报错注入即可。

    20.cookie盲注

    登录成功后发现记录有cookie信息,可以删除,试了一下就是在cookie的值当中构造poc

    21.cookie盲注加base64编码

    本关的注入点在cookie参数,和上一关payload一样只是编码方式不同

    这一关当中cookie信息是经过base64编码的,所以我们在构造poc时,也要进行base64编码

    22.cookie盲注加双引号

    本关的注入点在cookie参数,和上一关payload一样只是双引号闭合方式

  • 相关阅读:
    进阶实验4-3.2 Windows消息队列(优先队列的使用,比较器的使用)
    vmlogin指纹浏览器中设置本地API进行常规自动化操作
    轻量级CI/CD发布部署环境搭建及使用_01_基本介绍
    逻辑回归(Logistic Regression)
    win11疑难解答怎么进
    Redis(五)发布与订阅
    Linux中Docker挂载mysql/mariadb等数据库,数据库问题汇总
    SpringBoot+Vue+Element-UI实现鞋类秒杀商城
    【机器学习】——【线性回归模型】——详细【学习路线】
    集合框架-
  • 原文地址:https://blog.csdn.net/m0_74196038/article/details/136414104