sqllabs less38~45堆叠注入

写在前边

简单说堆叠注入就是将将两个SQL语句同时执行以封号隔开。虽然我们前面提到了堆叠查询可以执行任意的 sql 语句,但是这种注入方式并不是十分 的完美的。在我们的 web 系统中,因为代码通常只返回一个查询结果,因此,堆叠注入第 二个语句产生错误或者结果只能被忽略,我们在前端界面是无法看到返回结果的。 因此,在读取数据时,我们建议使用 union(联合)注入。同时在使用堆叠注入之前, 我们也是需要知道一些数据库相关信息的,例如表名,列名等信息。

less38~less41

这几关就直接放在一起做总结了,他们的区别就在于对id值闭合方式的不同。方法可直接堆叠SQL语句:1’; update users set password=‘1’ where username=‘admin’;# 对数据库信息进行更改。

less42~45

(这几关就直接放在一起做总结了,他们的区别就在于对id值闭合方式的不同,44和45不显示报错信息。)首先查看原码,发现username被mysqli_real_escape_string函数过滤而password没有,因此可在password处进行注入
在这里插入图片描述
用户名随便输,密码输入下边的两个可在数据库中进行操作
1’;create table jike like users# (创建一个jike的表)
在这里插入图片描述

1’;drop table jike# (删除 jike 表)
在这里插入图片描述
同样的方式可以对users数据表中的数据进行更新或者删除,
在这里插入图片描述

playload:1'; update users set password='1' where username='admin';#

执行结果:
在这里插入图片描述
要注意的是:使用堆叠注入的前提是知道数据库的一些信息。例如:数据表字段名;并且堆叠注入有一定的局限性
其他的关卡都雷同,在此不做赘述

拓展堆叠注入

desc查字段:desc table_name
show查字段:show columns from table_name

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值