利用charles抓包

利用charles抓包charles是一款http抓包软件,和fiddler极为相似,所以大家就会问,为啥不用fiddler呢,因为mac没有fiddler。而且charles还是付费版本。所以我们这里从安装破解到抓包成功一步一步讲清楚。下载并安装我们进入charles官网进行下载:https://www.charlesproxy.com/latest-release/download.do,我是mac,所以选择其中的macOS下载dmg包之后我们正常的安装,安装完成打开,大概就是这样的模样破解我们打开激活码生成界

大家好,又见面了,我是你们的朋友全栈君。

charles是一款http抓包软件,和fiddler极为相似,所以大家就会问,为啥不用fiddler呢,因为mac没有fiddler。而且charles还是付费版本。所以我们这里从安装破解到抓包成功一步一步讲清楚。

下载并安装

我们进入charles官网进行下载:https://www.charlesproxy.com/latest-release/download.do ,我是mac,所以选择其中的macOS在这里插入图片描述

下载dmg包之后我们正常的安装,安装完成打开,大概就是这样的模样
在这里插入图片描述

破解

我们打开激活码生成界面:
https://www.zzzmode.com/mytools/charles/
在这里插入图片描述
其中RegisterName可以随意填写,然后点击生成即可获得激活码。接着我们从charles的菜单栏里进入: Help -> Register Charles 即可打开激活charles的入口
在这里插入图片描述
我们将生成的name和key填入,点击Register之后charles会被关闭,重新启动即完成激活了。

配置SSL证书抓https包

破解完成后我们回过头来看一下一开始打开charles的那个界面,里面全是unknow,原因是这些https请求需要配置SSL证书。我们从菜单进入:Help -> SSL Proxying -> Install Charles Root Certificate,点击会会弹出mac的用户钥匙界面
在这里插入图片描述
我们找到Charles的这个证书,当前是不被信任的,我们双击进入到信任设置界面在这里插入图片描述

使用此证书时选择「始终信任」,设置后关闭即可,然后我们重新启动charles。

现在我们可以来做个测试,我们在百度上进行一个搜索
在这里插入图片描述

然后我们在charles中 「ctrl + F」 根据关键字搜索
在这里插入图片描述

就可以看到我们在哪些接口中有我们的关键字,然后我们在点击进入到具体的接口在这里插入图片描述

可能有小伙伴会发现自己的测试效果有问题,显示的是如图所示的全是unknow
在这里插入图片描述

可能是因为没有设置要代理的域名和端口,我们从charles的菜单:Proxy -> SSL Proxying Settings打开之后进入这个弹窗
在这里插入图片描述

我们点击红框选中的Add可以配置需要进行抓包的地址
在这里插入图片描述

如果专门的限制的话,我们直接全部都填*即可。表示任意地址和任意端口都抓包。之后我们重复上面的测试流程再看看效果,应该就好了。

或许大家可能会说抓浏览器的包没有意义呀,懂点相关知识的都知道F12浏览器的开发工具里啥都有,哪里还需要抓包工具。我们可以在看一下,我电脑上启动的Apifox客户端,charles也会被抓到它的包,只要用的是http通讯,不管是网页还是客户端都可以看的一清二楚。
在这里插入图片描述

配置网络代理抓手机的包

能够实现抓PC端的包之后,我们可能还希望能够通过它去抓手机的包。首先我们需要去让电脑和手机处于同一局域网,比如用手机给电脑开个wifi,或者让他们连同一个wifi就好了。我们进入到手机wifi设置界面在这里插入图片描述

我这里是长按可以编辑wifi,不同手机方式可能不太一样,打开类似如下界面
在这里插入图片描述
服务器主机名我们填写电脑的ip地址(mac在wifi设置界面就能看到自己的ip地址,window可以在cmd中输入ipconfig命令获取),服务器端口号填写charles的代理端口号,如果你没有修改过的话,默认是8888。保存后如果首次一般charles会弹出这个弹框。在这里插入图片描述

点击Allow就好了。

这时我们可以去手机上尝试打开个网页之类的看看效果,但很可能不仅啥也抓不到,而且连网都上不了。原因也是现在的网络请求基本都是https的,所以需要配置SSL 证书才行。

