接着上个GET注入讲下POST注入、HTTP头部注入,这俩个跟GET的差不多,可以去看我上个GET注入视频
POST注入:由于程序员没有对表单没有进行严格的过滤,导致出现sql注入中post注入漏洞。
post注入跟get注入原理一样,先找注入点,然后闭合方式以及什么类型sql注入,最后就是暴库
像这种有登录框的就是表单,这里可能存在sql注入和xss注入以及弱口令等,这里我讲下sql注入,首先还是判断闭合方式,由于在表单中输入,可看的有限,我们可以利用hackbar这个插件来注入,用hackbar注入,要先看下页面源码中表单的信息,也可以利用burp来注入
上面写了uname和passwd这俩个属性,因此我们在post中就这样写
通过不断注入发现闭合方式是单引号,但是要爆信息的话,要加上账号,不然就会空白,不会报错,也不会爆出信息。
在上面找到了注入点就可以跟着GET注入方法一样,直接暴库了,就是注入点的地方不一样而已,有些注入点在passwd这里,它把uname加了过滤,不能从uname中注入。但是有些事在uname中注入,passwd中不能注入,最后还有些是unam跟passwd这俩个地方都有注入点,都可以注入,还要注意到是他们的闭合方式可能不同。还有一点要注意的是passwd这里注入,uname这有可能一定要输入正确的账户,不然就不可以进行暴库
如果没有回显位的话,那大概率就是盲注了,然后就是分析是布尔盲注还是时间盲注,知道是什么注入类型就是进行上述操作来爆库
3、HTTP头部注入
像这种提示ip的很有可能就是HTTP头部注入,HTTP头部注入可以在User-Agent、Referer、Cookie这三处地方注入,这三处是比较常见的头部注入
成功登录后,可以看到User-Agent的信息,哪像这种基本就是User-Agent头部注入,可能有人会说这里你知道账户密码,你才一下就看出来是User-Agent注入,确实,实际上都是自己一个一个试出来的,我这是为了方便就偷了一下懒
这里是要登录进去才可以进行HTTP头部注入,注入过程也是跟联合注入以及报错注入和盲注一样,我记得我当时做其他sql注入题有几个题就是HTTP头部注入,它不用你登录进行,直接用burp抓包然后往里面注入就行,这里使用的注入方式也是要自己判断,一个一个的试
有细心的朋友应该看到了上面使用了四个括号),这里为什么要用四个括号,这里要根据源码来分析,自己做的话,很多人想不到这点,包括我
这里是源码,需要代码一定的能力,要看得懂,这样方便代码审计
-1687745535283)]
[外链图片转存中…(img-jspBu3jI-1687745535283)]
通过判断闭合方式的时候你会发现admin’ 后面有一个括号,但是刚刚没有加括号也注入成功了,这说明源码做了处理,它这里是通过values键值来插入语句的,然后加个括号就是闭合掉values的括号,使它不报错,其他的HTTP头部注入跟UA的一样,就是注入点不同