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

如何仅通过一个Python进程使用USB HID设备?

通过一个Python进程使用USB HID设备可以通过使用PyUSB库来实现。PyUSB是一个Python的USB访问库,它允许开发者通过Python代码与USB设备进行通信。

以下是一种可能的实现方法:

  1. 安装PyUSB库:可以使用pip命令在命令行中安装PyUSB库,命令如下:
  2. 安装PyUSB库:可以使用pip命令在命令行中安装PyUSB库,命令如下:
  3. 导入所需的库:在Python代码中导入PyUSB库和其他所需的库,代码如下:
  4. 导入所需的库:在Python代码中导入PyUSB库和其他所需的库,代码如下:
  5. 查找USB设备:使用PyUSB库的usb.core.find()函数来查找连接到计算机的USB设备,代码如下:
  6. 查找USB设备:使用PyUSB库的usb.core.find()函数来查找连接到计算机的USB设备,代码如下:
  7. 其中,vendor_idproduct_id是USB设备的厂商ID和产品ID,可以通过设备管理器或其他工具获取。
  8. 连接到USB设备:使用PyUSB库的dev.set_configuration()函数来连接到USB设备,代码如下:
  9. 连接到USB设备:使用PyUSB库的dev.set_configuration()函数来连接到USB设备,代码如下:
  10. 发送和接收数据:使用PyUSB库的dev.write()函数发送数据到USB设备,使用dev.read()函数从USB设备接收数据,代码如下:
  11. 发送和接收数据:使用PyUSB库的dev.write()函数发送数据到USB设备,使用dev.read()函数从USB设备接收数据,代码如下:
  12. 其中,endpoint是USB设备的端点地址,data是要发送的数据,size是要接收的数据的大小。
  13. 断开连接:使用PyUSB库的dev.reset()函数来断开与USB设备的连接,代码如下:
  14. 断开连接:使用PyUSB库的dev.reset()函数来断开与USB设备的连接,代码如下:

这是一个基本的示例,具体的实现可能因USB设备的类型和要执行的操作而有所不同。在实际使用中,可以根据USB设备的规格和要求进行相应的调整。

请注意,以上代码示例中没有提及腾讯云的相关产品,因为腾讯云并没有直接提供与USB设备通信的特定产品。但是,腾讯云提供了丰富的云计算产品和解决方案,可以用于构建和扩展基于云的应用程序和服务。具体的产品和解决方案可以根据实际需求进行选择和使用。

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

相关·内容

如何使用usbsas安全地读取不受信任的USB大容量存储设备

为了实现这一点,通常在(特权)内核空间中执行的大多数与USB相关的任务(解析USB数据包、SCSI命令、文件系统等)已被移动到用户空间,并在不同的进程(微内核风格)中分离,每个进程都以其自己的受限安全计算模式执行...功能介绍 1、从不受信任的USB设备读取文件(不使用uas、USB_storage和文件系统等内核模块)。...和NTFS; 4、将文件上传到远程服务器; 5、支持制作USB设备镜像; 6、擦除USB设备内容; usbsas架构 1、Web客户端/服务器:作为usbsas的主程序,可以部署一个安全的...USB文件传输中转站; 2、Fuse实现:使用usbsas以只读模式挂载USB设备; 3、Python:usbsas可以和Python搭配使用,并使用脚本将数据从一台设备拷贝到另一台设备;.../hid-user/Cargo.toml $ cargo build --release --manifest-path=usbsas-hid/hid-dealer/Cargo.toml 工具使用

1.7K20

BadUSB的前世今生:USB RUBBER DUCKY和Teensy USB

USB 橡皮鸭最初作为一个IT自动化概念验证(POC),通过嵌入式开发板实现的,后来它发展成为一个完全成熟的商业化按键注入攻击平台。...这就是为什么会有一个无处不在的USB标准HID或人机接口设备(Human Interface Device)。任何一个宣称是键盘HID设备都能够被大多数操作系统自动的探测和接入。...由其名称可以了解HID设备是计算机直接 与人交互的设备,例如键盘、鼠标和游戏杆等。不过HID设备不一定要有人机接口,只要符合HID类别规范,就都是HID设备。 ?...关于Teensy如何实现HID模拟攻击,我就不贴具体内容了,详情大家可以查看一下文章: 一个U盘黑掉你:HID攻击之TEENSY实战 http://sec.chinabyte.com/410/13056910...USB设备; ②USB RUBBER DUCKY和Teensy不能够自动复制传播,实现了从USB设备->计算机的单向感染途径,缺少计算机->USB设备的感染途径,适用于定点攻击(Targeted attack

