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数据包

  1. 手机连上wifi
    让手机连上wifi,保持和电脑处于同一网络下

  2. 设置wifi代理项

  3. 查看电脑ip地址

  4. Fillder允许远程设备连接

  5. 下载证书文件
    大多数下载好了以后还需要去点信任证书才能启用
    手机浏览器访问 电脑ip:Fiddler端口号下载证书

    注意是需要下载下来
    许多的浏览器都会自己管理证书。如果直接点击,可能只是让手机浏览器信任证书。
    现在是需要让我手机app信任Fiddler而不是只是让手机浏览器信任。

  6. 安装证书

    证书叫啥名字其实都可以

    需要注意的是,有些操作系统需要在证书安全那里点信任
    在一些高版本的安卓系统里,用户证书不能被信任,需要Root+开发者模式来解决

  7. 验证是否成功抓包
    这个很简单,在手机上打开一个app进行一些需要访问网络的操作即可
    抓出来的包与在PC上抓的也大致相同
    这里通过bilibili app 包来验证

    1. 清理面板,把过滤器打开
    2. 打开Bilibili app,做一些操作
      这里我做搜索操作
    3. 确定抓到的包

      查看包里的内容,看看是否是所需,这里看到内容和app内一致,说明验证成功

中间人修改

通过修改服务器返回的响应,使得数据变得不同

  1. 原始目标包抓取

  2. 修改过滤器,精准抓包

    在上面的抓包中,已经知道了更详细的的url,更改的话能避免显示无意义包

  3. 设置响应断点,在响应时打断

  4. 手机重新发送请求,响应抓到包,进行修改后复制下来
    手工修改需要一些时间,一般而言,app会进行三次左右的请求尝试并等待一段时间。要是超时会显示加载失败,手工操作来进行修改的话,需要一定手速
    为了手工实现快速更改内容,这里将包修改后复制下来

    由于手工修改缓慢,app发送的三个请求都被拦截,相当于app没有收到响应。于是没有显示任何内容在app上

    在下次访问时,会继续发送请求。这为修改提供了便利

  5. 重新发送请求,并快速修改包的内容

    一顿操作过后,热搜就有了我的名字,虽然这只是在骗自己

    若是失败,可以清理app缓存数据(甚至所有数据)来避免app不发送请求而通过缓存加载


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!