首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

深入理解USB流量数据包的抓取与分析

0x01 问题提出 在一次演练中,我们通过wireshark抓取了一个如下的数据包,我们如何对其进行分析? ? 0x02 问题分析 流量包是如何捕获的?...首先我们从上面的数据包分析可以知道,这是个USB的流量包,我们可以先尝试分析一下USB数据包是如何捕获的。 在开始前,我们先介绍一些USB的基础知识。...没有错,就是我刚刚让大家记下来的,这个X的数字就是对应这USB Bus。在本文中是usbmon0。打开他就可以观察数据包了。 ?...键盘数据包的数据长度为8个字节,击键信息集中在第3个字节,每次key stroke都会产生一个keyboard event usb packet。...鼠标数据包的数据长度为4个字节,第一个字节代表按键,当取0x00时,代表没有按键、为0x01时,代表按左键,为0x02时,代表当前按键为右键。

4.3K20

对atbus的小数据包的优化

,其实使用共享内存通道的时候,性能已经足够不错了,但是对于使用tcp的时候,特别是小数据包其实QPS不是很高。...但是对于网络通道的小数据包,读写都落后tbus很多 优化分析 然后因为我看不到tbus的源码,就只能是分析tbus的压力测试结果了。...可以很明显的看到从大数据包到小数据包,tbus的整个吞吐量变化非常小,所以猜测tbus可能做了小包合并。 而且很明显在atbus里出现小包时,QPS上升的同时对uv_write调用的次数也变多了。...我希望能多一些这个第一个包接收的量,因为在游戏服务器中,虽然大多数情况是小数据包,但是超过512字节还是比较容易的。...另一方面3KB也覆盖大多数数据包大小了。 如果说这个参数不够好或者在一些特别的机器上需要大量连接且内存吃紧,也可以缩减这个值。

6.8K20
您找到你想要的搜索结果了吗?
是的
没有找到

Bus Hound一个强大的总线分析工具,抓USB转串口数据包

1、前言 Bus Hound是一款强大的总线分析工具,支持USB、NVMe、火线、SATA等设备,本文使用Bus Hound抓USB转串口数据。...2、设备选择 首先选择“Devices”,然后选择USb-SERIAL CH340[COM17],本文使用的USB转串口是COM17。...3、抓包设置 选择“Settings” 在“Limits”中设置最大数据包速率,和最大包长; 在“Column to Display”中设置显示,这里我们设置显示数据包长度、输入输出、数据(hex格式)...可以看出,串口有数据后,软件抓取了每一条数据,也按照设置显示了每条数据包的属性,本文抓包的正是一个串口y-modem升级的数据包,作者在串口y-modem升级异常的时候,正是通过这个抓包分析的。

4K20

【教程】checkra1n越狱教程+常用插件推荐

