应用层HTTP协议请求和响应分析 - 鲨鱼抓包
首页 博客文章 应用层HTTP协议请求和响应分析

应用层HTTP协议请求和响应分析

日期: 2022年5月19日 18:38
阅读: 67
作者: 鲨鱼抓包

摘要: HTTP超文本传输协议,全称:Hyper Text Transfer Protocol,主要用来实现Web服务器和客户端的请求和响应数据传输的。HTTP协议比较突出的一个特点就是无连接无状态,意思就是每次发送的HTTP请求和回复的响应都是相互独立的,相互之间没有联系。

HTTP超文本传输协议,全称:Hyper  Text  Transfer  Protocol,主要用来实现Web服务器和客户端的请求和响应数据传输的。HTTP协议比较突出的一个特点就是无连接无状态,意思就是每次发送的HTTP请求和回复的响应都是相互独立的,相互之间没有联系。

一、http请求常见的几种请求方式有以下几种:

1、OPTIONS
返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性。

2、HEAD
向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。

3、GET
向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中,例如在Web Application中,其中一个原因是GET可能会被网络蜘蛛等随意访问。Loadrunner中对应get请求函数:web_link和web_url。

4、POST
向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form。

5、PUT
向指定资源位置上传其最新内容。

6、DELETE
请求服务器删除Request-URL所标识的资源。

7、TRACE
回显服务器收到的请求,主要用于测试或诊断。

8、CONNECT
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

二、请求和响应

HTTP请求一般包含请求头和响应头以及响应数据三个板块:

1.GET请求头:

http

2.POST请求:

http

HTTP响应:

http

http

三、HTTP请求头request字段详解

\r 是回车,return
\n 是换行,newline
Unix系统里,每行结尾只有“<换行>”,即“\n”;
Windows系统里面,每行结尾是“<回车><换行>”,即“\r\n”;
Mac系统里,每行结尾是“<回车>”,即“\r”。

  • HOST:主机和端口,端口默认我80;
  • User-Agent:用户代理,提供客户端操作系统和浏览器信息;
  • Referer:参照字段,表示本页面来源链接,一般用于防盗链;
  • Origin:功能类似Referer,更安全,不携带参数,存在于POST方法中,解决CSRF跨站请求;
  • Cookie:因为HTTP是无状态,通过cookie可以记录客户端一些必要信息来支持会话管理(session);
  • Range:分块请求,用于较大文件请求,通过range实现多线程下载;
  • x-forward-for:XXF头,客户端IP地址,服务端通过它获取客户端真实或代理IP,攻击者也可以通过它伪造IP源地址欺骗服务端;
  • Accept:客户端允许接收的文件格式MIME;
  • Accept-Charset:客户端允许接收的字符集UTF-8/GBK;
  • Accept-Encoding:客户端允许接收的编码gzip/deflate(压缩方法);
  • Accept-Language:客户端允许接收的语言zh-cn/en-us/en;
  • DNT:Do Not  Track,谷歌浏览器用于解决流量追踪的安全功能,1表示不想被第三方追踪,0表示允许追踪,null表示不管;
  • 四、HTTP响应报文response解读
  • Server: 服务器名和版本等信息;
  • X-Powered-By:服务器程序版本(php/python)和系统(Ubuntu/linux)
  • Date:日期;
  • Content-Type: text/html; charset=utf-8;
  • Connection: keep-alive表示保持TCP长连接特性,新建立连接还是用原有TCP;
  • Set-Cookie: 服务器为后续客户端访问建立cookie信息;
  • Max-Age:最大超时时间;
  • Accept-Ranges:是否接受字节范围请求(bytes);
  • Location:最终访问页面,配合重定向(301/302);
  • Refresh:定时刷新;
鲨鱼博客版权说明:本站文章以原创为主,部分来自网络,请转载时保留原文链接!
没有了
# 相关文章
回顶部