Android APK實現WIFI協議包抓取(上)-實現思路
阿新 • • 發佈:2019-01-02
一次偶然的機會聽到一個需求,甲方希望能在手機上實現一個APK,這個APK能夠記錄附近WIFI的站點資訊,然後由強到弱抓取WIFI協議包,轉送到雲端進行WIFI破解。大致調研了幾天,實現思路如下:
1. 準備工具-nexus 4手機,root後,在手機上安裝busybox和tcpdump工具。
busybox的下載地址是:https://busybox.net/downloads/binaries/ ,下載對應cpu結構(cat /proc/cpuinfo)的最新檔案;tcpdump的下載地址是:http://www.strazzere.com/android/tcpdump。將上面的檔案放在/system/xbin/目錄下,並更改許可權為755.
2. 將手機網絡卡開啟混雜模式,網絡卡只有在混雜模式下才能獲得非本機的資料包。命令如下:busybox ifconfig wlan0 promisc
然後用命令:busybox ifconfig檢視wlan0網絡卡是否已經開啟混雜模式(wlan0支援的協議中含有 PROMISC 時,表示已經開啟混雜模式)。如果網絡卡不支援混雜模式,那就無法實現WIFI協議包的抓取。
3. 執行tcpdump命令,開始抓取資料包,命令如下:tcpdump -i wlan0 src host IP地址 or host IP地址 -s 0 -w /sdcard/capture.pcap。上述的IP地址就是你要抓取的路由器的IP地址。
4. 要抓取“合法使用者”登入WIFI的協議包時,要給WIFI站點發送deauth攻擊。
5. 用Java過濾並解析抓取的wifi協議,也可以將抓到的資料包傳到雲端進行WIFI密碼的破解。
這次說的是實現思路,下次把有空把他實現了,省的以後破解WIFI的時候,還得在筆記本上弄一套。