Fiddler(FD)抓包工具

链接:中文版Fiddler下载

一、Fiddler简介

Fiddler是最强大最好用的Web调试工具之一, 它能记录所有客户端和服务器的http和https请求。允许你监视、设置断点、甚至修改输入输出数据。Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展。换言之,你对HTTP 协议越了解,你就能越掌握Fiddler的使用方法。你越使用Fiddler,就越能帮助你了解HTTP协议。Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。

二、Fiddler的工作原理

Fiddler 是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888。 当Fiddler退出的时候它会自动注销, 这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。 解决的办法是重新启动下Fiddler。

个人理解:fiddler是一个抓包工具,当浏览器访问服务器会形成一个请求,此时,fiddler就处于请求之间,当浏览器发送请求,会先经过fiddler,然后在到服务器;当服务器有返回数据给浏览器显示时,也会先经过fiddler,然后数据才到浏览器中显示,这样一个过程,fiddler就抓取到了请求和响应的整个过程。

正常退出方式:

Fiddler界面

三、http协议介绍

协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。

HTTP协议的主要特点

1.支持客户/服务器模式
2.简单快速: 客户向服务器请求服务时,只需传送请求方法和路径。 请求方法常用的有GET、HEAD、POST。 每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单, 使得HTTP服务器的程序规模小,因而通信速度很快。
3.灵活: HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
4.无连接: 无连接的含义是限制每次连接只处理一个请求。 服务器处理完客户的请求, 并收到客户的应答后, 即断开连接。 采用这种方式可以节省传输时间。
5.无状态: HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

HTTP协议之请求

http请求由三部分组成,分别是:请求行、消息报头、请求正文

请求方法有多种, 各个方法的解释如下:

GET请求获取Request-URI所标识的资源

POST在Request-URI所标识的资源后附加新的数据

HEAD请求获取由Request-URI所标识的资源的响应消息报头

PUT请求服务器存储一个资源, 并用Request-URI作为其标识

DELETE请求服务器删除Request-URI所标识的资源

TRACE请求服务器回送收到的请求信息,主要用于测试或诊断

CONNECT保留将来使用

OPTIONS请求查询服务器的性能,或者查询与资源相关的选项和需求

应用举例:

GET方法在浏览器的地址栏中输入网址的方式访问网页时, 浏览器采用GET方法向服务器获取资源,eg:GET /form.html HTTP/1.1 (CRLF)

POST方法要求被请求服务器接受附在请求后面的数据, 常用于提交表单。

HTTP协议之响应

在接收和解释请求消息后,服务器返回一个HTTP响应消息。

HTTP响应也是由三个部分组成,分别是:状态行、消息报头、响应正文

状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:

1xx:指示信息–表示请求已接收,继续处理

2xx:成功–表示请求已被成功接收、理解、接受

3xx:重定向–要完成请求必须进行更进一步的操作

4xx:客户端错误–请求有语法错误或请求无法实现

5xx:服务器端错误–服务器未能实现合法的请求

常见状态代码、状态描述、说明:

200 OK //客户端请求成功

400 Bad Request //客户端请求有语法错误, 不能被服务器所理解

401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用

403 Forbidden //服务器收到请求,但是拒绝提供服务

404 Not Found //请求资源不存在,eg: 输入了错误的URL

500 Internal Server Error //服务器发生不可预期的错误

503 Server Unavailable //服务器当前不能处理客户端的请求,一段时间后可能恢复正常

四、Fiddler抓包解析

1.左侧面板

抓包工具面板功能

#:HTTP Request的顺序,从1开始,按照页面加载请求的顺序递增。

Result : HTTP响应的状态 Protocol:请求使用的协议(如HTTP/HTTPS)

HOST:请求地址的域名 URL:请求的服务器路径和文件名,也包含GET参数

BODY:请求的大小,以byte为单位

Content-Type:请求响应的类型

Caching:请求的缓存过期时间或缓存控制header的值

Process:发出此请求的Windows进程及进程ID

Comments :用户通过脚本或者菜单给此session增加的备注

custom:用户可以通过脚本设置的自定义值

2.右侧面板

Statistics统计页签

通过该页签, 用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。选择第一个请求和最后一个请求, 可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多, 从而对页面的访问进行访问速度优化

inspectors检查页签

它提供headers、textview、hexview,Raw等多种方式查看单条http请求的请求报文的信息,它分为上下两部分:上部分为HTTP Request(请求)展示,下部分为HTTPResponse(响应)展示

AutoResponse自动响应页签

Fiddler最实用的功能, 它可以抓取在线页面保存到本地进行调试, 大大减少了在线调试的困难, 可以让我们修改服务器端返回的数据, 例如让返回都是HTTP404或者读取本地文件作为返回内容。

可设置打开某网页显示自己想要的内容,比如抓取百度链接,点击add rule,设置如下所示:

到百度页面刷新即可显示该图片

composer构建页签