3.5K100

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

XY直角坐标系,代表了鼠标是如何移动的,其值从-0x7FFF到0x7FFF,一个轴占2字节,XY轴共占4字节。.../js1 接着我们可以通过直接读/dev/input/js1文件:cat /dev/input/js1|hexdump -C来查看手柄的输入,测试过程代码如下所示: # 树莓派USB设备端 def send...正版的Switch Pro手柄,不管是接入Windows系统还是Ubuntu系统,都能抓到USB相关的数据包还有HID描述符,但是主机却无法正常使用手柄。...首先在Windows上,它会伪装成一个Switch Pro游戏手柄,但是前面说了,Switch Pro无法在Windows上正常使用,所以该手柄检测到无法正常使用时,会再次伪装成一个XBox手柄,这个时候就能被...4 本篇总结 参考资 通过本篇文章,我们了解了如何模拟一个USB鼠标,USB游戏手柄设备,并且可以学习如何对Linux内核中的HID驱动进行修改然后输出相关调试信息。

9210

【技术分享】Android渗透测试

安装 Kali Nethunter ---- kali nethunter 是在已有的 rom上对内核进行修改而定制的一个系统,他通过 chroot 来在安卓设备中运行 kali。...思路二:HID攻击 ---- 通过HID攻击,我们可以通过USB线来模拟键盘鼠标的操作,这样我就可以在目标上执行恶意代码。Kali Nethunter中有两种 HID攻击payload生成方式。...第一种就是下面这个: 手机通过USB连到 PC ,然后: 电脑上会打开 cmd, 执行 ipconfig: 这种方式非常简单,但是不够灵活。...该模式 允许我们使用 Usb Rubber Ducky的语法来实现 HID攻击,此外该模式还提供了一个 Preview 的选项卡,通过它我们可以发现其实HID攻击实际上就是使用 shell命令向 /dev...后来在Github瞎找,找到了一个针对该模式生成shell脚本的项目: https://github.com/byt3bl33d3r/duckhunter 使用它我们可以很方便的对脚本进行测试(写完Usb

93360

带你遨游USB世界

,因为协议规定USB设备具有一个7 bit的地址(取值范围为0~127,而地址0是保留给未初始化的设备使用的)。...一个USB设备通常有一个或多个配置,但在同一时刻只能有一个配置; 一个配置通常有一个或多个接口; 一个接口通常有一个或多个端点; 驱动是绑定到USB接口上的,而不是整个USB设备。...主机控制器驱动负责识别和控制插入其中的USB设备USB设备驱动控制USB设备如何与主机通信,USB Core则负责USB驱动管理和协议处理的主要工作。...5.2、鼠标驱动 在Linux kernel中,drivers\hid\usbhid\hiddev.c和drivers\hid\usbhid\usbmouse.c两个驱动文件均可以支持USB鼠标,具体使用哪个驱动...USB鼠标遵循USB HID(Human Interface Device)规范。 在probe中探测设备是否符合HID规范,并且创建和初始化URB: ? ?

2.6K21

如何用Wireshark捕获USB数据?

现在越来越多的电子设备采用USB接口进行通讯,通讯标准也在逐步提高。那么,我们就会好奇这些设备如何工作的?而无论你是一个硬件黑客,业余爱好者或者只是对它有一点兴趣的,USB对我们都是具有挑战性的。...USB有不同的规格,以下是使用USB的三种方式: l USB UART l USB HID l USB Memory UART或者Universal Asynchronous Receiver/Transmitter...其中使用的最广的不是USB HID 就是USB Memory了。 每一个USB设备(尤其是HID或者Memory)都有一个供应商ID(Vendor Id)和产品识别码(Product Id)。...如下图: 上图是连接在我电脑上的USB设备列表,通过lsusb查看命令。 例如说,我有一个无线鼠标Logitech。它是属于HID设备。...这个设备正常的运行,并且通过lsusb这个命令查看所有usb设备,现在大家能找出哪一条是这个鼠标吗??

2.8K70

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

