emanuele-f/PCAPdroid

GitHub: emanuele-f/PCAPdroid

PCAPdroid 是一款免 root 的 Android 网络监控与抓包工具,通过本地 VPN 隧道捕获并分析设备上各应用的网络连接。

Stars: 4261 | Forks: 502

# PCAPdroid PCAPdroid 是一款注重隐私的开源应用,可让您跟踪、分析和屏蔽设备中其他应用建立的网络连接。它还允许您导出流量的 PCAP dump,检查 HTTP,解密 TLS 流量等等! PCAPdroid 通过模拟 VPN 的方式,在无需 root 的情况下捕获网络流量。它不使用远程 VPN 服务器,数据直接在设备本地进行处理。

功能: - 记录并检查用户应用和系统应用建立的连接 - 提取 SNI、DNS 查询、HTTP URL 和远程 IP 地址 - 得益于内置解码器,可检查 HTTP 请求与响应 - 以 hexdump/text 格式检查完整的连接 payload - [解密 HTTPS/TLS 流量](https://emanuele-f.github.io/PCAPdroid/tls_decryption) 并导出 SSLKEYLOGFILE - 将流量 dump 到 PCAP 文件,从浏览器下载,或将其流式传输到远程接收端进行实时分析(例如 Wireshark) - 创建规则过滤正常流量,轻松发现异常 - 通过离线数据库查询识别远程服务器的国家和 ASN - 在已 root 的设备上,即使其他 VPN 应用正在运行也能捕获流量 付费功能: - [防火墙](https://emanuele-f.github.io/PCAPdroid/paid_features#51-firewall):创建规则以屏蔽特定应用、域名和 IP 地址 - [恶意软件检测](https://emanuele-f.github.io/PCAPdroid/paid_features#52-malware-detection):通过使用第三方黑名单检测恶意连接 - [PCAPng 格式](https://emanuele-f.github.io/PCAPdroid/paid_features#53-pcapng-format):让导出和分析解密后的流量变得更加容易 如果您打算使用 PCAPdroid 进行数据包分析,请查阅手册中的特定章节 Get it on F-Droid Get it on Google Play 您可以通过将 [Beta 仓库](https://pcapdroid.org/fdroid/repo/) 添加到 F-Droid 应用中,在正式发布前测试最新功能。 ## 用户指南 请查看[快速入门指南](https://emanuele-f.github.io/PCAPdroid/quick_start)或完整的[用户指南](https://emanuele-f.github.io/PCAPdroid)。 ## 集成到您的应用中 PCAPdroid 的部分功能可以集成到第三方应用中,以提供数据包捕获功能。 - 对于已 root 的设备,可以直接将 [pcapd daemon](https://github.com/emanuele-f/PCAPdroid/tree/master/app/src/main/jni/pcapd) 集成到您的 APK 中以捕获网络数据包。 - 对于所有设备,PCAPdroid [提供了一个 API](https://github.com/emanuele-f/PCAPdroid/blob/master/docs/app_api.md) 来控制数据包捕获,并通过 UDP 将捕获到的数据包发送到您的应用。这需要将 PCAPdroid 与您的应用一同安装。 ## 开源 PCAPdroid 由开源技术驱动。 - [nDPI](https://github.com/ntop/nDPI):深度包检测库,提供连接元数据 - [mitmproxy](https://github.com/mitmproxy/mitmproxy):用于 TLS 解密的本地代理 - [zdtun](https://github.com/emanuele-f/zdtun):用于非 root 捕获的微型 TCP/IP 协议栈 有关第三方库的完整列表,请查看应用中的“关于”页面。 ## 构建 1. 在 Windows 上,安装 [gitforwindows](https://gitforwindows.org) 2. 克隆此仓库 3. 在仓库目录中,运行 `git submodule update --init`。此时应会填充 `submodules` 目录。 4. 在 Android Studio 中打开项目,安装相应的 SDK 和 NDK 5. 构建应用 *注意*:如果您遇到“No valid CMake executable was found”错误,请务必从 SDK 管理器安装 PCAPdroid 所使用的 CMake 版本(目前为 [3.22.1](https://github.com/emanuele-f/PCAPdroid/blob/master/app/build.gradle))
标签:Bash脚本, UML, 域名枚举, 自定义DNS解析器