在Mac上嗅USB流量?

vy3*_*y32 20 macos usb

有没有办法嗅到Mac上的USB端口?我看过libusb#usblib,但我找不到任何适用于Mac的东西.

Ras*_*spu 14

我找到了一种方法,你需要Wireshark的每晚构建(我使用的是V2.5.0rc0).安装后,您需要打开USB"界面":

sudo ifconfig XHC20 up
Run Code Online (Sandbox Code Playgroud)

之后,您可以使用wireshark来嗅探XHC20界面中的所有流量.完成后,请记得关闭界面:

sudo ifconfig XHC20 down
Run Code Online (Sandbox Code Playgroud)

资料来源:aud-ios.

  • 注意:这需要macOS 10.13(High Sierra).它不适用于macOS 10.12.6或更早版本. (4认同)
  • 我最近用 10.13 High Sierra 和一台 7 年前的 MacBook 进行了尝试。没有XHC20接口。但经过一番侦查,我发现“EHC36”和“EHC38”接口是 USB 接口,并且我能够使用“Wireshark”和“tcpdump -i EHC38”从它们捕获 USB 流量 (2认同)

Dav*_* K. 5

安装IOUSBFamily日志时要小心.它在几年内没有更新.OS X版本必须匹配,否则包括内置触摸板/键盘在内的所有USB设备都无法正常工作.如果确实发生这种情况,您必须手动从恢复中重新加载正确的kext:

https://discussions.apple.com/message/20152486#20152486

以下是从恢复中重新加载的步骤:

从我的机器上的错误操作系统版本安装USB Prober后,我遇到了同样的问题.它安装没有任何警告,但事实证明这包括IOSUSBFamily.kext内核模块,它不能在我的机器上工作,这会禁用所有USB设备(包括笔记本电脑自己的键盘和触控板).

这是我如何修理它,但请小心不要破坏你的机器:

1)按住CTRL + R并打开机器,这将启动进入"恢复模式"

2)打开终端

3)找出原始IOUSBFamily内核扩展和Macintosh HD上的内核扩展.我在这里:

原文:/System/Library/Extensions/IOUSBFamily.kext

新的(坏的):/ Volumes/Macintosh\HD/System/Library/Extensions/IOUSBFamily.kext

4)将损坏的模块移开:

$ mkdir /Volumes/Macintosh\ HD/Users/recovery-backup
$ mv /Volumes/Macintosh\ HD/System/Library/Extensions/IOUSBFamily.kext /Volumes/Macintosh\ HD/Users/recovery-backup
Run Code Online (Sandbox Code Playgroud)

5)复制原件:

$ cp -a /System/Library/Extensions/IOUSBFamily.kext /Volumes/Macintosh\ HD/System/Library/Extensions/IOUSBFamily.kext
Run Code Online (Sandbox Code Playgroud)

重新启动它应该修复.