Android手机如何用Charles抓包HTTPS接口

对Charles的安装和使用,这里就不重复介绍了,之前有介绍Charles工具

本文重点介绍在Android手机上如何配置抓包环境

1.获取Charles配置

去Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser 查看配置。

2.将手机和电脑连上同一个局域网

3.为手机网络设置手动代理

ip和端口参数已经在第一步获取

4.用手机浏览器下载证书安装

浏览器进入chls.pro/ssl下载证书,下载的.pem格式证书。当设备无法识别时,需要手动将后缀名改为.crt,然后到浏览器的下载管理中选择安装就可以了。

安装后,到设置 -> 安全 -> 信任的凭证 可以看到刚安装的证书

5.抓包

Charles中右键对应HTTPS,选择Enable SSL Proxying启动代理。然后清空Structure,重新请求接口就能看到抓包的数据。

到这里,你会发现并不是所有HTTPS都能抓取,Android7.0 之后默认不信任用户添加到系统的CA证书。

解决方案:

这里就不展开了,除非你要搞逆向。

6.对自己的项目抓包

针对我们自己的Android项目,要抓包HTTPS我们可以在网络完全配置中进行设置。

到 res -> xml 创建一个network-security-config.xml文件,配置如下。

Kotlin 复制代码
<network-security-config>
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates src="system" />
            <certificates src="user" />
        </trust-anchors>
    </base-config>
</network-security-config>

然后,到清单文件为application配置networkSecurityConfig。

Kotlin 复制代码
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
 
    <uses-permission android:name="android.permission.INTERNET" />
 
    <application android:networkSecurityConfig="@xml/network_security_config" >
 
    </application>
 
</manifest>

注意:在开发设置 cleartextTrafficPermitted="true" 来允许明文流量,便于我们抓包。但在发布应用时,为了提高应用的安全性,通常建议禁用明文流量。

相关推荐
明豆17 小时前
HTTPS / TLS 1.3 深度解析 — Web 安全传输协议生产实战
前端·安全·https
成空的梦想19 小时前
免费 vs 付费国密 SSL 怎么选?
服务器·网络·网络协议·http·https·ssl
深邃-20 小时前
【Web安全】-SRC平台介绍:CNVD平台-事件型漏洞-通用型漏洞,教育SRC平台,漏洞盒子,补天漏洞平台,企业SRC平台,企业和公益SRC平台
网络协议·安全·web安全·网络安全·https·src·cnvd
落叶_Jim2 天前
2026年Nginx配置HTTPS全流程-从零到自动续期实战指南
运维·nginx·https
Arman_2 天前
02 rusty-cat 实战:MeowClient 配置、任务参数、进度回调与暂停恢复
http·https·rust·tokio·文件分片上传·文件分片下载
xiaoxue..2 天前
HTTPS:更安全的HTTP,从加密原理、数字证书到TLS 握手全解析
网络协议·面试·https
Arman_2 天前
01 Rust 大文件断点上传下载入门:用 rusty-cat 让上传下载更可靠
http·https·rust·tokio·大量阅读·文件分片上传下载
仍然.3 天前
HTTPS
网络协议·http·https
刃神太酷啦4 天前
《网络基础全链路深度解析:从Socket编程到HTTPS与TCP/UDP内核机制》----《Hello Linux!》(25)
linux·运维·c语言·网络·c++·tcp/ip·https
念越4 天前
HTTPS 安全内核:对称与非对称加密的博弈,数字证书一战定局
java·网络·网络协议·安全·https