支持手动构建和发送HTTP, HTTPS和FTP请求, 我们还可以从web session列表中拖曳session, 把它放到composer选项卡中, 当我们点击Execute按钮, 把请求发送到服务器端。操作如下图所示:

这样设置发送的请求,就不是浏览器发出的了,而是fiddler发出的,查看inspectors里面的信息便可看出

log日志页签: 打印日志

Filters过滤页签

过滤器可以对左侧的数据流列表进行过滤, 我们可以标记、 修改或隐藏某些特征的数据流。

Timeline时间轴页签

时间轴,也称为Fiddler的瀑布图,展示网络请求时间的功能。 每个网络请求都会经历域名解析、建立连接、发送请求、接受数据等阶段。把多个请求以时间作为 X 轴, 用图表的形式展现出来, 就形成了瀑布图。 在左侧会话窗口点击一个或多个(同时按下 Ctrl 键),Timeline 便会显示指定内容从服务端传输到客户端的时间

五、Fiddler命令行工具

Fiddler的左下角有一个命令行工具叫做QuickExec,允许你直接输入命令。

常见得命令有:

help : 打开官方的使用页面介绍, 所有的命令都会列出来

cls : 清屏 (Ctrl+x 也可以清屏)

select : 选择会话的命令, 选择所有相应类型select image、select css、select html

?sometext : 查找字符串并高亮显示查找到的会话列表的条目,?qq.com

>size : 选择请求响应大小小于size字节的会话

=status/=method/@host : 查找状态、方法、主机相对应的session会话,=504,=get,@www.qq.com

quit:退出fiddler

Bpafter,Bps, bpv, bpm, bpu这几个命令主要用于批量设置断点

Bpafter xxx: 中断 URL 包含指定字符的全部 session 响应

Bps xxx:中断 HTTP 响应状态为指定字符的全部 session 响应。

Bpv xxx:中断指定请求方式的全部 session 响应

Bpm xxx:中断指定请求方式的全部 session 响应,等同于bpv xxx

Bpu xxx:与bpafter类似。

六、Fiddler应用

1.手机抓包
①启动Fiddler, 打开菜单栏中的 Tools > Fiddler Options, 打开“FiddlerOptions” 对话框

②在“Fiddler Options”对话框切换到“Connections” 选项卡, 然后勾选“Allowromote computers to connect” 后面的复选框, 然后点击“OK” 按钮

③在本机命令行输入: ipconfig, 找到本机的ip地址。

④打开android设备的“设置” ->“WLAN”,找到你要连接的网络,在上面长按,然后选择“修改网络”,弹出网络设置对话框,然后勾选“显示高级选项”(不同的手机,设置方法有所不同)

⑤在“代理” 后面的输入框选择“手动”,在“代理服务器主机名”后面的输入框输入电脑的ip地址,在“代理服务器端口”后面的输入框输入8888, 然后点击“保存” 按钮

⑥然后启动android设备中的浏览器,访问百度的首页,在fiddler中可以看到完成的请求和响应数据

备注: 如果是Android模拟器中ip要填写10.0.2.2,genymotion模拟器中ip要填写:10.0.3.2,手机实机中ip填电脑的ip,端口就是burp或者fiddler监听的端口 ,要处于同一网络下

2.过滤功能
①选择Filters页签,勾选use Filters勾选 Request Headers 中的 Hide if url contains 过滤项

②在里面输入:REGEX:(?insx)/[^?/].(css|ico|jpg|png|gif|bmp|wav)(?.)?$

REGEX: 表示启用正则表达式(?insx) 设置正则解释的规则,忽略大小写等。

此表达式表示过滤掉 url 中包括 css、ico、jpg 等后缀的请求

③勾选 Request Headers中的show only if URL contains,在里面输入

REGEX:(?insx)..?baidu.com/home. 只显示: baidu.com/Home

Fiddler过滤指定域名

第二个选项是只监控以下网址,如只监控百度,在下面的输入框里填上www.baidu.com

“No Host Filter”不设置hosts过滤

“Hide The Following Hosts”隐藏过滤到的域名

“Show Only The Following Hosts”只显示过滤到的域名

“Flag The Following Hosts”标记过滤到的域名

参考资料:
https://zhuanlan.zhihu.com/p/102392715
https://www.cnblogs.com/hong-fithing/p/7582947.html

