【Android】Proxyman 抓 HTTP 数据包

前言

抓包(Packet Capture)是指在网络通信中截取、分析数据包的过程。

抓包通常用于网络调试、性能优化、安全分析等工作,可以帮助开发者或运维人员查看网络请求的详细内容,包括请求的URL、请求头、响应状态、数据内容等信息。

在抓包过程中,抓包工具会监听网络接口,将传输的数据包截取下来并以可读的方式展示出来。

抓包工具可以分析多种协议的数据包,如 HTTP、HTTPS、TCP、UDP 等,帮助我们深入了解网络通信的细节。

抓包

HTTP

Proxyman 是一款高性能的抓包应用程序,使开发人员能够查看来自应用程序和域的 HTTP/HTTPS 请求,包括 iOS 设备、iOS 模拟器Android 设备。

前期准备

  1. 下载 Proxyman

    点击下载 👉 Proxyman

  2. 安装完成后打开 Proxyman ,根据指引安装证书到本地电脑

  3. 找一台 Root 过的 Android 设备,让设备网络与电脑网络处于同一局域网,并能使用电脑 pingAndroid 设备的 IP 地址。

  4. 进入 Android 设备的网络设置,为 以太网WIFI 配置代理信息。配置的代理信息如下:

    Server:192.1.68.1.5

    Port:9090

    Authentication:No

    配置代理需要确保 Android 设备上的 VPN 被关闭,以免代理冲突。

  5. Android 设备上打开浏览器,访问 http://proxy.man/ssl 网址下载 CA 证书。

  6. 打开设置,根据 安全 → 加密与凭证 → 安装证书 → CA 证书 的操作步骤安装刚刚下载的 CA 证书。

  7. 如果你的 Android 系统版本高于 10 ,需要在你的 Android 项目上配置信任 CA 证书,即在 res/xml/network_security_config.xml 加上如下配置:

    xml 复制代码
    <?xml version="1.0" encoding="utf-8"?>
    <network-security-config>
    	<debug-overrides>
            <trust-anchors>
                <!-- Trust user added CAs while debuggable only -->
                <!-- 信任用户添加的CA证书 -->
                <certificates src="user" />
                <!-- 信任系统预装的CA证书 -->
                <certificates src="system" />
            </trust-anchors>
        </debug-overrides>
    
        <!-- 允许明文流量(即HTTP请求)-->
        <base-config cleartextTrafficPermitted="true">
            <!-- 配置指定信任的证书来源。-->
            <trust-anchors>
                <!-- 表示信任系统预装的CA证书和用户添加的CA证书 -->
                <certificates src="system" />
                <!-- 信任系统预装的CA证书和用户添加的CA证书 -->
                <certificates src="user" />
            </trust-anchors>
        </base-config>
    </network-security-config>

    将配置文件的引用添加到 AndroidManifest.xml

    xml 复制代码
    <manifest xmlns:android="http://schemas.android.com/apk/res/android">
    	<application
    		android:networkSecurityConfig="@xml/network_security_config">
    	</application>
    </manifest>
  8. 打开APP

    具体详情可参考 👉 Android Device & Emulator

注意事项:

1、http 的网络请求在任何的 Android 版本上都可以进行抓包,https 的网络请求在Android 10及以上的Android 版本抓包,必须需要在 Android 项目加上一些配置才能抓包。

2、Android 10 及以上的 Android 版本需要在 Android 系统上配置 CA 证书。

3、使用抓包工具进行抓包的电脑要求要和 Android 端的网络处于同一局域网,且使用电脑能够 ping 通。

相关推荐
xxjj998a15 分钟前
Laravel 1.x:PHP框架的原始魅力
android·php·laravel
formula1000016 分钟前
在iOS/安卓上远程连接任何 Agent!Claude、Codex、Copilot、Gemini、OpenCode 等
android·copilot
_Evan_Yao26 分钟前
从 IP 路由到 Agent 路由:最长前缀匹配如何帮你分发任务?
java·网络·后端·网络协议·tcp/ip
该用户可能存在37 分钟前
Blbl-android 更新至 v0.1.24,体验更流畅、更稳定
android·哔哩哔哩·电视app·androidtv·bbll·blbl·bilibilitv
lKWO OMET1 小时前
mysql之字符串函数
android·数据库·mysql
数据法师11 小时前
开源情报收集工具GhostTrack深度测评:IP、手机号、用户名的合规信息查询方案
网络·网络协议·tcp/ip
liang_jy11 小时前
Android SparseArray
android·源码
liang_jy12 小时前
Activity 启动流程扩展篇(一)—— startActivityInner 任务决策全解析
android·源码
想成为优秀工程师的爸爸13 小时前
第三十篇技术笔记:郭大侠学UDS - 人有生老三千疾,望闻问切良方医
网络·笔记·网络协议·tcp/ip·信息与通信
NPE~13 小时前
[App逆向]脱壳实战
android·教程·逆向·android逆向·逆向分析