目录
第二十一关
知识点:http头部注入,cookie注入
思路:
通过分析源代码,我们可以得知cookie的值通过base64编码,用户名密码的输入会被过滤
1、判断注入点
首先,我们看到正常的回显
通过回显内容,我们可以得知cookie的值被base64编码
通过BP抓包,需要放掉第一个包才可以抓到cookie
base64解码,看看cookie的值是什么,这里使用到的解码网站为
Base64解码 Base64编码 UTF8 GB2312 UTF16 GBK 二进制 十六进制 解密 - The X 在线工具 (the-x.cn)
接下来我们需要将注入的内容通过base64编码后再输入
将cookie改成 Cookie: uname=YWRtaW4n
分析报错信息,可能存在括号问题
Cookie: uname=YWRtaW4nKQ==
admin附近的括号没有问题了,加入#看看
Cookie: uname=YWRtaW4nKSM=
回显正常,说明这样的闭合方式可以,尝试使用extractvalue函数爆出数据库
Cookie: uname=YWRtaW4nKSBhbmQgZXh0cmFjdHZhbHVlKDEsY29uY2F0KDB4N2UsZGF0YWJhc2UoKSkpIw==
爆出了数据库,说明这样的闭合方式可以,存在注入点
接下来的步骤就跟十八关的步骤一样,只不过需要将注入的内容先base64编码
SQLI-labs-第十八关SQLI-labs-第十八关-CSDN博客SQLI-labs-第十八关
第二十二关
知识点:http头部注入,cookie注入
思路:
通过分析源代码,我们可以得知cookie的值会被base64编码,存在引号的闭合问题,我们下面进行验证
1、判断注入点
首先,输入正常的数据,看看回显
2、我们使用BP抓包
需要先放掉一个包,才可以抓到cookie
发送到repeatet模块
Cookie: uname=YWRtaW4n
这里数据正常回显,但没有爆出数据库语句错误,界面的跟正常的不太一样,我们试试双引号
Cookie: uname=YWRtaW4i
数据库语句报错,我们再加上个#看看
Cookie: uname=YWRtaW4iIw==
数据库语句没有报错,数据正常回显,说明这里可能存在双引号问题,接着使用extractvalue函数,看看能不能爆出数据库名
Cookie: uname=YWRtaW4iIGFuZCBleHRyYWN0dmFsdWUoMSxjb25jYXQoMHg3ZSxkYXRhYmFzZSgpKSkj
可以爆出数据库名,说明这里存在双引号闭合问题的数据库注入
接下来的步骤就跟18关的一样,只不过需要将注入语句先进行base64编码
这篇文章就先写到这里,哪些不足欢迎批评指正!