charles 抓包简单使用

教你简单使用charles 抓取app 里的数据(一般多为http协议)

常用的抓包软件有很多,mac 上的charles ,wireshark 等都是不错的抓包工具,今天就简单介绍一下如何安装,如何使用(已经会的小伙伴就不要拍砖了-绕行吧);

chareles 只适用于抓取http协议的报文;

准备阶段:

charles dmg 安装包 :http://pan.baidu.com/s/1gdu0S4V

charles 破解jar 文件: http://pan.baidu.com/s/1i3gjEfj

https 证书 :http://pan.baidu.com/s/1sjJiZYt


获取https 证书的地址 

http://charlesproxy.com/getssl

http://chls.pro/ssl

-------


废话不多说,开始上图

1.下载 必要的 dmg安装包和jar 包

2.安装成功 出现charles app 图

3.bu


3.此时不要着急打开Charles,因为jar 包还没有更换 ;

找到应用程序的charles ,右键显示包内容,找到 contents\Resources\java 文件夹,将下载的 charles.jar 包 替换原来的charles.jar 包即可,替换过程如下;

注:(如果mac 没有java 环境,mac 会有一个提示,去apple 官网上下载java )如图:

直接下载安装即可 链接:https://support.apple.com/kb/DL1572?locale=zh_CN

4.如果charles 可以正常打开那就算成功了;

5.给手机设置代理

(一般流程是,手机数据包-> 代理 ->互联网

理论:讲更通俗一点就是,电脑和手机在统一wifi下,也就是所谓的局域网内,将手机的代理指向电脑 ,然后电脑将手机发给它的数据包交给互联网,电脑将从互联网上拿到的数据包,再传递给手机 (我好像比较废话😢)

获取代理服务器的ip(也就是装charles 的电脑IP) 

系统便好设置 ->网络 里可以看到  (此时我的是 192.168.1.101)


再拿到手机,找到 无限局域网 -> 已连接的wifi->  HTTP 代理->手动  设置 服务器ip 地址 192.168.1.101 (填写装了charles 的那台电脑的ip地址)

端口  填写8888 (端口用于识别哪个服务器,charles 使用了8888 端口)

鉴定按钮(暂时不选)

然后返回就可以了(截图如下)


  6.现在可以抓包了(打开charles ,手机上用Sarfari随便打开一个网页 检查能否正常使用)

如果所示:这里以打开百度的网页举例,选择允许才能看到抓到数据包,因为百度的首页用的https 协议,所以里面的内容被 加密了,可以通过安装证书去查看百度的数据(暂时不介绍了,俄了,再写一会儿去吃饭)

截图如下:

简单介绍 了一下安装,如果不清楚的话,可以看这位先生写的博客,很详细,安装包也是他提供的

http://blog.csdn.net/jiangwei0910410003/article/details/41620363



废话不多说,开始简单介绍如果抓包

1.以礼物说 APP 为例子(刚启动就会触发网络请求)下面时抓到的数据





今天就讲到这吧,好饿……

其他功能的话,可以自己多点击试试,比如拿到get 请求的URL ,或者查看post 请求头的参数, Content-Type 等参数


如果你想看tcp/ip 三次握手,四次断开,或者更详细的数据包交互的过程,建议使用一下wireShark ,当然这个软件使用起来也更麻烦一些,还有一本专门介绍如果使用wireShark 的书;

安装 抓取https 的charles 证书


设置代理成功,在charles 中能看到数据包,next 在手机 Safari 浏览器输入地址chls.pro/ssl  或者 http://charlesproxy.com/getssl即可打开证书安装的界面,安装完证书后,就可以截取手机上的,出现证书安装页面,点击安装手机设置有密码的输入密码进行安装

(注意事项)证书安装成功后,需要在iphone 的 设置 ->关于本机 ->受信任证书存储区 ->> 永远信任此证书(ios 10 之后的版本需要,不然永远拿不到https 的数据)


(2)设置https 代理,抓取某个域名的https 数据包,这里以 api.weibo.cn 为例。

Host填写:https://api.weibo.cn 

Port填写:443

配置如下图:



成功抓取如下图;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Charles简介: Charles是一款抓包神器,因为他是基于 java 开发的,所以跨平台,Mac、Lin...
    加菲貓的日常阅读 5,301评论 1 3
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,010评论 19 139
  • 来自公众号 : DeveloperPython 阅读本文需要7.66分钟 抓包 其实很多程序员都不陌生了,但是真正...
    xiyouMc阅读 13,751评论 8 100
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,663评论 25 708
  • 今生能与你相遇,我知道,那一定是前缘未了。今生的相逢,是一种没有结局的邂逅。我知道,所有初遇你时的喜悦,那只是昙花...
    meker阅读 227评论 0 0