PCAPdroid 快速解惑 9 問 9 答,抓包新手也能看懂

系统工具 ·约 8 分钟 ·記筆記的貓:團子

PCAPdroid 是什麼

PCAPdroid官網 是一款 Android 平台上的網路流量監控與抓包工具,由 Emanuele Faranda 開發。它能讓你在手機上直接查看每個 App 的即時連線記錄、流量走向與協議細節,支援 TLS 解密、PCAP 文件匯出、防火牆規則封鎖等進階功能,面向需要分析自家應用網路行為、排查連線問題、或學習移動端抓包技術的開發者與安全愛好者。

安裝

PCAPdroid 以 Android APK 形式分發,最新版本 1.9.1,安裝包大小約 6.55M。安裝流程跟一般 Android App 無異:PCAPdroid下載 APK 後允許未知來源安裝即可。首次啟動時,應用會彈出一個 Android VPN 授權對話框——這是 PCAPdroid 的核心運作方式,它本質上是通過本地 VPN 攔截所有網路流量,所以必須點「允許」才能正常抓包。另外,如果你計畫使用 TLS 解密功能,還需要在手機的系統設備中手動安裝 PCAPdroid 產生的 CA 憑證,這一步在 App 內的 TLS 解密設置頁面有詳細引導。

開始前先看:9 個快問快答

Q1:PCAPdroid 一定要 root 嗎?

不需要。PCAPdroid 憑藉 Android 系統提供的 VPN Service 機制運作,非 root 設備也能正常抓包。這一點是它相對傳統 PCAP 工具(如 tcpdump,需要 root)的最大優勢。不過 root 之後可以使用 LSPosed + sslunpinning 之類的模組來繞過 App 的憑證鎖定,解密範圍會更大——但入門階段完全不需要。

Q2:它和 HttpCanary、mitmproxy 有什麼區別?

三者都能攔截網路流量,但定位不同:HttpCanary 是老牌 Android 抓包工具,功能全面但 UI 略顯舊;mitmproxy 是桌面端命令列代理,需要在同一網路下設定手機代理才能用;PCAPdroid 則是「純手機端、零設定、PCAP 級別」的方案——它不僅能看 HTTP(S),還能抓 DNS、UDP、QUIC 等所有協議,並原生支援匯出 .pcap 文件給 Wireshark 做後續分析,這是另外兩者比不了的。

Q3:TLS 解密怎麼開?成功率高不高?

三步搞定:先在 App 的 TLS 解密設置裡開啟開關並安裝 CA 憑證到系統,再到 Decryption Rules 裡新增一條規則指定要解密的目標(可以按 App、域名、端口或包名前綴選),最後確認 Full Payload 已打開。成功率取決於你選的目標 App——像 Chrome 這種不做憑證鎖定的應用基本百分之百成功,但金融、社交、主流大廠 App 大多做了證書鎖定(certificate pinning),會導致解密失敗(顯示紅色鎖圖示)。

TLS 解密成功的綠色鎖圖示

Q4:看到紅色鎖怎麼辦?怎麼繞過憑證鎖定?

紅色鎖代表 TLS 握手成功但解密失敗,絕大多數原因是目標 App 做了憑證鎖定。繞過工具鏈按難度分級:最簡單的是 LSPosed + sslunpinning(需要 root),裝上模組後對所有 App 自動生效;apk-mitm 適合非 root 場景,一鍵命令列工具,反編譯 APK、降低 targetSdk、自動處理 pinning 邏輯,唯一缺點是重簽名後 SSO 登錄會失效;Flutter App 則要用專用的 reFlutter 工具替換引擎;最後手段是用 jadx + apktool 做真逆向。入門建議先用 Chrome 測通,再逐步挑戰有 pinning 的目標。

Q5:抓包數據怎麼保存到手機?能導出給 Wireshark 嗎?

Status 標籤頁把 Dump Mode 切到 PCAP File,點播放按鈕後系統彈出文件對話框讓你選保存位置,抓包數據會持續追加寫入。停止後有三個選項:分享、刪除、保留。如果同時開啟了 TLS 解密,停止時會在同目錄自動生成一個同名的 .keylog 文件(SSLKEYLOGFILE),把它的路徑配到 Wireshark 的 TLS 協議設置裡(Edit → Preferences → Protocols → TLS → (Pre)-Master-Secret log filename),重新打開 .pcap 就能看到解密後的明文流量。付費版支援 Pcapng 格式,TLS 密鑰直接嵌入文件內,Wireshark 打開即自動識別,不需要額外 keylog。

Q6:PCAPdroid 有付費版嗎?值得買嗎?

有。付費版主要解鎖三個功能:Pcapng 格式匯出(密鑰嵌入文件、保留完整流量方向資訊)、防火牆規則(按 App/域名/IP 自訂封鎖清單)、以及 JS 注入器(在目標 App 的 WebView 中注入自訂腳本)。如果你只是偶爾看看 App 連了哪些域名、排查一下 DNS 洩漏,免費版完全夠用;經常需要導出給 Wireshark 深度分析的話,Pcapng 的便利性確實值回票價。

Q7:手機長時間抓包會不會燒電?文件會不會爆大?

會。持續抓包對 CPU 和電量消耗都不小,建議只在需要時開啟,用完及時停止。至於文件大小:短時間抓(幾分鐘)一般只有幾 MB,長時間或大流量場景(例如觀看串流影片時抓包)可能達到數百 MB。建議優先保存在大容量分區或外接記憶卡,用完就選「刪除」——PCAP 文件佔空間且包含敏感資訊,不宜長期留在手機裡。

Q8:除了抓包,還有什麼隱藏玩法?

兩個值得一提:一是 DNS 加密檢測,PCAPdroid 能辨識 DoH/DoT/DoQ 等加密 DNS 協議,幫你確認 App 有沒有偷偷繞過系統 DNS 設置;二是 惡意連線檢測,付費版有惡意連線資料庫,抓包時會即時標註可疑域名。另外它的防火牆功能可以把特定 App 的廣告域名黑名單掉,變相當 AdBlock 用——這點很多人沒發現。

主畫面連線列表

Q9:新手建議從哪裡開始?

三步入門路徑:第一步,開 PCAPdroid 後直接選 Chrome 當測試目標,確認 VPN 授權已給、綠色鎖能出現,先跑通最基礎的抓包解密流程;第二步,試試 PCAP File 模式,抓幾分鐘然後用 Wireshark 打開看明文 HTTP 請求,建立「手機抓包 → 電腦分析」的完整閉環;第三步,找一個有憑證鎖定的 App(例如微信或某個金融 App),嘗試用 apk-mitm 或 LSPosed 繞過,體驗完整的 TLS 解密技術鏈。這三步走下來,基本就能獨立解決大多數移動端抓包場景了。

最後一句

PCAPdroid 是目前 Android 平台上手性最好、功能最完整的免費抓包工具,非 root 就能用、PCAP 級別流量精度、原生支援 Wireshark 匯出——只要你需要在手機上看 App 的網路行為,它就是首選,沒有之一。

本文為個人基於網路公開資料整理編寫,非官方內容,僅供學習交流參考;軟體版權歸原作者所有,請支持正版;使用過程中遇到問題請查閱官方管道,本文不承擔任何責任。

團子還試過這些