码迷,mamicode.com
首页 > 系统相关 > 详细

抓包工具charles(mac使用记录)

时间:2018-02-02 23:16:55      阅读:291      评论:0      收藏:0      [点我收藏+]

标签:完成   选项   bubuko   https   窗口   root   模拟   enc   blog   

一、简介

Charles是mac端的一款截取与分析网络请求的工具,在网络开发中使用其作分析,可以大大提高我们的开发效率。Charles是收费软件,一般可以试用三十天,但是可以通过相应的破解来获取服务。

二、安装与使用

下载好压缩包后,解压打开,将软件包拖入应用程序文件夹中,这时候一个原版的软件就可以让我们使用,只是有一个试用期,右键单击我们的Charles应用,显示包内容: 
技术分享图片 
将如下文件夹中的jar包替换为我们破解文件夹中的jar包:

技术分享图片

 

三、使用Charles在mac上进行抓包分析

在软件安装完成后,我们已经可以在mac上截取一般的网络请求了,打开软件,将Proxy设置中的Mac OS X Proxy勾选,设置为网络代理,这时候如果发生网络请求,就可以被Charles截获到 
技术分享图片

抓获信息的界面如下: 
技术分享图片
软件的功能十分强大,Structure是将请求按域名排序,Sequence是将请求时间排序,下面的Request和Response分别为请求的数据包和返回的数据包,如果是json数据,还会自动帮我们解析格式。

四、在移动设备上进行抓包

在移动设备上截获网络请求,我们的移动设备必须和电脑在同一网段,在我们电脑的网络设置中查看IP地址,然后在移动设备上点击我们连接的电脑上的网络,在代理一栏中,选择手动,将我们刚才查看的ip地址填写在这里,并且设置一个与Charles相同的端口号,默认都是8888。

在Charles中的Proxy setting中如下勾选并配置端口号 
技术分享图片

Mac或移动设备上抓取https协议需要特殊配置:

电脑上:

Install Charles Root Certificate
选择“Install Charles Root Certificate”,初步安装成功后的界面如下:
技术分享图片
可是“此根证书不被信任“是不可以的,所以还需要右键打开快捷菜单,选择“显示简介”,打开以下界面:
技术分享图片
把“信任”-“使用此证书时:”的选项改为“始终信任”,此时关闭简介面板,再回到“钥匙串访问”界面,就会变成下图,说明已经安装成功:
技术分享图片
 
2、Install Charles Root Certificate in iOS Simulators
选择“Install Charles Root Certificate in iOS Simulators”,安装完成会弹出以下提示框:
技术分享图片
 
3、Install Charles Root Certificate on a Mobile Device or Remote Browser
选择“Install Charles Root Certificate on a Mobile Device or Remote Browser”,会弹出以下提示框:

  技术分享图片

  技术分享图片

 

4、在Charles的工具栏上点击设置按钮,选择SSL Proxying Setting,选中Enable SSL Proxying,然后在Locations表单填写要抓包的域名和端口,点击Add按钮,在弹出的表单中Host填写域名,比如填api.instagram.com,Port填443,如果没加入Locations表单的话,在抓包时会有一个报错:SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations,这个时候,在左侧的域名上点右键:SSL Proxying Enabled,就OK了。(其实就是上面添加Locations的操作,不过这个操作是简化操作)

 

手机上

点击手机网络最右侧的按钮技术分享图片
技术分享图片
进入以下页面,翻到最底部,把“HTTP代理”切换到“手动”,在“服务器”栏中输入分享此网络的Mac的ip地址,在“端口”栏里输入“8888”:
技术分享图片
此时,如果Mac上的Charles是打开的,就会弹出如下图中的窗口:
技术分享图片
点击“Allow”按钮,至此就成功地把Charles设为了你的设备的HTTP Proxy,设备上的http请求都可以被抓包了,但是HTTPS还不可以!!!
(2)browse to chls.pro/ssl to download and install the certificate。
按照提示在浏览器里输入“chls.pro/ssl”,就会自动跳转到以下页面:
技术分享图片
点击右上角“安装”,进入以下页面:
技术分享图片
再次点击右上角“安装”,从下部弹出弹框,如下图:
技术分享图片
点击“安装”按钮,进入以下页面:
技术分享图片
进入通用->关于本机->证书信任设置,将刚刚安装的证书设为信任即可
至此,大功告成!!!

 

五、Charles的更多应用

1、过滤网络请求

有时候我们只想抓取某个主机的网络请求,我们可以设置过滤网络,在Proxy菜单中的Recording Setting中,我们选择include标签,可以在里面添加一个白名单,这样Charles就只截取在这个主机下的请求: 
技术分享图片

如果弹框没有出现,将charles切换为小窗口
  • 1
  • 2

2、模拟限速网络

很多时候,我们需要测试在网络不佳时应用请求的相关数据,我们可以模拟设置限速网络,在Proxy菜单中的Throttle Settings中将,Enable Throttling勾选,并可以在下面进行网路设置,only for selected host可以设置一个指定的主机访问进行限制网络。 
技术分享图片

3、修改网络信息,多次请求

在测试接口时,有时候我们需要反复进行不同参数的接口请求,Charles也支持我们进行请求参数的修改和多次请求,在请求上点击右键,现则edit: 
技术分享图片
其中的参数,请求类型等我们都可以修改,之后点击execute进行重新请求 
技术分享图片

批量请求选择repeat advanced....
  • 1
  • 2

技术分享图片

iterations:10   //请求次数
concurrency:2   //请求的并发数
show results in new session //新建一个session窗口
delays  //请求延迟
  • 1
  • 2
  • 3
  • 4

六、Charles 网络请求重定向

tools->map remote 
技术分享图片

 

抓包工具charles(mac使用记录)

标签:完成   选项   bubuko   https   窗口   root   模拟   enc   blog   

原文地址:https://www.cnblogs.com/guangyun/p/8407158.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!