iOS Charles 抓包指南 – 从入门到精通

iOS Charles 抓包指南 – 从入门到精通iOSCharles抓包指南以下那知乎的请求举例子步骤Step1:安装Charles从https://www.charlesproxy.com/download/下载安装Charles最新版。Step2:注册LicenseCharles->Help->RegisterCharlesRegisteredname:你购…

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

iOS Charles 抓包指南

以下那知乎的请求举例子

步骤

Step 1: 安装 Charles

从 https://www.charlesproxy.com/download/ 下载安装 Charles 最新版。

Step 2: 注册 License

Charles -> Help -> Register Charles
Registered name:
你购买时的名称
License key:

注意:
如果读者没有购买License,就下载官方版本或者破解版;如果是官方版本,会每30分钟要求重启一下Charles

你购买时的key

Step 3: 添加 SSL 配置 在这里插入图片描述

Charles -> Proxy -> SSL Proxying Settings -> SSL Proxying
添加对应的域名和端口,为了方便起见,可以直接添加*, 通配符配置,端口号为*。
在这里插入图片描述
也可以对已经拦截到请求地址 右击 -> Enabling SSL Proxying
在这里插入图片描述

Step 4: 电脑安装证书

在这里插入图片描述
选择Always Trust,然后更新,就可以拦截http和https了
在这里插入图片描述

Step 5: 配置手机代理

手机和 MacOS 连接到同一个 WIFI 网络。
Android -> Settings -> Wi-Fi -> 长按当前 Wi-Fi -> Modify network
Advanced options
Proxy -> Manual
Proxy hostname -> Mac 的 IP
Proxy port -> 8888
Save
在这里插入图片描述
在这里插入图片描述

Step 6: 安装 Charles 证书

在手机浏览器地址栏输入:http://chls.pro/ssl,下载证书,点击安装。
在这里插入图片描述
在这里插入图片描述

Done!

日常使用

应用一: 过滤网络请求

  • 1.方法一:Filter 栏–>过滤关键字
  • 2.方法二:在 Charles 的菜单栏选择

Proxy –> Recording Settings –>Include –> add( 依次填入协议+主机地址+端口号,实现只截取目标网站的封包 )
这里写图片描述

  • 3.方法三:在想过滤的网络请求上右击,选择 “Focus”,在 Filter 栏勾选上 Focussed
    这里写图片描述

应用二: 截取 iPhone 上的网络封包

  • 1.Charles 上的设置
    Proxy –> Proxy Settings –>端口填 8888 –>勾选 Enable transparent HTTP proxying
    这里写图片描述

  • 2.iPhone 上的设置
    首先,你的iphone链接的wifi要和电脑一样
    然后,选择你连接的WiFi,划到底部,配置代理,IP选择你电脑的IP,端口就是上面配置的8888
    比如:
    这里写图片描述

  • 3.电脑上打开Charles, iPhone 上的任意连网的程序,
    然后,Charles 就会弹出 iPhone 请求连接的确认菜单,点击 “Allow” 即可完成设置。
    这里写图片描述

应用三: 截取 Https 通讯信息

  • 1.安装证书
    “Help” –> “SSL Proxying” –> “Install Charles Root Certificate” –> 输入系统的帐号密码,即可在 KeyChain 看到添加好的证书。
    Charles 默认也并不截取 Https 网络通讯的信息,若想对截取某网站上所有 Https 网络请求,在该请求上右击选择 SSL proxy
    这里写图片描述

这里写图片描述

  • 2.截取移动设备中的 Https 通讯信息
  • 2.1 Help –> SSL Proxying –> Install Charles Root Certificate on a Mobile Device or Remote Browser
  • 2.2 在手机浏览器中访问地址:「http://charlesproxy.com/getssl」
    这里写图片描述

注意:默认情况下 Charles 并不做截取,你还需要在要截取的网络请求上右击,选择 SSL proxy 菜单项

  • 3.补充一点
    还要进入 设置->关于本机→证书信任设置
    打开相关的开关