给手机端安装SSL证书

我们还是从charles的菜单:Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser。然后他会弹出一个教程
在这里插入图片描述

大致意思是在手机上用浏览器打开 chls.pro/ssl 这个地址(这个地址不一定是这个,我看网上很多其实不是这个地址,所以还是大家自己点击到这个教程看一下)下载证书,然后安装并设置为手机的信任证书,我们打开这个网址
在这里插入图片描述

选择立即下载。之后我们去进行证书安装,这个步骤每种手机的入口都不太一样,大家可以在设置里找找”凭证”之类的字样,或者百度一下,我是华为P40所以以华为P40为例,从设置 -> 安全 -> 更多安全设置 -> 加密和凭证,选择从存储设备安装,华为p40有这个设置选项需要注意
在这里插入图片描述

这里需要选择VPN和应用。

以上就是基本全部完成了,我们我们尝试打开京东App进入到某个界面
在这里插入图片描述

然后charles就能抓取到相关的接口调用。
在这里插入图片描述这个时候我们可以在换个app,比如盒马,我们会发现部分页面能打开,部分网页直接打不开了。抓的接口也都是unknow状态。这就是app本身做了反抓包的相关设计,这个后面再讲。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134449.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 深入理解java的finalize

    深入理解java的finalize基本预备相关知识 nbsp 1java 的 GC 只负责内存相关的清理 所有其它资源的清理必须由程序员手工完成 要不然会引起资源泄露 有可能导致程序崩溃 nbsp 2 调用 GC 并不保证 GC 实际执行 nbsp 3finalize 抛出的未捕获异常只会导致该对象的 finalize 执行退出 nbsp 4 用户以自己调用对象的 finalize 方法 但是这种调用是正常的方法调用 和对象的销毁过程无关 nbsp 5JVM 保证

    2025年6月6日
    0
  • NotePad++ 正则表达式替换 高级用法[通俗易懂]

    NotePad++ 正则表达式替换 高级用法[通俗易懂]在我们处理文件时,很多时候会用到查找与替换。当我们想将文件中某一部分替换替换文件中另一部分时,怎么办呢?下面正则表达式给我提供方法。正则表达式,提供复杂并且弹性的查找与替换注意:不支持多行表达式(involving\n,\r,etc).1基本表达式PatternMeaning.匹配任意字符,除了新一行(\n)。也就是说“.”可以匹配\r,当文件中同时含有\ra

    2022年5月13日
    70
  • codeforces round #257 div2 C、D「建议收藏」

    codeforces round #257 div2 C、D

    2022年2月6日
    45
  • 一步使你的asp.net网站在手机浏览器上全屏显示

    一步使你的asp.net网站在手机浏览器上全屏显示

    2021年9月2日
    54
  • 关于random()跟nextInt()方法过不了公司安评测试「建议收藏」

    关于random()跟nextInt()方法过不了公司安评测试「建议收藏」手上的项目最近过不了公司的安平测试,报告处理啊之后,发现问题竟然处在nextInt()跟random()两个方法上面,具体不通过的原因如下:大概意思就是,这两个系统自带的方法会导致安全信息泄露,因此禁止。然后我就进去查看具体代码,发现如下:没有进行任何的安全加密,只是验证码生成随机遮掩线条。安评测试的逻辑估计是只要调用这个方法都是不安全的,呵呵!!崩溃了,在线等C友建议如何改善了!…

    2022年7月21日
    19
  • mysql 主键自增语句_MySQL 自增主键[通俗易懂]

    mysql 主键自增语句_MySQL 自增主键[通俗易懂]以下仅考虑InnoDB存储引擎。自增主键有两个性质需要考虑:单调性每次插入一条数据,其ID都是比上一条插入的数据的ID大,就算上一条数据被删除。连续性插入成功时,其数据的ID和前一次插入成功时数据的ID相邻。自增主键的单调性为何会有单调性的问题?这主要跟自增主键最大值的获取方式,以及存放位置有关系。如果最大值是通过计算获取的,并且在某些情况下需要重新获取时,会因为最新的数据被删…

    2022年6月30日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号