Fiddler-抓包
本文最后更新于:2020年9月27日 晚上
官网
https://www.telerik.com/fiddler
官网下载,然后安装即可  
原理

其工作过程就像一个中间人
- 浏览器发送给服务器的请求会被Fiddler拦截下来,可以进行请求内容的修改,改完以后再继续发送给服务器
- 服务器返回给浏览器的响应会被Fiddler拦截下来,可以进行请求内容的修改,改完以后再继续返回给浏览器
配置流程
开/关
一般情况下,打开抓取就会开始抓取
浏览器配置
这个情况并不一定会发生
有些时候,浏览器发请求,Fiddler会没反应
在这种情况下,你需要为浏览器配置Fiddler为代理  
Fiddler默认代理ip: 127.0.0.1 端口:8888
(你可以在设置那里查看,随着版本更新,也许会改变)
SSL解析
经过上述步骤后,会发现有很多的443错误


勾选,会弹出一些安全性的警告,同意以后,即可解析HTTPS包  
获取证书文件
在你成功设置以后,可以在浏览器访问localhost:Fiddler端口号
你可以在这里下载到Fiddler的证书文件  
抓包
基本
用Fiddler抓包能抓到连接过程中所有的包,包括建立TCP连接之类的
在中间界面选一个包的信息,在右边会显示对应的请求和响应的相关信息  
过滤
只处理特定的包
这里规定只处理url包含bilibili的包  
移除
那些无关紧要的包就丢掉好了
有很多种移除,根据情况选择就是
自动编码

如果不编码的话,结果可能会是一些乱码  
断点
这东西藏在最下面的角落里 
  
| 图标 | 情况说明 | 
|---|---|
|  | 发送请求时打断 | 
|  | 收到响应时打断 | 
|  | 不打断 | 
抓手机app数据包
- 手机连上wifi 
 让手机连上wifi,保持和电脑处于同一网络下
- 设置wifi代理项   
- 查看电脑ip地址   
- Fillder允许远程设备连接   
- 下载证书文件 
 大多数下载好了以后还需要去点信任证书才能启用
 手机浏览器访问 电脑ip:Fiddler端口号下载证书 - 注意是需要下载下来 
 许多的浏览器都会自己管理证书。如果直接点击,可能只是让手机浏览器信任证书。
 现在是需要让我手机app信任- Fiddler而不是只是让手机浏览器信任。
- 安装证书  
 证书叫啥名字其实都可以- 需要注意的是,有些操作系统需要在证书安全那里点信任 
 在一些高版本的安卓系统里,用户证书不能被信任,需要Root+开发者模式来解决
- 验证是否成功抓包 
 这个很简单,在手机上打开一个app进行一些需要访问网络的操作即可
 抓出来的包与在PC上抓的也大致相同
 这里通过bilibili app 包来验证- 清理面板,把过滤器打开 
- 打开Bilibili app,做一些操作
 这里我做搜索操作 
- 确定抓到的包 
 查看包里的内容,看看是否是所需,这里看到内容和app内一致,说明验证成功
 
- 清理面板,把过滤器打开
中间人修改
通过修改服务器返回的响应,使得数据变得不同
- 原始目标包抓取    
- 修改过滤器,精准抓包  
 在上面的抓包中,已经知道了更详细的的url,更改的话能避免显示无意义包
- 设置响应断点,在响应时打断   
- 手机重新发送请求,响应抓到包,进行修改后复制下来 
 手工修改需要一些时间,一般而言,app会进行三次左右的请求尝试并等待一段时间。要是超时会显示加载失败,手工操作来进行修改的话,需要一定手速
 为了手工实现快速更改内容,这里将包修改后复制下来 
 由于手工修改缓慢,app发送的三个请求都被拦截,相当于app没有收到响应。于是没有显示任何内容在app上 
 在下次访问时,会继续发送请求。这为修改提供了便利
- 重新发送请求,并快速修改包的内容  
 一顿操作过后,热搜就有了我的名字,虽然这只是在骗自己 - 若是失败,可以清理app缓存数据(甚至所有数据)来避免app不发送请求而通过缓存加载 
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!