第一关

get类型注入
先判断数字还是字符型注入
如果是字符再判断闭合方式
这一关只要会简单的sql查询语句就欧克了
image.png

第二关

这一关是数字型所以不用判断闭合方式,可以直接查询
屏幕截图 2024-07-24 191822.png

第三关

这一关主要是判断闭合方式,其他没什么特别的
这一关是 ‘) 闭合
image.png

第四关

和第三关一样也是闭合方式
但是这一关是 “) 闭合
image.png

第五关

这一关是用报错注入,extractvalue(),floor(),updatexml()都可以
image.png

第六关

注入方式和第五关一样,只是闭合方式变成了 “ 这个
image.png

第七关

这关主要是学会用outfile() 上传文件
还有就是一开始的闭合方式要花点时间去判断,这关闭合方式是 ‘))
在用outfile的时候文件的路径要用双斜杠 \
image.png

第八关

这一关因为没有回显也没报错提示所以要用盲注
通过用ASCII码来判断字符,但是一次只能判断一个字符
image.png

第九关

用sleep来判断闭合方式,然后也是盲注
闭合方式为 ‘
image.png

第十关

和第九关一样用sleep来判断闭合,然后再注入
这一关的闭合为 “
image.png

第十一关

这一关和前面不同是用post方式提交的
也就是注入点不同,其他的注入方式是一样的
image.png

第十二关

这一关和十一关基本上没区别,只是闭合方式变成了 “)
image.png

第十三关

这一关主要是有两个注入点,username和password都可以注入,其他和第十一关差不多
image.png

第十四关

这一关也是两个注入点,只是闭合方式变成了 “
image.png

第十五关

用sleep判断闭合方式,但是我这不知道为什么admin换成1就不能执行sleep了
判断完后用盲注就可以完成了
image.png

第十六关

这一关我一开始也是正常判断闭合方式但是sleep也用不了,我以为和第十五关一样换了admin还是一样
不知道为什么,但是题目是说用时间盲注和布尔盲注
image.png

第十七关

一开始给源代码的加上了echo $sql; 看到了打印出来的name那加了\,加了%df也没有用,应该是因为这里不是双字节,所以打算换password试一下,但是出现了下面的情况
输入1\这个地方应该是这里报错,但是我这不知道为什么没有报错
image.png

第十八关

这一关主要是对HTTP的请求头agent的使用
这里登录正确的密码之后显示了蓝色字体,通过看这个蓝色字体前面的agent可以确定使用什么方法来做
image.png
通过源代码看到闭合方式为(’’,’’,’’)
image.png
这个时候要先登录正确的账号,才能进行抓包
image.png
在请求包的agent后面进行闭合判断 ,包括128.0在内所有前面的内容都可以当作参数,直接进行闭合判断
在输入’ 的时候可以看见image.png
这里的报错回显说明还没闭合,所以这里可以看出来这的格式应该是(’’,’’,’’)
要让这一整个句子闭合才能用报错注入
image.png

第十九关

这一关用的是HTTP头referer
先登录进去看见回显的蓝色字,说明他的响应是在这个蓝色字体说的地方,然后开始抓包
image.png
重新登录进去,但是先开bp抓包,看见了提示位置,然后开始判断闭合方式,先输入’ 看见回显报错,从这可以先看出他的闭合方式(’’,’’) 然后就可以开始报错注入了image.png
image.png

第二十关

这一关用的是HTTP头cookie
也是通过登录进来后看响应头为cookie,然后刷新页面抓包
image.png
屏幕截图 2024-07-25 221013.png
这里为什么不用group by 因为这里group by 会报错,原因还没查屏幕截图 2024-07-25 221047.png
因为这里有回显位所以可以直接用union select来注入