Tutoriel sur le sniffer USB à 34 $ : Capturez les mouvements de la souris et les frappes au clavier en utilisant Wireshark
Tutoriel USB Sniffer : Capturez les mouvements de la souris et les frappes au clavier en utilisant Wireshark
Dans ce projet, nous explorons comment un dispositif de détection USB peut être utilisé pour surveiller et analyser la communication USB entre un ordinateur et des périphériques d'entrée courants tels qu'une souris et un clavier. En plaçant un détecteur USB en ligne entre le périphérique USB et l'ordinateur, tous les paquets USB passant peuvent être capturés et analysés en temps réel à l'aide de Wireshark.
Ce tutoriel démontre comment les mouvements de la souris, les clics de souris et même les frappes au clavier (y compris les mots de passe) peuvent être observés au niveau du protocole USB. Le projet est destiné à des fins éducatives pour comprendre comment fonctionnent en interne les dispositifs d'interface humaine USB (HID) et pourquoi la sécurité physique est tout aussi importante que la sécurité logicielle.

Qu'est-ce qu'un sniffer USB ?
Un sniffeur USB est un dispositif matériel qui se place entre un périphérique USB (comme une souris ou un clavier) et un ordinateur hôte. Il transmet des données de manière transparente pour que l'appareil fonctionne normalement, tout en capturant et exposant simultanément les paquets de données USB via une interface de surveillance distincte.
Dans ce projet, le sniffer USB fonctionne comme un dispositif de passage :
- La souris ou le clavier USB se connecte à l'analyseur.
- Le renifleur se connecte à l'ordinateur.
- Une connexion USB séparée du sniffer va à un ordinateur de surveillance exécutant Wireshark.
Tout le trafic USB circulant entre l'appareil et l'ordinateur peut être capturé et décodé sans affecter le fonctionnement normal :contentReference[oaicite:0]{index=0}.

Principaux composants utilisés
Matériel de sniffing USB
Le sniffer USB utilisé dans ce projet est basé sur un design FPGA créé par Alex Tarasov. Le design complet inclut le firmware, les fichiers de carte électronique et les outils logiciels. L'unité commerciale utilisée ici est préchargée avec du firmware, donc aucun flashage ni configuration n'est requis avant l'utilisation.
En interne, le sniffer se connecte aux lignes de données différentielles USB et duplique les paquets vers une interface USB séparée que Wireshark peut surveiller.
Souris et Clavier (Dispositifs USB HID)
Les deux souris et claviers sont des dispositifs d'interface humaine USB (HID). Ces dispositifs envoient des rapports périodiques à l'ordinateur hôte décrivant leur état :
- Souris : états des boutons, mouvement X, mouvement Y
- Clavier : touches de modification et codes de balayage des touches
Ces rapports sont transmis en clair, sous forme non chiffrée, via USB, c'est pourquoi ils peuvent être capturés par un sniffer.
Ordinateur avec Wireshark
Wireshark est utilisé pour capturer et analyser les paquets USB. Sur Windows, la capture USB nécessite des composants supplémentaires pour permettre l'accès au trafic USB au niveau du pilote.
Câblage et Connexion
Le sniffer USB est connecté en ligne entre le périphérique USB et l'ordinateur.

