日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

工程师必备APP抓包技能

發(fā)布時間:2023/12/15 综合教程 22 生活家
生活随笔 收集整理的這篇文章主要介紹了 工程师必备APP抓包技能 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

奇技 · 指南

一臺上網(wǎng)電腦就能完成 APP 抓包分析一條龍服務(wù)。這是一篇 APP 抓包分析總結(jié)性文章,采用 APP 模擬器與 Web 調(diào)試代理工具組合玩法。從此 APP 抓包分析能力變得游刃有余,告別腳忙手亂。

本篇文章在 macOS 10.15.7 和 Windows 10 專業(yè)版環(huán)境測試通過,文章素材大部分以 Mac 環(huán)境為主。您只需要擁有一臺能上網(wǎng)的電腦就能實(shí)現(xiàn) APP 抓包分析,連實(shí)物手機(jī)都 可以不需要了。適用于 APP 功能測試、APP 安全測試、APP 開發(fā)、后端開發(fā)、以及對 APP 抓包感興趣的人員。

1

第一步:安裝 Android 模擬器

國內(nèi) Android 模擬器數(shù)量有很多,我們需要挑選支持 WiFi 代理設(shè)置的模擬器,以下兩款 是我個人常用的(排序亂序):

本文隨機(jī)選擇的是網(wǎng)易 MuMu 模擬器,兩款模擬器都在多環(huán)境下測試通過。本文也分享了一種在 Android 7.0 以上正確抓取 HTTPS 數(shù)據(jù)包方法。

安裝 MuMu 模擬器

由于 MuMu 模擬器安裝非常簡單,所以省略掉安裝過程。

啟動 MuMu 模擬器

2

在模擬器上安裝 APP

界面化方式安裝 APP

網(wǎng)易 MuMu 模擬器,安裝 APP 非常簡單,安裝過程支持全界面化操作。APP 安裝途徑有 MuMu 模擬器內(nèi)置的 “應(yīng)用中心” 和 “本機(jī) APK 安裝”,當(dāng)然也支持 “adb” 命令行方式進(jìn)行安裝。比如:安裝了一款新應(yīng)用,桌面上會新增一個應(yīng)用圖標(biāo),并且在圖標(biāo)的左邊會有一個小紅點(diǎn)。

命令行方式安裝 APP

安裝 adb

首先安裝 adb (Android Debug Bridge)命令行工具,adb 用戶指南 https://developer.android.google.cn/studio/command-line/adb。在 Mac 環(huán)境下,安裝 android-platform-tools。

在 Windows 環(huán)境下,安裝 Android 命令行工具,下載地址: http://tools.androidstudio.org/index.php/sdk,在這里省略掉了 adb 安裝過程。

連接 MuMu

以下 adb 命令在 Mac、Windows 環(huán)境下通用。

Windows 查看 TCP 端口監(jiān)聽狀態(tài)

Mac、Linux 查看 TCP 端口監(jiān)聽狀態(tài)

在 Mac 環(huán)境下,連接 MuMu 模擬器

查看已連接的所有設(shè)備

本地安裝APK

$ adb -s emulator-5554 install /Users/fanjiapeng/Downloads/360freewifi_beta.apk

3

安裝 Web 調(diào)試代理工具

推薦兩款常用 Web Debugging Proxy Tool(排序亂序):

抓包工具1:Charles

由于軟件安裝非常簡單,所以省略掉安裝過程。不得不稱贊一下,Charles 軟件圖標(biāo)非常 漂亮,打開 Charles 界面如下圖所示。

模擬器設(shè)置 Charles 代理

代理設(shè)置步驟:

打開 MuMu 模擬器 → 系統(tǒng)設(shè)置 → 選擇 WLAN →(長按出彈框)選擇修改網(wǎng)絡(luò) → 填寫 代理服務(wù)器信息 → 保存。

下圖例子注解:

紅框 1,填寫的是本機(jī)的內(nèi)網(wǎng) IP 地址。

紅框 2,填寫的是 Charles 默認(rèn)的端口號 8888。

開啟 Charles HTTPS 抓包

首先在模擬器里,安裝 Charles 根證書。操作步驟如下:1. 通過瀏覽器訪問 “chls.pro/ssl” ,下載 Charles 根證書。

2. 點(diǎn)擊左上角的 “下載箭頭” 圖標(biāo),安裝 Charles 根證書。某些手機(jī)需要更改證書后綴名稱。

3. 設(shè)置鎖屏PIN碼或密碼才能使用憑證存儲。

4. 證書安裝成功。

其次在 Charles 軟件操作 SSL 代理設(shè)置。配置步驟: Proxy →SSL Proxying Settings → Add 。

圖示操作如下所示:

Andorid 7.0+ 抓取 HTTPS 包

Android 7.0 版本以下請?zhí)^此小節(jié),不需要多此一舉了。

1. Android 系統(tǒng)需要 root 權(quán)限

