1)下載tcpdump工具shell
tcpdump(dump the traffic on a network)是Linux中強大的網絡數據採集分析工具之一,能夠將網絡中傳送的數據包頭徹底截獲下來提供分析。它支持針對網絡層、協議、主機、網絡或端口的過濾,並提供and、or、not等邏輯語句來幫助你去掉無用的信息。Android系統是基於Linux,能夠使用tcpdump來抓取數據包。因爲普通用戶不能正常執行tcpdump,具有root權限的用戶才能夠直接執行它來獲取網絡上的信息,因此使用它的前提條件是:手機須要具有root權限。網絡
2)將下載好的tcpdump拷貝到手機tcp
adb push D:/tcpdump /data/local(將下載到D盤的tcpdump工具拷貝到/data/local目錄下)工具
3)修改文件權限spa
①經過命令修改文件權限日誌
adb shell chmod 777 /data/local (777表明目標文件或目錄是任何人均可以讀、寫、執行)blog
②經過RE文件管理器修改文件權限接口
4)使用tcpdump抓包qt
/data/local/tcpdump -p -vv -s 0 -w /sdcard/mycapture.pcap(網絡操做的log存入到/sdcard/mycapture.pcap下)軟件
tcpdump使用方法:
tcpdump [ -adeflnqtv] [ -c 數量 ] [ -F 文件名 ][ -i 網絡接口 ] [ -r 文件名] [-s snaplen ] [ -T 類型 ] [ -w 文件名 ] [表達式 ]
tcpdump選項介紹:
-a 將網絡地址和廣播地址轉變成名字;
-d 將匹配信息包的代碼以人們可以理解的彙編格式給出;
-dd 將匹配信息包的代碼以c語言程序段的格式給出;
-ddd 將匹配信息包的代碼以十進制的形式給出;
-e 在輸出行打印出數據鏈路層的頭部信息;
-f 將外部的Internet地址以數字的形式打印出來;
-l 使標準輸出變爲緩衝行形式;
-n 不把網絡地址轉換成名字;
-q 快速輸出,只輸出較少的協議信息;
-t 在輸出的每一行不打印時間戳;
-v 輸出一個稍微詳細的信息;
-vv 輸出詳細的報文信息;
-c 在收到指定包的數目後,tcpdump就會中止;
-F 從指定的文件中讀取表達式,忽略其它的表達式;
-i 指定監聽的網絡接口;
-r 從指定的文件中讀取包;
-s 從每一個分組中讀取最開始的snaplen個字節;
-T 將監聽到的包直接解釋爲指定類型的報文;
-w 直接將包寫入文件中,並不分析和打印出來;
5)執行網絡操做
以反做弊sdk報活日誌發送爲例:全新安裝搜狗輸入法→等待1min,發送報活日誌→更改手機時間,後調一天,發送報活日誌。該網絡操做完畢後,關閉DOS窗口便可中止。
6)將mycapture.pcap拷貝到電腦中,用Wireshark打開
Wireshark是一個網絡封包分析軟件。網絡封包分析軟件的功能是擷取網絡封包,並儘量顯示出最爲詳細的網絡封包資料。用wireshark能夠篩選出指定host的請求。