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

在Ubuntu20.04上读取(Wireshark) USB按键的LiveCapture到python中?

在Ubuntu 20.04上读取USB按键的LiveCapture到Python中,可以通过以下步骤实现:

  1. 安装Wireshark:Wireshark是一款网络封包分析软件,可以帮助我们捕获和分析网络数据包。在终端中运行以下命令安装Wireshark:
代码语言:txt
复制
sudo apt update
sudo apt install wireshark
  1. 设置Wireshark权限:为了能够以非root用户运行Wireshark,我们需要将当前用户添加到wireshark用户组中。在终端中运行以下命令:
代码语言:txt
复制
sudo usermod -aG wireshark $USER

然后重新登录系统。

  1. 使用Wireshark捕获USB按键数据包:打开Wireshark,选择适当的网络接口进行捕获。在"Capture"菜单中选择"Start"开始捕获数据包。
  2. 分析捕获的数据包:Wireshark会显示捕获的数据包列表。通过筛选和分析,找到与USB按键相关的数据包。
  3. 将捕获的数据包导出到文件:在Wireshark中,选择"File"菜单中的"Export Packet Dissections",选择合适的格式(如PCAP)导出捕获的数据包到文件。
  4. 使用Python读取导出的数据包:在Python中,可以使用第三方库如pysharkscapy来读取导出的数据包文件。这些库提供了API来解析和处理网络数据包。

以下是一个简单示例,使用pyshark库读取导出的PCAP文件中的USB按键数据包:

代码语言:txt
复制
import pyshark

# 打开捕获文件
capture = pyshark.FileCapture('捕获文件.pcap', display_filter='usb')

# 遍历数据包
for packet in capture:
    # 处理USB按键数据包
    if 'usb' in packet:
        # 在这里编写你的处理逻辑
        # 例如,可以打印USB按键信息
        print(packet.usb.capdata)

# 关闭捕获文件
capture.close()

注意:在上述示例中,'捕获文件.pcap'应替换为你导出的实际文件名。

这是一个基本的流程,帮助你在Ubuntu 20.04上将USB按键的LiveCapture读取到Python中。根据具体需求,你可以进一步扩展和优化处理逻辑。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Pyshark:使用了WirdShark的Python数据包解析工具

Pyshark Pyshark是一款针对tshark的Python封装器,在Pyshark的帮助下,广大研究人员可以使用wireshark的解析器来进行Python数据包解析。...扩展文档:【Pyshark】 虽然目前社区也有多款针对Python包的解析模块,但Pyshark与它们不同的是,它本身并不会解析任何数据包,它只会使用tshark的功能(Wireshark命令行实用工具...setup.py install Mac OS X 在macOS上,你可能还需要安装libxml,如果你在运行clang命令时遇到了错误,或系统弹出了关于libxml的错误,你就需要运行下列命令了:...xcode-select--install pip install libxml 工具使用 从捕捉到cap文件中读取解析内容: >>>import pyshark >>>cap = pyshark.FileCapture...version 2); paramdecryption_key: 用于加密和解密捕捉流量的密钥; paramencryption_type: 捕捉流量中的标准加密('WEP', 'WPA-PWD', 或

6.8K00

USB流量在CTF中的解析思路

在CTF中,USB流量分析主要以键盘和鼠标流量为主。...我们重点分析USB协议的数据部分,其中包含了USB的信息,数据主要分布在USB协议中的Leftover Capture Data域,对于不同类型的流量,其数据长度会有区别。...) 0x02 键盘流量解析思路 • 首先我们需要借助wireshark的命令行工具tshark,提取USB协议中Leftover Capture Data域数据信息,通过usb.capdata即可获取...”,将 USB HID 协议禁用即可: 若不禁用,可以在 kali 中用另一种方式用指令过滤(会比分开手动导出方便一点)(上面脚本中os调用的指令,windows命令行是可以直接执行的) tshark...同上述方法,导出鼠标流量 usbdata3.txt,修改字节长度为4,保存到 usbdata4.txt,随后将文件重命名为 usb.dat,注释掉脚本中43行到46行的代码,并将此数据文件和usbMiceDataHacker.py

