博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fiddler 手机抓包
阅读量:6705 次
发布时间:2019-06-25

本文共 1910 字,大约阅读时间需要 6 分钟。

1 环境准备

  1. 安装好 Fiddler 抓包工具;
  2. 安装有 Fiddler 的电脑必须跟手机处在同一个网络里;
  3. 在 Fiddler 中设置好捕获 HTTPS。

       默认情况下,Fiddler 不会捕获 HTTPS 会话,需要进行设置:启动 Fiddler,在菜单栏中单击 Tool --> Options --> HTTPS,选中“Decrypt HTTPS traffic”,在弹出的2个对话框中单击“Yes”。同时选中“Ignore server certificate errors”来忽略一些证书的错误。

      安装证书后,测试一下 Fiddler 能否捕捉 HTTPS 请求。打开浏览器,输入 https://baidu.com ,在 Fiddler 中查看是否捕捉到了 HTTPS 的百度请求。

      查看 windows 本地安装的证书

方法1. win+R,调出命令行窗口,输入“certmgr.msc”;

方法2. 在 Fiddler 的菜单栏选择 Tools --> Options --> HTTPS --> Actions --> Open Windows Certificate Manager。

2 原理

Fiddler 作为代理服务器,可以接受远程及其发来的 HTTP/HTTPS 协议的数据包,并且将其转发到 Web 服务器。

3 手机抓包

3.1 配置 Fiddler 允许“远程连接”

       启动 Fiddler,点击 Tools --> Options --> Connections,选中“Alllow remote computers to connect” 。同时,我们可以看到 Fiddler 的工作端口号是 8888。勾选之后,要重启 Fiddler。

3.2 获取 Fiddler 所在机器的 IP 地址

       方法1:查看电脑 IP 地址,win+R,调出运行窗口,输入命令“ipconfig”,找到 IP 地址。

       方法2:在 Fiddler 中,鼠标放在右上方的“online”图标上,也可以看到本机的 IP 地址。

3.3 手机上设置代理服务器

  1. 打开手机设置 --> Wi-Fi,找到手机当前连接的 Wi-Fi。
  2. 将代理改为手动,服务器输入 Fiddler· 所在的电脑 IP 地址,服务器端口 8888。
  3. 保存连接即可,有些手机可能需要重新输入wifi密码才能重新连接。

3.4 测试 Fiddler  捕获手机发出的 HTTP

  1.  打开手机的浏览器,输入网址 www.163.com 进行浏览(163网站用的是 HTTP 协议),或者打开手机 app进行捕获。
  2. 如果抓不到 HTTP 的包,很可能是 windows 的防火墙问题,到控制面板关掉防火墙后再试试。

3.5 捕获手机上的 HTTPS

捕获 HTTPS 请求,则必须把 Fiddler 证书安装到手机上。

3.6 Apple 设备需要使用插件制作新证书

       Fiddler 默认的证书是基于命令行工具 makecert.ex.,几乎所有的 Windows 客户端都接受该工具生产的证书。但是 Apple IOS 设备和少部分 Android 要求根证书和服务器证书包含 makecert.exe 生产的证书中所没有的其他元数据。为了兼容这些设备,需要下载 Fiddler 插件“CertMaker for IOS and Android”。

      ,下载运行之后,回味 Fiddler 生产新的证书。

3.7 IOS 设备安装证书方法

  1. 打开 IOS 手机的 Safari 浏览器,输入 http://hostip:8888 ,其中 hostip 就是 Fiddler 所在的计算机上的 IP。在打开的网页中,单击“FiddlerRoot Certificate”,单击“允许”,下载证书。

  2. 单击“安装”,安装证书;                             
  3. 单纯安装还不行,要开启信任。设置 --> 通用 --> 关于本机 --> 证书信任设置 --> 勾选 “DO_NOT_TRUST_FiddlerRoot”。

3.8 设置过滤

在手机上设置好代理后, Fiddler 上会抓到 PC 端的和手机端的所有请求,可以设置过滤。

在 Fiddler 中,选择 Tools --> Options -->HTTPS,选择“from remote clients only”

3.9 注意

手机设置代理后,测试完了记得把代理关了,否则无法正常上网。

许可协议: 转载请保留原文链接及作者。

转载于:https://juejin.im/post/5c9779d76fb9a070b0486b08

你可能感兴趣的文章
CSS中如何把Span标签设置为固定宽度
查看>>
android设计的布局在阿拉伯语下界面错乱的解决方法
查看>>
HDU 1253 胜利大逃亡 NYOJ 523【BFS】
查看>>
VIM 插入
查看>>
iOS 开发如何入门
查看>>
关于Unity中的Input输入事件
查看>>
(转)Openlayers 2.X加载高德地图
查看>>
项目实战:如何构建知识图谱
查看>>
JVM Specification 9th Edition (2) Chapter 1. Introduction
查看>>
Linux开机启动脚本 - 转
查看>>
php错误抑制符
查看>>
Tronado自定义Form组件
查看>>
Win8Metro(C#)数字图像处理--2.32图像曝光算法
查看>>
Cocos Creator socket.io打包Apk后无法连接
查看>>
Vue基础知识总结(一)
查看>>
使用JNA解决自动化测试无法做密码输入操作的问题
查看>>
WPF关闭应用程序方法
查看>>
jQuery系列 第四章 jQuery框架的选择器
查看>>
Android实现录音的方法(最重要的是对MediaRecorder的试用方法)
查看>>
Android ViewDragHelper完全解析 自定义ViewGroup神器
查看>>