安卓的cer證書在哪裡卸載
⑴ tomcat部署時war包解壓慢
旭勇 >《國內情況》
閱29轉02021.05.11關注
Fiddler在使用的過程中經常會碰到一些問題。這章補充一些Fiddler的用法。
2.1Fiddler必須要做的3個設置
Fiddler需要進行3個設置,這樣做使用Fiddler的過程才能順暢。
2.1.1第1個設置:在Fiddler中安裝證書
大部分網站都是使用HTTPS協議,所以必須安裝證書,這樣才能捕獲HTTPS,如圖2-1所示。
如果證書沒有安裝成功,那麼Fiddler只能鎮碼扮抓到HTTP請求,抓不到HTTPS請求,如圖2-2所示。所以一定要想辦法把證書安裝好。
圖2-1Fiddler安裝證書
圖2-2沒有抓到HTTPS
2.1.2第2個設置:自動解壓HTTP響應
在Fiddler工具欄中選中「Decode」按鈕,如圖2-3所示。這樣就會自動解壓HTTP響應,否則我們看到的HTTP響應是亂碼。
圖2-3Fiddler選中Decode按鈕
2.1.3第3個設置:隱藏「Tunner to」請求
可以在Fiddler中隱藏「CONNECT Tunnels」請求,如圖2-4所示。隱藏的方法是選擇菜單欄中的Rules→Hide CONNECTs。這樣Fiddler就不會捕獲大量無用的握手驗證請求,如圖2-5所示。這些「Tunnel to」的請求對我們沒什麼用處。因為我們平常根本不關心HTTPS是如何建立連接的。我們抓包是為了看HTTP請求和響應的數據內容,抓HTTPS也是看數據內容,而不關心HTTPS的通信是怎麼建立的。
圖2-4在Fiddler中選中Hide CONNECTs
圖2-5Fiddler中的握手驗證請求
2.2不允許抓包
軟體開發商並不希望自己的軟體被人抓包,抓包意味著自己的介面全部被人看得一清二楚,存在很多安全隱患。有很多App採取各種措施來防止被抓包。
2.2.1某些App抓不到包
某些App為了不被抓包,直接會在代碼里設置不允許使用代理,這樣Fiddler就抓不到了。
有些App能抓包,說明Fiddler的設置是正確的。某些App不能抓包,原因有很多,如下。
可能是Fiddler證書原因,解決方法是需要用證書插件來重新製作一個證書,然後重新配置。
這個App的開發者進行了特殊設置,不讓抓包。
2.2.2HTTP請求和響應全部加密
圖2-6是一個查違章的App的抓包內容,可以看到這個App可以被抓包,但是其HTTP請求和HTTP響應全部被加密了,安全性很高。
圖2-6查違章App的介面全部被加密
2.2.3不讓抓包
銀行的App對安全性要求很高,所以一般不允許抓包。某款銀行App在用Fiddler抓包的時候,App會提示網路錯誤,不讓抓包,如圖2-7所示。
圖2-7某銀行App不讓抓包
2.3Fiddler抓不到包
在使用Fiddler的過程中,有時候會發現模兆Fiddler抓不到包。下面介紹如何解決抓包失敗的問題。
2.3.1Fiddler的抓包開關
Fiddler有一個抓包的開關。打開狀態欄的時候,狀態欄的最左邊有個「Capturing」圖標,如圖2-8所示。如果沒有這個圖標,當然抓不到包了。初學者很容易忘記這個開關。
圖2-8Fiddler的抓包開關
2.3.2瀏覽器抓不到包
Fiddler能抓包是因為它是一個代理伺服器。需要抓包的程序必須把代理指向Fiddler才行。如果瀏覽器抓不到包,可能是因為瀏覽器的代理設置沒有指向Fiddler。我們可以先重啟Fiddler,然後查看瀏覽器的代理伺服器設置,或者換不同的瀏覽器試試。御灶
我們先來看一下Fiddler的抓包原理圖,如圖2-9所示。
圖2-9瀏覽器的抓包原理
如果是某一個瀏覽器抓不到包,解決方案是換其他的瀏覽器。比如IE和Chrome都能抓到,只是Firefox抓不到包,說明Fiddler本身沒有問題,可能是Firefox的代理設置沒有指向Fiddler。
如果是所有的瀏覽器都抓不到包,這說明整個Fiddler都不工作。那麼要先重啟Fiddler,再檢查下系統的代理設置,如圖2-10所示。
圖2-10系統代理設置
設置系統代理的打開方式為:控制面板→Internet選項→連接→區域網設置→代理伺服器。
2.3.3能抓HTTP不能抓HTTPS
如果發現Fiddler可以抓到HTTP的請求,但是抓不到HTTPS的請求,這說明沒有安裝Fiddler的證書或者安裝Fiddler證書失敗。Fiddler可能會提示你安裝證書。解決辦法是重新安裝證書,再重啟Fiddler,如圖2-11所示。
圖2-11重新安裝證書
重新安裝證書的操作是Options→Actions→Trust Root Certificate。
2.3.4抓不到手機中的包
很多人會碰到這種情況:Fiddler能抓本地計算機瀏覽器的包,但是抓不到手機的包。本地計算機和手機位於同一個網路,各種配置也正常,但是手機的包就是抓不到。
出現這樣的問題的原因是Fiddler所在的計算機和手機之間的網路不通。即使Fiddler所在的計算機和手機連的是同一個Wi-Fi,也可能網路不通。在同一個Wi-Fi下,網路不一定是通的。操作系統上的防火牆或者其他軟體的設置都會影響網路的通信。我們需要通過下面的步驟來檢測網路是否是通的。
第1步:測試Fiddler能否捕獲本地計算機的瀏覽器的包,如果本地瀏覽器都不能抓包,那就說明Fiddler的配置有問題。
第2步:如果Fiddler所在的計算機的IP地址是192.168.0.100,那麼Fiddler證書網站的網址是http://192.168.0.100:8888。用計算機的瀏覽器訪問Fiddler證書網站,如圖2-12所示。
圖2-12Fiddler Echo Service網頁
第3步:在手機沒有設置代理的情況下,在手機上用瀏覽器打開Fiddler的證書網站。
如果網頁打不開,說明網路不通,原因可能如下。
手機和計算機不在同一個網路。
Fiddler的允許遠程連接的設置沒有打開。
Windows的防火牆關閉(防火牆打開,可能會禁止8888埠對外開放)。
只有Fiddler證書網站能打開,才能說明手機和計算機的網路是通的。再去修改手機上的代理設置,Fiddler才能對App進行抓包。
2.3.5經過上面的設置,還是抓不到包
可以考慮換台計算機、換個手機試試,或者換別的抓包工具試試。
2.3.6mac OS系統上抓包
Fiddler是用C#開發的,目前對mac OS的支持不太友好。現在很多人都用Mac筆記本辦公,在mac OS系統上抓包可以考慮用另外兩個工具:瀏覽器開發者工具和Charles。
2.3.7Fiddler證書安裝不成功
有時候會碰到Fiddler安裝證書不成功的情況,如圖2-13所示。
圖2-13證書安裝不成功
這種情況一般在Windows7系統中出現,可以試圖用下面介紹的兩種方法來解決。
方法1:從別的機器中復制一個Fiddler根證書「FiddlerRoot.cer」放到Fiddler的安裝目錄下面,然後再重新配置證書,如圖2-14所示。
圖2-14Fiddler證書
方法2:使用Fiddler證書製作工具來重新製作證書,詳細步驟如下。
第1步:在Fiddler中刪除證書。打開Fiddler,依次打開Tools→Options,取消選中Decrypt HTTP traffic,並且在Actions中單擊「Remove Interception Certificates」,如圖2-15所示。
圖2-15Fiddler刪除證書
第2步:卸載證書。找到Fiddler的安裝目錄,其中有個unCert.exe文件。如果沒有unCert.exe就不需要卸載,如圖2-16所示。
第3步:使用Fiddler證書製作工具來重新製作證書。下載Certificate Make插件,運行下載的文件之後會生成新的證書。
第4步:在Fiddler中重新配置證書。
圖2-16Fiddler卸載證書
2.3.8iOS系統10.3以上,手動信任證書
若iOS系統版本是10.3以上,那麼證書可能沒有被信任,需要手動設置信任證書。依次打開設置→通用→關於本機→證書信任設置,將Fiddler證書啟用即可,如圖2-17所示。
圖2-17iOS中啟用Fiddler證書
2.4Fiddler包太多找不到自己想要的
Fiddler啟動後,Web Session列表就會抓到很多HTTP請求,初學者往往會比較迷茫,因為找不到自己要抓的包。下面介紹幾個方法來找到自己要抓的包。
2.4.1停止抓包
最推薦使用這個方法。在抓包之前,先把Web Session裡面抓到的數據包全部清空,然後再操作網頁。在抓到想要的包後,就暫停抓包,這個方法簡單、實用。熟練使用這個方法後,就不需要使用其他過濾的方法了。抓包開關如圖2-18所示。
圖2-18抓包開關
2.4.2隻抓手機,不抓本地的包
在專門抓App的包的時候,Fiddler裡面混雜了本地計算機和手機App的包,如果只想抓手機App的包,這時候可以選擇「…from remote clients only」,如圖2-19所示。
圖2-19設置只抓遠程的包
2.4.3過濾會話
Fiddler有非常強大的過濾會話的功能,假如不想看到localhost的數據包,就可以把它隱藏。過濾的設置如圖2-20所示。注意,在設置時兩個Host之間要用分號隔開。
圖2-20用Filters選項卡隱藏localhost
注意:使用了Filters選項卡後,記得取消Filters選項卡。可能下次抓包的時候,忘記設置Filters選項卡而抓不到包。很多人犯過這個錯誤。
2.4.4隻抓特定的進程
在狀態欄中選擇Web Browsers或者Non-Browser來選擇進程,如圖2-21所示。此外,工具欄中還有個按鈕:Any Process,單擊這個按鈕把十字圖標拖曳到想要抓包的程序上面,就只會抓特定進程的包,如圖2-22所示。
圖2-21狀態欄上按進程過濾
圖2-22隻抓特定的進程
2.4.5觀察URL和HOST
觀察圖2-23中的URL,可知這是登錄相關的數據包。URL的命名都會是有意義的。比如登錄的介面會包含login,注銷的URL中會包含logout。
圖2-23觀察URL
2.4.6查看進程發包
進程是計算機中程序的一次運行活動。Fiddler的Process列對應本地Windows進程。通過這一列我們可以知道是哪個進程在發包,如圖2-24所示。
圖2-24在Fiddler中查看進程
2.5HTTPS是否安全
Fiddler能分析HTTPS流量是不是意味著HTTPS協議不安全?
HTTPS是安全的,Fiddler抓HTTPS的時候安裝了一個Fiddler的證書,所以Fiddler可以解密HTTPS的內容。HTTPS請求從計算機上發送到網路後,HTTPS的內容全部是加密的。
2.6計算機連接手機熱點抓包
在沒有Wi-Fi的情況下,我們用手機開熱點,計算機連接手機的熱點來上網,這個時候計算機上的Fiddler能否抓到手機上的包呢?答案是不能。因為手機開熱點後,採用的是GPRS手機流量上網,這個時候手機不能設置代理伺服器的,如圖2-25所示。
圖2-25WLAN熱點
如果有兩個手機,一台計算機,那麼就可以抓包了。一個手機當成熱點,另外一台手機和計算機都使用這個熱點上網,手機的代理就可以指向計算機了。
客戶端如何抓包
如果程序是用.NET開發的,那麼Fiddler可以抓到包。因為.NET程序默認會使用系統代理。如果程序是用別的語言開發的,只要這個程序支持用戶自定義代理,那麼Fiddler也可以抓到包,比如Fiddler可以抓QQ。
如果客戶端程序不支持代理,那麼Fiddler就抓不到包了。
2.7Fiddler測試App升級
Fiddler常用於App的升級測試,我們可以利用Fiddler偽造響應來測試App升級。
2.7.1App升級原理
App是否升級的檢查是在啟動App訪問伺服器時進行的,把本地計算機上App的最新版本號與伺服器端的最新版本號作對比,如果不一致就提示升級。
App升級的時候,App會發送一個HTTP請求,來問伺服器有沒有最新版。如圖2-26所示,如果沒有最新版,伺服器返回的HTTP響應中會說沒有更新。
圖2-26App沒有新版本
如果有最新版,伺服器返回的響應會告知有新版本,並且App端會有彈窗提示,如圖2-27和圖2-28所示。
圖2-27App有新版本
圖2-28App更新提示
2.7.2App升級的測試
在實際測試中,我們一般不會去修改伺服器,因為修改伺服器會遇到下述問題。
修改伺服器的代碼,需要有很好的代碼能力,99%的人做不到。
修改伺服器的代碼,還需要重新部署,耗時耗力。
不靈活,升級的情況有好幾種,每次修改都要重新部署。
用Fiddler來模擬升級比較簡單,如圖2-29所示。
圖2-29Fiddler模擬
我們用Fiddler偽造一個HTTP響應就可以了。可以用下斷點的方式修改HTTP響應,或者用Fiddler中的AutoResponder。接下來以堅果雲為例介紹一下升級。
2.7.3堅果雲的升級
堅果雲每次啟動的時候,都會調用一個latestVersion的介面來查詢伺服器,看客戶端有沒有更新的版本,如圖2-30所示。
對比HTTP響應中的版本和本地版本,如果伺服器返回的版本更高,那麼客戶端就會彈出對話框,提醒用戶升級App。
圖2-30堅果雲的升級
2.8短鏈接
短鏈接就是把普通網址轉換成比較短的網址(如https://dwz.cn/8oVtHHyH)。在微博或者其他限制字數的應用里,短鏈接有很多好處:網址短、字元少、美觀、便於發布和傳播。
我們平常工作中寫郵件使用短鏈接也會讓郵件更加簡潔和美觀。
2.8.1短鏈接原理解析
當我們在瀏覽器里輸入https://dwz.cn/8oVtHHyH時:
瀏覽器會發送一個HTTP GET請求給dwz.cn;
dwz.cn伺服器會通過短碼8oVtHHyH獲取對應的長網址;
伺服器返回HTTP 301或者302的響應,響應中包含了長網址;
瀏覽器會跳轉到長網址。
2.8.2使用短鏈接
短鏈接的服務提供商有很多,比如:網路短網址http://dwz.cn,如圖2-31所示。
圖2-31使用網路短網址
2.8.3Fiddler抓包短鏈接
打開Fiddler,再打開瀏覽器,輸入網址https://dwz.cn/8oVtHHyH。用Fiddler抓包短鏈接如圖2-32所示。
圖2-32Fiddler抓包短鏈接
從圖2-32中可以看到短鏈接的原理很簡單,利用HTTP協議的跳轉,用301或者302都可以。
2.9本章小結
本章介紹了Fiddler的常用使用技巧,包括抓包設置、抓不到包的解決方法等。讀者可以對照本章排查Fiddler使用過程中遇到的問題。此外,讀者還可以了解用Fiddler測試App升級和短鏈接的概念。
本文摘自:《HTTP抓包之介面自動化測試》
本書的內容都是我多年從事介面測試的經驗總結,非常貼近我們的實際工作,能幫助大家解決實際工作中的難題。
本書的內容比較簡單,實例豐富,讀者閱讀起來會感覺比較輕松、容易上手,讀完本書不需要花費太多時間。通過本書的學習,如果讀者能夠自行開發出一個訂票工具,或者實現一個電商網站的自動下訂單操作,那麼恭喜你,已經掌握了本書的所有知識。
本書的主要內容有HTTP的基礎知識;如何使用Fiddler來抓HTTP包;如何分析HTTP包;如何通過JMeter和Postman等發送HTTP包,從而實現軟體自動化測試和介面的自動化測試;如何使用抓包工具來實現安全測試和性能測試等;幾個日常生活中應用比較廣泛的綜合實例。
本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報。
展開剩餘內容
打開APP閱讀全文並永久保存
更多類似文章
猜你喜歡
類似文章
Fiddler和app抓包
fiddler對瀏覽器、app抓包及證書安裝
你想要的Fiddler抓包實操小技巧
python爬蟲教程:教你通過 Fiddler 進行手機抓包
利用Fiddler 可以抓取HTTPS
抓包|獲取移動app里的數據
更多類似文章 >>
生活服務
首頁萬象文化人生生活健康
教育職場理財娛樂藝術上網
留言交流回頂部
聯系我們
觸屏版| 下載APP
京ICP證090625號 京ICP備05038915號
京網文[2019]6000-697號 京公網安備 11010502030377號
關注公眾號
保存
生成長圖
分享
⑵ 華為安裝app時顯示該安裝包未包含任何證書怎麼辦
華為安裝app時顯示該安裝包未包含任何證書是安裝錯誤造成的,解決方法為:
1、打開手機,當我們安裝某軟體時,遇到圖中提示的問題。