赞
踩
GET:请求指定的页面信息,并返回实体主体。
HEAD:类似于GET请求,只不过返回的响应中没有具体的内容,用于获取报头。
POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立或已有资源的修改。
PUT:从客户端向服务器传送的数据取代指定的文档内容。
DELETE:请求服务器删除指定的页面。
CONNECT :HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。OPTIONS允许客户端查看服务器的性能。
TRACE:回显服务器收到的请求,主要用于测试或诊断。
PATCH:是对PUT方法的补充,用来对已知资源进行局部更新。
后台开发人员有时为了验证可u护短的HTTP Header(好比常用的Cookie验证等)或者通过HTTP Header头信息,获取客户端的一些信息(比如User-Agent、accept字段等),会对客户端HTTP Header进行获取并且使用SQL语句进行处理,如果此时没有足够的安全考虑,就可能导致基于HTTP Header的漏洞注入。
HTTP Header注入的前提条件:
这里使用Less-18进行测试,首先查看一下Less-18的源码文件:
现在uagent和IP是没有做限制的,所以这两个字段存在注入点。
首先打开Less-18:
进入数据库查看uagent字段进行查看,发现刚才输入的部分,浏览器信息包括操作系统都被记录下来了。
接着打开BurpSuite进行信息拦截,然后将信息发送到Repeater进行重放测试:
现在可以猜测要输入的值有三个,并且有括号要进行闭合,简单模型可以是: 1’,1,1)然后后面加个#进行注释掉就可以,再进行测试:
说明这个输入方式没问题,接下来就可以进行爆库了,既然返回了错误语句,那就可以使用报错注入的方式进行注入,好比extractvalue(),updatexml()、floor()函数等:
使用extractvalue函数,将database()纳入其中,库名就直接爆出来了,其余的信息都可以用此方法。
XFF注入原理就是使用BurpSuite找到一个在XFF能够回显的文件,然后BurpSuite去修改XFF字段的信息,通过报错的内容进而判断其中内容,步骤同User-Agent类似。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。