- Connectez la souris ou le clavier au port d'entrée USB du sniffer.
- Connectez le port de sortie USB du renifleur à l'ordinateur.
- Connectez le port USB de surveillance du sniffer à le même ordinateur ou à un autre ordinateur exécutant Wireshark.
Le périphérique USB continue de fonctionner normalement tandis que son trafic est reflété sur le port de surveillance.
Installation des logiciels requis
Installation de Wireshark
Wireshark doit être installé sur l'ordinateur de surveillance. Lors de l'installation sur Windows, il est essentiel d'activer le composant de support de capture USB. Sans ce pilote, le trafic USB ne peut pas être capturé.
Une fois installé, Wireshark affichera les interfaces de capture USB aux côtés des interfaces réseau.
Pilote de sniffing USB (Windows)
Un petit exécutable d'aide est nécessaire sous Windows pour permettre à Wireshark d'accéder aux données de sniffing USB depuis le matériel. Cet exécutable doit être placé dans le chemin système (par exemple, directement sous le disque C:) afin que Wireshark puisse communiquer avec le sniffer.
Capturer les données USB dans Wireshark
Après avoir lancé Wireshark, sélectionnez l'interface de sniffer USB et commencez à capturer. Au départ, une grande quantité de trafic USB non lié peut apparaître.
Application de filtres USB
Pour se concentrer uniquement sur les données USB pertinentes, un filtre d'affichage est appliqué :
usbllCe filtre affiche uniquement les paquets de couche de lien USB, qui contiennent les transactions USB brutes échangées entre le périphérique et l'hôte.
Un filtrage supplémentaire est nécessaire car l'USB produit un volume de données très élevé.
Filtrage par ID de paquet (PID)
Les paquets de données de la souris et du clavier peuvent être identifiés par des identifiants de paquet spécifiques (PID). Dans ce projet, les PID pertinents observés sont :
0xC30x4B
Cela peut être filtré dans Wireshark en utilisant :
usbll.pid == 0xC3 || usbll.pid == 0x4BCe filtre isole les paquets de rapport HID provenant de la souris ou du clavier.
Compréhension des données de souris
Lorsque la souris est déplacée ou cliquée, des rapports HID sont envoyés en continu. Chaque rapport contient plusieurs octets :
- ID de rapport
- États des boutons (gauche, droite, milieu)
- Mouvement sur l'axe des X
- Mouvement sur l'axe des Y
En observant les valeurs de bytes changeantes dans Wireshark, la direction et la vitesse du mouvement de la souris peuvent être déduites. Même sans cliquer, le mouvement seul génère une activité USB visible.
Comprendre les données du clavier
Les données du clavier sont envoyées sous forme de rapports HID contenant des codes de balayage plutôt que des valeurs ASCII. Chaque touche correspond à un ID d'utilisation HID spécifique.
Par exemple :
0x04→ Lettre A0x05→ Lettre B0x0E→ Lettre K
Les lettres majuscules et minuscules sont déterminées par des touches de modification telles que Shift, qui apparaissent dans des octets séparés du rapport.
Les touches de fonction telles que F12 génèrent également des codes de numérisation uniques qui peuvent être observés directement dans les paquets capturés.
Implications en matière de sécurité
Ce projet démontre clairement que le trafic USB HID n'est pas chiffré. Si un appareil malveillant est placé physiquement entre un clavier et un ordinateur, il peut capturer chaque frappe, y compris les noms d'utilisateur et les mots de passe.
C'est pourquoi la sécurité USB, le matériel de confiance et le contrôle d'accès physique sont essentiels dans des environnements sensibles.
Résumé de la démonstration
Dans cette démonstration, les éléments suivants ont été capturés et décodés avec succès :
- Mouvement de la souris et activité des boutons
- Pressions individuelles des touches du clavier
- Touches de fonction et touches de modification
- Mots complets tapés sur le clavier
Le renifleur USB fonctionne de manière transparente, rendant la détection difficile sans inspection physique.
Conclusion
Ce projet de renifleur USB offre une démonstration pratique puissante de la façon dont la communication USB fonctionne au niveau le plus bas. En combinant du matériel de reniflage dédié avec Wireshark, il devient possible de voir exactement comment les périphériques d'entrée communiquent avec les ordinateurs.
Le projet est idéal pour apprendre les protocoles USB, les structures de rapports HID et les considérations de sécurité dans le monde réel. Bien qu'il soit démontré avec une souris et un clavier, les mêmes principes s'appliquent à de nombreux autres périphériques USB.
Téléchargement de logiciel
L'application d'assistance Windowsusb_sniffer_win.exenécessaire pour capturer des données USB avec Wireshark est disponible en téléchargement ci-dessous cet article.
Ce dont vous pourriez avoir besoin
-
Amazon
-
eBayAcheter un sniffer USB sur eBayebay.us
-
AliExpressAchetez un sniffer USB sur AliExpresss.click.aliexpress.com
-
BanggoodAchetez un sniffeur USB sur Banggoodbanggood.com
Ressources et références
-
TéléchargerTélécharger Wiresharkwireshark.org
Fichiers📁
Manuel de l'Utilisateur
-
Manuel de l'utilisateur du sniffer USB_en français
usb_sniffer_manual_english-1.pdf1.06 MB
Autres fichiers
-
usb_sniffer_win.exe
usb_sniffer_win.zip0.29 MB