使用whistle进行手机抓包并调试

article/2025/10/18 19:31:28

whistle是一个基于Node实现的跨平台web调试代理工具,类似Windows上的Fiddler,Mac上的Charles,主要用于查看、修改HTTP、HTTPS、Websocket的请求、响应,也可以作为HTTP代理服务器使用,不同于Fiddler通过断点修改请求响应的方式,whistle采用的是类似配置系统hosts的方式,一切操作都可以通过配置实现,支持域名、路径、正则表达式、通配符、通配路径等多种匹配方式,且可以通过Node模块扩展功能。

虽然长期以来一直使用的工具是Fiddler,但当我看到whistle的第一眼,就果断抛弃了Fiddler,转而使用whistle,诸多原因,我们下面一一来聊:

1、我们先看看whistle的官方文档:https://wproxy.org/whistle,点进去看的第一感觉这工具很强大,很灵活,而对比Filddler和Charles,功能比较弱,而且使用不是太灵活。

2、支持多种匹配规则的配置方式,而且规则还支持变量,使用下来就两个字:舒服,而Fiddler和Charles规则配置都有些困惑,特别死Charles规则的配置方式很死板。

3、支持使用动态规则,通过w2 use来导入动态的规则,很容易可以和项目编译流程打通,比如我们在项目根目录下新建whistle.cfg.js,内容:

const { name } = require('./package.json');
const path = require('path');function resolve(pathname) {return path.resolve(__dirname, pathname);
}module.exports = {name,rules: `
/www.test.com/commons.js/ ${resolve('./dist/commons.js')}
`
};

然后在编译命令运行之前,运行w2 use ./whistle.cfg.js,我们就可以导入一个以我们的项目名称为名字的规则列表(目前只有一条),而这段${resolve(’./dist/commons.js’)代码最终也会被替换为真实的项目路径。

4、支持hosts指向更改,而且无缓存,我们再也不需要去一层层去找hosts文件,再也不用关心更改的hosts是否生效了,再也不用去纠结Windows和Mac下hosts文件的存放位置,一条规则搞定:

www.test.com 118.118.118.118

5、支持各种请求和响应更改

6、原生支持远程调试,我们只需要加一条规则就可以搞定:

www.example.com weinre://example

…, 好处实在是太多,这里就不再多做介绍,有兴趣的朋友可以自行去研究,我们还是回到本文的主旨,手机端抓包和调试。

要进行手机端抓包,我们需要在手机上设置代理指向运行的whistle机器的特定端口(默认8899),IPhone和安卓手机设置代理的方式大同小异,这里主要介绍一下IPhone的设置方式:

1、打开手机上面的“设置”功能,进入手机的系统功能设置,如图所示。在这里插入图片描述
2、进入手机的设置功能之后,选择“无线局域网”,点击进入,如图所示。在这里插入图片描述
3、进入无线局域网之后,选择一个要设置HTTP代理的网络,点击进入,如图所示。在这里插入图片描述
4、进入该网络配置之后,下拉页面,找到HTTP代理模块的“配置代理”,点击进入,如图所示。在这里插入图片描述
5、进入配置代理的模块后,可以看到状态是关闭的,点击其中的“手动”,如图所示。在这里插入图片描述
6、点击手动之后,就会出来一个模块让填写代理服务的ip和端口,正确输入即可,然后点击右上角的“存储”,如图所示。在这里插入图片描述
设置完代理后,我们已经可以抓http网站的包,但是如果我们访问https的网站,会发现会提示证书有问题,我们需要安装并信任证书,证书安装我们可以通过Safari(一定要是Safari)访问:http://电脑ip:8899,在这里插入图片描述
依次点击步骤一和步骤二下载证书,步骤三开启https抓包,证书下载完毕后,我们可以在描述文件中找到下载的证书并点击安装:在这里插入图片描述
安装证书后我们需要信任证书,在“设置”>“通用”>“关于本机”>“证书信任设置”。在“针对根证书启用完全信任”下,开启对这个证书的信任。在这里插入图片描述
到这里我们就可以抓手机上的https的包了,但是我们如何调试手机端的页面呢?

1、我们可以通过上面介绍的weinre来开启whsitle自带的远程调试工具

2、我么可以利用log来远程来查看远程控制台或者打印变量

3、我们可以通过resPrepend或resAppend配合本地文件或者变量来向手机端页面注入调试面板,比如eruda。例:

新建规则:

www.example.com resAppend://{append}

新建变量append,内容为:

<script src="http://cdn.jsdelivr.net/eruda/1.0.5/eruda.min.js"></script>

开启规则后,我们在请求www.example.com网站的时候就会自动注入eruda调试面板,通过调试面板我们可以方便的对手机端页面进行调试。

写在最后:

1、如果上面步骤都完成后,我们依然无法抓包,考虑是电脑端防火墙的原因,我们可以选择关闭防火墙和本地的杀毒软件,当然也可以放行8899端口,不过设置稍微有些繁琐。

2、手机抓包结束后,记得恢复代理为关闭,不然会影响后续正常情况下的请求发送。


http://chatgpt.dhexx.cn/article/gyhky3eL.shtml

相关文章

手机端抓包分析

1前提&#xff1a; wireshark是针对网络端口进行抓包的一款工具&#xff0c;由于环境限制&#xff0c;一些通过wifi热点进行抓包的方式并不适用&#xff0c;所以涉及到对手机流量进行分析的时候&#xff0c;可以通过在手机上进行tcpdump&#xff0c;将抓取的pcap包通过wireshar…

fiddler手机抓包

1&#xff1a;打开fiddler&#xff0c;点击菜单栏的Tools->Options,进行设置。设置时&#xff0c;保证端口号不会被占用&#xff1b;设置完成&#xff0c;点击【ok】。 2&#xff1a;点击HTTPS&#xff0c;开始设置&#xff0c;必须勾选所选框中内容&#xff0c;设置完成点击…

手机抓包图文教程

手机抓包图文教程 给大家介绍下如何使用Fiddler进行手机抓包。 运行环境为Windows 10&#xff0c;使用手机为iPhone 7&#xff0c;iOS11系统。 0. 准备工作 首先需要确保手机及电脑在同一个局域网内&#xff0c;如连接了同一个无线路由器。 Fiddler配置 运行Fiddler后打开配置…

charles手机抓包教程

charles手机抓包教程 一、设置系统代理 二、电脑端安装证书 安装的时候就注意证书放在“受信任的证书委发机构”就行&#xff0c;其他的都是点下一步 三、设置代理 四、设置手机上的代理 让手机和电脑保持连接同一个wifi 先查看电脑端的地址 再设置手机代理&#xff08…

台式机fiddler手机抓包

台式机fiddler手机抓包 因为兴趣,最近研究了一下,如何对手机抓包,自己做个笔记,方便以后查看,现在简单说一下操作流程及操作中遇到的问题。 一、设备 1.无线USB网卡,电脑、手机。 因为手机用fiddler抓包的时候,需要电脑和手机要在同一个局域网,我自己的电脑是台式机,…

【fiddler】用fiddler实现iPhone手机抓包

一、fiddler的简介 fiddler是位于客户端和服务器端之间的代理&#xff0c;也是目前最常用的抓包工具之一 。 它能够记录客户端和服务器之间的所有 请求&#xff0c;可以针对特定的请求&#xff0c;分析请求数据、设置断点、调试web应用、修改请求的数据&#xff0c;甚至可以修…

Fiddler实现手机抓包——小白入门

手机用fiddler抓包 电脑最好是笔记本&#xff0c;这样能和手机保持统一局域网内&#xff1b;其他不多说&#xff0c;直接说步骤了。 一.对PC&#xff08;笔记本&#xff09;参数进行配置 1. 配置fiddler允许监听到https&#xff08;fiddler默认只抓取http格式的&#xff09; …

Burp-手机抓包

1.手机和电脑需要在同一网络下&#xff0c;可以连同一个wifi 或者 电脑开热点 2.配置代理。 在命令行中输入ipconfig。 在burp中设置代理 配置手机代理&#xff0c;选择手动代理&#xff0c;填写主机名&#xff08;ip&#xff09;和端口。 完成以上步骤&#xff0c;就可以抓到…

使用Fiddler进行手机抓包

配置fiddler&#xff0c;并进行手机抓包 一.由于fiddler只默认抓取HTTP的请求&#xff0c;若想抓取HTTPS的请求&#xff0c;则需要设置HTTPS的各项值&#xff1a; 第一步&#xff1a;在fiddler菜单项选择Tools -> Options -> HTTPS 第二步&#xff1a;勾选【Decrypt H…

安卓手机抓包方法归纳总结

安卓手机抓包方法归纳总结 最近需要对安卓应用发出的网络数据进行抓包分析&#xff0c;除了常见的HTTP还包括MQTT协议。 本文总结归纳了。手机端抓包的各种方法和思路 0x01 wireshark方案 在PC端抓过包的人一定不会对Wireshark感到陌生&#xff0c;该软件可以直接抓取流经网…

【fiddler】用fiddler实现android手机抓包

一、fiddler的简介 fiddler是位于客户端和服务器端之间的代理&#xff0c;也是目前最常用的抓包工具之一 。 它能够记录客户端和服务器之间的所有 请求&#xff0c;可以针对特定的请求&#xff0c;分析请求数据、设置断点、调试web应用、修改请求的数据&#xff0c;甚至可以修…

手机抓包工具汇总【转】

转自&#xff1a;http://blog.zengrong.net/post/2646.html 做移动开发&#xff0c;抓包是基本功。现在的开发者当真是非常幸福&#xff0c;因为抓包工具已经非常成熟了。 在移动设备上抓包&#xff0c;需要下面几个方面的配合&#xff1a; 移动设备支持&#xff1b;代理服务…

fiddler如何抓手机的包-三种场景

fiddler如何抓手机的包-三种场景 一、抓包大概步骤 1.抓手机包的大概步骤 1.1.保证手机和电脑在同一个网段&#xff08;连接同一个热点&#xff0c;电脑连手机热点&#xff09; 1.2.Fiddler开启远程配置&#xff0c;设置端口 1.3.进入手机wifi&#xff0c;设置代理&#xff0…

利用手机抓包

安卓手机抓包用小黄鸟app&#xff0c;苹果手机抓包用Stream 一、安卓小黄鸟抓包教程 1、安装小黄鸟 手机下一个HttpCanary(小黄鸟)apk&#xff0c;百度一大堆。或者拿我共享的用 链接&#xff1a;https://pan.baidu.com/s/1ufyni4fAp3XrIBKNFBCa2Q 提取码&#xff1a;1234…

GOIP卡机网关SIM 对接群呼叫客服系统 自动外呼

采用软硬件结合的架构方式、及分布式的IP技术&#xff0c;从多角度为企业提供整合的一体化解决方案&#xff1b;由于新技术的应用&#xff0c;在提供优质高效的客户服务的同时&#xff0c;大大降低了运营成本&#xff0c;给企业的客户服务带来震撼性的变革&#xff0c;共同辅助…

什么是CTI?呼叫中心系统CTI技术的应用

CTI是指计算机电话集成&#xff1b;CTI呼叫中心系统是指一种基于CTI技术、充分利用通信网和计算机网的多项功能集成&#xff0c;并与企业连为一体的一个完整的综合信息服务系统。下面我们就来详细了解CTI是什么&#xff1f;什么是CTI呼叫中心系统&#xff1f; CTI是英文“Compu…

自动驾驶与移动边缘计算

https://www.toutiao.com/i6639488714558931463/ 2018-12-27 10:07:10 移动边缘计算是一项在近距离内为移动用户提供云服务和IT服务的新兴技术。传统网络运营商负责对传输流进行控制&#xff08;比如转发和包过滤等&#xff09;&#xff0c;但在移动边缘计算中&#xff0c;云服…

基于plc的病床呼叫系统控制设计

wx供重浩&#xff1a;创享日记 对话框发送&#xff1a;plc呼叫 获取完整无水印说明报告&#xff08;含梯形图指令表等&#xff09; 明确设计内容和要求 病床呼叫系统控制要求 ① 共有6个病房&#xff0c;每间病房4个床位。每一病床床头均有紧急呼叫按钮及重置按钮&#xff0c;…

呼叫中心客服IVR语音导航和电销自动外呼

在客户为主导的市场下,呼叫中心软件凭借能提升企业品牌形象、坐席工作效率和客户满意度的优点,遍布在各行各业,如客服部门、销售部门、技术维修部门、政府部门热线、水电力、调度部门、银行、教育领域、医疗卫生部门等。下面根据智海科创呼叫中心软件介绍一下呼叫中心软件的…

曾经的百度开源呼叫中心

首先说明一下&#xff0c;在github上面百度已经撤回了此开源项目。 # 简介 百度开发的一套基于互联网应用模式的呼叫中心套件&#xff0c;采用颠覆式的技术模式&#xff0c;无需任何专有硬件设备&#xff0c;以通用服务器软件的模式&#xff0c;依靠云计算等技术&#xff0c;…