Android抓包方法(三)
之Win7筆記本Wifi熱點+WireShark工具
做前端測試,基本要求會抓包,會分析請求數據包,查看接口是否調用正確,數據返回是否正確,問題產生是定位根本原因等。
第一篇介紹Fiddler代理,如果APP不支持代理,則不適用;第二篇介紹的Tcpdump抓包,雖強大但不能實時抓包。能否有方法既能抓到所有的包,又能實時查看呢?大家會想到路由抓包,對,介是一個非常好的思路,但公司網絡通常不支持,或者你是沒有權限的,或者就數據量龐大,哈哈...那我們變通一下,本文主要以此為思路介紹抓包方法。
[目錄]
1、抓包原理
一句話:在關鍵數據出入口,進行監控。本文以筆記本設置Wifi共享,監控虛擬Wifi進出數據。
2、方法優劣
[優點]:1).可抓任何通過此Wifi的終端上網數據2).實時抓包
[缺點]:1).需要Win7筆記本電腦2).電腦需要安裝Wireshark或其他抓包工具
3、准備工作
筆記本開啟WiFi共享
如本文介紹不夠細致到位,還請谷歌、百度等自行腦補。
2). 查看筆記本無線網卡是否支持承載網絡
運行命令:
netsh wlan show drivers #開啟虛擬Wifi,密碼為ILoveYou運行完后會有一行顯示“支持的承載網絡:是(如果支持顯示為:是)”;如果為“否”,則請略過本文。
3).啟用並設定虛擬WiFi網卡
運行命令:netsh wlan set hostednetwork mode=allow ssid=Findyou key=ILoveYou #開啟虛擬Wifi,密碼為ILoveYou此命令有三個參數:mode:是否啟用虛擬WiFi網卡,改為disallow則為禁用。
ssid:無線網名稱,最好用英文(以Findyou為例)。key:無線網密碼,八個以上字符(以ILoveYou為例)。
以上三個參數可以單獨使用,例如只使用以下命令就可以直接禁用虛擬Wifi網卡;運行命令:netsh wlan set hostednetwork mode=disallow開啟成功后,網絡連接中會多出一個網卡為“Microsoft Virtual WiFi Miniport Adapter”的無線連接2
為方便起見,將其重命名為虛擬WiFi。若沒有,只需更新無線網卡驅動就OK了。
在“網絡連接”窗口中,右鍵單擊已連接到Internet的網絡連接,選擇“屬性”→“共享”,勾上“允許其他······連接(N)”並選擇“虛擬WiFi”。
![]()
確定之后,提供共享的網卡圖標旁會出現“共享的”字樣,表示“寬帶連接”已共享至“虛擬WiFi”。
運行命令:netsh wlan start hostednetwork #將start改為stop即可關閉該無線網,以后開機后要啟用該無線網只需再次運行此命令即可至此,虛擬WiFi的紅叉叉消失,WiFi基站已組建好,主機設置完畢。筆記本、帶WiFi模塊的手機等子機搜索到無線網絡Findyou,輸入密碼ILoveYou,就可以共享上網啦!![]()
4、實例
1).開啟Win7筆記本連網,並開啟Wifi共享
運行命令:
注:可以存為Bat文件,下次直接右擊以管理員身份運行即可。netsh wlan start hostednetwork #開啟虛擬Wifi
2). 手機連上共享的Wifi
3).開啟Wireshark,選擇虛擬Wifi
4). 操作APP,生成請求數據
5).分析Wireshark抓包數據
5、總結
通過以本文,可以拓展很多模式,筆記本加無線路由等等,通過三篇介紹抓包方法,相信大家都有完整的思咱與方法,抓包介紹就此告一段落。
說說題外話,由此大家可以如果有心人在公共場所架設一個免費Wifi,如果在傳輸過程中存在明文密碼,那么基本就淪陷了,所以在測試APP等產品時,需要關注傳輸加密,避免傳輸過程中是否使用明文、密碼加密規則是否過於簡單等(例僅MD5加密,每次傳都一樣,跟明文其實沒多大區別),當然這僅僅是測試的一個方面。希望此文能給大家一定收獲。