8910
  • 原创 Paper | USB设备开发:从入门到实践指南(一)

    不过由于Wireshark是抓取主机控制器上的流量,而一个USB主机控制器可以连接多个USB设备,所以当我要研究某一个USB设备时,需要通过Wireshark的过滤表达式对该主机控制器上的其他USB设备的流量进行过滤...然后开始把wireshark能捕获的流量地址都给过滤掉,这些都不属于树莓派的USB流量,如图6所示,是本文环境中的过滤语法: 图6:Wireshark过滤语法 然后在树莓派上以root权限运行上面提供的...,在配置描述符的响应包里,除了配置描述符的信息,还包含了接口描述符,端点描述符,并且因为USB键盘注册的是一个USB HID设备,所以在配置描述符中还包含着HID描述符,如图14所示: 图14:Wireshark...,如图16所示: 图16:Wireshark中查看接口描述符 再查看USBTree View上的接口描述符信息,如图17所示: 图17:USB Tree View中查看接口描述符 在接口描述符中,字段的含义如下所示...上查看捕获到的端点描述符的信息,如图19所示: 图19:Wireshark中查看端点描述符 在端点描述符中定义了端口号,和该端口的方向,还有使用该端口进行通信的方式(上图中定义的通信方式为中断传输),通信数据包的最大尺寸

    2K00

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

    0x01 问题提出 在一次演练中,我们通过wireshark抓取了一个如下的数据包,我们如何对其进行分析? ? 0x02 问题分析 流量包是如何捕获的?...上图是我在虚拟机环境下连接在我电脑上的USB设备列表,通过lsusb查看命令。 例如说,我在VMware下有一个无线鼠标。它是属于HID设备。...在本文中是usbmon0。打开他就可以观察数据包了。 ? 通过这些,我们可以了解到usb设备与主机之间的通信过程和工作原理,我们可以来对流量包进行分析了。 如何去分析一个USB流量包?...wireshark的环境下,在wireshark目录下有个tshark.exe,比如我的在D:\Program Files\Wireshark\tshark.exe ?...就是flag{JHAWLZKEWXHNCDHSLWBAQJTUQZDXZQPF} 0x03 资源下载 本文涉及到的所有项目链接全部放在Github上: https://github.com/AngelKitty

    5K20

    一、基本原理

    ; 对照表(在pdf附件内53页) 二、例题和技巧 例题一(键盘.pcapng): 使用wireshark打开后,发现全部为USB的流量,往下看后发现在第3字节有数据,而且是隔着有的,就确定了为USB...即可使用对照表即可得出每个数据的对于键盘值:结果为:c3ting 但是在输入多个键位时,时间上来不急这样慢慢的一个个分析,我们可以导出数据结果后,使用python进行对比转换(在例题二中展示) 例题二(...键盘2.pcapng): 同样的使用wireshark打开后,发现全部为USB的流量,往下看后发现在第3字节有数据,而且是隔着有的,就确定了为USB键盘流量题,根据抓包出来的结果可以使用usb.capdata...,可以在wireshark的filter语法上查看;在wireshark的视图->过滤器视图,在这一栏点击表达式,就会列出来对所有协议的支持。   ...-Y: -Y ,使用读取过滤器的语法,在单次分析中可以代替-R选项;   -n: 禁止所有地址名字解析(默认为允许所有)   -N: 启用某一层的地址名字解析。

    20610

    USB流量知识点小结

    前言 USB流量的捕获可以使用wireshark或usbpcap来进行,在ctf中通常会给出已经捕获好的流量包,而我们需要做的便是从流量包中还原捕获的数据。USB流量分为两大类:键盘流量和鼠标流量。...键盘流量 附件链接:https://pan.baidu.com/s/1aJ_EDTqpUJht7Mpybnw5zQ 提取码:zuqw 注:以下内容以附件中的题为例 USB协议的数据部分在Leftover...Capture Data域中,用wireshark打开流量包 在蓝色部分可以看到这个区域,右键→应用为列,即可在上面显示出来这一列 键盘流量的数据长度为8个字节,其中有关击键的信息在第三字节(十六进制表示...wireshark的版本相关),但是一般的脚本都会按照有冒号的数据来识别,有冒号时提取数据的[6:8],无冒号时数据在[4:6],可以用脚本来加上冒号 f=open('usbdata.txt','r')...(没有冒号可用上面提到过的脚本加上),得到 在鼠标流量数据中,第一字节代表按键,当取0x00时代表没有按键,取0x01时代表按左键,取0x02时代表按右键。

    65620

    QCSuper:在高通手机猫上捕获无线2G3G4G数据包

    Windows 安装 在Windows上,你需要根据你的手机型号下载并安装手机的USB驱动。...没有通用的方法,在Google上搜索你手机的型号 +“USB驱动(USB driver)”或“ADB驱动(ADB driver)”以获取相关的说明。 然后,你需要确保你的设备可以使用adb进行访问。...然后,按照以下链接进行操作: 安装Python 3.6或更高版本(请确保已将其包含到PATH中,并勾选install it for all users(系统用户下所有用户可启动)并安装pip) 安装Wireshark...这些协议在GSMTAP Header之后,标准报头(被封装到UDP/IP中)允许识别协议,GSMTAP报文被放在PCAP文件中,该文件可以使用Wireshark进行分析。...此外,它还支持在单独的GSMTAP帧中重组SIB(系统信息块,向所有用户广播的数据),因为Wireshark目前无法自行完成:flag --reassemble-sibs 4G(LTE):第3层及以上(

    2.3K40

    记一次CTF的USB流量分析

    事实上,起作用的只是三个相邻的字节。 然而,有些鼠标的流量似乎不那么标准,比如上面那个师傅,他抓出来的流量是8字节的,于是他就取了1、2、3字节来进行分析。而我抓到的流量是6字节的。...tshark -r test2.pcapng -T fields -e usb.capdata > usbdata.txt python3 sniffer.py gnuplot.exe -e "plot...USB键盘流量 usb键盘流量就容易的多,主要起作用的是七个字节(1、3~8)。键盘流量只记录按下的按键。释放按键不进行记录。...XHC20 up 开启端口之后使用wireshark抓包即可。...详细的对照表可以去这里看: https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf 但是在抓包的时候也需要注意一些点同时在抓流量的时候也会遇到一些问题

    2.1K20

    USB流量分析「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。 1. USB接口简介 通过监听USB接口流量,可获取键盘击键,鼠标移动与点击,存储设备的明文传输通信,USB无线网卡网络传输内容等。 2....题目 wireshark打开数据包后发现为usb协议 USB协议数据部分在Leftover Capture Data域中,使用tshark命令将其单独提取出来 tshark -r udn.pcapng...键盘数据包击键信息集中在第三个字节,每次key stroke都会产生一个keyboard event usb packet。...鼠标数据包第一个字节代表按键,当取0×00时代表没有按键;当取0×01时代表按左键;当取0×02时代表当前按键为右键。...此题为键盘数据包 友情链接USB协议,查找值与具体键位的对应关系: http://www.usb.org/developers/hidpage/Hut1_12v2.pdf 根据第53页 usb keyboard

    1.4K30

    【触觉智能Purple Pi OH开发板体验】开箱体验:开源主板Purple Pi RK3566 上手指北

    断开主板的所有供电; 按住设备上的 RECOVERY 键并保持 ; 使用USB Type-C 数据线连接板子Type-C口和电脑USB端口; 大约两秒钟后,烧录软件会识别到LOADER设备。...3.1.2 软件方式进入LOADER模式 在主板已烧录了可正常运行的固件前提下,可以通过软件的方式让板子进入到LOADER模式。...PC的端可以通过adb或者调试串口进入到系统 ● 调试串口执行命令让板子重启至LOADER模式 ● adb 进入方法 在安装了adb环境的PC电脑,通过命令终端执行adb shell命令进去系统,...,上电将会显示为MASKROM模式; 分区固件烧录异常或者Loader分区固件被擦除也可能会显示为MASKROM模式; 如果板子可以正常运行,建议使用3.1节的Loader模式烧录系统固件,在系统异常无法烧录的时候...进入MASKROM模式的方式如下 3. 断开电源适配器与主板的连接; 4. 短接主板上的测试点,并保持(位置如下图所示) 5.

    78120

    原创 Paper | USB设备开发:从入门到实践指南(二)

    在能成功模拟键盘的基础上,要实现鼠标的模拟是很容易的,只需在模拟键盘的bash脚本中以下修改两部分: 1....那在Ubuntu上的nintendo驱动又是怎么回事呢?...但是,该手柄在代码实现上估计有大BUG,会导致USBTree View, Wireshark的USBPcap, 还有Windows的部分USB驱动崩溃(有可能是USBPcap导致的)。...另外因为测试使用的Linux是装在Windows上的虚拟机,vmware在Windows上安装了一个USB驱动,来让主机接入虚拟机当中的,可能是同样的BUG导致在Linux系统上也无法正常识别到手柄相关驱动...2.需要研究nintendo_hid_probe函数,经过研究发现switch手柄也有专门的协议,比如有定义握手包,有读取手柄芯片上数据的功能。

    27010

    使用Ubertooth监听蓝牙通信

    ,因此需要2个部分:Ubertooth(应用程序本体)和libbtbb(蓝牙基带库,源码中带有Wireshark插件) 实际上还有一部分需要关注,附带在Ubertooth下载的源码里,就是硬件对应的固件...在Ubertooth tools的源码中是包含了固件的,固件是.dfu格式的文件。...更新固件的命令是: ubertooth-dfu -d bluetooth_rxtx.dfu -r 我在虚拟机中执行这一步的时候报错了,每次执行的时候都会尝试切换到DFU模式,然后USB显示无法识别,同时硬件上面的四个由深到浅的红色指示灯一直循环跑马灯...现在需要把Ubertooth和Wireshark进行联动,将Ubertooth收集到的数据传到Wireshark进行解析。...这里有一点需要注意,“mkfifo /tmp/pipe” 命令需要在所有步骤前进行,即先创建pipe这个文件,再设置wireshark读取,最后用Ubertooth-btle命令写入,顺序错了是会不成功的

    2.5K50

    原创 Paper | USB设备开发:从入门到实践指南(三)

    1 Nintendo 手柄驱动 参考资料 在上一篇文章中,提到过一个问题:Switch原装手柄没有USB接口,为什么在nintendo中还要进行一些列处理?...,那么这个时候读取eventX进行解析,我们会发现type的值就是EV_KEY,而code的值表示的就是某个按键,value表示的就是1或0(按下或者释放)。...函数,就会把设置好的手柄输入传送到/dev/input/eventX文件中,我们通过eventX文件读取到的内容就是这么产生的。...在上一篇文章中,讲述的读取/dev/input/jsX的数据,正好能和上面的代码对应上。...在joydev.c驱动的代码定义了一个黑名单列表,而match函数的作用是用来对这些黑名单中的设备进行过滤,Nintendo手柄就正好在这个黑名单中,不仅有Nintendo手柄,还是索尼的PS手柄也在黑名单中

    18610

    如何用Wireshark捕获USB数据?

    现在越来越多的电子设备采用USB接口进行通讯,通讯标准也在逐步提高。那么,我们就会好奇这些设备是如何工作的?而无论你是一个硬件黑客,业余爱好者或者只是对它有一点兴趣的,USB对我们都是具有挑战性的。...事实上通过wireshark,我们可以捕获到usb设备发送给我们主机的数据,这样就可以进一步研究了。...这里并没有测试window上能不能行。 简介 在开始前,我们先介绍一些USB的基础知识。...我们需要给用户足够的权限来获取linux中的usb数据流。我们可以用udev来达到我们的目的。我们需要创建一个用户组usbmon,然后把我们的账户添加到这个组中。...通过这些,我们可以了解到usb设备与主机之间的通信过程和工作原理,也许我们就可以把这些知识用到逆向工程中,得到一些东西。好了,就到这里!!! ‍‍

    3.1K70

    【Linux】SocketCAN设备调试与开发(模拟器)

    大家都知道,车辆底盘系统是通过CAN进行通信的,而常见的有USB-CAN和SocketCAN两种,前者是通过USB口接入PC的,代表的有周立功、创芯等(较便宜),后者是通过网口接入PC的,代表的有Kvaser...在实际场景中,CAN 并不是唯一的攻击面,可能还存在很多其它的攻击面。 ICSim总线设备模拟器 参考了这篇,补充完善一些内容。...负责生成模拟的车辆数据,以CAN报文的方式发送给虚拟的CAN接口,ICSim从虚拟CAN接口(vcan0)读取CAN报文,并在仪表上更新对应零件的状态,如车速、转向、车门状态等等。...安装启动如下: sudo apt-get install wireshark sudo wireshark 启动后,可以读取对应网卡: SavvyCAN 前面介绍了can-utils和wireshark...SavvyCAN 是一个 CAN 总线逆向和捕获工具提供了更多额外的功能,它除了能够轻轻的浏览、过滤数据包和仲裁 ID,还可以在 CAN 帧上执行脚本、Fuzzing,以及内置了几个逆向工具。

    44810

    如何用无线键盘控制树莓派小车

    (树莓派小车的安装不是本文重点,如果读者不熟悉小车的安装,请自行搜索。) ? 2.无线键盘。 ? 0x02 方案 在树莓派系统上搭建两个服务:键盘监听服务和小车转向控制服务。...按键与小车动作映射关系如下: 按键事件 小车动作 方向键上按下 小车前进 方向键上抬起 小车停止 方向键下按下 小车后退 方向键下抬起 小车停止 方向键左按下 小车左转 方向键左抬起 小车停止 方向键右按下...C++语言程序是整个控制系统的核心,用于控制小车动作的逻辑控制。 用python控制小车动作的代码如下: ? 控制系统的代码就不粘贴了,只把设计过程中遇到的问题与大家分享下。...控制系统在设计过程中遇到这样一个问题: 如果按键一直按下,当按键抬起时小车不会立刻停止,而是过一下才会停止。...导致问题发生的原因: 由于按键一直按下会有大量的按键请求发送过来,而小车的动作响应要慢于键盘按键响应,会有大量的按键按下请求堆积在处理线程中,而按键抬起请求处于队列最末尾,是最后执行的,所以当按键抬起时小车才不会立刻停止

    2.1K40
    领券