![无需在机器上安装软件,即可从外部源向机器发送实时按键?也许是一个注册为键盘的 USB 加密狗?](https://linux22.com/image/1456500/%E6%97%A0%E9%9C%80%E5%9C%A8%E6%9C%BA%E5%99%A8%E4%B8%8A%E5%AE%89%E8%A3%85%E8%BD%AF%E4%BB%B6%EF%BC%8C%E5%8D%B3%E5%8F%AF%E4%BB%8E%E5%A4%96%E9%83%A8%E6%BA%90%E5%90%91%E6%9C%BA%E5%99%A8%E5%8F%91%E9%80%81%E5%AE%9E%E6%97%B6%E6%8C%89%E9%94%AE%EF%BC%9F%E4%B9%9F%E8%AE%B8%E6%98%AF%E4%B8%80%E4%B8%AA%E6%B3%A8%E5%86%8C%E4%B8%BA%E9%94%AE%E7%9B%98%E7%9A%84%20USB%20%E5%8A%A0%E5%AF%86%E7%8B%97%EF%BC%9F.png)
我有几个运行着旧版软件的简陋系统,这些软件运行在破旧的硬件上。我希望能够通过使用自动热键脚本来自动执行许多任务,而这些任务目前必须手动执行。我真的不想在这些机器上安装任何软件,而且在某些情况下也无法安装(因为它们的资源已经用尽,或者运行着 Linux 版本,或者运行着奇怪的石器时代精简版 Windows 版本)
我需要一个解决方案,以便我可以实时接收机器上的击键没有安装任何软件都行。但是,要求机器上的驱动程序或软件发送按键是没有问题的。
这就是我需要解决的问题。考虑到接收机器的限制,我只能想象解决方案可能是通过蓝牙适配器或 USB 接收器之类的东西进行输入,这些接收器注册为键盘,但实际上接收来自另一台计算机的击键。如果有人知道是否存在这样的硬件,可以在下面发帖吗?或者,任何其他符合目标的解决方案。
答案1
您可以使用基于远程 IP 的 KVM 在另一台机器上实时生成按键。
只需将 KVM 的键盘(以及可选的视频和鼠标)连接到您想要发送远程击键的计算机即可。
然后,您通过 Web 浏览器或提供的本机系统应用程序连接到 KVM 上的 IP,并发送您希望的任何击键。
其中一款产品是Tripp Lite 的服务器远程控制,外部 KVM over IP另一个是Lantronix Spider KVM
或者,你可以使用以下工具重新构建一个 DIY 版本,仅支持键盘(而不是键盘、视频和鼠标支持):Teensy USB 开发板连接到WIZ712MJ以太网模块与WIZ812 以太网适配器套件
此时,你可以使用 Teensy 的以太网和键盘库编写一个小程序,使用生成服务器Server.begin()
,等待连接,然后使用类似以下内容的无限 while 循环来创建单向网络回显服务器:
if (myclient.available()) {
Keyboard.print(myclient.read());
}
您可能会希望通过一些错误检查等来充实它,但它应该作为一个骨架。
答案2
答案3
这远非一个现成的解决方案,但你也许可以采用类似微型 USB完成这个任务。我设想将 Teensy USB 配置为键盘,然后将程序加载到 Teensy USB 上,
- 通过连接到其 I/O 引脚的串行连接接收击键,并
- 通过 USB 连接将这些击键发送到目标机器。
我亲自将其连接到脚踏板上,并对其进行编程,使其在我踩下踏板时发送“s”键击,但该项目比您需要的简单得多。
答案4
完全有可能。事实上,这正是所谓的 背后的矢量攻击BAD USB
。
您可以在这里。
基本上,它是关于将 USB 存储设备(重新编程)更改为另一个 HUD 设备。这并不容易,但如果你有时间和技能 - 是的,这是可能的。当然,这并不容易。
BadUSB 设备甚至可能取代了计算机的 BIOS——同样是通过模拟键盘并解锁 USB 拇指驱动器上的隐藏文件来实现的。