getfromcode软考考证 会员免费

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

《WHID Injector:将HID攻击带入新境界》HID Attack是最近几年流行的一类攻击方式。HID是Human Interface Device的缩写,意思是人机接口设备。它是对鼠标、键盘、游戏手柄这一类可以操控电脑设备的统称。 由于电脑对这类设备缺少严格的检测措施,只是简单的识别设备类型,就允许设备对电脑进行各项操作。所以,通过修改篡改设备反馈信息,就可以很轻松的让电脑将其他设备误认为HID设备,从而获取控制权限。尤其是USB和蓝牙这类即插即用接口出现,导致HID Attack成为重要方式。例如,Bad USB就是USB类攻击的典型代表。 近日,研

单课价¥29.90新品 上架
会员价 会员免费开通会员,全站课程按额度无限下载套餐详情
1 人关注 更新于 2026-09-28 永久有效
发货

网盘链接 · 支付成功后自动发货

保障

永久有效 · 链接失效免费补发

客服

每日 9:00-21:00 在线客服 联系客服

支付成功后自动发货,可在「我的订单」查看网盘链接;链接失效可联系客服免费补链。

正版保障 极速发货 售后无忧

WHID Injector 这个名字里的 WHID,是 Wireless HID 的缩写。它要解决的问题很具体:传统 BadUSB 类攻击需要物理接触目标机器,插上去才能注入按键,而 WHID 把这条链路改成无线触发——设备本身仍以 HID 身份被系统识别,但注入指令可以通过 WiFi 或 BLE 远程下发。这份资料围绕的就是这套硬件与固件的实现方式。

它到底在讲什么技术栈

核心是三类东西的组合。第一是 HID 协议本身:USB HID 报告描述符如何定义键盘、鼠标的报文格式,主机为什么只按设备类型放行而不做深度校验。第二是可编程 HID 硬件:以 ATmega32U4 这类自带 USB 控制器的 MCU 为基础,让设备在枚举阶段就声明自己是键盘。第三是无线控制层:ESP8266/ESP32 一类模块提供 WiFi 或 BLE 通道,接收远程指令后再由 MCU 翻译成 HID 报文发送。

资料里会涉及 Ducky Script 这类注入脚本的语法与解析逻辑。它的价值不在脚本本身,而在于你能看到一段文本指令是怎样被拆成按键码、修饰键状态、延时,再逐条写进 HID 报告的。理解这条链路之后,你换成任何自定义协议都能自己接上去。

项目结构与可复用模块

从工程角度看,这套东西可以拆成几个相对独立的模块,这也是它值得拿来对照练习的原因:

  • HID 枚举与描述符模块:负责让主机把你认成标准键盘,描述符写错就会枚举失败,这是最容易被忽略又最容易踩坑的一段。
  • 指令解析器:把注入脚本转成按键序列,涉及键位映射表、字符串到键码的转换、Shift 等修饰键的组合逻辑。
  • 无线通信模块:WiFi 与 BLE 两套通道的初始化、配网、指令接收。BLE 部分要注意 HID over GATT 与自定义 GATT 服务的差别。
  • 电源与外壳:锂电池供电、充电管理、以及外壳开孔对 USB 插头位置的要求。这部分偏硬件,但决定了成品能不能真的塞进目标接口。

这几块之间通过清晰的接口耦合,意味着你可以只取其中一块来用。比如只想要一个能自定义报告描述符的 USB 设备,就完全不用管无线部分;反过来,如果你在做 BLE 外设开发,指令解析那段逻辑也能直接搬。

适合拿来做什么实践

不建议当作纯视频看完就算。比较合理的用法是:先对照资料把 HID 描述符和报告格式跑通,用一个最小固件验证主机能正确识别按键;再叠加无线通道,测试远程下发与执行延迟;最后才去考虑注入脚本的复杂度。每一步都有可验证的结果,而不是停留在「看懂了」。

对做嵌入式、IoT 安全、USB 协议分析的人来说,这份资料的参考价值在于它把协议层、固件层、无线层串成了一条完整链路。你从中拿到的不是某个现成工具,而是一套可以替换、可以裁剪的模块划分方式。

看之前需要哪些基础

需要能读懂 C/C++,尤其是寄存器操作和中断相关代码;了解 USB 基础概念,比如端点、描述符、枚举流程;如果涉及 BLE 部分,最好对 GATT 服务与特征值有概念。没有这些基础直接上手,容易卡在编译通过但设备不被识别这种问题上,而这类问题恰恰是资料里最有价值的部分。

另外提醒一句:HID 注入相关技术仅应在自己拥有或获得明确授权的设备上验证。把注意力放在协议理解和模块复用上,比复刻攻击本身更有长期收益。


