🚀 个人主页 极客小俊
✍🏻 作者简介:程序猿、设计师、技术分享
🐋 希望大家多多支持, 我们一起学习和进步!
🏅 欢迎评论 ❤️点赞💬评论 📂收藏 📂加关注

Charles抓包不仅仅可以抓取来在PC端的HTTP请求,也能够抓取来自手机端发出的HTTP请求,
注意: 使用Charles进行手机端抓包需要在PC端进行配置下,并且需要移动设备和PC处于同一网络环境中!
首先我要再次提醒Charles中的代理端口号的设置是多少自己要清楚, 我这里设置的是8888
方便到时候移动端设备在同一网络环境下,能够找到端口号为Charles的代理程序!
如图

然后我们就可以进行手机端的代理设置了!
端口是什么?
这里简单普及一下端口的知识,端口号确实代表电脑上的某个运行的程序入口, 在计算机网络中,端口号(Port Number)是用于标识计算机上特定服务的数字标签,这些端口使得网络上的应用程序可以通过不同的通道与计算机进行通信!
注意: IP地址用于标识网络上的计算机,而端口号则用于标识该计算机上的特定服务或者程序,在这里我们指的就是Charles这个程序!
所以我们这里设置Charles的端口号就是为了让我们在自己的局域网中找到Charles这个程序作为代理!
实际上就是在告诉Charles在哪个端口上监听传入的代理请求!
一旦我们在其他设备或计算机上配置了相应的代理设置,这些设备或计算机就会将它们的网络请求发送到Charles所在的计算机的该端口上, Charles然后会捕获这些请求,允许我们查看、修改或转发它们,最后再将响应返回给原始设备或计算机!
原理如下图:
如图

通过正确设置Charles的端口号,我们可以确保在局域网中能够找到并配置Charles作为代理服务器,从而捕获和分析网络请求和响应。
首先一定要保证你的手机和电脑处于同一网络环境下,
苹果手机具体设置步骤,也很简单, 我们打开手机的设置界面, 然后选择【无线局域网】这个选项
如图

然后点击你自己连接WIFI后面的感叹号
如图

然后往下拉找到配置代理选择手动
如图

然后根据你自己的电脑网络环境查看到本机的IP地址, 你也可以从cmd命令行中使用ipconfig命令去查看自己电脑局域网的IP地址!
如图

我这里为:192.168.3.13 就代表我这个本地计算机,而端口号就是前面我们设置的8888
现在我们就可以把IP地址和端口号 填入到代理配置的服务器和端口上面去了,最后点击存储即可!
如图

其实现在我们就可以来打开Charles来尝试一下 能不能抓取iOS手机端的数据了!
然后你可能会看到Charles给你反馈一个提示:
如图

这个意思是iOS手机端IP地址为192.168.3.2尝试连接到Charles
所以这里我们应该点击Allow(允许)受信任的用户设备来访问Charles
这样做了以后并不能马上让你通过Charles来抓取iOS的数据,我们还需要做一些设置!
首先打开Charles 选择菜单栏上的 Help-->SSL Proxying-->Install Charles Root Certificate on a Mobile Device or Remote Browser在移动设备或远程浏览器上安装Charles Root证书
如图

然后这里就会提示我们在当前的这个本地计算机地址为:192.168.3.13:8888上将设备配置为使用Charles作为其HTTPP代理的意思, 并且也会告诉我们手机证书下载的地址
如图

那么接下来我们就可以到iOS手机端打开Safari浏览器输入地址为https://chls.pro/ssl去下载并安装证书!
如图

这里在出现的提示上点击允许, 然后证书就会下载到手机当中了!
如图

然后我们打开苹果手机的设置找到已下载描述文件
如图

然后点击下载的证书!
如图

最后我们跟着提示点击安装即可!
如图




安装完成之后,别忘记在手机中打开信任Charles证书
步骤: 设置-->通用-->关于本机-->证书信任设置-->开启信任charles 然后打开Charles证书信任设置!
如图

那么如果不出意外的话,现在你就可以打开你的手机APP然后同时也查看Charles的请求数据列表,就会有你所抓取到iOS手机APP的请求与响应的信息了!
让我们来看看效果如何吧!
如图

我们在来试试看抓取QQ的数据资料看看行不行~!
如图

最后提醒一下,不使用代理的时候把手机代理关闭了!


"👍点赞""✍️评论""收藏❤️"
好玩 好用 好看的干货教程可以 点击下方关注❤️ 微信公众号❤️ 
