SQL注入实战:http报文包讲解、http头注入

一:http报文包讲解

HTTP(超文本传输协议)是今天所有web应用程序使用的通信协议。最初HTTP只是一个为获取基于文本的静态资源而开发的简单协议,后来人们以各种形式扩展和利用它.使其能够支持如今常见的复杂分布式应用程序。HTTP使用一种用于消息的模型:客户端送出一条请求消息,而后由服务器返回一条响应消息。该协议基本上不需要连接,虽然HTTP使用有状态的TCP协议作为它的传输机制,但每次请求与响应交换都会自动完成,并且可能使用不同的TCP连接。

Referer:消息头用于表示发出请求的原始URL。

Accept-Language:浏览器支持的语言,zh-cn表示简体中文;zh表示中文;

User-Agent:消息头提供与浏览器或其他生成请求的客户端软件有关的信息。

Host:消息头用于指定出现在被访问的完整URL中的主机名称。

Cookie:消息头用于提交服务器向客户端发布的其他参数

Httponly。如果设置这个属性,将无法通过客户端JavaScript直接访问cookie.

Connection:表示持久的客户端与服务连接。connection:keep-alive

XForrwarded For:是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。

Location:这个消息头用于在重定向响应(那些状态码以3开头的响应)中说明重定向的目标。

状态码

200 Ok。本状态码表示已成功提交请求,且响应主体中包含请求结果

302:本状态码将浏览器暂时重定向到另外一个在Location消息头中指定的URL.客户端应在随后的请求中恢复使用原始URL.

400 Bad Request:本状态码表示客户端提交了一个无效的HTTP请当以某种无效的方式修改请求时(例如在URL中插人一个空格券可能会遇到这个状态码。

500 Internal Server Error:本状态码表示服务器在执行请求时遇到错误。

二、http头注入

1、在安全意识越来越重视的情况下,很多网站都在防止漏洞的发生例如SOL注入中,用户提交的

参数都会被代码中的某些措施进行过滤。

2、过滤掉用户直接提交的参数但具对于HTTP头中提交的内容很有可能就没有进行过滤。例如

HTTP头中User-Agent、Referer、Cookies5等。

以sqlilaps less-18题为例,user-Agent注入

实验演示:

1、输入正确的账号密码:Dumb:Dumb(登入成功)

2、用Burp suite进行抓包

这里输入账号密码,发送请求

他这里这里报了一个错误,说明存在注入点

利用,用payload进行渗透

Payload内容:

updatexml(xml document,xpath string,newvalue):

第一个参数:XML文档对象名称。

vv第二个参数:XPath字符串。

第三个参数:替换查找到的符合条件的数据

'and updatexml(1,concat(0x7e,(select@@version),0x7e),1)or '1'='1

操作到处结束,操作成功

相关推荐
0***863312 分钟前
SQL Server2019安装步骤+使用+解决部分报错+卸载(超详细 附下载链接)
javascript·数据库·ui
wstcl12 分钟前
通过EF Core将Sql server数据表移植到MySql
数据库·mysql·sql server·efcore
聪聪那年2220 分钟前
Oracle 11g windows 10安装与卸载
数据库·oracle
前端之虎陈随易35 分钟前
MoonBit内置数据结构详解
数据结构·数据库·redis
云和恩墨1 小时前
AI驱动的Oracle SQL优化:从经验依赖到智能协同的三大价值
人工智能·sql·oracle·深度优先·dba
小二·1 小时前
Spring框架入门:TX 声明式事务详解
java·数据库·spring
万邦科技Lafite1 小时前
一键获取淘宝店铺所有商品信息,实时监控商品数据
开发语言·数据库·python·api·开放api·电商开放平台·淘宝开放平台
SUPER52661 小时前
运维hbase服务重启,导致应用查询异常 hbase:meta
运维·数据库·hbase
烤麻辣烫1 小时前
黑马程序员苍穹外卖后端概览
xml·java·数据库·spring·intellij-idea
点灯小铭2 小时前
基于单片机的智能药物盒设计与实现
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业