HID Attack是最近几年流行的一类攻击方式。HID是Human Interface Device的缩写,意思是人机接口设备。它是对鼠标、键盘、游戏手柄这一类可以操控电脑设备的统称。 由于电脑对这类设备缺少严格的检测措施,只是简单的识别设备类型,就允许设备对电脑进行各项操作。所以,通过修改篡改设备反馈信息,就可以很轻松的让电脑将其他设备误认为HID设备,从而获取控制权限。尤其是USB和蓝牙这类即插即用接口出现,导致HID Attack成为重要方式。例如,Bad USB就是USB类攻击的典型代表。 近日,研究人员Luca Bongiorni(高级攻防安全专家,主要研究领域包括无线电网络、逆向工程、硬件攻击、物联网和物理安全等)正在利用一种廉价的专用硬件,可以进行远程控制(即通过WiFi或BLE),这就是WHID的诞生原理。 自从HID攻击(即PHUKD、Kautilya、Rubberducky)首次公开露面以来,已经出现了许多令人敬畏的研究和结论,例如Iron HID、鼠标劫持以及最酷的USaBUSe等。 自从我开始研究Teensy系列开发板的设备开始,就一直面临着如何在恰当的时候提供某种有效载荷的问题。刚开始,我通过使用Irongeek的光敏电阻和DIP开关技巧来实现其中的部分载荷。 不过,我很快就意识到,通过无线电频道可以完整的实现全部的载荷。几年前,我正在考虑使用一些廉价的433 MHz TRX模块连接到Teensy Board …可悲的是由于缺乏时间和其他很酷的项目…这个想法被放入了他的待办事项列表中。 什么是WHID Injector(注射器)? 这部分我们将介绍WHID Injector背后的原理及其功能有哪些。 WHID代表基于WiFi的HID注射器,即对HID攻击进行无线化攻击时的一种注入工具。它是一个便宜但是非常可靠的硬件,旨在满足Red-Teamers&Pentesters在HID攻击过程中的相关需求。 WiFi HID注射器的核心主要是Atmega 32u4(通常用于许多Arduino板卡)和ESP-12(提供WiFi功能,通常用于物联网项目中): WHID的软件 当我开始考虑一个远程控制的HID注入器,需要将ESP芯片组添加到Arduino样板中时,我很快就意识到已经存在一些能够满足我需求的硬件:AprBrother的Cactus Micro Rev2(位于EOL L)。 接着,我开始阅读ESP规范,并考虑如何创建一个简单的PoC方案,让我能够通过WiFi AP远程上传恶意的有效载荷。接下来,我开始对手中的EOL Cactus Micro rev2 硬件进行改进(考虑到也与USaBUSe兼容)。 总体来说,我最后实现的简单GUI如下所示(虽然它看起来很糟,但是确实起作用了): 支持第三方软件 1. USaBUSe

课程推荐

《WHID Injector:将HID攻击带入新境界》HID Attack是最近几年流行的一类攻击方式。HID是Human Interface Device的缩写,意思是人机接口设备。它是对鼠标、键盘、游戏手柄这一类可以操控电脑设备的统称。 由于电脑对这类设备缺少严格的检测措施,只是简单的识别设备类型,就允许设备对电脑进行各项操作。所以,通过修改篡改设备反馈信息,就可以很轻松的让电脑将其他设备误认为HID设备,从而获取控制权限。尤其是USB和蓝牙这类即插即用接口出现,导致HID Attack成为重要方式。例如,Bad USB就是USB类攻击的典型代表。 近日,研究人员Luca Bongiorni(高级攻防安全专家,主要研究领域包括无线电网络、逆向工程、硬件攻击、物联网和物理安全等)正在利用一种廉价的专用硬件,可以进行远程控制(即通过WiFi或BLE),这就是WHID的诞生原理。 自从HID攻击(即PHUKD、Kautilya、Rubberducky)首次公开露面以来,已经出现了许多令人敬畏的研究和结论,例如Iron HID、鼠标劫持以及最酷的USaBUSe等。 自从我开始研究Teensy系列开发板的设备开始,就一直面临着如何在恰当的时候提供某种有效载荷的问题。刚开始,我通过使用Irongeek的光敏电阻和DIP开关技巧来实现其中的部分载荷。 不过,我很快就意识到,通过无线电频道可以完整的实现全部的载荷。几年前,我正在考虑使用一些廉价的433 MHz TRX模块连接到Teensy Board …可悲的是由于缺乏时间和其他很酷的项目…这个想法被放入了他的待办事项列表中。 什么是WHID Injector(注射器)? 这部分我们将介绍WHID Injector背后的原理及其功能有哪些。 WHID代表基于WiFi的HID注射器,即对HID攻击进行无线化攻击时的一种注入工具。它是一个便宜但是非常可靠的硬件,旨在满足Red-Teamers&Pentesters在HID攻击过程中的相关需求。 WiFi HID注射器的核心主要是Atmega 32u4(通常用于许多Arduino板卡)和ESP-12(提供WiFi功能,通常用于物联网项目中): WHID的软件 当我开始考虑一个远程控制的HID注入器,需要将ESP芯片组添加到Arduino样板中时,我很快就意识到已经存在一些能够满足我需求的硬件:AprBrother的Cactus Micro Rev2(位于EOL L)。 接着,我开始阅读ESP规范,并考虑如何创建一个简单的PoC方案,让我能够通过WiFi AP远程上传恶意的有效载荷。接下来,我开始对手中的EOL Cactus Micro rev2 硬件进行改进(考虑到也与USaBUSe兼容)。 总体来说,我最后实现的简单GUI如下所示(虽然它看起来很糟,但是确实起作用了): 支持第三方软件 1. USaBUSe【技能收获】学完可掌握:网络工程 / CCNP。课程以实战为导向,覆盖从基础概念到完整项目落地的关键步骤,配套章节笔记便于课后复盘与面试前快速回顾。【学习建议】建议按目录顺序逐节学习,重点章节可反复观看;学完后整理一份技术笔记或博客,将所学转化为可展示的项目经验。【就业发展】可面向岗位:无线网络工程师、企业网 / 园区网实施、准入认证工程师、Aruba / HPE 方向运维。医院、高校、连锁门店仍大量使用 Aruba + ClearPass,能独立完成 MM/MC 部署和 802.1X 对接的人,比只会配家用路由或只背理论更有项目说服力。 若你已有一定编程或运维基础,本课程可帮助你在现有技能栈上快速叠加热门方向能力,提升求职时的项目说服力与薪资谈判空间。

