1. USB接口简介
通过监听USB接口流量,可获取键盘击键,鼠标移动与点击,存储设备的明文传输通信,USB无线网卡网络传输内容等。
2. 题目
wireshark打开数据包后发现为usb协议
USB协议数据部分在Leftover Capture Data域中,使用tshark命令将其单独提取出来
tshark -r udn.pcapng -T fields -e usb.capdata > usbdata.txt
cat命令查看分离出的usbdata.txt
cat usbdata.txt
由于USB流量分为键盘流量和鼠标流量,而键盘数据包的数据长度为八个字节,鼠标数据包的数据长度为四个字节。
键盘数据包击键信息集中在第三个字节,每次key stroke都会产生一个keyboard event usb packet。
鼠标数据包第一个字节代表按键,当取0×00时代表没有按键;当取0×01时代表按左键;当取0×02时代表当前按键为右键。第二个字节可看作为signed byte类型,其最高位为符号位,当值为正时,代表鼠标右移像素位;值为负时,代表鼠标左移像素位。第三个字节代表垂直上下移动的偏移。
此题为键盘数据包
友情链接USB协议,查找值与具体键位的对应关系:
http://www.usb.org/developers/hidpage/Hut1_12v2.pdf
根据第53页 usb keyboard映射表写脚本解码得出数据包
上脚本
mappings = { 0x04:"A", 0x05:"B",