应用四: 模拟慢速网络

  • 1.选择 Proxy –> Throttle Setting –>勾选上 Enable Throttling –> 选择Throttle Preset 类型
    [外链图片转存失败(img-GFWd8A7c-1568699178249)(https://img-blog.csdn.net/20180119151159712?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzUzODU0Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

  • 2.若只想模拟指定网站的慢速网络,再勾选图中的 Only for selected hosts 项,然后在对话框的下半部分设置中add指定的 hosts 项

应用五: 修改网络请求内容

应用六: 抓取「知乎客户端」回答页内的图片请求

需要配置一下DNS Spoofing Settings

  • 可以配置域名任意,端口指定的通配符

  • 也可以配置,指定域名

[外链图片转存失败(img-27VktysS-1568699178250)(https://img-blog.csdn.net/20180119151436618?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzUzODU0Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

这里写图片描述Charles

Registered Name:https://zhile.io
License Key: 48891cf209c6d32bf4

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

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

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

相关推荐

  • STM32编程怎么入门,聊聊我的入门经历

    STM32编程怎么入门,聊聊我的入门经历我第一次接触STM32大概是在8,9年前。当时刚出来工作不久,在此之前主要用stc和nxp的单片机比较多。那个时候还没有固件库开发的概念,基本都是配置寄存器去使用单片机外设资源。虽然说用起来比较麻烦,但是执行的效率也相对高一点,习惯了也挺好用。新项目比较复杂一点,一个老工程师建议我用stm32的单片机做效率比较高。听大佬的话照做是一个小菜鸟的基本素养,所以我选了stm32。对于学习这块,我也比较舍得(当时月薪只有1.8K),毫不犹豫花了几百大洋购买了一套stm32开发板。学习一款

    2022年9月7日
  • 图像滤波边界处理方式(图像滤波算法)

    图像处理-双边滤波和联合双边滤波双边滤波原理​双边滤波(BilateralFilter)是一种非线性滤波器,可以达到保持边缘,降噪平滑的效果。其算法最早由C.Tomasi和R.Manduchi在论文《BilateralFilteringforGrayandColorImages》中提出,按照原文中的话说Itcombinesgraylevelsorcolorsbasedonboththeirgeometricclosenessandtheirphoto

    2022年4月16日
  • LoRa无线通信设计(一)原理[通俗易懂]

    LoRa无线通信设计(一)原理[通俗易懂]LoRa无线通信设计(一)原理引言1901年,古列尔默.马可尼把长波无线电信号从Cornwall(康沃尔,位于英国的西南部)跨过大西洋传送到3200公里之外的Newfoundland(加拿大的纽芬兰岛),至此人类进入了无线通信时代。100多年来,无线技术的发展为人类带来了无线电、电视、移动电话和通信卫星。近20年,最让人们…

    2022年6月25日
  • 遍历ArrayList的过程中移除元素的方式

    遍历ArrayList的过程中移除元素的方式错误方法一使用for循环正序遍历ArrayList,使用remove移除元素结果如下,只删除了一个“3”原因:在匹配到第一个要删除的元素并移除时,后面元素会往前移位,导致索引位置改变,从而漏掉后面一个元素。publicstaticvoidmain(String[]args){ ArrayList<String>list=newArrayList<>(); list.add(“1”); list.add(“2”); list.add(“3”

    2022年7月22日
  • 腾讯云申请免费ssl证书(1年有效期)

    腾讯云申请免费ssl证书(1年有效期)SSL证书就是遵守SSL协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能的文件。当前大多数的ssl证书是收费的,我所知道的只有腾讯云可以申请到1年

    2022年7月3日
  • layui弹出层使用方法总结

    layui弹出层使用方法总结layui的模态窗口很强大,但是使用的时候要声明很多东西,并且对于窗口之间的参数传递也没有做具体的说明,所以基于layui弹出层的api进行了一些简单的封装,使用起来更加顺手,先上代码functionOpenDialog(id,title,url,width,height,callback,params){layui.use(‘layer’,function(){…

    2022年5月5日

发表回复

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

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