配套笔记(1 份 PDF)

*   USaBUSe是在2016年第24届Defcon黑客大会上SensePost的Rogan Dawes发布的一个项目。针对“橡皮鸭”进行改进,更加贴近实战。它不仅仅是一个简单的远程HID注入器,还允许绕过当前空间的环境,并通过WHID的ESP wifi进行侧向通道C&C通信。 项目地址: https://github.com/sensepost/USaBUSe 相关链接: Defcon 24大会视频: https://www.youtube.com/watch?v=HTrQHZtNyBw Defcon 24大会幻灯片 https://media.defcon.org/DEFCON 24/DEF CON 24presentations/DEFCON-24-Rogan-Dawes-Dominic-White-Universal-Serial-aBUSe-Remote-Attacks.pdf https://sensepost.com/blog/2016/universal-serial-abuse/ USaBUSe PoC视频: https://www.youtube.com/watch?v=5gMvtUq30fA Cyberkryption教程: https://cyberkryption.wordpress.com/2016/11/27/building-a-usabuse-part-1 2. WiFi Ducky WiFi Ducky是spacehuhn开发的一个项目,它可以添加诸如实时注入、ESP fw OTA更新等酷炫的功能,进一步简化了WHID软件的攻击效果。 项目地址: https://github.com/spacehuhn/wifi_ducky 3. WiDucky WiDucky是一款历史较久且非常实用的工具,它具有使用ESP的WiFi作为C&C通信渠道的功能。它还拥有自己的Android应用程序来进行远程控制。 项目地址: https://github.com/basic4/WiDucky 相关的一些视频教程 这里是一些有关WHID注入器的安装过程和功能实现的教程。 1. 模拟WHID攻击Windows 10 视频地址: [url=]https://www.youtube.com/embed/U-TtobZXJcw?feature=oembed[/url] 2. Wifi Ducky WHID设备(WINDOWS) 视频: [url=]https://www.youtube.com/embed/PGa_ByyQw8Q?feature=oembed[/url] 3. 如何在WINDOWS上安装WHID? 视频: [url=]https://www.youtube.com/embed/MRGUSPW-Cr0?feature=oembed[/url] 4. 如何在OSX上安装WHID注入器软件? 视频: [url=]https://www.youtube.com/embed/3FOLTxtehf0?feature=oembed[/url] 可能实现的攻击场景 1.典型场景:远程通过WiFi注入 在受害者机器上部署WHID,并通过访问其WiFi AP SSID进行远程控制。(最后,你还可以设置WHID连接到现有的WiFi网络。) 2.社会工程场景:在启用USB的小工具时部署WHID 其背后的主要思想是测试你的目标组织中的社会工程弱点(例如DLP策略违规),并绕过对受害者PC的物理访问限制。 通常,我会创建一个附有武器化USB小工具的小册子(社会工程攻击方法实力模版链接如下: https://github.com/whid-injector/WHID/tree/master/tools/Social_Engineering_Lures ),然后使用一个通用的传输载体(例如USB等离子球、DHL、FedEx等)。 结论 正如你在上述的第三方软件部分看到的一样,WHID具有很大的潜力,不仅可以发挥HID注入器的常用功能,还可以绕过气隙(Air-Gapped)环境。 如果你对这种工具有兴趣,可以去AprBrother预订。 地址: https://blog.aprbrother.com/product/cactus-whid 最后总结一些相关链接: http://www.irongeek.com/i.php?page=security/programmable-hid-usb-keystroke-dongle https://github.com/whid-injector/WHID/tree/master/sketches/cactus_micro_rev2 https://github.com/sensepost