原装的左右手柄,使用的是HID_BLUETOOTH_DEVICE宏定义,表示匹配的是蓝牙HID协议,并不匹配USB HID协议。...2.1 注册input event 用hid-nintendo.c驱动作为例子进行讲解,首先看nintendo_hid_probe函数,在上一篇文章中说过,当USB HID设备注册成功后,会在内核中匹配所有...这类input驱动的函数,设置设备有哪些属性,比如有EV_KEY,就是表示该设备有按键,使用input_set_abs_params设置的就是坐标系,比如手柄的摇杆,鼠标的移动都需要使用该函数。...最后再调用input_register_device函数,如果没有意外,一个input事件就注册成功了,我们就可以通过/dev/input/eventX文件来进行通信,上一篇文章中提过,eventX文件的结构体如下所示...3 总结 参考资 到本篇文章结束,关于USB游戏手柄部分的研究就结束了,接下来就是研究其他USB设备,经过了USB游戏手柄的一番折腾,对USB HID驱动还有input驱动都有了一定的了解,对后续的研究也能有非常大的助力

10610

SSH与内置USB HID支持的完美结合

本文将深入探讨SSH的内置USB HID支持及其对用户和管理员的益处。 USB HID简介 USB HID是指通过USB接口连接的人机接口设备,例如键盘、鼠标和安全密钥。...SSH的内置USB HID支持 SSH协议内置的USB HID支持允许用户使用USB安全密钥进行身份验证。...同时,通过使用SSH的内置USB HID支持,企业可以降低员工忘记密码或密码被泄露的风险,从而提高整体的网络安全水平。...总结 SSH的内置USB HID支持为用户和管理员提供了一个简单、安全的身份验证解决方案。...通过利用USB HID设备,我们不仅可以享受到SSH协议的高级安全保护,而且可以简化身份验证过程,提升用户体验和网络安全水平。

23930

WHID Injector:将HID攻击带入新境界

由于电脑对这类设备缺少严格2的检测措施,只是简单的识别设备类型,就允许设备对电脑进行各项操作。所以,通过修改篡改设备反馈信息,就可以很轻松的让电脑将其他设备误认HID设备为,从而获取控制权限。...自从我开始研究Teensy系列开发板的设备开始,就一直面临着如何在恰当的时候提供某种有效载荷的问题。刚开始,我通过使用Irongeek的光敏电阻和DIP开关技巧来实现其中的部分载荷。 ?...接着,我开始阅读ESP规范,并考虑如何创建一个简单的PoC方案,让我能够通过WiFi AP远程上传恶意的有效载荷。...它不仅仅是一个简单的远程HID注入器,还允许绕过当前空间的环境,并通过WHID的ESP wifi进行侧向通道C&C通信。...),然后使用一个通用的传输载体(例如USB等离子球、DHL、FedEx等)。

1.8K90

IOT安全 :HID

如今,使用USB设备进行攻击的案例也屡见不鲜。本文将介绍常见的利用USB设备进行钓鱼攻击的手段。...--- 什么是HID攻击 HID 全称为 Human Interface Device,直译为人类接口设备,也被称为人体学输入设备,是指与人类直接交互的计算机设备,而pc端上的”HID”一般指的是USB-HID...标准,更多指微软在USB委员会上提议创建的一个人体学输入设备工作组。...[jbwzu041wq.png] BadUSB BadUSB早在2014年底的PacSec会议上便已提出,这是USB协议中的一个漏洞————USB设备可以伪装成其他任何设备,如输入设备、网卡等。...[jo4m2mfn22.png] 此时,若设备无问题,即可上传成功。 --- 总结 本文介绍了HID攻击的几种方法,以ATTINY85开发板为演示,展示了如何制作简单的Digispark的过程。

1.6K11

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

不过由于Wireshark是抓取主机控制器上的流量,而一个USB主机控制器可以连接多个USB设备,所以当我要研究某一个USB设备时,需要通过Wireshark的过滤表达式对该主机控制器上的其他USB设备的流量进行过滤...图5是该软件的界面: 图5:Bus Hound界面 2 使用树莓派4b作为PC的USB键盘 参考资料 接下来,通过阅读key-mime-pi项目的源代码,发现使用树莓派4b设备模拟一个USB设备是一件非常容易的事情...2.1 通过流量再学习理解USB协议 这里提一个前置的知识点:USB是主从结构,一定会有一个USB主机,一个USB设备,并且通信永远都是由主机先发起的。...z的值表示的是端点号(Endpoint),我觉得有点像一个程序的文件描述符(fd),USB主机和设备间就是通过端点号来进行通信的,当USB设备还未在主机上注册时,默认使用0端点号来进行通信。...通过修改接口描述符字段和HID报告描述符字段,来模拟一个鼠标。 研究一下手柄,讲道理手柄也是使用HID协议,但是Linux的代码里没看到相关定义。 研究非HID协议,比如U盘,网卡,打印机这些。

31400

20.Linux-USB鼠标驱动

