Fiddler 抓包配置与分析(简)

简单介绍了Fiddler抓包常用到的基础知识,看完可以大概明白怎么分析抓包数据 ---【suy999】

     Fiddler 抓包工具,可以将网络传输发送与接受的数据包进行截获、重发、编辑、转存等操作。
  原理是通过改写HTTP代理,让数据从它那通过,来监控并截取数据;默认设置好浏览器代理,关闭软件的时候会自动还原代理。
  Fiddler 官网下载地址:“https://www.telerik.com/download/fiddler”。

一、Fiddler 抓包环境配置

(一)Fiddler安装过程(略)

(二)Fiddler配置

1、开启”启用IPv6“

 路径:“工具 –> 选项 –> 基本 –> 启用IPv6(如果可用);     
 //(Tools –> Options –> General –> Enable IPv6(if available));

2、开启“解密HTTPS通信"

 路径:“工具 –> 选项 –> HTTPS –> 捕获HTTPS连接 -> 解密HTTPS通信 -> (进程可选,默认从所有进程) -> (可选,忽略服务器证书错误(不安全));       
 //(Tools –> Options –> HTTPS –> Capture HTTPS CONNECTs –> Decrypt HTTPS traffic);

Fiddler可通过伪造CA证书来达到欺骗浏览器和服务器的目的,从而解密HTTPS数据包。

     首次安装Fiddler到电脑主机上会提示安装证书,一步步点击确定安装就行。

3、开启”允许远程连接计算机“

 路径:“工具 –> 选项 –> 连接 –> 捕获FTP请求 -> 允许远程计算机连接,(其它几个选项可按需勾选);
 //(Tools –> Options –> Connections –> Capture FTP requests -> Allow remote computers to connect;
  Fiddler默认监听端口是8888,也可自定义;

4、开启“捕获通信”

 路径:“文件 –> 捕获通信 F12”;    
 //(File –> Capture Traffic F12);
  检查下 Fiddler 是否已开启“捕获通信”,确保开启才可以抓获包。开启后在左下角会有“捕获”(Capturing)显示,或者直接点击左下角的捕获图标来开启/关闭抓包功能。

二、Fiddler 抓包说明

     Fiddler 开启抓包后,获取到的数据包会显示在左侧的会话列表中,下面是标识的含义。

(一)”会话框“含义

 会话框截图

1、“#字段”

 #:会话框列表最左侧,#号这一栏是代表这个请求大概什么内容;
 <>:这个符号是测试的请求与响应的类型。
名称 含义
# 抓取HTTP Request的顺序,从1开始,以此递增
Result HTTP状态码
Protocol 请求使用的协议,如HTTP/HTTPS/FTP等
Host 请求地址的主机名
URL 请求资源的位置
Body 该请求的大小
Caching 请求的缓存过期时间或者缓存控制值
Content-Type 请求响应的类型
Process 发送此请求的进程:进程ID
Comments 允许用户为此回话添加备注
Custom 允许用户设置自定义值

1.1 “#图标”

图标 含义
请求已经发往服务器
已从服务器下载响应结果
请求从断点处暂停
响应从断点处暂停
请求使用 HTTP 的 HEAD 方法,即响应没有内容(Body)
请求使用 HTTP 的 POST 方法
请求使用 HTTP 的 CONNECT 方法,使用 HTTPS 协议建立连接隧道
响应是 HTML 格式
响应是一张图片
响应是脚本格式
响应是 CSS 格式
响应是 XML 格式
响应是 JSON 格式
响应是一个音频文件
响应是一个视频文件
响应是一个 SilverLight
响应是一个 FLASH
响应是一个字体
普通响应成功
响应是 HTTP/300、301、302、303 或 307 重定向
响应是 HTTP/304(无变更):使用缓存文件
响应需要客户端证书验证
服务端错误
会话被客户端、Fiddler 或者服务端终止

2、“结果”(result)

     服务器的HTTP状态码(HTTP Status Code):是用以表示网页服务器传输协议响应状态的3位数字代码,响应分为五种:
  信息响应:(100-199),服务器接受成功了并处理;
  成功响应:(200-299);
  重定向:(300-399);
  客户端错误:(400-499),最常见的的就是找不到服务器,一般是请求地址有问题;
  服务器错误:(500-599);一般是服务器本身的错误,表示服务器在尝试处理请求时发生内部错误,而不是请求出错。
