http头部注入攻击

1.HTTP请求的组成部分​

HTTP(HyperText Transfer Protocol)请求由 ​​请求行(Request Line)、请求头(Headers)、空行(Blank Line)和请求体(Request Body)​​ 组成。具体结构如下:


​1. 请求行(Request Line)​

请求行是HTTP请求的第一行,包含三个部分:

  • ​请求方法(HTTP Method)​​:定义客户端希望执行的操作(如 GETPOSTPUTDELETE 等)。
  • ​请求目标(Request Target)​​:通常是URL路径(如 /index.html)或完整URL(如 https://example.com/api/data)。
  • ​HTTP版本(HTTP Version)​​:如 HTTP/1.1HTTP/2

​示例​​:

GET /index.html HTTP/1.1
  • ​GET​​:请求方法
  • ​/index.html​​:请求目标(路径)
  • ​HTTP/1.1​​:HTTP版本

​2. 请求头(Headers)​

请求头用于传递额外的信息,如浏览器信息、Cookie、内容类型等。每个头字段由 名称: 值 组成,多个头字段用换行符分隔。

​常见请求头​​:

头字段 说明
Host 目标服务器域名(必需)
User-Agent 客户端信息(浏览器/爬虫)
Accept 客户端可接受的响应类型(如 text/html
Content-Type 请求体的数据类型(如 application/json
Cookie 存储会话信息
Authorization 认证信息(如 Bearer token

​示例​​:

Host: example.com
User-Agent: Mozilla/5.0
Accept: text/html,application/xhtml+xml
Cookie: sessionid=abc123

​3. 空行(Blank Line)​

请求头和请求体之间必须有一个空行(\r\n),用于分隔头部和正文。

​示例​​:

GET /index.html HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0
(空行)

​4. 请求体(Request Body)​

仅在某些请求方法(如 POSTPUT)中包含,用于发送数据(如表单数据、JSON、文件等)。

​常见格式​​:

  • ​表单

你可能感兴趣的:(信息安全,http,网络协议,网络)