fiddler使用笔记


Fiddler软件,其实本身他是一个代理服务器Proxy,客户机设置代理到Fiddler之后,Fiddler可以随意修改和转发请求,等响应回来了,亦可以随意修改响应体,包括HTTPS链接,因为它会伪装。

Fiddler官网https://www.telerik.com/fiddler
同类工具:httpwatch/wireshark/firebug

Fiddler启动后,会自动配置IE浏览器的代理(chrome同样也是使用本地代理设置),如果fiddler未响应被强行关闭,提示:

未连接到互联网 代理服务器出现问题,或者地址有误。
那么需要前往Internet 属性 - 连接 - 局域网LAN设置设置代理,取消勾选“代理服务器。”

抓取手机或者模拟器的数据包

  • Fiddler设置:

    手机或模拟器必须与Fiddler同处于一个内网网络,网关相同,设置如下:
    Fiddler > Tools > Options > Connections
    勾选 Allow remote computers to connect
    默认端口号是8888
    获取本地ip直接运行>cmd 输入ipconfig 即可以看到本地的ipv4地址,本例以192.168.1.88为准
  • APP设置:

    设置>WLAN wifi,选中(或者长按)网络修改连接,勾选高级选项,代理选择手动,输入:
    代理服务器主机名:192.168.1.88
    代理服务器端口:8888

设置监听HTTPS会话:

打开Tool > Fiddler Options > HTTPS
勾选下面三项:

Capture HTTPS CONNECTs
Decrypt HTTPS traffic
Ignore server certificate errors
弹出对话框询问是否将根证书导入库,选择yes,然后,如果在手机或模拟器上,需要在浏览器输入Fiddler主机的web服务,如:
http://192.168.1.88:8888
FiddlerRoot certificate导入根证书(iOS还需去关于本机设置证书信任),如果还是不能够抓取https包,直接删除证书,重新下载安装一次证书。

QuickExec快速命令行的简单用法:

help #帮助
cls #清屏
select script #选择筛选
?.jpg #筛选url后缀为jpg的文件
bpu www.yongit.com #请求前中断,并修改该域的请求
bpu #消除断点
bpuafter www.yongit.com #请求后中断
bpuafter #消除断点

通过代理访问,客户端与目标服务器建立了隧道,一旦建立连接,fiddler会进行转发。

其他

  1. 隐藏tunnel to记录的方法:
    工具栏:Rules->Hide Connects
  2. Filters
    可以设置过滤条件对请求进行过滤
  3. 暂停记录
    File > Capture Traffic F12
  4. Composer
    可以自定义发送请求
  5. 设置断点并处理:
    Rules-> Automatic Breakpoint
  6. Tools > TextWizard
    字符串处理工具

原文链接:https://blog.yongit.com/note/135420.html