在上一章分析完USB总线驱动程序后, 接下来开始写一个USB驱动: 本节目的: 将USB鼠标的左键当作L按键,将USB鼠标的右键当作S按键,中键当作回车按键 参考/drivers/hid/usbhid/...*dev=interface_to_usbdev(intf);  通过usb_ interface接口获取usb_device设备,为后面设置USB数据传输用 pipe=usb_rcvintpipe...: usb_deregister(struct usb_driver *driver); 注册一个usb_driver驱动,然后内核会通过usb_driver的成员.id_table函数匹配一次USB设备...,DMA地址缓存区 3.1在入口函数中 1)通过usb_register()函数注册usb_driver结构体 3.2在usb_driver的probe函数中 1)分配一个input_dev结构体 2)...5.4 使用tty1进程测试 ? 未完待续~~~~~~~~~~  下节 依葫芦画瓢 来写出 USB键盘驱动

8.1K81

USB初学(一)---USB-HID的初步认识【转】

Descriptor即描述符,是一个完整的数据结构,可以通过C语言等编程实现,并存储在USB设备中,用于描述一个USB设备的所有属性,USB主机是通过一系列命令来要求设备发送这些信息的。...描述符的作用就是通过命令操作作来给主机传递信息,从而让主机知道设备具有什么功能、属于哪一类设备、要占用多少带宽、使用哪类传输方式及数据量的大小,只有主机确定了这些信息之后,设备才能真正开始工作。...当插入USB设备后,主机会向设备请求各种描述符来识别设备。 为了把一个设备识别为HID类别,设备在定义描述符的时候必须遵守HID规范。 ?...从框图中,可以看出除了USB标准定义的一些描述符外,HID设备还必须定义HID描述符。另外设备和主机的通信是通过报告的形式来实现的,所以还必须定义报告描述符;而物理描述符不是必需的。...USB HID类可采用的通信管道 所有的HID设备通过USB的控制管道(默认管道,即端点0)和中断管道与主机通信。

10.7K50

《安富莱嵌入式周报》第294期:将CC++代码转换为各种高级语言,超炫渲染着色器,VS2022新闻插件,基于以太网的开源步进电机控制器,Arduino PLC

mod=forumdisplay&fid=12&filter=typeid&typeid=104 更新视频教程: USB应用实战视频教程第5期:手把手玩转USB HID免驱方式下位机和QT6.4上位机开发上篇...罗姆的这款芯片通过三层神经网络将 AI 电路从 500 万门缩小到 20000 门(尺寸的 0.4%),能够以几十毫瓦的超低功耗实现人工智能学习和推理。...mod=viewthread&tid=116873 Qt for MCU也在持续的更新中,看来有不少用户在使用。...(2)  USBX增加9个例子,包含了Video,双HID,客制化HID,RNDIS,PIMA_MTP,  CCID,Printer以及HID裸机主从方式 (3)对应的HAL库软件包使用的V1.11.1...通过LUA小程序,我们可以离线,WiFi,以太网和USB四种玩法,且支持内网和外网远程。 SVD文件格式:

1.1K30

Badusb原理及制作并简单免杀实现远控教程

Badusb原理:利用HID(Human InterfaceDevice,是计算机直接与人交互的设备,例如键盘、鼠标等)进行攻击,将USB设备伪装使电脑识别为键盘,再利用USB设备中的微控制芯片,向主机发送命令...漏洞产生原因:现在的USB设备很多,比如音视频设备、摄像头等,因此要求系统提供最大的兼容性,甚至免驱;所以在设计USB标准的时候没有要求每个USB设备像网络设备那样占有一个唯一可识别的MAC地址让系统进行验证...,而是允许一个USB设备具有多个输入输出设备的特征。...这样就可以通过重写U盘固件,伪装成一个USB键盘,并通过虚拟键盘输入集成到U盘固件中的指令和代码而进行攻击。...9.Badusb制作完成,插谁谁上线,这里展示几张成功上线的图片,屏幕截图,vnc,文件获取等CobaltStrike工具远控操作不作展示。 防御措施: 1.不插陌生的USB设备

57720

驱动开发利器Microsoft Windows Driver Kit 7.1.0下载

