Retour aux articles • MATÉRIEL • • 2 min de lecture

Hak5 USB Rubber Ducky : BadUSB & DuckyScript

Fonctionnement du Hak5 USB Rubber Ducky : pourquoi un système d'exploitation fait confiance à un clavier USB HID, langage DuckyScript 3.0 et défense Blue Team.

Hak5 USB Rubber Ducky : BadUSB & DuckyScript

1. Le Principe Fondamental du BadUSB : Pourquoi l’OS Fait Confiance aux Claviers

Inventé par Hak5 en 2010 et continuellement modernisé, l’USB Rubber Ducky a popularisé la classe d’attaque BadUSB / Keystroke Injection. Sous le boîtier d’une clé USB ordinaire se cache non pas une mémoire flash passive (USB Mass Storage : Class 08h), mais un microcontrôleur programmé pour s’annoncer auprès du système d’exploitation comme un clavier standard (USB HID : Human Interface Device, Class 03h).

Dès son insertion dans un port USB sur une session déverrouillée, il injecte des commandes à une vitesse surhumaine (plus de 1 000 mots par minute) via le langage DuckyScript 3.0.

Architecture & Flux : Hak5 USB Rubber Ducky : BadUSB & DuckyScri

2. DuckyScript 3.0 & Détection d’OS Passive

Les révisions modernes du Rubber Ducky analysent les requêtes d’énumération USB et l’état des voyants clavier (NumLock, CapsLock, ScrollLock) pour adapter automatiquement leur comportement :

Fonction DuckyScript 3.0Mécanisme TechniqueUsage Légitime en Administration IT & Audit
Fingerprinting d’OSAnalyse des descripteurs USB demandés par l’hôte (Windows, macOS, Linux, Android)Exécuter le bon script de diagnostic selon l’OS détecté sans intervention manuelle
Conditions sur LEDs ($_CAPSLOCK_ON)Canal auxiliaire bidirectionnel via l’état des voyants HIDVérifier qu’une commande s’est bien terminée avant de passer à l’étape suivante
Automatisation de ProvisioningSaisie rapide de configurations réseau ou d’enrôlement en atelierPréparer 50 postes neufs hors réseau en quelques secondes chacun

3. Contre-Mesures Blue Team : Bloquer l’Injection de Frappes HID

  1. Détection comportementale de la vitesse de frappe (EDR / Endpoint Protection) : Aucun être humain ne tape 60 caractères par seconde avec un intervalle inter-touches constant de 2 ms. Les agents EDR modernes bloquent et verrouillent immédiatement la session lorsqu’un flux HID dépasse le seuil biométrique humain.
  2. Contrôle d’accès aux ports USB (USBGuard / Intune / GPO) : Exiger une validation explicite à la souris ou un code PIN avant d’autoriser tout nouveau périphérique de saisie Class 03h.

Sources


Si vous voulez plus d’information sur l’infrastructure vous pouvez voir mon repo à ce sujet : https://github.com/ravindrajob/InfraAtHome