Fiddler之面板信息介绍

Fillder

Fillder是一款优秀的抓包软件,不管是在windows,linux, mac下都可以使用!关于基本的安装这边就跳过了,下面我们主要来看一下使用过程中的一些技巧

Fillder 面板信息组成

HTTP报文总体介绍

HTTP协议报文的结构

HTTP报文分2个:一个是HTTP请求报文,一个是HTTP响应报文

HTTP请求报文分为3部分:第一部分叫其实行(Request line),第二部分叫首部(Request Header),第三部分叫主体(Body)

第一行中Method表示请求方法,比如“POST”或者“GET”现在使用的HTTP协议版本是1.1

第二部分是首部(Header)

第三部分是body

特别要注意,Header与Body之间有一个空行

Fillder 请求界面

Fillder 响应界面

HTTP协议请求方法和状态码

HTTP协议定义了很多与服务器交互的方法,最基本有5种,分别是GET HEAD POST PUT DELETE。对应的就是查改增删的4个操作,最常见的是POST和GET,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。

GET和POST方法的区别

GET提交的数据会放在URL之后,以问号(?)分割URL和传输数据,参数之间以&相连,而POST是把提交的数据放在HTTP包的Body中

GET提交数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据大小没有限制

GET方式需要使用Request.QueryString来取得变量的值,而POST方法通过Request.Form来获取变量的值

GET方式提交数据会带来安全问题,比如登录一个页面通过GET的方式提交数据时候,用户名和密码都会显示在URL中,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码

HTTP 报文响应介绍

Response消息的结构和Request消息的结构基本一样,同样也分为3部分;第一部分叫响应行(Response Line),第二部分叫响应首部(Response Header),第三部分是主体(Body)

第一部分是起始行,有状态码和状态码消息

第二部分是首部,

第三部分是主体

特别注意 Header首部和Body(主体)之间有一个空行

HTTP 状态码

状态码 已定义范围 分类
1XX 100-101 信息提示:表示请求已成功接收、继续处理
2XX 200-206 成功、表示请求已被成功接收,理解、接受
3XX 300-305 重定向,完成请求,必须进行更进一步的处理
4XX 400-415 客户端错误,请求有语法错误或者无法实现请求
5XX 500-505 服务器错误,服务器未能实现合法的请求

HTTP 协议Header介绍

Header的语法格式是”key:value”,一行一个Header。每一个Header都有特殊的作用,在Finddler中可以查看完整的Header。

Fiddler能方便的查看HTTP请求Header,选中一个HTTP请求,单击Inspectors tab–>Request tab–>Headers

Cache相关的Header

Cookie是一种HTTP Header,是HTTP中非常重要的内容,它由key==value形式组成

Accept

Accept表示浏览器客户端可以接受的媒体类型

例如 Accept:text/html代表浏览器可以接受服务器返回html,也就是我们通常说的html文档。

通配符/*代表任意类型,\/\表示可以接受任何类型。

Accept-Encoding

Accept-Encoding跟压缩有关,浏览器发送HTTP请求给web服务器,HTTP请求中的Header有Accept-Encoding:gizp,deflate(告诉服务器,浏览器支持gizp压缩)

Accept-Language

Accept-Language的作用是声明自己接受的语言

也就是编码格式 UTF-8 GB2312 ZH-CN

User-Agent

Use-Agent的作用是浏览器用来告诉服务器,客户端使用的操作系统及版本,CPU类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件

修改User-Agent可以伪装不同的客户端

单击Rules->User-Agents然后可以选择我们想要切换的系统

Referer

HTTP协议头中的Refer主要来让服务器来判断来源页面,即用户是从哪个页面过来的网站通常用来统计用户的来源,看用户是从搜索页面来的,还是从其他网站链接过来的,或是从书签等访问过来的,以便合理的定位网站

Referer有时也被用作防盗链,即下载时候判断来源地址是不是在网站域名之内,否则就不能下载或显示

Connection

从HTTP1.1起,系统默认开启了Connection:Keep-Alive,保持连接特性

Host

主要是指定被请求的主机端口号,它通常从HTTP URL中提取出来

Web网页抓包和fiddler修改包

通过fiddler可以修改数据伪造数据

第一个HTTP请求是获取页面布局的HTML 也叫做“父请求”

随后的HTTP请求会根据之前页面的请求去再次请求,叫做“子请求”

选中我们的第一个父请求然后右击选择seletc–>Child Request 就可以找到对应的子

找父请求的话我们选中子子请求右击选择select->Parent Request就可以找到对应的父请求。

查找相同的请求,右击选择select–>Duplicate Requests就可以选中了相同的请求了。


Fiddler之面板信息介绍
https://dreamshao.github.io/2024/06/26/测试开发工具Fiddler/
作者
Yun Shao
发布于
2024年6月26日
许可协议