当然下位机也需要写一个USB HIDUSB Device驱动。...简单的说下USB HID的枚举吧: 一、枚举USB设备   通过枚举USB控制器->枚举此控制器上的USB HUB->枚举HUB的各个端口->获得设备信息。...通过控制器名称,使用CreateFile 打开它。使用DeviceIoControl即可得到其驱动程序名,以及与它连接的HUB的名称。用CreateFile打开HUB,获得连接信息。...再枚举HUB的各个端口即可获得连接的设备信息。 二、枚举HID设备   HID设备是微软定义的标准人机接口规范。比如USB鼠标,USB游戏手柄等。...如果此类设备连接通过SetupDiGetDeviceInterfaceDetail获得它的设备路径信息。使用CreateFile 打开它,通过HidD_GetAttributes获得其基本属性信息。

62410

python监听usb鼠标插入

在刚把电脑系统转为linux之后,一直觉得需要通过命令:sudo rmmod psmouse来完成禁用触摸板的操作实在是太不方便了,于是就想着用一个python脚本来完成该操作。...于是在网上找到了pyUSB这个python库,可以轻松的完成对usb设备的操作。...我的整个思路是这样的,首先开机启动一个python程序,不断运行,不停的检查usb设备中是否有usb鼠标的身影,如果有,那么执行上面的那个禁用触摸板的命令,如果没有,就启用触摸板。...到目前为止还没有完成这个小脚本,个人觉得系统应该是有一个usb设备插入的事件通知的,只是目前还不清楚怎么调用,另外还有一个问题是如何python脚本中以管理员的身份执行禁用和启用触摸板的命令。...分别代表意思为1-audio:表示一个音频设 备。2-communication device:通讯设备,如电话,moden等等。3-HID:人机交互设备,如键盘,鼠标等。

3.3K20

ATtiny85漏洞利用框架HID测试分析

HID攻击介绍 HID是(Human Interface Device)的缩写,由其名称可以了解HID设备是直接与人交互的设备,例如键盘、鼠标与游戏杆等。...不过HID设备并不一定要有人机接口,只要符合HID类别规范的设备都是HID设备。一般来讲针对HID的攻击主要集中在键盘鼠标上,因为只要控制了用户键盘,基本上就等于控制了用户的电脑。...Flashsploit Flashsploit是一款使用ATtiny85 HID设备(例如Digispark USB开发面板等等)来执行渗透攻击的漏洞利用开发框架。...修改目标主机的桌面壁纸: 使用一个.bat脚本让目标Windows设备宕机(拒绝服务攻击),占用100%CPU和运行内存: 感染并执行恶意文件(勒索软件); 禁用目标设备上的Windows Defender...Python3 SFTP PHP 工具下载和使用 git clone https://github.com/thewhiteh4t/flashsploit.gitcd flashsploitpython3

1.2K10

插入U盘自动攻击:BadUSB原理与实现(含视频)

通过TEENSY你可以模拟出一个键盘和鼠标,当你插入这个定制的USB设备时,电脑会识别为一个键盘,利用设备中的微处理器与存储空间和编程进去的攻击代码,就可以向主机发送控制命令,从而完全控制主机,无论自动播放是否开启...现在的USB设备很多,比如音视频设备、摄像头等,因此要求系统提供最大的兼容性,甚至免驱;所以在设计USB标准的时候没有要求每个USB设备像网络设备那样占有一个唯一可识别的MAC地址让系统进行验证,而是允许一个...这样就可以通过重写U盘固件,伪装成一个USB键盘,并通过虚拟键盘输入集成到U盘固件中的指令和代码而进行攻击。...HID攻击方式有很多种,BadUSB作为其中一种是通过伪装成键盘设备来实现的,同时HID攻击也可以通过伪装成网卡进行DNS劫持攻击。...为了预防此类安全风险,需要我们在日常使用USB设备时,不要使用陌生的USB设备,避免USB存在恶意代码导致安全风险。

2K80

在Automation Runtime中如何使用扫码枪

正因如此,我们可以在Automation Runtime 中使用键盘,也能使用 HID 的扫码枪。...在本文中,我们将介绍在 Automation Runtime 环境中如何使用USBHID)的扫码枪读取条码信息。...发现有如下的执行结果: 在程序里,这个扫码枪是和键盘都是属于同一种输入设备,所以他们都是 usbKbd(USB键盘)。 扫一个条码:(条码是 91250273908)。...仔细查看 USB 的报文转换(USB HID to PS/2 Scan Code Translation Table): 通过这个报文转换,就可以知道 USB 扫码枪传送了什么样的数据内容: 只要剔除了报文的其他字符...以上实现方式测试了文中所列的两款扫码枪设备以及国产扫码枪设备。贝加莱目前主流使用的PLC和PLC触摸屏一体机均包含USB接口,且能无缝支持该通讯设备

4.2K30
领券