Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Charles-Proxy-Mobile-Guide — 使用 Charles Proxy 拦截 Android 和 iOS HTTP/HTTPS 流量的分步指南,涵盖 SSL 代理、CA 证书安装和信任设置。 | Kitploit
工具/GitHubGitHub/thyrlian/charles-proxy-mobile-guide
Android安全数据包嗅探与分析iOS安全Web代理与拦截移动应用渗透测试Web安全移动安全学习与教育学习路径与课程

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHubthyrlian/charles-proxy-mobile-guide

Charles-Proxy-Mobile-Guide

使用 Charles Proxy 拦截 Android 和 iOS HTTP/HTTPS 流量的分步指南,涵盖 SSL 代理、CA 证书安装和信任设置。

查看仓库
15614318年前Kitploit 审核通过

Charles Proxy 移动端指南

移动端黑客的 Charles Proxy 指南 👍

简介

Charles 是一个 HTTP 代理 / HTTP 监视器 / 反向代理,使开发者能够查看其机器与互联网之间的所有 HTTP 和 SSL / HTTPS 流量。这包括请求、响应以及 HTTP 头(其中包含 cookie 和缓存信息)。

SSL 代理

计算机(macOS)

  • Charles -> Proxy -> SSL Proxying Settings... -> SSL Proxying

    • 勾选 "Enable SSL Proxying"
    • 添加位置匹配器 "Host: *"、"Port: *"
  • Charles -> Help -> SSL Proxying -> Install Charles Root Certificate

    • 这会将证书安装到 Keychain,并自动打开它
    • 在 Keychain 中双击该证书
    • 展开 Trust,在 When using this certificate 中选择 Always Trust
  • 获取 Charles 正在监听的 IP 地址

    • Charles -> Help -> Local IP Address
    • 或通过命令行获取 WLAN IP 地址(直接复制到剪贴板)
      ifconfig | tr "\n" "→" | tr "\r" "→" | grep -Eo "→en0.*?→en[[:digit:]]" | grep -Eo "inet[[:blank:]+]([0-9]{1,3}\.){3}[0-9]{1,3}" | cut -d' ' -f2 | tr -d "\n" | pbcopy && pbpaste
      
    • 或通过命令行获取 LAN IP 地址(直接复制到剪贴板)
      ifconfig | tr "\n" "→" | tr "\r" "→" | grep -Eo "→en[[:digit:]].*?active→" | grep -v "en0" | grep -Eo "inet[[:blank:]+]([0-9]{1,3}\.){3}[0-9]{1,3}" | cut -d' ' -f2 | tr -d "\n" | pbcopy && pbpaste
      

Android

  • 启动 Charles 并保持其运行

  • 获取 IP 地址

  • 确保 Android 设备与 Charles 使用同一网络

  • 在 Android 设备上

    • 前往 Settings -> Wi-Fi -> 长按正在使用的 网络 -> Modify network -> Advanced options -> Proxy -> Manual

      • Proxy hostname = IP 地址
      • Proxy port = 8888
    • 启动 浏览器,访问 https://chls.pro/ssl,保存证书

    • 系统会要求你设置锁屏 PIN 或 密码,设置一个并保存即可
    • 现在证书已安装
    • 打开一个应用程序,在 Charles 上监控流量
  • 计算机上会弹出一个对话框,询问 "A connection attempt to Charles has been made from the host ...",只需点击 Allow 按钮

Android N(7.0,API 级别 24)及之后版本

  • 使用 Android Studio 打开你的 Android 项目
  • Android Studio -> File -> New -> Android resource directory
    • Directory name = xml
    • Directory type = xml
    • Source set = debug
  • Android Studio -> File -> New -> XML resource file
    • File name = network_security_config
    • Root element = network-security-config
  • 上述步骤会生成一个包含指定根元素的 XML 文件。现在将以下内容粘贴进去,替换生成的 XML 文件中的现有内容。
    <?xml version="1.0" encoding="utf-8"?>
    <network-security-config xmlns:android="http://schemas.android.com/apk/res/android">
        <debug-overrides>
            <trust-anchors>
                <!-- Trust user added CAs while debuggable only -->
                <certificates src="user" />
            </trust-anchors>
        </debug-overrides>
    </network-security-config>
    
  • 然后转到 debug 源集,如果你还没有针对 debug 构建变体的 AndroidManifest.xml 文件,请创建一个空白文件,并添加如下内容(最终清单合并器会将其与主清单合并)。如果你已经有该文件,只需在 application 下添加 networkSecurityConfig 属性即可。
    <?xml version="1.0" encoding="utf-8"?>
    
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools">
    
        <application
            android:networkSecurityConfig="@xml/network_security_config">
        </application>
    
    </manifest>
    

现在,SSL 代理应该可以用于你应用的 debug 构建变体,但不适用于 release 构建变体。

iOS

  • 启动 Charles 并保持运行

  • 获取 IP 地址

  • 确保 iOS 设备与 Charles 使用同一网络

  • 在 iOS 设备上

    • 转到 Settings -> Wi-Fi -> 点击正在使用的网络 -> 将 HTTP PROXY 设置为 Manual

      • Server = IP 地址
      • Port = 8888
    • 启动 Safari,访问 https://chls.pro/ssl(如果无法访问,请尝试 http://www.charlesproxy.com/getssl),安装证书

    • 打开一个应用,在 Charles 上监控流量
  • 电脑上会弹出一个对话框,提示“A connection attempt to Charles has been made from the host ...”,只需点击 Allow 按钮

iOS 10.3 及之后版本

  • 证书安装完成后
  • 转到 Settings -> General -> About -> Certificate Trust Settings -> Enable Full Trust For Root Certificates -> 启用 Charles 的证书

终端

如果你需要在终端中通过 curl 进行调试:

  • 将 Charles 设置为代理

    export http_proxy=http://127.0.0.1:8888 && export https_proxy=$http_proxy
    
  • 移除代理

    unset http_proxy https_proxy
    

SSL CA 证书

  • 在同一台电脑上运行的 Charles Proxy 提供相同的 SSL 证书。
下载工具