USB Rubber Ducky或Bad USB是一种著名的攻击工具,它看起来像U盘,但是插入任何未锁定的设备时就像键盘一样。 USB Rubber Ducky允许攻击者对USB设备中的微控制器进行编程以执行各种任务。可以对其进行编程,将击键和二进制文件注入系统,获取缓存的密码来入侵系统,窃取受害者的凭据数据,并可以向受害者的系统注入rubber ducky payload。 USB Rubber Ducky的最重要功能是,它充当HID设备,因此任何防病毒或系统防火墙都无法检测到它。
USB Rubber Ducky并非在每个国家都容易获得,而且价格也非常昂贵。因此,在本篇文章中,我们将使用ATtiny85单片机来制造一个Digispark Rubber Ducky。该项目包括两部分,第一部分是在ATtiny85上传引导加载程序,第二部分是将USB公头与ATtiny85连接。
制作USB Rubber Ducky所需的组件
● ATtiny85微控制器
● USB A型插头
● 3个电阻(2×47Ω和1×1KΩ)
● 3个二极管(2×齐纳二极管和1×IN5819二极管)
● 8引脚IC基座
● 连接线
USB Rubber Ducky电路图
下面给出了ATtiny85 Rubber Ducky USB的示意图。
R3是一个上拉电阻,连接在IC的Vcc和PB3引脚之间,同时添加了齐纳二极管(D1-D2)以提供USB接口保护。这些保护二极管不是必需的,因此,如果您要构建比这更紧凑的电路,则可以将其卸下。
将所有组件焊接在万能板上之后,其外观将如下所示:
3D打印ATtiny85 USB的外壳
接下来,用游标卡尺测量设置的尺寸设计外壳。完成后,设计如下所示:
对设计满意之后,我将其导出为STL文件,根据打印机设置对其进行了切片,最后进行了打印。 STL文件也可以从Thingiverse下载,您可以使用它打印自己的外壳。
打印完成后,完成连接,我将电路板组装到了机壳中,所有组件都非常合适,如下所示。
安装Digispark驱动程序
要使用USB对ATtiny85进行编程,必须在笔记本电脑上安装Digispark驱动程序。如果您没有它们,可以通过单击Digispark驱动程序链接进行下载。然后,解压缩该zip文件并双击“ DPinst64.exe”应用程序以安装驱动程序。
成功安装驱动程序后,将ATtiny85电路板插入笔记本电脑。现在,转到设备管理器,您的设备将在“ libusb-win32设备”下列为“Digispark Boot-loader”。如果您无法在设备管理器中找到“ libusb-win32设备”,请转到“查看”并单击“显示隐藏的设备”。
设置Arduino IDE
要使用Arduino IDE编程ATtiny85开发板,首先,我们需要将Digispark开发板支持添加到Arduino IDE。为此,请转到文件>首选项,然后将以下链接添加到Additional Boards Manager URLs中,然后单击“确定”。
http://digistump.com/package_digistump_index.json
之后,转到工具>板>板管理器,然后搜索“ Digistump AVR”并安装最新版本。
安装后,您在Board菜单中看到一个名为“ Digispark”的新条目。
为橡皮鸭USB编程ATtiny85
安装驱动程序并设置Arduino IDE之后,现在我们将对ATtiny85进行编程,以下载图像并将其通过Windows PowerShell设置为墙纸。在这里,我们解释脚本的一些重要命令。
首先在代码中包含“DigiKeyboard.h”库。 DigiKeyboard库使ATtiny85可以通过其微型USB端口将击键发送到所连接的计算机。
然后在loop函数中,发送击键以显示桌面(Windows + D),一段时间后,通过发送Windows + R击键打开“运行”对话框。
然后使用DigiKeyboard.print()函数转到Windows Powershell。
现在在Powershell中,使用System.Net.WebClient类下载Internet数据。
然后在下一个命令中,输入带有文件名(hacker.jpg)的图像地址,以将其保存在笔记本电脑上。
然后在接下来的代码中,打开控制面板并将下载的图像设置为墙纸。
测试ATtiny85橡胶鸭
完成这些步骤后,创建一个新的草图,然后在IDE中复制并粘贴给定的代码。然后选择“ Digispark(Default – 16mhz)”作为板卡类型,然后单击左上方的上载按钮。编译草图,然后Arduino IDE将提示您在60秒内插入ATtiny85 USB。
插入ATtiny85 USB后,Arduino IDE将代码上传到微控制器,然后执行微控制器给出的命令来更改笔记本电脑的墙纸。这只是USB Rubber Ducky的工作方式的一个示例,但是通过它可以完成很多事情。
以上就是使用ATtiny85来运行Digispark Rubber Ducky脚本的方式。如有任何疑问,请随时在本贴下面回复。