文档中心
Charles鎶撳寘绁炲櫒鎵嬫妸鎵嬫暀浣犲鍏TTPS璇佷功锛堥檮瀹炴垬妗堜緥锛?txt
时间 : 2025-09-27 15:43:16浏览量 : 2

作为一名网络安全工程师,我经常需要使用Charles这款抓包工具来分析移动端和Web端的网络请求。今天我要分享的是Charles最核心的功能之一——HTTPS证书安装与配置。这个操作看似简单,但很多新手在实际工作中都会遇到各种"坑"。下面我就用最直白的语言,结合真实案例,带你彻底掌握这项技能。
一、为什么需要导入HTTPS证书?
现代互联网中,超过90%的网站都使用HTTPS加密传输(你可以看看浏览器地址栏那个小锁图标)。这就像给你的快递加了防拆封包装 - 原本Charles这样的"快递员"可以查看包裹内容(明文HTTP请求),但现在包裹被加密了就看不了了。
真实案例:去年我们团队审计一款金融APP时,发现它虽然用了HTTPS,但在证书校验上存在漏洞。正是通过正确配置Charles证书,我们才捕获到它向第三方泄露用户身份证号的违规行为。
二、一步步教你安装Charles根证书
2.1 电脑端安装(以Windows为例)
1. 生成证书:
打开Charles → Help → SSL Proxying → Save Charles Root Certificate...
这时会生成一个`.pem`格式的证书文件
2. 安装到信任区:
- 双击证书文件 → 选择"将所有的证书放入下列存储"
- 点击"浏览" → 选择"受信任的根证书颁发机构"
- 完成导入后可以在运行窗口输入`certmgr.msc`查看
*常见问题*:如果遇到"无法验证此证书"警告,通常是系统时间不对导致的。我曾遇到过用户电脑时间偏差3年导致证书失效的情况。
2.2 手机端安装(以iOS为例)
1. 获取安装链接:
在Charles中点击Help → SSL Proxying → Install Charles Root Certificate on a Mobile Device
2. 手机连接同一WiFi并配置代理:
- WiFi设置 → HTTP代理 → 手动
- 服务器填电脑内网IP(如192.168.1.100)
- 端口默认8888
3. 访问chls.pro/ssl下载证书:
安装时会提示"此配置文件未签名",这是正常现象
4. 开启完全信任:
设置 → 通用 → VPN与设备管理 → Charles Proxy CA → 启用完全信任
*实战技巧*:在测试某电商APP时发现iOS15以上版本需要额外步骤:设置 → 关于本机 → 证书信任设置中启用Charles证书。
三、高级配置技巧
3.1 SSL代理设置
光安装证书还不够,还需要:
1. Proxy → SSL Proxying Settings
2. Enable SSL Proxying
3. Add需要抓包的域名(如`*.taobao.com`)
3.2 Android7+的特殊处理
新版本Android只信任系统预装CA证书:
```xml
```
3.3 Charles常见错误排查表
| 错误现象 | 可能原因 | 解决方案 |
||||
| HTTPS请求显示unknown | SSL代理未启用 | Enable SSL Proxying |
| NET::ERR_CERT_AUTHORITY_INVALID | CA不受信 | reinstall cert |
| Connection reset | APP做了SSL Pinning | Frida绕过 |
四、安全工程师的忠告
虽然抓包工具很强大,但切记:
1. 合法使用:仅在授权测试时使用,擅自抓他人数据可能违法
2.风险意识:测试完成后务必删除手机上的CA证书!去年就有白帽子因为测试后忘记删除证书,导致自己的银行APP被中间人攻击
3.生产环境禁用:绝对不要在已配置CA证书的手机上登录生产环境!
有一次我们给某银行做渗透测试时发现,他们的APP居然允许用户自行安装的CA证书进行握手——这意味着如果员工手机被植入恶意CA,所有交易数据都可能被窃取!
掌握Charles抓包是安全工程师的基础技能,希望这篇指南能帮你少走弯路。如果遇到任何问题欢迎留言讨论!
TAG:charles导入https证书,charles手机安装证书也无法抓取https,charles导出证书,charles下载证书,charles安装证书后请求https,charles怎么抓取https的包