名称 含义
200 请求成功;请求方法为get/post/head/trace。
202 请求收到但未响应。
400 错误、无效请求;服务器不理解请求的语法。(解决办法传参格式不正确)
401 未授权;服务器理解请求但是拒绝执行,对于有权限要求,如:需要登录的网页、黑名单、ip过于频繁访问服务器都可能返回此响应。
403 禁止;服务器拒绝请求。
404 未找到;请求资源失败,找不到服务器请求的网页。
405 请求方法不被接受,比如某个接口只能用post请求,但是用了get请求,则会报405。
500 服务器内部错误;服务器遇到错误无法完成请求,常见于用户权限、数据库连接等出现的错误。(解决办法传参数不正确)
501 尚未实施;服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。
502 错误网关;服务器作为网关/代理,从上游服务器收到无效响应,如链接超时、服务器请求链接过多导致服务器无法正常响应。
503 服务不可用;由于CPU超载或停机维护使得服务器目前无法正常使用。
504 网关超时;服务器作为网关或代理,但是没有及时从上游服务器收到请求。
505 HTTP 版本不受支持,即服务器不支持请求中所用的 HTTP 协议版本。
507 服务器有内部配置错误。

3、“协议”(protocol)

 协议类型,如:http、https等.

4、“域名”(host)

 主机地址或域名

5、“网址”(url)

 请求的路径

6、“正文”(body)

 该条请求产生的数据大小

7、“缓存”(caching)

 缓存相关

8、“连接类型”(content-type)

 连接类型

9、“进程”(process)

 客户端类型

10、“注释”

(二)检查( Inspectors)

 用来查看当前会话获取到的数据内容:
  上半部分:请求内容;
  下半部分:响应内容。

1、统计(Statistics)

     包括客户端连接请求和服务器响应连接的数据统计等。

结语

   简单的抓包初阶教程,常遇到的都做了简要说明,对于小白简分析抓包比较友好,上手快。即是写着玩、也是总结和分享吧,大神请忽略!
名称 时间
开始编制日期: 2020 年 11 月 11 日
最后编辑日期: 2020 年 11 月 12 日

最新文章

  1. UVa 11149 Power of Matrix(倍增法、矩阵快速幂)
  2. python __name__
  3. Logstash学习1-logstash的简单例子
  4. I love sneakers!(分组背包HDU3033)
  5. OA学习笔记-001-项目介绍
  6. linux的grep命令
  7. [原创]NT系统信息察看工具 : NtInfoGuy
  8. 深刻理解HDFS工作机制
  9. Java反射机制详解(3) -java的反射和代理实现IOC模式 模拟spring
  10. DATAGUARD常用管理命令
  11. 【Python】 SQLAlchemy的初步使用
  12. mysql substr() 函数
  13. JsonIgnore注解不起作用的解决办法
  14. scheme实现最基本的自然数下的运算
  15. swust oj 237
  16. Linux系统平均负载3个数字的含义
  17. mvc项目用log4net 记录错误日志
  18. SpringBoot自定义错误信息,SpringBoot适配Ajax请求
  19. Windows Service application 初步探索
  20. Mantis邮件服务器配置

热门文章

  1. sql中的字符串拼接
  2. 【1】TensorFlow光速入门-tensorflow开发基本流程
  3. 一套轻量级销售团队管理系统【CRM】
  4. Lucas(卢卡斯)定理模板&amp;&amp;例题解析([SHOI2015]超能粒子炮&#183;改)
  5. 别走!这里有个笔记:图文讲解 AQS ,一起看看 AQS 的源码……(图文较长)
  6. Qt混合Python开发技术:Python介绍、混合过程和Demo
  7. Linux Capabilities 入门教程:进阶实战篇
  8. 它是世界上最好的语言,吊打PHP那种
  9. SpringBoot整合JWT实战详解
  10. Elasticsearch(6):文档查询