USBHound驱动开发笔记
+ -

UVC摄像头BUSHOUND抓包与UBSHOUND抓包所在的层次

2022-08-15 6 0

USBHOUND为USBCCGP.SYS的下层过滤驱动程序。
当上层USBVIDEO.SYS下发UVC特定类请求时,设备栈如下:

 # Child-SP          RetAddr           Call Site
00 ffffcc81`0f567d40 fffff801`0c701ce8 USBHound!UsbUrbFilter+0x56 [F:\USBHound\USBHound\usb.c @ 293] 
01 ffffcc81`0f567db0 fffff801`0c703285 USBHound!FilterDispatchIo+0x1a8 [F:\USBHound\USBHound\filter.c @ 83] 
02 ffffcc81`0f567e20 fffff801`07b1169e USBHound!DispatchIo+0x35 [F:\USBHound\USBHound\usbzh.c @ 72] 
03 ffffcc81`0f567e60 fffff801`07b114d4 usbccgp!DispatchPdoUrb+0x16e
04 ffffcc81`0f567f80 fffff801`07b111b1 usbccgp!DispatchPdoInternalDeviceControl+0x84
05 ffffcc81`0f567fe0 fffff801`052e27c9 usbccgp!USBC_Dispatch+0x1b1
06 ffffcc81`0f5680a0 fffff801`052e2ead bhound7+0x27c9
07 ffffcc81`0f5680d0 fffff801`052e288f bhound7+0x2ead
08 ffffcc81`0f568100 fffff801`075b456f bhound7+0x288f
09 ffffcc81`0f568130 fffff801`075b471f usbvideo!USBVideoCallUSBD+0xd7
0a ffffcc81`0f5681d0 fffff801`075b484c usbvideo!SubmitUSBVideoClassRequest+0xf7
0b ffffcc81`0f568210 fffff801`075badc2 usbvideo!GetSetInterfaceControl+0xec
0c ffffcc81`0f5682a0 fffff801`075bc326 usbvideo!NegotiateVideoStreamParameters+0xa6
0d ffffcc81`0f568300 fffff801`09315911 usbvideo!USBVideoPinCreate+0x566
0e ffffcc81`0f5683d0 fffff801`093306f7 ks!KspCreate+0x131
0f ffffcc81`0f568430 fffff801`09333f0b ks!CKsPin::Init+0x5db
10 ffffcc81`0f568520 fffff801`0932a8c6 ks!KspCreatePin+0x107
11 ffffcc81`0f5685a0 fffff801`09313047 ks!CKsFilter::DispatchCreatePin+0x136
12 ffffcc81`0f568610 fffff801`09312e99 ks!DispatchCreate+0x147
13 ffffcc81`0f568670 fffff801`0d701523 ks!CKsDevice::DispatchCreate+0xc9
14 ffffcc81`0f5686c0 fffff801`10cac9ff ksthunk!CKernelFilterDevice::DispatchIrp+0x16b
15 ffffcc81`0f568720 fffff801`10c4bacb nt!IopParseDevice+0x168f
16 ffffcc81`0f568910 fffff801`10cc01bf nt!IopParseFile+0xc7
17 ffffcc81`0f568980 fffff801`10cf499d nt!ObpLookupObjectName+0x8af
18 ffffcc81`0f568b50 fffff801`10d14bb0 nt!ObOpenObjectByNameEx+0x1dd
19 ffffcc81`0f568c90 fffff801`10d14339 nt!IopCreateFile+0x860
1a ffffcc81`0f568d40 fffff801`10985703 nt!NtCreateFile+0x79
1b ffffcc81`0f568dd0 00007ffc`155d65b4 nt!KiSystemServiceCopyEnd+0x13

0 篇笔记 写笔记

BusHound的使用方法详解
在开始菜单日运行Bus Hound软件,将USB设备插入电脑U口。如图所示,进入”Devices”目录,在”Devices”内选择要监听的设备。例如:我的设备置是一个U盘,则装置为USB大容量储存设备,点选”USB大容量储存设备”图示,可以在下面的”Properties”图框内看到设备的设备树及设备......
HID键盘设备数据抓包分析实践
本文使用 Bus Hound 工具对 USB HID 设备数据包进行分析,并结合官方手册及网上文章进行整理。在进行数据分析前,我们先回顾一下USB相关的基础知识。USB描述符USB 主机是通过各种描述符来识别设备的,有设备描述符,接口描述符,端点描述符,字符描述符,报告描述符(HID)等。和普通的U......
关于UVC摄像头指示灯的调试过程总结
最近遇到了一个很是奇怪的UVC摄像头指示灯问题,现象如下:上层应用是一个会议系统软件,当需要进行会议时,点击会议按钮添加会议。这时应用软件打开摄像头,并开始与服务器进行网络连接。当然由于摄像头的打开,摄像头指示灯点亮。上层应用软件与服务器连接后,进行会议界面。这时突然摄像头指示灯熄灭,但会议正常,摄......
BusHound简介及安装
BusHound简介BusHound软件是由美国perisoft公司研制的一种专用于PC机各种总线数据包监视和控制的开发工具软件,其名“hound”的中文意思为“猎犬”,即指其能敏锐地感知到总线的丝毫变化。Bus Hound是一个超级软件总线协议分析器,用于捕捉来自设备的协议包和输入输出操作,其优......
BusHound设备窗口
使用BusHound进行数据抓包,抓包的目标为设备。BusHound提供了一个类似设备管理器的窗口,以树形的方式显示。设备树主要包括SCSI设备树和Usb设备树。设备IDBusHound为每个显示在设备窗口中的设备树分配一个ID,这个ID在设备窗口树列表中,设备名前中括号中的数字为设备ID.点击设备......
UVC 描述符实例
通过BUSBOUND抓取USB摄像头插入电脑时的数据信息,这里只是选报设备描述符和接口描述符信息Device Phase Data Description Cmd.Phase.Ofs(rep)------ ----- ----------......
BUSHOUND抓包stall pid的USTS c0000004错误
对USB设备进行数据分析,使用最多的也就是BUSHOUND了,不过经常遇到一个问题就是 USTS c0000004 stall pid 错误。USTS c0000004 stall pid在本站中搜......
手动分析使用BUSHOUND抓取同步传输的URB
BUSHOUND大家太熟了,使用它来进行数据抓包那不太太方便。但在BUSHOUND的抓取配置项中,有一个叫了URB的东西,我相信大家都没有选中过,因为一般来说,对WINDOWS USB驱动开发人员来说都不一定有用,更何况大家也只是用来抓取一下几个数据的输入输出,更没有必要进行USB的分析了。本人今天......
使用BUSHOUND手动分析USB控制传输的URB
USB的控制传输是最基本的传输类型,控制传输适用于设备的枚举和设备的状态控制。我里我们使用BUSHOUND来抓取USB控制传输的URB。同样的,我们使用的操作系统是Windows10 x64,和同步传输的URB抓包一样,我们先抓取数据,然后再分析数据结构。这里我插入电脑的U盘的枚举以获取设备描述符为......
使用BUSHOUND手动分析USB批量传输的URB
使用BUSHOUND抓取U盘的批量传输的URB数据,我们对其其进行数据分析:13 IN 55 53 42 53 40 0b ac 57 00 00 00 00 00 URB80 00 09 00 00 00 00 00 d8 f2 75 a0 77 7f 00 00 ......
作者信息
USB中文网
B站搜索 站长漫谈 看视频。
pnpon内核开网,USB中文网,
busrom硬核技术网站长
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!