最近因需要,想要做一款 UPS 工具,用于 NAS 斷電保護(hù)功能,試了幾款USB抓包用的工具(本文從魚(yú)鷹課程倉(cāng)庫(kù)整理而來(lái)),在這里給有需要的道友一點(diǎn)參考。
為什么要抓包,是因?yàn)槟阋郧皼](méi)做過(guò)相關(guān)的協(xié)議,而市面上已經(jīng)有成品,另外在學(xué)習(xí)協(xié)議時(shí),也是非常不錯(cuò)的調(diào)試工具,特別是在解決 USB 協(xié)議bug問(wèn)題上有奇效,另外 HID 協(xié)議非常復(fù)雜,需要專門的工具幫忙解析數(shù)據(jù)。
USB 中文網(wǎng)
USB標(biāo)準(zhǔn)請(qǐng)求及描述符在線分析
https://www.usbzh.com/tool/usb.html
試了一下,不怎么好用。
推薦指數(shù) ★
USB Device Tree Viewer
試了一下,枚舉數(shù)據(jù)顯示的比較全面,但好像不支持抓包?如果只是為了分析已經(jīng)枚舉設(shè)備的數(shù)據(jù),那么還是挺不錯(cuò)的。
推薦指數(shù) ★★
USBPacketViewer
需要硬件支持,價(jià)格較貴,沒(méi)用過(guò),但根據(jù)網(wǎng)上流傳圖片,如果預(yù)算夠的話,比較適合分析 USB 協(xié)議。
推薦指數(shù)★★★
USBlyzer
USBlyzer 非常不錯(cuò)的工具(試用期 33 天),可惜很多人安裝后會(huì)把電腦所有 USB 搞掛(把原來(lái)的卸載就行,但是如果鼠標(biāo)不能用的話,也麻煩,筆記本自帶觸摸屏不受影響),魚(yú)鷹也不例外,但魚(yú)鷹找到一款 2.1 Build 39 可用。
支持抓包,支持 HID 分析,如果你有復(fù)雜的 HID 協(xié)議需要分析,那么它是非常不錯(cuò)的選擇。
推薦指數(shù)★★★☆
WireShark
支持動(dòng)態(tài)抓取枚舉時(shí)數(shù)據(jù)、枚舉后的數(shù)據(jù),但是在協(xié)議解析上,有些不足,并且它抓的是 URB 數(shù)據(jù),不是純 USB 數(shù)據(jù),因此不太適合解析,更適合連續(xù)長(zhǎng)時(shí)間抓包,但是看網(wǎng)上圖片,能顯示具體的 USB frame,不確定是否是版本原因,有了解的道友,可以留言討論一下。并且不僅支持 USB,網(wǎng)絡(luò)抓包才是它的特色。
推薦指數(shù)★★★☆
BusHound
老牌抓包工具,應(yīng)該是傳播最廣泛的工具了,功能全面,魚(yú)鷹最初用它抓 USB 串口數(shù)據(jù)是真的方便,可以用它分析串口數(shù)據(jù)。并且根據(jù)網(wǎng)上了解,它還支持發(fā)送數(shù)據(jù)。但抓枚舉過(guò)程的數(shù)據(jù)魚(yú)鷹倒是沒(méi)試過(guò)。安裝后有個(gè)小坑就是,一定要設(shè)置抓包長(zhǎng)度,否則你會(huì)以為數(shù)據(jù)長(zhǎng)度不對(duì)。
推薦指數(shù)★★★★
邏輯分析儀
如果你有帶寬高的邏輯分析儀(硬件設(shè)備),又擁有強(qiáng)大的解析協(xié)議的上位機(jī),那么在抓包上還是很合適的,通信過(guò)程一目了然,特別適合 USB 入門學(xué)習(xí)。這里魚(yú)鷹使用金沙灘的。
但是由于支持 USB 協(xié)議的分析儀價(jià)格較高,同時(shí)在長(zhǎng)時(shí)間抓包(存儲(chǔ)空間有限)和數(shù)據(jù)分析(會(huì)抓所有包,包括 Nak 和 Frame 的)上,不是那么方便,所以長(zhǎng)期抓包上不如前面的純軟件方案。
推薦指數(shù)★★★★☆
你還用過(guò)哪些好用的 USB 抓包工具,不如討論一番。