博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mac 下 android/iOS https抓包
阅读量:4616 次
发布时间:2019-06-09

本文共 1113 字,大约阅读时间需要 3 分钟。

一.Charles简介

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

二.下载

 

有相对应的Mac版本、Linux版本及Window版本

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

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

这里写图片描述

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

这里写图片描述

三.破解

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

这里我已经下载好了

这里写图片描述

直接把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
 

转载于:https://www.cnblogs.com/xiyuan2016/p/7738254.html

你可能感兴趣的文章
.NET基础拾遗(1)类型语法基础和内存管理基础【转】
查看>>
Static Nested Class 和Inner Class的不同
查看>>
C# 调用配置文件SQL语句 真2B!
查看>>
Image组件的使用
查看>>
Merge Two Sorted Lists
查看>>
使用工具Android Studio实现一个简单的Android版的新闻APP
查看>>
Jenkins学习记录
查看>>
【转】 男人的修练
查看>>
C++ 迭代器 基础介绍
查看>>
TextWatcher的简单使用
查看>>
Xamarin.iOS 的鍵盤控制 (AutoLayout 與 新的 Keyboard 事件 )
查看>>
nyoj_216_A problem is easy_201312051117
查看>>
实用正则表达式匹配和替换
查看>>
工作流快速入门
查看>>
C# 反射
查看>>
NSFileManager和NSFileHandle(附:获取文件大小 )
查看>>
为android的HttpClient添加请求超时时间
查看>>
Microsoft ASP.NET SignalR
查看>>
C#实现快捷键(系统热键)响应
查看>>
ES6 学习笔记
查看>>