checkra1n越狱发布也有一段时间了,今天让我们回顾一下 本篇文章前半部分主要写Linux+安卓手机引导越狱,后半部分写一下常用的插件 重要:越狱骨灰级玩家请忽略本篇文章,篇幅较长,大约2500+字...模拟器64位:x86_64 真机32位:armv7、armv7s 真机64位:arm64,arm64e 言归正传,教程继续(下面教程是以Ubuntu的虚拟机继续) 重要:建议直接装系统,虚拟机可能会导致usb...这里不放工具了,自行去搜索 大概过程是:下载镜像,写入u盘,改电脑启动项,输入命令进行越狱 安卓手机篇 首先手机需要完整的root权限(可以通过刷面具来实现),安卓手机需要支持otg 建议用otg线链接usb-a...checkra1n.bin完整读写运行权限 第五行命令:运行checkra1n.bin 这里小编的个人建议(仅是个人看法,可能并不正确) 安卓手机建议电量充足,因为要进行数据传输,低电量可能会导致电压电流不够,导致usb...报错 建议用OTG+AL(usb-a对lighting线,自带5W充电那个) 成功率不如Linux篇方法一成功率高 越狱教程到此完毕 常用插件篇 重要:下面按照小编手机上经常用到的插件来写(并不是小编手机全部插件

8.8K20

【STM32F429】第8章 学习USB协议栈前要了解的基础知识

USB等时数据流分配了USB带宽的专用部分,确保按所需的速率传送数据。同步管道在每个帧中发送一个新的数据包,而不管最后一个包的成功或失败。...批量端点数据的最大数据包大小为: 全速USB支持8、16、32或64字节。 高速USB支持512字节。...数据在数据包(Data Packet)中传输。 事务的最终状态在握手数据包(Handshake Packet)中确认。 在事务中,数据从USB主机传输到USB设备,反之亦然。...8.7.8 包(Packets) 每个数据包以当前传输速率传输整数个字节。数据包以同步模式开始,然后是数据包的数据字节,最后以数据包结束(EOP)信号结束。...所有USB数据包模式都首先发送最低有效位。在数据包之前和之后,总线处于空闲状态。 特殊的数据包是帧开始数据包(SOF),它将USB总线分为多个时间段。每个管道在每个帧中分配一个插槽。

1.9K20

【STM32F429】第4章 ThreadX USBX协议栈基础知识

USB等时数据流分配了USB带宽的专用部分,确保按所需的速率传送数据。同步管道在每个帧中发送一个新的数据包,而不管最后一个包的成功或失败。...批量端点数据的最大数据包大小为: 全速USB支持8、16、32或64字节。 高速USB支持512字节。...数据在数据包(Data Packet)中传输。 事务的最终状态在握手数据包(Handshake Packet)中确认。 在事务中,数据从USB主机传输到USB设备,反之亦然。...4.7.8 包(Packets) 每个数据包以当前传输速率传输整数个字节。数据包以同步模式开始,然后是数据包的数据字节,最后以数据包结束(EOP)信号结束。...所有USB数据包模式都首先发送最低有效位。在数据包之前和之后,总线处于空闲状态。 特殊的数据包是帧开始数据包(SOF),它将USB总线分为多个时间段。每个管道在每个帧中分配一个插槽。

60710

【STM32F407】第8章 学习USB协议栈前要了解的基础知识

USB等时数据流分配了USB带宽的专用部分,确保按所需的速率传送数据。同步管道在每个帧中发送一个新的数据包,而不管最后一个包的成功或失败。...批量端点数据的最大数据包大小为: 全速USB支持8、16、32或64字节。 高速USB支持512字节。...数据在数据包(Data Packet)中传输。 事务的最终状态在握手数据包(Handshake Packet)中确认。 在事务中,数据从USB主机传输到USB设备,反之亦然。...8.7.8 包(Packets) 每个数据包以当前传输速率传输整数个字节。数据包以同步模式开始,然后是数据包的数据字节,最后以数据包结束(EOP)信号结束。...所有USB数据包模式都首先发送最低有效位。在数据包之前和之后,总线处于空闲状态。 特殊的数据包是帧开始数据包(SOF),它将USB总线分为多个时间段。每个管道在每个帧中分配一个插槽。

69311

【STM32H7】第4章 ThreadX USBX协议栈基础知识

USB等时数据流分配了USB带宽的专用部分,确保按所需的速率传送数据。同步管道在每个帧中发送一个新的数据包,而不管最后一个包的成功或失败。...批量端点数据的最大数据包大小为: 全速USB支持8、16、32或64字节。 高速USB支持512字节。...数据在数据包(Data Packet)中传输。 事务的最终状态在握手数据包(Handshake Packet)中确认。 在事务中,数据从USB主机传输到USB设备,反之亦然。...4.7.8 包(Packets) 每个数据包以当前传输速率传输整数个字节。数据包以同步模式开始,然后是数据包的数据字节,最后以数据包结束(EOP)信号结束。...所有USB数据包模式都首先发送最低有效位。在数据包之前和之后,总线处于空闲状态。 特殊的数据包是帧开始数据包(SOF),它将USB总线分为多个时间段。每个管道在每个帧中分配一个插槽。

64420

【STM32H7】第8章 学习USB协议栈前要了解的基础知识

USB等时数据流分配了USB带宽的专用部分,确保按所需的速率传送数据。同步管道在每个帧中发送一个新的数据包,而不管最后一个包的成功或失败。...批量端点数据的最大数据包大小为: 全速USB支持8、16、32或64字节。 高速USB支持512字节。...数据在数据包(Data Packet)中传输。 事务的最终状态在握手数据包(Handshake Packet)中确认。 在事务中,数据从USB主机传输到USB设备,反之亦然。...8.7.8 包(Packets) 每个数据包以当前传输速率传输整数个字节。数据包以同步模式开始,然后是数据包的数据字节,最后以数据包结束(EOP)信号结束。...所有USB数据包模式都首先发送最低有效位。在数据包之前和之后,总线处于空闲状态。 特殊的数据包是帧开始数据包(SOF),它将USB总线分为多个时间段。每个管道在每个帧中分配一个插槽。

64120

【STM32F407】第4章 ThreadX USBX协议栈基础知识

USB等时数据流分配了USB带宽的专用部分,确保按所需的速率传送数据。同步管道在每个帧中发送一个新的数据包,而不管最后一个包的成功或失败。...批量端点数据的最大数据包大小为: 全速USB支持8、16、32或64字节。 高速USB支持512字节。...数据在数据包(Data Packet)中传输。 事务的最终状态在握手数据包(Handshake Packet)中确认。 在事务中,数据从USB主机传输到USB设备,反之亦然。...4.7.8 包(Packets) 每个数据包以当前传输速率传输整数个字节。数据包以同步模式开始,然后是数据包的数据字节,最后以数据包结束(EOP)信号结束。...所有USB数据包模式都首先发送最低有效位。在数据包之前和之后,总线处于空闲状态。 特殊的数据包是帧开始数据包(SOF),它将USB总线分为多个时间段。每个管道在每个帧中分配一个插槽。

63020

爬虫遇到 Socket,莫慌,肝就完了!

Wireshark 基础 Wireshark 是一个功能非常强大的数据流截取工具,不仅能监测 HTTP(S) 请求,还能监测 TCP/UDP 请求,OSI 七层模型上的数据基本上都能被抓取到 2-1...tcp # 2.通过端口号过滤 # 显示源或者目标协议为tcp,并且端口号为80的数据包 tcp.port == 80 # 2.1 显示源协议名称为tcp,端口号为80的数据包 tcp.srcport...== 80 # 2.2 显示目标协议名称为tcp,端口号为80的数据包 tcp.dstport == 80 # 3.ip地址过滤 # 显示源ip地址或者目标ip地址满足条件的数据包 ip.addr...== 192.168.1.101 # 3.1 显示源ip地址满足条件的数据包 ip.src == 192.168.1.101 # 3.2 显示目标ip地址满足条件的数据包 ip.dst == 192.168.1.101...对于移动端 Socket 通讯的数据抓取,如果是 PC,可以将本机作为热点开放出去,然后手机连接热点,wireshark 选择对应的网络端口进行抓包即可 而对于 Mac,建议打开网络共享后,将手机使用 USB

76921

硬件笔记(7)----USB学习笔记4

9、通讯协议 从时间角度来看,USB 通信由一系列帧构成。每一帧都有一个帧开始(SOF),随后是一个或多个数据操作。每一个数据操作都由一系列数据包构成。...全速设备的USB SOF传输 数据数据包:随后 IN、OUT 和 SETUP 令牌数据包所发送的数据包。加载数据的尺寸会因传输类型的不同而异,该尺寸范围为 0 到 1024 字节。...USB数据数据包 在每一个数据数据包成功传输后,主机和设备将对数据切换进行相应的更新。数据切换的优点在于它可作为附加的错误检测方法。...数据切换示例 握手数据包:握手数据包指示数据操作的结束。每个握手数据包都带有一个 8 位数据包 ID,并由传输中的接收方发送。每一种 USB 速度都有不同的握手数据包响应选项。...(LS/FS/HS) NYET:表示设备当前未能接收其他数据数据包。(仅 HS) ? 握手数据包的指示 特殊数据包USB 规范定义了四种特殊数据包

72310

USB协议简介「建议收藏」

(Handshake) Packet 不同类型包,以上的组成部件有所不同 PID: 这里只用(PID0~4),PID4~7是PID0~4的取反,用来校验PID PID1~0:01 令牌包、11 数据包...输出(OUT)令牌包:用来通知设备将要输出一个数据包 输入(IN)令牌包:用来通知设备返回一个数据包 建立(SETUP)令牌包:只用在控制传输中,和输出令牌包作用一样,也是通知设备将要输出一个数据包...,两者区别在于: SETUP令牌包后只使用DATA0数据包,且只能发送到设备的控制端点,并且设备必须要接收,而OUT令牌包没有这些限制 例子: 四种Packet类型之SOF Packet 帧起始包...如果此时有地址和端点匹配的设备,并且没有检测到错误,则该设备作出反应:设备有数据需要返回,就将一个数据包放在总线上;如果没有数据需要返回,设备返回NAK响应主机;如果该端点处于挂起状态,设备返回STALL...如果主机收到设备发送的数据包并解码正确后,使用ACK握手包应答设备。如果主机检测到错误,则不做任何响应,设备会检测到超时。注意:USB协议规定,不允许主机使用NAK来拒绝接收数据包

1.3K20

USB协议基本知识

:分为DATA0包和DATA1包,当USB发送数据的时候,当一次发送的数据长度大于相应端点的容量时,就需要把数据包分为好几个包,分批发送,DATA0包和DATA1包交替发送,即如果第一个数据包是 DATA0...2.2.2、包 USB数据包的格式如下: 由域构成的包有四种类型,分别是令牌包、数据包、握手包和特殊包,前面三种是重要的包,不同包的域结构不同,介绍如下:...2.3、标准的USB设备请求命令 标准的USB设备请求命令是用在控制传输中的“初始设置步骤”里的数据包阶段(即DATA0,由八个字节构成)。...USB 采用“令牌包”-“数据包”-“握手包”的传输机制,在令牌包中指定数据包去向或者来源的设备地址和端点(Endpoint),从而保证了只有一个设备对被广播的数据包/令牌包作出响应。...USB 采用轮询的广播机制传输数据,所有的传输都由主机发起,任何时刻整个 USB 体系内仅允许一个数据包的传输,即不同物理传输线上看到的数据包都是同一被广播的数据包

2.1K20

记一道USB流量分析CTF题

拿到数据包使用wireshark打开后看到Protocol 为USB协议,搜到了一篇关于USB流量分析的文章 贴链接 从CTF中学USB流量捕获与解析 下面看题 USB协议的数据部分在Leftover...fields -e usb.capdata > usbdata.txt 运行命令并查看usbdata.txt 发现数据包长度为八个字节 这里查到USB流量分为键盘流量和鼠标流量。...键盘数据包的数据长度为8个字节,击键信息集中在第3个字节,每次key stroke都会产生一个keyboard event usb packet。...这里数据包长度是八个字节显然为键盘数据包 网上查找USB协议的文档,可以找到这个值与具体键位的对应关系http://www.usb.org/developers/hidpage/Hut1_12v2.pdf...第53页有usb keyboard的映射表 根据这个映射表有写脚本解码得出的数据包 贴脚本 mappings = { 0x04:"A", 0x05:"B", 0x06:"C", 0x07

95520

硬件笔记(6)----USB学习笔记3

8、USB端点 根据 USB 规范,设备端点是 USB 设备中一个独特的可寻址部分,它作为主机和设备间通信流的信息源或库。USB 枚举和配置一节介绍了设备向默认地址做出响应的步骤。...如果两者匹配失败,便不会发出任何握手数据包。在这种情况下,发送方将重新发送数据。 USB 规范定义了四种端点,并根据类型以及所支持的设备速度限制了数据包的尺寸。...中断端点的数据包最大尺寸与设备的速度相关。高速设备支持最大为 1024 字节的数据包。全速设备支持最大为 64 字节的 数据包。低速设备支持最大 为 8 字节的数据包。...批量端点的数据包最大尺寸与设备速度相关。高速设备支持最大为 512 字节的数据包。全速设备支持最大为 64 字节的数据包。低速设备不支持批量传输。...高速设备支持最大为 1024 字节的数据包。全速设备支持最大为 1023 字节的数据包。低速设备不支持同步传输。有关同步传输,请注意一些重点内容。

1.2K30
领券