HttpCanary使用指南——各類神奇的插件

HttpCanary更多資料,點我!!!html

做爲目前Android平臺最強大的抓包工具,HttpCanary從設計之初就規劃了插件功能(2.6.0版本以前稱爲‘模組’)。基於NetBare框架的虛擬網關-攔截器設計,HttpCanary能夠實現很是多的擴展功能,好比Host屏蔽、IP屏蔽等。我將一些擴展功能都以插件的形式,集成到HttpCanary中,既互相獨立又相互做用,最典型的就是靜態注入器git

這篇文章將詳細介紹下HttpCanary內置的各類神奇插件,包括如何使用以及使用場景。github

使用條件

HttpCanary版本 v2.6.0+
複製代碼

插件安裝

HttpCanary -> 設置 -> 插件管理 -> 右上角+號 -> 插件倉庫
複製代碼

插件1:Host屏蔽

利用Host屏蔽插件,咱們能夠屏蔽對指定Host或者服務器IP的Http請求,好比屏蔽廣告請求等。api

1.1 使用方式

建立一個名爲hosts.txt的文本文件,將須要屏蔽的Host或者IP以一行一行的格式添加進去,而後複製到/HttpCanary/plugins/HostBlock/目錄下。好比:緩存

www.hello.com
www.work.com
www.bug.com:8080
複製代碼

除了Host,也能夠加入IP地址:bash

10.11.12.13
10.10.10.10
123.123.123.123
複製代碼

固然,還能夠Host和IP混着寫:服務器

www.hello.com
10.11.12.13
10.10.10.10
www.work.com
123.123.123.123
www.bug.com:8080
複製代碼

1.2 注意事項

Host後面有些狀況下須要加入端口號,具體能夠到抓包內容總覽中查看Host後面是否有端口號。微信

插件2:MimeType屏蔽

和Host屏蔽相似,MimeType屏蔽插件能夠用來屏蔽指定類型的Mime-Type,但不一樣的是MimeType屏蔽插件的屏蔽功能分爲上行屏蔽和下行屏蔽,便可以配置屏蔽請求或者屏蔽響應。網絡

什麼是MimeType?它是一種包含在Http頭部的Content-Type中的數據,用來標識數據類型,好比圖片、Json、Html等,各類MimeType的定義請點這裏框架

2.1 使用方式

若是要屏蔽包含指定MimeType的請求,建立一個名爲req-mimes.txt的文本文件,將須要屏蔽的MimeType以一行一行的格式添加進去,而後複製到/HttpCanary/plugins/MimeTypeBlock/目錄下。若是是要屏蔽響應,則文本文件名應爲res-mimes.txt。

好比說我要屏蔽一些視頻廣告,能夠在res-mimes.txt中添加以下:

video/mp4
複製代碼

這樣,全部mp4類型的數據響應都被HttpCanary屏蔽了,包括視頻廣告等。

2.2 插件應用

下面以企鵝家的視頻應用爲例,看一下視頻廣告的攔截效果。

首先,配置好插件並啓用。簡單步驟以下:

  • 打開/HttpCanary/plugins/MimeTypeBlock目錄,編輯res-mimes.txt。
  • 加入一行:video/mp4,而後保存。
  • 啓動首頁抓包開關按鈕。

準備好以後,打開企鵝視頻應用,注意先把緩存清理下,防止有本地廣告視頻緩存。

來個效果圖:

開着HttpCanary的時候廣告已經load不出來了,屏蔽生效!

插件3:圖片、音頻和視頻下載器

有的時候,咱們但願能保存某些圖片、視頻等媒體文件並分享到微信好友或朋友圈,好比一段精彩的電影預告片等。可是通常狀況下,網站或者應用只提供瀏覽的功能,不會提供下載或者保存功能。這個時候HttpCanary的下載器插件就派上用場了。

HttpCanary的下載器一共有三個,分別是圖片下載、音頻下載、視頻下載。原理都是經過檢測Http響應數據頭部中的Content-Type,從而判斷是否須要保存響應數據。

下面以圖片下載器插件爲例。

3.1 使用方式

安裝好插件後,直接在首頁開啓抓包按鈕。而後全部的圖片請求文件都會自動保存到/HttpCanary/plugins/ImageDownloader目錄下。

連任何Icon都不會放過!

插件4:請求統計表

若是但願將全部抓包到的請求信息,以Excel表的形式導出,這個插件就派上用場了!

請求數據統計的維度包括:

  • Url
  • 服務器IP
  • 協議
  • 請求方法
  • 響應碼
  • 請求開始時間
  • 請求響應時間
  • 請求結束時間
  • 請求數據大小(B)
  • 響應數據大小(B)
  • 耗時1(ms)
  • 耗時2(ms)

其中包括一些請求時間維度,能夠用來計算網絡請求的平均耗時,是性能測試一款利器。

4.1 使用方式

安裝好插件後,直接在首頁開啓抓包按鈕。當中止抓包後,會自動在/HttpCanary/plugins/StatsOverview目錄下生成本次抓包的Excel表格。

插件5:微信定位漂移

微信定位漂移插件是用來修改定位經緯度的,實現「蒙多想去哪兒就去哪兒」的功能。包括:聊天時發送的地理位置,發朋友圈的地理位置。

5.1 使用方式

將經緯度按照 經度,緯度 的格式複製到粘貼板上,好比能夠利用百度地圖座標拾取系統獲取指定地點的經緯度(右上角直接複製便可)。完成後啓動首頁抓包按鈕。

測試效果的話,也可使用長按上圖描述文案中的經緯度,而後複製。咱們以116.41667,39.91667(北京王府井)爲例,固然開發者本人是遠在深圳。

微信中發送位置,顯示以下:

成功漂移!

再來看朋友圈的地理位置:

成功漂移!

插件須知

因爲每一個插件都是獨立的攔截器,且每一個攔截器都會對網絡流量進行分析探測,因此若是啓用的插件過多,對性能是有必定的影響的,好比卡頓,訪問網絡慢等。

另外,若是說只須要用到插件功能,而不須要關心具體抓包內容,好比下載器、廣告屏蔽等。強烈建議在設置中開啓性能模式!

最後,關於插件的啓用、禁用、刪除,都可以在設置->插件管理->長按插件來管理。

結語

若是您對HttpCanary有任何疑問或者建議,能夠訪問HttpCanary Github並建立issue!

插件的使用指南到此結束,感謝您的閱讀!

相關文章
相關標籤/搜索