• home > tools > NetTools > PacketCapture >

    Mac 上fiddler与charles 抓包https 小程序请求 内容

    Author:zhoulujun Date:

    为什么选择charles,charles 抓包http乱码与SSL证书处理 需要注意事项,电脑上与手机上需要做的事情一步步讲解。

    为什么选择charles

    之前讲过《wireshark使用教程及过滤语法总结——血泪史的汇聚》, 很强大,但是很难用。

    fiddler 很好用,之前mac 上面没有,现在有了 fiddler everywhere,但是没有破解版,作为中国新一代 农民工——码农,确实没钱买。

    finder mac 版本:

    下载:软件官网下载地址:https://www.telerik.com/download/fiddler/fiddler-everywhere-windows


    Fiddler Everywhere v4.0.1版本破解 https://fsou.pro/doc/180/

    Fiddler EveryWhere 3.4.0 for Mac M1 :https://www.52pojie.cn/forum.php?mod=viewthread&tid=1679610

    但是破解版总感觉不安全,不敢装

    https://github.com/avwo/whistle

    不太爱折腾,虽有一键安装,但是客户端呢,呵呵

    只有用charles,才是最爱

    charles的下载安装#

    官网下载地址:https://www.charlesproxy.com/latest-release/download.do

    安装很简单,一直下一步即可

    破解#

    http://www.charles.ren  或者 https://www.zzzmode.com/mytools/charles/

    进入上面的网站,随意输入一个Registered Name,点击「生成」

    打开charles-help-register,输入刚刚生成的,然后就激活成功啦

    重启Charles,以上已破解成功,再也不用30分钟退出一次了

    默认情况下,charles不能解析https协议的接口,里面的请求和响应数据都是乱码格式,所以我们需要下载ssl证书,来获取里面的数据

    charles 抓包http乱码与SSL证书处理

    前提:保证电脑和手机在同一网络段(手机和电脑连接同一个wifi/热点)


    抓包测试原理

    抓包工具的主要原理就是网络代理,所有的请求和响应都从工具来隔离。工具内部就能够模拟限速以及丢包的效果。

    手机配合MAC抓包主要是利用手机访问MAC机上的代理端口,把手机的请求和响应绑定到该端口。然后搜有控制就由工具去掌管。

    相同的网络,mac的ip=a,手机用a作为代理,端口则是哟给你Charles的8888. 关键环节,mac使用正常端口访问网络。

    15202347507381.jpg

    具体参看:https://github.com/xuwening/blog/blob/master/mdFile/网络抓包原理及常用抓包工具.md


    电脑(PC/MAC)端操代理设置:

    1.关闭web端抓包,避免抓到web端接口造成干扰

    chartles https设置

    mac 为MacOS Proxy

    2.点击Proxy→Proxy Settings



    3.设置端口号,默认8888→勾选Enable transport HTTP proxying

    这个给 移动端wifi代理。

    注意公司的网关,比如有的公司网关层 规定代理端口限定在 :9000 -10000,


    4.启用证书:点击Proxy→SSL Proxy Settings→勾选Enable SSL Proxying→Add→正则表达式*→OK 





    5.下载证书:点击Help→SSL Proxying→Install Charles Root Certificate on a Mobile Device...→弹出信息框


    电脑(PC/MAC)端证书安装:

    点击会弹出,安装 login(登录)项

    系统默认是不信任 Charles 的证书的,此时对证书右键,在弹出的下拉菜单中选择『显示简介』,点击使用此证书时,把使用系统默认改为始终信任,如下图:

    后关闭,就会发现 charles 的证书已经被信任了,如下图:



    手机上证书安装

    设置移动端代理

    苹果IOS系统设置

    ①手机连接和电脑相同的网络→输入密码→高级选项→代理→手动→输入Charles显示的当前网络ip和代理的端口→连接    

    手机wifi代理设置


    然后打开手机的浏览器,输入

    charlesproxy.com/getssl 会弹出如下界面:

    如果出现的不是这个界面,那么把链接换成 https://www.charlesproxy.com/documentation/additional/legacy-ssl-proxying/


    ios安装charles ssl证书


    如果还抓不到数据,检查你的手机是不是 iOS 10.3 及以上版本,如果是的话的还需要进入手机设置->通用->关于本机->证书信任设置,如下图,证书选择信任就可以了:

    苹果ios charles 证书信任设置

    苹果手机iOS系统关闭抓包或卸载Charles抓包证书步骤

    此刻,就会看到您之前安装的Charles抓包证书了;


    点击该证书,移除即可!

    Android 安卓安装证书

    首先下载证书

    2.jpg

    和IOS 一样,只是安装大部分过程系统是无法自动安装,需要手动安装。


    手动安装,有些手机是需要手动安装,比如小米手机,需要针对charles证书如下操作:

    MUII手机安装 证书

    设置》安全》更多安全设置(最底下)》加密凭据》安装证书

    点击安装证书,选择下载的路径(有的手机需要把pem 改为cer文件。


    同时不用了,也是在相同的路径移除。


    参考文章:

    Charles安装移动端证书(手机) https://blog.csdn.net/weixin_45583894/article/details/123790429

    手机端安装charles证书详解 https://blog.csdn.net/u014036251/article/details/121105925

     测试必备工具之抓包神器 Charles 如何抓取 https 数据包? https://blog.csdn.net/xfw17397388089/article/details/126557996

    使用Charles对Android App的https请求进行抓包 https://www.jianshu.com/p/adcbc085fcae



    转载本站文章《Mac 上fiddler与charles 抓包https 小程序请求 内容》,
    请注明出处:https://www.zhoulujun.cn/html/tools/NetTools/PacketCapture/8908.html