其他分享
首页 > 其他分享> > Android Charles抓包 3分钟手把手图文教程 支持https 7.0以上系统 fidder

Android Charles抓包 3分钟手把手图文教程 支持https 7.0以上系统 fidder

作者:互联网


Charles抓包

https://blog.csdn.net/c10WTiybQ1Ye3/article/details/109733079

https://www.jianshu.com/p/1338c9f5305e

 

 

01.下载安装软件charles


02.抓包代理设置   03.Android手机代理设置 04.手机设置:设置端口和Ip       命令行方式,输入ifconfig即可       Http抓包:可以直接看到 如果http加密了,怎么弄   http进行加密了的现实如下:   Http:成功抓包效果如下      

抓包Https操作

https提示错误:还有现实unknow     问题:电脑装的是啥证书????? 电脑安装证书: 给Mac安装证书。
打开Charles,在Menu选择SSL Proxying > Install Charles Root Certificate,Keychain Access(钥匙访问串)被打开,我们可以看到Charles Certificate已经被安装,如图: 信任证书
但此时该证书并没有被信任,双击该行弹出证书详情,选择“Always Trust”。
      2.手机上需要安装证书     手机打开设置—安全和隐私—凭据存储—从SD卡安装,选择步骤4中下载的证书,进行安装,完成 输入网址chls.pro/ssl,会提示下载证书,此时下载的是个.pem 格式的。需要手动更改为.crt 格式,最后放进的DownLoad 文件夹即可     3.Android项目代码设置兼容
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates
                overridePins="true"
                src="system" />
            <certificates
                overridePins="true"
                src="user" />
        </trust-anchors>
    </base-config>
</network-security-config>
  没成功的包。显示乱码   成功抓取https的包:      

Android 版本

Android7.0 是一个分水岭

首先 http 是可以直接抓的,没任何问题

Android7.0 之前,抓 https 一般都是通过安装中间人证书的方式进行抓包

Android7.0 之后,系统不再信任用户级的证书,抓 https 就有点麻烦了

 

第二步设置SSL属性:Proxy ---> SSL Proxy Settings ---> 然后add操作(设置port为443)。如下所示

SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations

    在overView提示报错的信息:    

04.抓包原理介绍

  3.如何避免抓包     自己的总结: 证书安装,安装的不是我们说的https。而是通过chales生成的证书。电脑商生成的  安装到手机里面去。 HTTPS抓包的原理还是挺简单的,简单来说,就是Charles作为“中间人代理”,拿到了服务器证书公钥和HTTPS连接的对称密钥, 前提是客户端选择信任并安装Charles的CA证书,否则客户端就会“报警”并中止连接。这样看来,HTTPS还是很安全的。  

标签:设置,证书,fidder,Charles,7.0,https,安装,抓包
来源: https://blog.csdn.net/WHB20081815/article/details/113138009