使用Arduino UNO进行计算机渗透实验:HID键盘模拟与固件修改

本文详细介绍了如何通过修改Arduino UNO的固件,使其能够被计算机识别为HID键盘,从而自动执行预加载的命令,探讨了这一技术在网络安全领域的潜在影响和物联网项目中的应用价值。

使用Arduino UNO进行计算机渗透实验

今天,我将解释我完成的另一个很酷的实验。你们有没有想过用Arduino进行计算机渗透?是的,这是可能的。

很多人误以为Arduino和树莓派(Rasberry-Pi)是一样的。Arduino板和树莓派之间有很多区别。Arduino是一个微控制器主板,而树莓派是一台通用计算机。这意味着Arduino一次只能运行一个程序,而树莓派通常运行操作系统,因此可以运行多个应用程序。我认为这足以解释Arduino和树莓派之间的区别。

这是我的Arduino UNO(ATmega16U2)。

在这个实验中,我使用Arduino UNO板,因为我目前只有这块板。我的最终目标是通过USB电缆将Arduino板中预加载的一些命令发送到我的计算机。默认情况下,这块Arduino UNO板不支持此类活动,所以我必须做一些修改才能完成这项工作。

我遇到的第一个问题是计算机没有将Arduino UNO板检测为输入设备。所以我必须更改Arduino UNO板中的固件,使其被识别为HID键盘。

然后出现了第二个问题。当Arduino UNO板被检测为HID键盘时,我无法向Arduino UNO板上传代码。这次我的Arduino软件没有将Arduino UNO板识别为Arduino板。所以,我又不得不刷回原始(USB串行)固件并上传代码。之后,我再刷回HID固件。

这一次,我成功了。我通过USB电缆将Arduino UNO板连接到计算机,它会自动执行命令。我知道你们大多数人都想在家里尝试这个,所以我决定为你们留下一些相关的链接,但请注意,这会有一些风险,因为我们将要在这里刷写固件。

如何更新Arduino板中的固件 - https://www.arduino.cc/en/Hacking/DFUProgramming8U2

键盘和USB串行固件 - https://github.com/clasiru/Arduino_UNO_HID_Keyboard

Arduino UNO HID键盘库 - https://github.com/clasiru/UNO-HIDKeyboard-Library

所以,现在你们可以理解Arduino或物联网设备对网络安全的潜在影响。另一方面,这对于你们与物联网相关的项目会派上用场,值得一试。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计