0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SQL注入中的HTTP请求头介绍

麦辣鸡腿堡 来源:CSDN博客 作者:Demo不是emo 2023-01-14 11:22 次阅读

今天给大家讲解的是SQL注入中的http请求头注入,这种注入方式平时用的非常多,上次看别人面试时遇到了,就再来深究一下,研究其中的原理,利用方式等等

一、HTTP请求头

1、HTTP介绍

HTTP,超文本传输协议)是访问万维网使用的核心通信协议,也是今天所有Web应用程序使用的通信协议。最初,HTTP只是一个为获取基于文本的静态资源而开发的简单协议,后来人们以各种形式扩展和利用它。使其能够支持如今常见的复杂分布式应用程序。

HTTP使用一种用于消息的模型:客户端送出一条请求消息,而后由服务器返回一条响应消息。该协议基本上不需要连接,虽然HTTP使用有状态的TCP协议作为它的传输机制,但每次请求与响应交换都会自动完成,并且可能使用不同的TCP连接。

TCP就是一种传输协议,就像HTTP协议一样,HTTP的目的是指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应,而TCP的目的是为了确保数据传输的可靠性,我给你一个数据包,你一定就要收到,收不到的话那么我就会给你重发,直到我超时放弃你了。

HTTP是建立在TCP之上的,当你建立起TCP连接之后,在上面传输的数据用的是HTTP协议

2、HTTP请求头介绍

所有HTTP消息(请求与响应)中都包含一个或几个单行显示的消息头(header),然后是一个强制空白行,最后是消息主体(可选)。以下是一个典型的HTTP请求:

3、请求方式

GET就是请求方式,那么请求方式有很多种

4、消息头介绍

GET后面的/代表路径,HTTP/1.1代表HTTP的版本。

HOST表示请求的服务器网址

Connection表示持久的客户端与服务连接

Cache-Control表示缓存开关

sec-ch-ua可以理解用来替代user-agent的,用sec-ch-ua可以防止泄露浏览器详细信息

sec-ch-ua-mobile表示浏览器名称和版本

sec-ch-ua-platform表示操作系统名称

Upgrade-Insecure-Requests 请求头向服务器发送一个客户端对HTTPS加密和认证响应良好,在https页面中,如果调用了http资源,那么浏览器就会抛出一些错误。为了改变成这一状况,chrome(谷歌浏览器)会在http请求中加入 ‘Upgrade-Insecure-Requests: 1’ ,服务器收到请求后会返回 “Content-Security-Policy: upgrade-insecure-requests” 头,告诉浏览器,可以把所属本站的所有 http 连接升级为 https 连接。

User-Agent表示发出请求的用户信息

Accept表示指定客户端能够接收的内容类型

Sec-Fetch-Site表示一个请求发起者的来源与目标资源来源之间的关系

Sec-Fetch-Mode该请求头表明了一个请求的模式

Sec-Fetch-Dest表示请求的目的地,即如何使用获取的数据

Sec-Fetch-User取值是一个Boolean类型的值,true(?1)表示导航请求由用户激活触发(鼠标点击/键盘),false(?0)表示导航请求由用户激活以外的原因触发

Accept-Encoding指定浏览器可以支持的web服务器返回内容压缩编码类型。

Accept-Language浏览器可接受的语言

Cookie 就是一段字符串,是浏览器保存服务器返回数据的方法,通常保存用户身份信息

X-Requested-With用于判断客户端请求是那种请求

referrer是HTTP请求header的报文头,用于指明当前流量的来源参考页面。通过这个信息,我们可以知道访客是怎么来到当前页面的。

5、HTTP响应

HTTP响应是什么意思,当我们从浏览器发出请求的时候,服务器接收到请求,会给客户端进行响应。那么这个响应就是HTTP响应。

那么响应重点就是看第一行和响应的正文,

第一行HTTP/1.1代表的是HTTP的版本 200 是响应码 OK就代表响应成功

响应示例中的其他一些要点如下:

Server消息头中包含一个旗标,指明所使用的Web服务器软件。有时还包括其他信息。如所安装的模块和服务器操作系统。其中包含的信息可能并不准确。

Set-Cookie消息头向浏览器发送另一个cookie.它将在随后向服务器发送的请求中由Cookie消息头返回。

Pragma消息头指示浏览器不要将响应保存在缓存中。Expires消息头指出响应内容已经过期。因此不应保存在缓存中。当返回动态内容时常常会发送这些指令,以确保浏览器随时获得最新内容。

Content-Type消息头示这个消息主体中包含一个HTML文档。

Content-Length消息头规定消息主体的字节长度。

以下图就是响应正文

二、常见HTTP头注入

1、UA头注入

UA头注入,就是注入HTTP请求头中的Useragent。那么该怎么进行注入呢。如下这个语句就是一个常见的UA头注入方式

User-Agent: ‘ and updatexml(1,concat(’~‘,database()),1) and ’

2、Referer注入

Referer:当你访问一个网站的时候,你的浏览器需要告诉服务器你是从哪个地方访问服务器的。(直接输入网址或者其他页面中的链接点进来的)。

注入方式如下

Referer: ‘ and updatexml(1,concat(’~‘,database()),1) and ’

3、Cookie注入

Cookie 就是一段字符串,是浏览器保存服务器返回数据的方法,通常保存用户身份信息。是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息

session当访问服务器否个网页的时候,会在服务器端的内存里开辟一块内存,这块内存就叫做session,而这个内存是跟浏览器关联在一起的。这个浏览器指的是浏览器窗口,或者是浏览器的子窗口,意思就是,只允许当前这个session对应的浏览器访问,就算是在同一个机器上新启的浏览器也是无法访问的。而另外一个浏览器也需要记录session的话,就会再启一个属于自己的session。也称为会话控制。

