使用 Charles 抓取 app 数据包

转载 2018年02月07日 00:00:00

640?wx_fmt=png&wxfrom=5&wx_lazy=1

前言

Charles 是一款非常实用的抓包工具。它通过电脑端代理,拦截网络请求和响应来实现数据包的抓取。支持 http/https。

安装

Charles 需要 Java 环境,在安装之前确保已有配置 Java 运行环境。然后到官网下载 Charles 并安装。破解的话,可以使用网友提供的工具: Charles 在线破解。

设置

打开 Charles 抓包工具:

640?wxfrom=5&wx_lazy=1

Charles

电脑端设置代理:Proxy —> Proxy Setting:

640?

设置代理

端口号填写8888,并选中 Enable transparent HTTP proxying。
Android 手机端设置:首选将手机和电脑连接在同一无线局域网上(同一个路由器)。然后利用 cmd-ipconfig 查看自己电脑的 ip:

640?

然后在手机wifi连接中进行设置:

640?

这里代理设置选择手动,主机名即是电脑的局域网ip,端口号为电脑端Charles设置的端口号。


抓取 http 数据

安卓上面的步骤就设置完成了。我们使用小米商城app来试一下抓取的数据包。
手机端打开小米商城:

640?

同时监测电脑端Charles的数据抓取:

640?

需要自己筛选一下,可以看到红框中就是小米商城http请求的域名,点开可以看到详细的网络请求接口:

640?

点击选中对应的接口,在右侧可以看到抓包的结果,选中 Contents 可以看到抓取的内容,上部分为请求的数据包,有 Headers、Cookie、请求体的 Text/Hex/Form 形式。下部分为响应的数据包。包括有 Headers、响应结果 Json、JsonText 等形式。

640?

抓取 https 数据包

上面的方式只能抓取到http数据包,要抓https还需要安装证书。
首先安装电脑端的CA证书:Help —> SSL Proxyging —> Install Charles Root Certificate:

640?

安装证书:

640?

下一步:

640?

将所有证书都放入下列储存 —> 浏览 —> 受信任的根证书颁发机构 —> 确定 —> 下一步:

640?

最后点击完成。

安卓手机端安卓证书:很多手机通过浏览器下载证书安装会提示无法安装,所以这里通过在电脑上下载好手机端的证书,传到手机上再来安装。

在浏览器中地址中输入chsl.pro/ssl,下载手机端证书并传到手机储存上:

640?

在手机设置里面找到系统安全/安全与隐私(小米5手机:设置 —> 更多设置 —> 系统安全)

640?

找到之前存放证书的位置,选择证书文件:

640?

输入证书名称charles,点击确定,安装完成。

通过小米商城 lite 的微信小程序来测试下抓取 https 数据包。打开微信小程序“小米商城 Lite”,点击页面跳转。并监测 Charles 抓取的数据:

640?

可以看到这就抓取到了小米商城 Lite 小程序的 https 请求数据包。

分享朋友圈 也是另一种赞赏

The more we share, The more we have

 

欢迎加入数据君高效数据分析社区


进入大数据干货交流群可以加微信号:tongyuannow 





640?wx_fmt=jpeg






目前100000+人已关注加入我们

640.jpeg? 640? 640? 640? 640? 640? 640? 640?

640? 640? 640? 640? 640? 640? 640? 640?



640?wx_fmt=jpeg

使用mac端Charles4.0 抓取App接口(配置篇)

Charles4.0下载地址,点这里史蒂芬周的博客 具体的安装和破解方法都在博客里有写到,本篇博客基于你已经完成安装了Charles。 首先打开Charles,先进行一些简单的设置...
  • J1angLei
  • J1angLei
  • 2018年01月22日 15:36
  • 34

使用charles来抓取手机App的网络包

适用范围:wifi 移动网络等网络没找到抓包设置。 机器:Mac 手机wifi设置http代理 charles抓包网关设置 记录的网页域名设置 抓到http请求的响应结果,收到...
  • jia12216
  • jia12216
  • 2015年07月17日 18:09
  • 2319

使用Charles 4.1.1 抓取iPhone上的数据接口

说明: 1. 本人电脑是黑苹果,系统是OS X EI Capitan,版本10.11.5 2. Charles版本是4.1.1 一. 实现步骤 下载和安装Charles 下载和安装电脑的C...
  • SSIrreplaceable
  • SSIrreplaceable
  • 2017年05月28日 05:14
  • 2047

android 抓数据包(基于mac os使用Charles 工具,此工具也适用于ios抓包)

有时候访问网络数据可能出各种异常,这时就需要通过抓客户端的数据包来定位异常的原因。 Charles 抓包工具使用java编写,可以跨平台。使用起来也非常方便。 使用步骤如下: 1. 下载 http:...
  • JavaLive09
  • JavaLive09
  • 2015年04月28日 18:52
  • 1559

非常有用——Charles使用 (抓取HTTPS包)

转载自https://www.jianshu.com/p/1e4eab97fdf2 1.添加需要抓取的域名 Proxy?Recording Settings?Include?Add 1.1 #...
  • derkampf
  • derkampf
  • 2018年01月17日 18:28
  • 118

3.10以上charles版本抓取Https数据包

charles3.10一下的版本抓包参见一下文章即可: http://www.cnblogs.com/liyuanhong/articles/4428133.html#3481314 charles...
  • lyhDream
  • lyhDream
  • 2016年11月15日 22:43
  • 2087

抓包工具Charles简单使用介绍(可抓取Android中app的请求)

最近写项目时经常遇到服务器返回请求超时的情况,头疼得很,因此想着使用网络抓包工具来抓取客户端访问服务器的请求,看看客户端发的请求的内容以及服务器返回的情况。目前我了解常用的网络数据抓包工具有Charl...
  • happy_horse
  • happy_horse
  • 2016年05月11日 17:05
  • 12271

牛逼了我的Charles - 可以抓浏览器 不能抓取App接口了

Charles 失灵了么 Charles v3.9.1 在没有任何征兆的时候 抓取到手机的普通操作 但是对App接口免疫了 能抓浏览器的包,但死活抓不了手机app的包 排查步骤如下: 首先我检查...
  • xuezhiwu001
  • xuezhiwu001
  • 2016年12月29日 20:24
  • 1541

解决windows10下面无法抓取charles数据包问题

在windows10下发现使用charles无法抓取数据包 网上差了一下,说是防火墙的问题 于是关闭防火墙后,发现果然能够抓取数据包了,但是关闭防火墙后并不是一个很好的办法 可以尝试让防火墙允许...
  • lyhDream
  • lyhDream
  • 2016年08月23日 10:55
  • 4187

利用fiddler抓取Android app数据包

前言 做Android开发的朋友经常需要做网络数据的获取和提交表单数据等操作,然而对于调试程序而言,很难知道我们的数据到底是以怎样的形式发送的,是否发送成功,如果发送失败有是什么原因引起的。fiddl...
  • mockingbirds
  • mockingbirds
  • 2015年06月07日 17:38
  • 8579
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用 Charles 抓取 app 数据包
举报原因:
原因补充:

(最多只允许输入30个字)