Sqli_labs第二十五关(报错注入)

本人呢也是学习Sql注入不久的小白,可能对此题理解的也不是很透彻,但是也算摸爬滚打的把这题做出来了,跟大家一起分享分享,有什么不足的地方欢迎大家指正!

相信做到这里的小伙伴对什么是联合注入、盲注啊,单引号爆点位这种基本注入方式已经很熟悉了,我也不做过多的废话在这上面,直接开始我们的正题。

本题用到的函数:

updatexml()、concat()       //根据个人还可以使用extractvalue()、floor()等报错注入方式,具体函数使用方法我在不做过多赘述,大家根据个人需求自行查找。

解题步骤

一、使用单引号判断该点位是否存在注入

根据报错提示,我们可以肯定该处存在注入漏洞。

二、使用传统注入方式探测:' or 1=1 -- 

用我的lj英语给大家翻译一下回显内容:你的输入已经被我们过滤结果为:' 1=1

到这里我大概就猜到,系统可能对我们输入的敏感字母进行了过滤,我们去看一下源码

果然,系统将我们输入的or、and给过滤了。

三、进行注入

这里可以注入的方式有多种,我呢使用的是Union + updatexml()实现报错注入的方式,注入语法为:%27%20union%20select%20updatexml(1,concat(0x7e,(database())),1)%20--+

 %27 = '     //单引号被编码为%27

%20 = +    //这里我可能没表达的很清楚,说通俗点就是空格符被编码为%20,我们也可以用+代替空格符

注入效果如下:

 "security"即为我们爆破出来的数据库名,我们可以结合别的sql语句获取我们想要的数据,到这里我们的题目也就做完了。

                                                                        欢迎大家指正,希望与大家一起学习、进步!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值