- 我们逆向中使用过
tcpdump
,wireshark
抓包,今天介绍下小谷比较喜欢的Charles(青花瓷)
1. Charles抓取HTTPS的数据包
我们用
Mac
的话其实很好配置的
-
- 首先我们先把
iPhone和Mac
连到同一网络
下
- 首先我们先把
这里小谷采取的方式是,
Mac开启WiFi,iPhone连接
-
Mac开启WiFi
-
iPhone连接WiFi
设置—>无线局域网 —> 连接. 然后点击
WiFi
设置
-
- 打开
Charles(青花瓷)
。在Mac上安装根证书
- 打开
-
- 信任证书
-
- 安装手机信任证书
-
- 配置下协议端口
这个时候你可以
重启
下Mac
的Charles(青花瓷)
,然后就可以抓取HTTPS
网络数据包了.(如果还有问题可以问小谷)
-
- 实例:假如我们请求百度(www.baidu.com)
成功解析出来了
2. Charles更改数据包
2.1. 重定向请求地址
这样我们请求www.qq.com. 就会变成请求www.baidu.com
2.2. Rewrite功能
查找并进行替换
- 然后
iPhone
看效果
完美的变成了
小谷一下
2.3. BreakPoints功能
BreakPoints(断点)功能
适用于调试的时候修改一次
网络数据。重定向
和Rewrite功能
是长期修改的
当走到断点的时候,
Charles
会截取网络请求,然后可以修改后继续执行。(这个兄弟们可以玩一下)
2.4. Compose功能
最最最常用的来了
Compose功能
就是当你感觉抓取了一个重要请求的时候,你可以肆无忌惮,毫无底线的试验
执行再看结果,简单来说就是可以
一直改参数试验
3. 突破SSL双向验证
- 我们用
Charles
可以抓大量网络数据包了,不过如果使用了SSL双向验证
,Charles
就不能抓了
没有办法了吗?怎么可能呢! 哈哈😆
-
ssl-kill-switch2 插件下载 (有兴趣的可以看下他的源码是怎么实现的~)
-
下载
com.nablac0d3.sslkillswitch2_0.14.deb
(目前最新的) -
然后装在手机的
/var/mobile/
目录下
安装并重启界面
- 之后在
设置界面
就可以看见一个这
开启之后,
Charles
就可以抓数据包了!!
4. 总结
-
本来最后想拿个例子演示的。不过没有想好什么例子
-
Charles
抓包还是很好用的。兄弟们可以用起来。(不过正向开发接触的不多,小谷也是兴趣使然研究的一波) -
最后希望这篇博客对兄弟们有用,祝兄弟们
武运昌隆~