USB-HID-Emulator

Aus Entität e.V.
Zur Navigation springen Zur Suche springen
Der erste Prototyp

Problem

Wer kennt nicht das Problem, beim Service fehlt einem plötzlich eine Tastatur, sei es um im BIOS was umzustellen oder einfach den PXE Boot zu bestätigen. Nicht immer ist sofort eine griffbereit und jedesmal eine mit schleppen ist auch nicht zielführend. Aber das Notebook hat man doch eigentlich immer dabei. Wieso kann man die Tastatur (oder auch die Maus) des Notebooks nicht auch an einem anderen Gerät nutzen? Dabei sollte sich die mitzunehmende Hardware auf ein Kabel und ggf. eine eher kleine Hardware beschränken in etwa der Größe eines USB Sticks. Das wäre für den Hacker/Techniker eine geniale Lösung.

Idee

Es soll eine Hardware geschaffen werden, auf Basis eines Mikrocontrollers, die von Zielsystem als Tastatur bzw. Maus erkannt wird. Somit sind auf dem Zielhost keine zusätzlichen Treiber notwendig. Gleichzeitig soll es möglich sein, diese Hardware über das Notebook des Technikers mit Befehlen zu zu versorgen, dass diese Tastatur- und Mausereignisse auslöst. Die Übertragung vom Notebook zur Hardware kann kabelgebunden (USB, Serial) oder auch kabellos (Bluetooth, WiFi) erfolgen. Auf dem Techniknotebook kann zusätzliche Software installiert werden.

Hardware

Um eine Tastatur/Maus am Zielsystem zu emulieren eignet sich ein Mikrocontroller mit einem ATMega32U4 Chip, wie der im Arduino Leonardo, dem Arduino Micro oder diversen Nachbauten zu finden ist (beim Kauf ggf. genau nachlesen, es gibt ähnliche Boards mit anderen Controllern). In unserem Fall haben wir einen Nachbau Pro Micro verwendet.

Für den Prototyp haben wir uns für eine Übertragung zum Notebook via Bluetooth entschieden. Dafür kommt ein HC-06 zum Einsatz. Das ist ein Serial Bluetooth Port, der ausschließlich als Slave arbeitet (also selbst nicht aktiv verbinden kann). Das genügt für unsere Zwecke.

Außerdem benötigt man einen USB A zu Micro USB Kabel oder einen entsprechenden Adapter, damit man die Hardware am Zielsystem befestigen kann, sowie ein paar Drähte und Löttechnik.

Hier noch mal die Liste:

Software

Die Software nimmt die Bluetooth-Befehle entgegen und wandelt sich in Tastatur und Mausereignisse um.