《吐血整理》高級系列教程-吃透Fiddler抓包教程(34)-Fiddler如何抓取微信小程式的包-上篇

1.簡介

有些小夥伴或者是童鞋們說小程式抓不到包,該怎麼辦了???其實蘋果手機如果按照宏哥前邊的抓取APP包的設置方式設置好了,應該可以輕鬆就抓到包了。那麼Android手機小程式就比較困難,不是那麼友好了。所以今天宏哥重點說一下Android手機小程式抓包。

2.前言

首先看下是否滿足以下條件
小程式無法抓包原因 :

Android系統 7.0 以下版本,不管微信任意版本,都會信任系統提供的證書
Android系統 7.0 以上版本,微信 7.0 以下版本,微信會信任系統提供的證書
Android系統 7.0 以上版本,微信 7.0 以上版本,微信只信任它自己配置的證書列表

微信6.6.7版本://dldir1.qq.com/weixin/android/weixin667android1320.apk

首先我們從上邊的原因前兩點可以看出都需要信任系統證書,因此我們都需要手機的Root許可權才能將Fiddler的證書安裝成系統證書,這個過程和原因宏哥在前邊的文章中已經說過了,這裡就不再贅述。但是從第三點可以看出微信7.0後由於證書問題都不支援https抓包了,你也可以去微信開放社區看一下有關這個問題討論。

3.實戰一

3.1Fiddler配置

1.手機和電腦要在同一個區域網中。

2.完成fiddler的基本配置,與web端抓包一樣:TOOLS–>options–>connections–>1、設置埠;2、勾選2/3/4選項:

在這裡插入圖片描述

3.指定代理埠,勾選指定項
在這裡插入圖片描述

3.2手機代理設置

1.手機設置代理:

(1)設置埠與fiddler的埠保持一致:8888;2、設置IP地址與PC機的IP保持一致
在這裡插入圖片描述

3.3安裝https證書

需要那種證書,自己安裝那種證書即可,但是系統證書需要Root許可權安裝,據聽說這種好像也不靠譜容易導致微信封號,沒有親身實驗過,有興趣的可以自己試一下。

3.3.1用戶證書

如果小程式或者APP端需要抓取HTTPS的請求消息,必須在手機上安裝fiddle的證書,其安裝步驟:

步驟一:在手機端打打開瀏覽器,輸入網址–》//PC的IP:fiddler的埠號

步驟二:點擊超級鏈接:FidderRoot certificate超級鏈接

步驟三:點擊下載的證書文件,進行安裝,安裝成功,就可以抓取HTTPS的消息了
如果無法自動安裝,Android版本7.0以下的:則進入手機設置-》安全和隱私-》安全拼爭存儲-》從存儲設備安裝,找到下載好的證書目錄,確認即可,安裝完成後,查看信任憑證,用戶證書里是否可以看到剛才的證書。

3.3.2系統證書

關於系統證書的安裝:步驟可以看宏哥這篇文章,裡邊有詳細的步驟。

《吐血整理》高級系列教程-吃透Fiddler抓包教程(27)-Fiddler如何抓取Android7.0以上的Https包-中篇 

3.4開始抓包

然後就可以進行抓包了,抓包完成之後,需要關掉手機的代理,否則,手機無法上網。

4.實戰二

既然手機微信7.0以上版本不讓抓,我們換條路,從電腦上抓取小程式的包。這種方法和抓取web端的包有點相似。

1.打開電腦端小程式:退出微信,登錄微信時設置代理,如下圖所示:

2.打開微信pc版,點擊左側箭頭,會彈出右側小程式列表,如下圖所示:

3.開始抓包,打開fidder,選擇列表內需要抓包的小程式,在小程式頁面上進行操作,這時候fidder里已經有很多請求資訊了,如下圖所示:

4.尋找目標請求,這裡暫逐一對各個鏈接進行檢查,選擇一個可能是目標鏈接的請求,查看請求頭和返回數據

返回數據里顯示亂碼,點擊返回數據區域上的「Responsebody is encode。。。」轉換編碼格式

 轉換後發現,返回值跟當前頁面的資訊是不是很像,沒錯,就是這個請求

tips:

筆者的手機andoroid 版本8.0,微信版本7.0,證書安裝成功依然無法抓取https的請求。

宏哥PC的端的微信版本是3.5,聽說3.7也有的小程式抓不到包了,這個宏哥沒有親自嘗試,有興趣的小夥伴或者童鞋們,可以更新一下微信到3.7實踐一下。

5.小結

隨著互聯網技術的發展以及各類APP或者小程式的完善,版本越高抓包越難,要想好好的抓包最笨的辦法就是降低版本。

5.1Fiddler抓不到pc端微信小程式包解決方案

第一步、微信裡面先打開我們需要抓包的小程式,然後啟動任務管理器,下面以小紅書為例點擊進程,找到 WeChat Miniprogram Framework 裡面的小紅書APP,如下圖所示

第二步、滑鼠選中小紅書APP,右擊打開文件所在的位置,打開後看下文件路徑裡面有沒有 WMPFRuntime 這個文件夾,如果沒有這個文件夾就不要繼續操作了,這個辦法不適合你

第三步、如果你找到了這個文件夾,如下圖所示,先把電腦上登錄的微信全部退出,然後把 WMPFRuntime 文件夾裡面的全部刪除,刪除完成後重新登錄微信,如果你不先退出微信,這個文件夾會提示你被佔用無法刪除的。

只要刪除了這個快取的文件夾,再重新登錄微信打開小程式,用fiddle就可以輕鬆抓包了。

每天學習一點,今後必成大神

往期推薦:

Appium自動化系列,耗時80天打造的從搭建環境到實際應用精品教程測試

Python介面自動化測試教程,熬夜87天整理出這一份上萬字的超全學習指南  

Python+Selenium自動化系列,通宵700天從無到有搭建一個自動化測試框架

Java+Selenium自動化系列,仿照Python趁熱打鐵嘔心瀝血317天搭建價值好幾K的自動化測試框架

Jmeter工具從基礎->進階->高級,費時2年多整理出這一份全網超詳細的入門到精通教程

Fiddler工具從基礎->進階->高級,費時100多天吐血整理出這一份全網超詳細的入門到精通教程

Pycharm工具基礎使用教程

Tags: