首页 > 其他分享 >USB流量分析

USB流量分析

时间:2024-03-11 19:22:58浏览次数:37  
标签:分析 tshark 鼠标 流量 字节 Data USB

USB流量分析

对CTF中USB做个了断,先摆定义

USB是universalserial bus(通用串行总线)的缩写,是外部总线标准,通过对接口流量的监听,取得键盘敲击,鼠标移动与点击,存储设备的明文传输通信,USB无线网卡网络传输内容等等

lsusb命令

显示本机的USB设备列表及详细信息

BUS 002:指名设备连接哪条总线

Device 002:表明这是连接总线的第二台设备

ID :设备ID

VMware, Inc. Virtual Mouse:生产商名字和设备名

image-20240311130048130

tshark常用参数

-r:设置tshark分析的输入文件
-T:设置解码结果输出的格式,包括fileds,text,ps,psml和pdml,默认text
-e:导出协议字段
-Y:对应过滤的过滤条件
把tshark的`-e`(导出协议字段)放在了python 命令行参数里,适用下面两种情况灵活选择

若显示的是 HID Data

-e usbhid.data

若显示的是 Leftover Capture Data

-e usb.capdata

68747470733a2f2f63646e2e6e6c61726b2e636f6d2f79757175652f302f323032322f706e672f32323939393331392f313636363430363731333932322d35383435633636312d353131302d346462392d396631662d3230643962613465636332632e706e6723636c69656

68747470733a2f2f63646e2e6e6c61726b2e636f6d2f79757175652f302f323032322f706e672f32323939393331392f313636363430363735383530372d33613766306430302d353233392d346563342d613264352d3337643436643433626533332e706e6723636c69656

键盘流量

以往接触到的,USB协议数据部分在`Leftover Capture Data`域中,数据长度为`8`个字节。 击键信息集中在第`3`个字节,每次击键都会产生一个数据包。所以如果看到给出的数据包中的信息都是` 8 `个字节,并且只有第 3 个字节不为 `0000`,那么几乎可以肯定是一个键盘流量了。

image-20240311133928781

现在在比赛中常见的(2021国赛初赛有个例题),是这种,Leftover Capture Data——>HID Data 这个改变需要注意什么呢,需要注意tshark导出数据时的过滤器字段,看这个对应的过滤器字段,去wireshark的英文文档里找。

tshark -r 数据包文件 -T fields -e 过滤器字段

tshark -r demo.pcap -T fields -e usb.capdata
这个usb.capdata就是Leftover Capture Data的field name(字段名)
tshark -r demo.pcap -T fields -e usbhid.data
同样的,这个usbhid.data就是HID data的field name

鼠标流量

第一个字节代表按键,当取 0x00 时,代表没有按键、为 0x01 时,代表按左键,为 0x02 时,代表当前按键为右键。
第二个字节可以看成是一个 signed byte 类型,其最高位为符号位,当这个值为正(小于127)时,代表鼠标水平右移多少像素,为负(补码负数,大于127小于255)时,代表水平左移多少像素。
第三个字节与第二字节类似,代表垂直上下移动的偏移。
第四个是扩展字节,关于滚轮的操作记录
0 - 没有滚轮运动
1 - 垂直向上滚动一下
0xFF - 垂直向下滚动一下
2 - 水平滚动右键一下
0xFE - 水平滚动左键单击一下

鼠标发送 00 01 fc 00,表示鼠标右移 01 像素,垂直向下移动 124 像素

标签:分析,tshark,鼠标,流量,字节,Data,USB
From: https://www.cnblogs.com/yang-ace/p/18066856

相关文章

  • Java高并发讲解:守护线程——在源代码中分析setDaemon()
    Java高并发讲解:守护线程——在源代码中分析setDaemon()提出问题我们都知道Java线程分为主线程和守护线程,守护线程是需要手动指定的(setDaemon(true)......
  • ChatGLM3 源码分析(四)
    ChatGLMForSequenceClassificationclassChatGLMForSequenceClassification(ChatGLMPreTrainedModel):def__init__(self,config:ChatGLMConfig,empty_init=True,device=None):super().__init__(config)#NLabels:分类或者回归的标签数......
  • 河北稳控科技振弦采集仪在岩土工程应力分析中的应用及效果评估
    振弦采集仪在岩土工程应力分析中的应用及效果评估河北稳控科技振弦采集仪是一种常用于岩土工程中的应力分析工具。它通过测量岩土体中的应变波动情况,间接地推测出岩土体中的应力状态。振弦采集仪的应用能够提供岩土体中的应力分布情况,对于岩土体的工程设计和施工具有重要的指导作......
  • USB PHY
    USBPHY(USBPhysicalLayer)是USB(UniversalSerialBus)接口硬件设计中的一个重要组成部分,它负责实现USB协议的物理层功能。在USB通信过程中,PHY层负责将数据信号转换为适合传输的电信号,以及对接收到的电信号进行解码还原为数字数据。USBPHY主要包括以下功能:1.数据编码和解码:......
  • Kubernetes: kube-controller-manager 源码分析
    0.前言在Kubernetes架构中,controllermanager是一个永不休止的控制回路组件,其负责控制集群资源的状态。通过监控kube-apiserver的资源状态,比较当前资源状态和期望状态,如果不一致,更新kube-apiserver的资源状态以保持当前资源状态和期望状态一致。1.kube-controller-ma......
  • 网络流量监测分析,国产、高性能、高可用
        随着网络规模不断扩大,复杂程度不断增加,给运维工作带来更大挑战。为保障网络正常、稳定、高效运行,对网络流量进行监测、存储、回溯成为不可或缺的手段,通过对流量的分析,运维人员可以更加全面的了解整体网络的运行状态,快速定位、解决网络中存在问题。    智和信......
  • 第一期:分析一下新能源汽车充电桩行业的市场情况和痛点!
    1:政策环境自从我国提出“新基建”以来,充电基础设施产业也成为行业的话题与关注焦点。“十三五”期间,我国充电基础设施实现了跨越式发展,标准体系逐步完备,产业生态稳步形成。国务院《新能源汽车产业发展规划(2021—2035年)的通知》指出,到“十四五”末,我国电动汽车充电保障能力进......
  • 当利用数据分析和改进过头了怎么办?
    当利用数据分析和改进过头时,可能会出现几种情况:过度依赖数据:有时候,团队可能会过度依赖数据,忽视其他重要因素,如用户反馈、创意灵感等。这可能导致创新的缺失和决策的僵化。数据误解:有时候,数据分析可能会被错误地解释或应用。这可能会导致错误的结论和不良的决策。局限性:数据分析......
  • 最新二次注入攻击和代码分析技术
    二次注入攻击二次注入攻击的测试地址在本书第2章。double1.php页面的功能是添加用户。第一步,输入用户名test'和密码123456,如图4-45所示,单击“send”按钮提交。 图4-45  页面返回链接/4.3/double2.php?id=4,是添加的新用户个人信息的页面,访问该链接,结果如图4-46所示。......
  • Swoole 源码分析之 epoll 多路复用模块
    首发原文链接:Swoole源码分析之HttpServer模块大家好,我是码农先森。引言在传统的IO模型中,每个IO操作都需要创建一个单独的线程或进程来处理,这样的操作会导致系统资源的大量消耗和管理开销。而IO多路复用技术通过使用少量的线程或进程同时监视多个IO事件,能够更高效地处理大......