和上面的语句也差不多

Cookie:user=admin ‘ and updatexml(1,concat(’~‘,database()),1) and ’

原文链接:https://blog.csdn.net/qq_63844103/article/details/128625869

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Web
    Web
    +关注

    关注

    2

    文章

    1238

    浏览量

    68461
  • 网络安全
    +关注

    关注

    9

    文章

    2945

    浏览量

    58678
  • HTTP
    +关注

    关注

    0

    文章

    466

    浏览量

    30315
  • SQL
    SQL
    +关注

    关注

    1

    文章

    738

    浏览量

    43461
收藏 人收藏

    评论

    相关推荐

    鸿蒙OS开发实战:【网络管理HTTP数据请求

    应用通过HTTP发起一个数据请求,支持常见的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。
    的头像 发表于 04-01 16:31 190次阅读
    鸿蒙OS开发实战:【网络管理<b class='flag-5'>HTTP</b>数据<b class='flag-5'>请求</b>】

    鸿蒙原生应用开发-网络管理HTTP数据请求

    一、场景介绍 应用通过HTTP发起一个数据请求,支持常见的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。 二、接口说明 HTTP数据
    发表于 03-29 17:51

    arkts http 发起请求失败

    http 发起请求 官网Http
    发表于 03-23 00:33

    HTTP协议的运作方式及请求/响应的步骤

    基于HTTP的客户/服务器模式的信息交换过程它分四个过程建立连接、发送请求信息、发送响应信息、关闭连接。
    的头像 发表于 02-01 11:02 761次阅读
    <b class='flag-5'>HTTP</b>协议的运作方式及<b class='flag-5'>请求</b>/响应的步骤

    HTTP 中GET 和 POST 的区别

    一、概述 HTTP请求报文 GET 方法的特点 POST 方法的特点 GET 和 POST 的区别 二、HTTP请求报文 首先我们要解决的第一个问题是:GET 和 POST 是
    的头像 发表于 11-11 14:40 595次阅读
    <b class='flag-5'>HTTP</b> 中GET 和 POST 的区别

    【EsDA 应用】快速实现串口转HTTP请求

    本文将基于EsDA开发套件快速实现将串口数据转换为HTTP请求的应用开发,实现串口设备与网络服务的互联互通,提供便捷和高效的串口数据转换功能。项目简介HTTP协议是互联网应用最为广泛的一种网络协议
    的头像 发表于 11-09 08:25 486次阅读
    【EsDA 应用】快速实现串口转<b class='flag-5'>HTTP</b><b class='flag-5'>请求</b>

    安信可Ai-WB2模组HTTP 客户端 POST请求方法

    文章目录 一、准备工作 二、连接路由器 三、HTTP客户端POST请求方法(适用于POST少量数据) 四、HTTP 客户端 POST 请求方法(推荐方式) 五、联系我们 01 准备工作
    的头像 发表于 10-30 17:27 336次阅读
    安信可Ai-WB2模组<b class='flag-5'>HTTP</b> 客户端 POST<b class='flag-5'>请求</b>方法

    什么是SQL注入?Java项目防止SQL注入方式

    Java项目防止SQL注入方式 这里总结4种: PreparedStatement防止SQL注入 mybatis中#{}防止SQL
    发表于 10-16 14:26 235次阅读

    sql注入漏洞解决方法有哪些?

    什么是sql注入SQL注入(SQLi)是一种执行恶意SQL语句的注入攻击。攻击者可能会利用
    的头像 发表于 10-07 17:29 2760次阅读
    <b class='flag-5'>sql</b><b class='flag-5'>注入</b>漏洞解决方法有哪些?

    什么是SQL注入?Java项目防止SQL注入方式总结

    SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意
    的头像 发表于 09-25 10:43 440次阅读
    什么是<b class='flag-5'>SQL</b><b class='flag-5'>注入</b>?Java项目防止<b class='flag-5'>SQL</b><b class='flag-5'>注入</b>方式总结

    Kiuwan开发者预防SQL注入攻击的5大最佳实践

    很明显,SQL注入攻击会造成严重的经济和声誉后果。为了避免成为这种攻击的受害者,开发人员必须采取主动措施保护他们的系统免受恶意行为者的攻击。以下是开发人员和组织防止SQL注入攻击的五大
    的头像 发表于 07-16 11:46 443次阅读

    如何测试HTTP请求示例

    电子发烧友网站提供《如何测试HTTP请求示例.zip》资料免费下载
    发表于 07-13 11:35 1次下载
    如何测试<b class='flag-5'>HTTP</b><b class='flag-5'>请求</b>示例

    动态Sql介绍

    动态Sql介绍 动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架,你应该能理解根据不同条件拼接 SQL 语句有多痛苦,例如拼接时要确保不能忘记
    的头像 发表于 05-31 09:34 1098次阅读
    动态<b class='flag-5'>Sql</b><b class='flag-5'>介绍</b>

    如何使用 ESP-AT实现HTTP请求

    ESP-AT作为乐鑫开发的可直接用于量产的物联网应用固件,可以简单完成网络的连接,以及设备与服务器之间的数据传输。本文将介绍如何使用 ESP-AT实现HTTP请求
    的头像 发表于 05-23 17:12 807次阅读
    如何使用 ESP-AT实现<b class='flag-5'>HTTP</b><b class='flag-5'>请求</b>

    ESP8266如何使用HTTP + PHP + MySQL从BD获取数据?

    的问题:How do I return data for the ESP8266 client from the PHP code。 我是 HTTP 请求和 Web 代码方面的菜鸟。 我将不胜感激在这个方向上的任何答案或链接。
    发表于 05-19 08:35