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

M5Stack Cardputer : Terminal ESP32-S3

Analyse du M5Stack Cardputer (module M5StampS3 ESP32-S3 et clavier QWERTY 56 touches) : terminal SSH de poche, édition directe de payloads BadUSB DuckyScript, extensions Grove et défense USBGuard.

M5Stack Cardputer : Terminal ESP32-S3

1. À quoi ça sert : Un Micro-Terminal Clavier Autonome au Format Carte de Crédit

Conçu par M5Stack autour du module M5StampS3 (ESP32-S3FN8 Dual-Core Xtensa LX7 à 240 MHz, 8 Mo de Flash, Wi-Fi 2,4 GHz et BLE 5.0), le M5Stack Cardputer se distingue de tous les autres outils ESP32 par son clavier physique matriciel de 56 touches associé à un écran IPS de 1,14 pouce (240×135 px), un lecteur MicroSD, un émetteur infrarouge, un microphone MEMS SPM1423, un haut-parleur I2S et une double batterie LiPo interne (120 mAh + 1400 mAh).

Son atout majeur sur le terrain : pouvoir saisir des commandes ou modifier un script directement sur l’appareil, sans dépendre d’un smartphone en Bluetooth ni d’un ordinateur hôte.

Architecture & Flux : M5Stack Cardputer : Terminal ESP32-S3

2. Comment l’utiliser (ou le détourner) en Audit & Administration Système

Grâce au chargeur multi-firmware M5Launcher qui permet de basculer à la volée entre différentes images stockées sur la carte MicroSD (Bruce, Evil-Cardputer, MicroHydra, client SSH / Telnet / UART), le Cardputer remplit quatre rôles distincts :

Rôle OpérationnelFonctionnement TechniqueAvantage du Clavier 56 Touches
Édition et Exécution BadUSB (DuckyScript)Le contrôleur USB OTG de l’ESP32-S3 s’annonce comme un clavier USB standard (HID)Adapter une adresse IP, un délai ou une disposition clavier (AZERTY / QWERTY) directement sur place en 15 secondes avant de brancher le câble USB-C.
Console Série UART & Terminal SSH de PocheConnexion Wi-Fi SSH ou liaison série (3,3 V) via le connecteur Grove HY2.0-4PDiagnostiquer un commutateur, un routeur OpenWrt ou un Raspberry Pi sans sortir de PC portable.
Audit Wi-Fi 802.11 (2,4 GHz)Analyse des canaux, capture d’entêtes EAPOL / PMKID vers la carte MicroSDSaisie immédiate des filtres SSID et consultation de l’état des captures à l’écran.
Modularité Matérielle via Port GroveBranchement à chaud de modules externes (CC1101 Sub-GHz, PN532 NFC, GPS, LoRa SX1262)Étendre l’appareil uniquement avec le capteur requis pour la mission.

3. Contre-Mesures Blue Team : Neutraliser les Claviers Programmables de Poche

  1. Verrouillage systématique de session (Win + L / délai d’inactivité $\le 2\text{ min}$) : Une injection de frappes clavier HID (BadUSB) repose sur l’accès à une session utilisateur ouverte pour lancer un interpréteur (PowerShell ou /bin/sh).
  2. Contrôle d’accès matériel USB (USBGuard / Intune Device Control) : Sur les serveurs et postes critiques, bloquez l’énumération des périphériques présentant le couple Vendor ID / Product ID par défaut d’Espressif (VID 303a) ou n’autorisez que les claviers répertoriés dans la politique matérielle.
  3. Désactivation de l’exécution non signée (Constrained Language Mode & AppLocker) : Empêchez l’exécution de scripts PowerShell encodés en Base64 (powershell -ep bypass -enc ...) générés par les charges utiles DuckyScript classiques.

Sources


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