RVI(remote virtual interfacer)
通過victl使ios設(shè)備在Mac中建立一個虛擬網(wǎng)絡(luò)接口rvi寝蹈,再用Tcpdump李命,Wireshark、Charles箫老、Fiddler等對創(chuàng)建的接口進行抓包分析封字。
今對于tcp和udp協(xié)議的包使用此方法+tcpdump記錄一下:
首先需要將你的手機通過Usb進行與Mac連接。通過iTunes查找你的設(shè)備UDID:288ee5ef6c3f8a5b*
如何獲取你的設(shè)備UDID:
? 1. 打開iTunes軟件,點擊小手機圖標地方阔籽。
? 2. 點擊左邊菜單欄里面的摘要,出現(xiàn)設(shè)備信息笆制。
? 3. 點擊序列號,會自動更換UDID,ECID,型號標識符在辆。右擊拷貝即可獲取ios設(shè)備的UDID。
開啟虛擬網(wǎng)絡(luò)接口
ifconfig -l
rvictl -s 288ee5ef6c3f8a5b* # 結(jié)果: Starting device 288e* [SUCCEEDED] with interface rvi0
ifconfig -l # 對比兩次config -l 的結(jié)果棕叫,多出一個虛擬接口
開啟tcpdump進行監(jiān)聽
sudo tcpdump -i rvi0 -n -s 0 -w indump.pcap
# 必須使用sudo,否則權(quán)限校驗失敗
# -i 指定監(jiān)聽的接口
# -n 不做主機名解析
# -s len 設(shè)置數(shù)據(jù)包抓取的長度,默認65535字節(jié)
# -w filename 指定抓包數(shù)據(jù)到文件中
隨心所欲的在手機上操作(想抓包的操作)
操作完后記得關(guān)閉該虛擬接口
rvictl -x 288ee5ef6c3f8a5b* # 結(jié)果:Stopping device 288ee5ef6c3f* [SUCCEEDED]
得到抓取的包完残,進行分析。需要轉(zhuǎn)換
brew install tcpreplay # 通過tcprewrite進行轉(zhuǎn)換谨设,需要下載tcpreplay包
tcprewrite --dlt=enet --enet-dmac=00:11:22:33:44:55 --enet-smac=66:77:88:99:AA:BB --infile=indump.pcap --outfile=outdump.pcap
# --dlt 用enet以太網(wǎng)覆蓋輸出
# --enet-dmac 覆蓋目標以太網(wǎng)mac地址
# --enet-smac 覆蓋源以太網(wǎng)mac地址
# --infile 輸入的文件
# --outfile 輸出的文件