Fiddler(FD)抓包工具汉化版及使用方法相关推荐

  1. 高级短链接工具+汉化版语言包premium-url-shortener-v5.9.8完美修复开心版QW提示跳转

    简介: 高级短链接工具修复生成不弹出短链接窗口问题+汉化版语言包premium-url-shortener-v5.9.8完美修复开心版QW提示跳转 此源码包含四个版本,有2020年11月29日更新的版 ...

  2. fiddler+android抓包工具配置使用

    今天临时增加一个工作,手机需要抓包,查看了不同的抓包工具,最后确定使用fiddler抓包工具进行操作,这里以android为例记录一下工具的配置和使用操作. fiddler的安装 网上有很多fiddl ...

  3. 初窥wireshark fiddler等抓包工具及部分实现分析

    做过网络方面开发的同学都知道,一个适用的抓包工具对工作问题的分析是很有用的.前段时间我也在折腾网络方面的相关开发,所以又重新使用了一下网络抓包工具.接下来就介绍一下现在用的比较多的几个网络抓包工具. ...

  4. Fiddler手机抓包工具的使用教程

    一款国外的抓包工具,功能很强大,需要慢慢学习 .HTTP 含HTTPS都可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全. 查看电脑IP地址 窗口 + r 打开 ...

  5. 【Windows 逆向】CheatEngine 工具 ( 汉化版 CE 工具推荐 | 编写简单 C++ 程序 | C++ 程序执行分析 | 使用 CE 修改上述 C++ 程序 )

    文章目录 一.汉化版 CE 工具推荐 二.编写简单 C++ 程序 三.C++ 程序执行分析 四.使用 CE 修改上述 C++ 程序 一.汉化版 CE 工具推荐 推荐一个汉化版的 CE 工具 : htt ...

  6. 正所谓:抓包抓的好,牢饭吃的饱,银白手铐准备好、抓包工具-fiddler/charles抓包工具详解

    目录 简介: Charles的基本功能使用 手机端使用charles进行抓包: 第二步,把手机按照charles的IP和端口进行配置:(手机和电脑网络在同一个wifi) 第三步,手机配对成功后,cha ...

  7. Mac 抓包工具Charles4破解版,安装使用

    之前,有朋友需要Mac下一款实用的HTTP信息抓包工具--Charles,小子这里就分享出来给更多需要的朋友.这次带来的是最新4.0版本. Charles是一款运行在你自己计算机上的web代理工具.它 ...

  8. Winclone Pro 7 for mac(分区备份还原工具)汉化版

    为大家带来一款知名的Windows系统分区备份还原工具,Winclone Pro 7 for mac破解版可以用来克隆.迁移和恢复您的个人Boot Camp分区,mac winclone pro可以帮 ...

  9. Bartender 4 mac版 v4.1.7 菜单栏管理工具 汉化版 支持 M1

    Mac毒搜集到的Bartender是一款非常实用的Menubar菜单栏管理小助手.随着Mac使用时间的增长,那原本简洁的菜单栏也自然而然会慢慢变长,加上某些应用 的菜单栏也有一定的长度,这时候用Bar ...

  10. android开发工具汉化版,【开源】EA极光 - 中文安卓开发工具

    原标题:[开源]EA极光 - 中文安卓开发工具 项目介绍 EA-Code是由业余爱好者编写的一款:中文安卓app开发工具. 工具完全由易语言+jdk开发,目前版本是2.0版本. 亮点介绍 1. 程序界 ...

最新文章

  1. 想改善风险管理工作吗?做些基础性工作吧
  2. activity 流程编辑器_如何读取APK的Activity(Python实现)
  3. 关于Log 的一些东西
  4. centos7上systemd详解
  5. Python面向对象2-类和构造方法
  6. 计算机绘图模型的参数方程,关于曲线绘图与运动控制问题的研究.doc
  7. STM32 SPI NSS 作用
  8. UML 10 种常见的域建模错误
  9. HTTP 1.1 协议规范
  10. matlab绘图工具
  11. spring boot+thymeleaf+layui实现后台管理系统界面
  12. linux正常关机使用命令是,Linux系统关机的命令
  13. 二氯甲烷废气处理吸附工艺
  14. macos系统镜像iso_我们一起来安装----虚拟机安装macOS
  15. 用winrar压缩工具切分文件和合并文件
  16. SpringCache的简单入门(RedisCacheManager)(@Cacheable、@CachePut、@CacheEvict)
  17. opentsdb性能测试
  18. 怎么让抖音视频当做铃声android,抖音怎么提取视频里的音乐?怎么将抖音里的音乐用来做手机铃声?抖音视频提取音频的方法...
  19. OK6410之uboot移植(4)——uboot启动代码植及支持nand flansh启动
  20. IEEE 2017 STAM16 阅读笔记

热门文章

  1. mac安装mysql(命令行方式)
  2. 如何查看excel中的vba代码
  3. NXP数学电机库PI控制器参数的理解
  4. ibm 服务器 win7系统安装,最详细thinkpad win7系统重装教程
  5. unity visual effect Graph 1
  6. eve-ng 添加dynamips镜像文件
  7. 【OpenCV】-算子(Sobel、Canny、Laplacian)学习
  8. Word文档《Document SAFER 2》
  9. ASP.NET 文件后缀名详解
  10. 网络安全05_VMware 虚拟机软件安装_准备Kali- Linux虚拟机_Windows Server 2003 Enterprise 虚拟机下载和安装