2. 下載 Charless 根證書:charles-ssl-proxying-certificate.pem Help → SSL Proxying → Save Charles Root Certificate… 。

3. OpenSSL 命令行工具計(jì)算 pem 文件 hash 值

4. 把 pem 文件重命名,Android 系統(tǒng)證書格式:.0

5. (先連接模擬器)把本地證書上傳到手機(jī)目錄中:/system/etc/security/cacerts

如果出現(xiàn)錯誤提示:adb: error: failed to copy ‘xxx’ to ‘xxx’: remote couldn’t create file: Read-only file system。增加以下兩步操作,再重新執(zhí)行步驟 5

訪問控制設(shè)置

第一種自動設(shè)置方式:首次從 Android 設(shè)備建立連接時,Charles 軟件會出現(xiàn) IP 授權(quán)提示框。點(diǎn)擊 “Allow”, Android 設(shè)備 IP 地址將添加到 Charles 中的 “訪問控制” 列表中(由于這里使用的是 Android 模擬器,也就是本機(jī) IP 地址)。

第二種手動設(shè)置方式:點(diǎn)擊右上角小圖標(biāo) “Settings”,在彈出的下拉菜單項(xiàng)中選擇 “Access Control Settings”,點(diǎn)擊按鈕 “Add”,完成白名單 IP 地址添加。

開始 Charles 抓包

注意: 若抓取 HTTPS 包顯示<unknow>,則說明證書配置不正確

抓包工具2:Fiddler Everywhere

由于軟件安裝方式非常簡單化,所以省略掉安裝過程。打開 Fiddler Everywhere 界面如下圖所示。

Live Traffic Columns 功能區(qū)說明

模擬器設(shè)置 Fiddler Everywhere 代理

代理設(shè)置步驟:

打開 MuMu 模擬器 → 系統(tǒng)設(shè)置 → 選擇 WLAN →(長按出彈框)選擇修改網(wǎng)絡(luò) → 填寫 代理服務(wù)器信息 → 保存。

下圖例子注解

紅框 1,填寫的是本機(jī)的內(nèi)網(wǎng) IP 地址。

紅框 2,填寫的是 Fiddler Everywhere 默認(rèn)的端口號 8866。

開啟 Fiddler Everywhere HTTPS 抓包

1. 點(diǎn)擊右上角小圖標(biāo) “Settings”,選擇菜單項(xiàng) “HTTPS”,勾選 “Capture HTTPS traffic”。

2. 在模擬器里,通過瀏覽器下載 Fiddler Everywhere 根證書,剩余的安裝步驟請參考 Charles 根證書安裝:

Andorid 7.0+ 抓取 HTTPS 包

Fiddler Everywhere 工具導(dǎo)出的根證書格式為 crt,需要把 crt 證書格式轉(zhuǎn)換成 pem 格 式。其它配置步驟請參考 Charles 這章設(shè)置。

開啟遠(yuǎn)程連接

選擇菜單項(xiàng) “Connections”,勾選 “Allow remote computers to connect”,其它項(xiàng)保留默認(rèn)設(shè)置即可。

開始 Fiddler Everywhere 抓包

在 MuMu 模擬器中,操作需要被抓包的 APP,在 Fiddler Everywhere 中 “Live Traffic” 區(qū)域顯示抓取到的所有 API 請求,點(diǎn)擊其中一條 API,在 Fiddler 界面右邊區(qū)域可以查看 Request、Response 詳細(xì)信息。

總結(jié)

雖然文章取材以 Mac 環(huán)境為主,若沒有特殊注明,則說明在 Windows 和 Mac 環(huán)境下安 裝步驟同質(zhì)化,只是在安裝過程中某些界面顯示上會有一些差異,但并不影響整體的安裝 流程。

本篇文章言簡意賅介紹了 MuMu 模擬器安裝,adb 工具的安裝及使用,APK 多種安裝方 式,兩款抓包工具 Fiddler Everywhere、Charles 的安裝及基礎(chǔ)性配置。

雖然 APP 抓包還有其它的方式,但 APP 抓包工具這兩款依然是首選工具。調(diào)試代理工具 的介紹不是本章的重點(diǎn),因?yàn)樗鼈兊哪芰h(yuǎn)不止于此。篇幅有限,本章只講解了 Android APP 抓包,iOS APP 抓包方式是相同的。

延伸話題:關(guān)于 APP 抓包與反抓包策略,這是人與人之間的較量,這是一個長期博 弈的過程。

往期精彩回顧

MQTT協(xié)議之發(fā)布訂閱

一種通過云配置處理應(yīng)用權(quán)限彈框的方案

360Stack裸金屬服務(wù)器部署實(shí)踐

360技術(shù)公眾號

技術(shù)干貨|一手資訊|精彩活動

掃碼關(guān)注我們

總結(jié)

以上是生活随笔為你收集整理的工程师必备APP抓包技能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。