分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

协议分析之HTTP

发布时间:2023-09-06 01:43责任编辑:苏小强关键词:暂无标签
一、小试牛刀**
http协议是互联网上应用最为广泛的一种网络协议,它工作在应用层,由请求和响应构成,是一个标准的客户端服务器模型,http是无状态的协议。我们接下来要做的,是通过网络嗅探工具来捕获网络中传输的http包,从分析数据包的角度来学习http协议。

二、拉开帷幕

1、获取wireshark
https://www.wireshark.org/
2、筛选HTTP流量

1、基于名称的写法 ???????????#筛选指定域名 ???????????http.hsot == "www.51cto.com" ???????????#筛选指定字符串 ???????????http.host contains"51cto" ???????????#筛选指定referer头部 ???????????http.referer == "http://www.51cto.com"2、基于请求方法 ???????????#GET ???????????http.request.method == GET ???????????#筛选所有http请求 ???????????http.request ???????????#筛选所有http响应 ???????????http.response ???????????#筛选指定url的http请求 ???????????http.request.uri == "im.taobao.com"3、基于HTTP状态码 ???????????#筛选客户端错误包 ???????????http.response.code >= 400 and http.response.code <= 499 ???????????#筛选服务器端错误包 ???????????http.response.code >= 500 and http.response.code <= 599

3、初步观察
到这一步,我们已经通过wireshark捕获到浏览器或客户端访问服务器端的数据包,并筛选出具体的HTTP包,接下来,我们来看看HTTP协议在数据包中体现的交互过程。
1、 ???客户端向DNS服务器请求服务器地址
2、 ?????DNS服务器响应客户端请求
3、 ?????客户端与服务器端建立连接,TCP三次握手
4、 ?????服务器与客户端一系列交互(GET,POST,PUT,HEAD。。。)
5、 ?????用来承载HTTP数据的TCP包
6、 ?????结束通信,TCP四次握手

知道了大体的流程,下面来看看具体数据包的实例,以旺信PC版为例,仅作学习之用。
1、获取DNS

2、返回域名以及IP

3、根据域名或IP筛选出具体的流量

4、对这股大流量另存后再次筛选并追踪流

5、具体分析

三、抽丝剥茧

1、http信息分解

GET ?//wwxb.5.13?cache=10155&nick= ?HTTP/1.1\r\n#请求的类型,URL,HTTP版本信息Accept:image/gif#请求的资源类型User-Agent : SimpleHttpFetch#执行http请求的客户端类型Host:gm.mmstat.com#客户端访问的主机名Cookie:cna.......#cookie信息
HTTP /1.1 200 OK#协议版本,响应状态码Content-Type:#响应的资源类型Connection:Keep-Alive#长链Set-Cookie:#设置与页面关联的cookie

更多详见:http://www.runoob.com/http/http-header-fields.html

2、Content-Type(常见)

1、文件类型text/plain、text/html、text/javascript:表示通过HTTP访问的文件类型为文本文件2、文件类型text/jpeg、image/gif:表示通过HTTP访问的文件类型为图片3、文件类型application/json、application/javascript等,表示通过HTTP访问的文件类型为应用程序

Content-Type有很多,这里只列出几种,更多详见:http://www.runoob.com/http/http-content-type.html

3、响应状态码(常见)

200:成功301:临时重定向302:永久重定向404:资源未找到。。。

更多详见:http://www.runoob.com/http/http-status-codes.html

四、千方百计

1、服务器域名可以通过DNS响应找到
2、服务器IP可以通过nslookup 域名 找到
3、域名确认可以whois查询
4、域名功能可以通过请求方法以及响应头信息看出

协议分析之HTTP

原文地址:http://blog.51cto.com/jiayimeng/2073578

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved