zoukankan      html  css  js  c++  java
  • Mac 下 android/iOS https抓包

    一.Charles简介

    Charles,是用Java开发的,所以跨平台,不仅可以在Mac上使用,Linux以及Window下都是可以使用的,当然需要安装JDK,才能运行,但目前是收费的。

    二.下载

    官网下载地址:https://www.charlesproxy.com/download/ 
    有相对应的Mac版本、Linux版本及Window版本

    下载到安装我就不啰嗦了!

    我下载的是当前最新版本:4.0.2版本的(2017年3月3日)

    这里写图片描述

    默认情况下是连接你的mac的代理

    这里写图片描述

    三.破解

    由于Charles是收费的,我们需要破解它,可以在网上直接搜索:Charles4.0.2破解的jar文件。

    这里我已经下载好了

    破解文件:http://download.csdn.net/detail/u014005316/9769617

    这里写图片描述

    直接把charles.jar替换,重新打开Charles即可,就不会提示试用期30天了。

    由于我们主要做App开发,我们需要抓取移动设备上app的包

    四.HTTP抓包

    • 打开Charles程序
    • 查看Mac电脑的IP地址,系统偏好设置->网络就可以查看到了,比如我的ip地址是:192.168.0.110
    • 打开手机上的wifi连接

    这里写图片描述

    代理设置改成手动,输入主机名:192.168.0.110(我mac的ip地址),端口:8888

    打开Charles,点击Proxy,选择Proxy Settings,输入端口号:8888

    这里写图片描述

    OK,就可以进行http抓包啦!

    这是我的手机上一款http请求的app

    这里写图片描述

    五.HTTPS抓包

    https抓包相对来说,稍微麻烦一点

    1. 给Mac安装证书

    这里写图片描述

    打开证书,信任证书

    2. 给手机安装证书

    打开Charles

    在Menu选择Help > SSL Proxying > Install Charles Root Certificate on a Mobile Device or Remote Browser

    这里写图片描述

    点击后,弹出对话框

    这里写图片描述

    在手机浏览器上输入:chls.pro/ssl(可能不一样,以上图弹出的对话框为准)

    这里写图片描述

    随便输入一个证书名称,点击确定!

    3.开启SSL代理功能

    在Menu选择Proxy->SSL Proxying Setting,选中Enable SSL Proxying,在Locations里面添加要使用SSL代理的网站,如果需要匹配所有的HTTPS网站则输入 * 号即可。现在即可拦截Https的数据包。port: 443 抓取HTTPS

    这里写图片描述

    点击OK

    这里写图片描述

    ok,可以进行https抓包啦!我以掘金App为例来抓包

    这里写图片描述

     
     问题1:  iOS手机, https 协议下抓包unknown解决方案:
     手机--通用--关于本机--证书信任设置- 勾选 Charles Proxy CA
     
  • 相关阅读:
    Django错误笔记1
    Django学习笔记1 启动及配置一个Django项目
    ubuntu 安装mysqldb
    二叉树 总结
    序列二叉树和反序列 (不是自己做的)
    二叉树的路径
    二叉搜索树的后续遍历
    二叉树层序遍历
    栈的压入 弹出序列
    包含 min的栈
  • 原文地址:https://www.cnblogs.com/xiyuan2016/p/7738254.html
Copyright © 2011-2022 走看看