Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
UniPwn — Framework d'exploitation BLE pour robots Unitree : l'injection de commandes via des clés AES codées en dur permet la prise de contrôle à distance, l'injection de payload et la propagation de type ver. | Kitploit
Outils/GitHubGitHub/bin4ry/unipwn
Sécurité BluetoothFrameworks d'ExploitationAnalyse des VulnérabilitésExploitationRétro-ingénierieSécurité Matériel et IoTDéveloppement de Charges Utiles
GitHubbin4ry/unipwn

UniPwn

Framework d'exploitation BLE pour robots Unitree : l'injection de commandes via des clés AES codées en dur permet la prise de contrôle à distance, l'injection de payload et la propagation de type ver.

Voir le dépôt
3987215il y a 11 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Analyse de l'injection de commandes du service BLE du robot Unitree

Meme

Auteur: Bin4ry aka Andreas Makris [[email protected]]
Co-auteur: h0stile aka Kevin Finisterre
Contributeur: legion1581 aka Konstantin Severov de theroboverse a aidé à corriger le payload de l'injection et l'a prouvé avec un PoC entièrement fonctionnel 🙂 merci mec, ce fut une contribution cruciale, vraiment très appréciée !

Date: 20 septembre 2025

CVEs

CVE-2025-35027
CVE-2025-60017
CVE-2025-60250
CVE-2025-60251

Article

Les recherches de ce dépôt sont intégrées dans un article qui présente une évaluation systématique de la sécurité du Unitree G1. L'impact des recherches n'est cependant PAS limité au seul G1, mais concerne toute la gamme de produits Unitree à partir de la série Go2. Le code des robots Unitree plus récents semble être un fork du codebase Go2, ce qui rend précisément la lignée Go1 et les autres robots Unitree antérieurs au Go2 non vulnérables. Toutes les variantes modernes sont cependant impactées à l'heure actuelle. Unitree n'a pas encore publié d'advisory clarifiant l'impact exact sur l'ensemble de la gamme.

Lien vers l'article: https://arxiv.org/abs/2509.14139
Titre: Cybersecurity AI: Humanoid Robots as Attack Vectors
Auteurs: Víctor Mayoral-Vilches, Andreas Makris, Kevin Finisterre```bibtex @misc{mayoralvilches2025cybersecurityaihumanoidrobots, title={Cybersecurity AI: Humanoid Robots as Attack Vectors}, author={Víctor Mayoral-Vilches and Andreas Makris and Kevin Finisterre}, year={2025}, eprint={2509.14139}, archivePrefix={arXiv}, primaryClass={cs.CR}, url={https://arxiv.org/abs/2509.14139}, }

Table des matières
=================

* [Analyse de l'injection de commandes dans le service BLE du robot Unitree](#unitree-robot-ble-service-command-injection-analysis)
   * [Aperçu](#overview)
   * [Découverte du service BLE](#ble-service-discovery)
   * [Rétro-ingénierie du protocole](#reverse-engineering-the-protocol)
   * [Instruction 1 : La poignée de main "sécurisée"](#instruction-1-the-secure-handshake)
   * [Instruction 2 : Obtenir le numéro de série](#instruction-2-get-serial-number)
   * [Instruction 3 : Initialiser le mode WiFi](#instruction-3-initialize-wifi-mode)
   * [Instruction 4 : Définir le SSID](#instruction-4-set-ssid)
   * [Instruction 5 : Définir le mot de passe](#instruction-5-set-password)
   * [Instruction 6 : Définir le code pays (le déclencheur !)](#instruction-6-set-country-code-the-trigger)
   * [Le thread de configuration WiFi](#the-wifi-setting-thread)
   * [La fonction vulnérable : injection de commandes](#the-vulnerable-function-command-injection)
   * [Résumé du déroulement de l'attaque](#attack-flow-summary)
   * [La menace auto-propagée](#the-wormable-threat)
   * [Preuve de concept](#proof-of-concept)
   * [Déploiement réel & impact](#real-world-deployment--impact)
      * [Déploiements actuels](#current-deployments)
      * [Évaluation de l'impact](#impact-assessment)
      * [Impact sur les forces de l'ordre & l'armée](#law-enforcement--military-impact)
      * [Environnements d'entreprise](#corporate-environments)
      * [Impact sur les consommateurs](#consumer-impact)
      * [Propagation auto-propagée](#wormable-propagation)
   * [Détails techniques](#technical-details)
      * [Architecture du service BLE](#ble-service-architecture)
      * [Paramètres cryptographiques](#cryptographic-parameters)
      * [Structure des paquets](#packet-structure)
   * [Enseignements tirés](#lessons-learned)
   * [Chronologie de la divulgation](#disclosure-timeline)
      * [Première et dernière tentative de signaler un autre problème de sécurité dans vos robots phares G1, Go2 et autres robots](#first-and-last-attempt-to-report-another-security-issue-in-your-flagship-g1-and-go2-and-other-bots)
   * [Avertissement](#disclaimer)
   * [Un schéma récurrent de problèmes de sécurité](#a-pattern-of-security-issues)
   * [Conclusion](#conclusion)
   * [Mention légale](#legal-notice)
   * [Contribution](#contributing)
   * [Licence et accès à ces fichiers](#licensing-and-access-to-these-files)


---

## Aperçu

Au cours de nos recherches en sécurité sur les plateformes robotiques Unitree, nous avons découvert une vulnérabilité critique dans l'interface de configuration Wi-Fi Bluetooth Low Energy (BLE). Cette vulnérabilité affecte plusieurs modèles de robots Unitree, notamment les séries Go2, G1, H1 et B2, jusqu'au dernier firmware en date [20 septembre 2025].

**🎯 Il s'agit du premier exploit divulgué publiquement ciblant les robots humanoïdes !**

La vulnérabilité combine plusieurs problèmes de sécurité : des clés cryptographiques codées en dur, un contournement trivial de l'authentification et une injection de commandes non assainie. Ce qui rend cela particulièrement préoccupant, c'est qu'il est totalement **auto-propagateur** — les robots infectés peuvent automatiquement compromettre d'autres robots à portée BLE. Cette vulnérabilité permet à l'attaquant de prendre entièrement le contrôle de l'appareil.

Nous avons publié les clés cryptographiques en juillet [Lien vers le tweet](https://x.com/Bin4ryDigit/status/1950566849072005304) mais Unitree n'en a pas tenu compte.

Plongeons dans les détails techniques de la façon dont nous avons découvert et exploité cette vulnérabilité.

## Découverte du service BLE

La première étape consistait à identifier les services BLE exposés par les robots. Tous les modèles Unitree concernés exposent un service BLE personnalisé pour la configuration Wi-Fi :```
Service UUID: 0000ffe0-0000-1000-8000-00805f9b34fb
Write Characteristic: 0000ffe2-0000-1000-8000-00805f9b34fb  
Notify Characteristic: 0000ffe1-0000-1000-8000-00805f9b34fb

Rétro-ingénierie du protocole

Grâce à la rétro-ingénierie, nous avons découvert que le robot implémente un gestionnaire de réception qui traite les paquets BLE chiffrés. Voici ce que nous avons trouvé :

Déchiffrement des paquets

Le gestionnaire de réception déchiffre d'abord les paquets entrants à l'aide de paramètres AES codés en dur :```python AES_KEY = "df98b715d5c6ed2b25817b6f2554124a" AES_IV = "2841ae97419c2973296a0d4bdfe19a4f" Mode: AES-CFB128

![Receive manager](https://assets.kitploit.com/production/public/readmes/49064/6f3e6d08a4d69e657e9d8d17f957dbaedf979c3629a109846390030c9fa783d2.png)

Après déchiffrement, les paquets sont traités en fonction des codes d'instruction dans une structure switch-case. Examinons chaque instruction :

## Instruction 1 : le handshake « sécurisé »

![Handshake instruction](https://assets.kitploit.com/production/public/readmes/49064/0edbe2419cb07586658a3811f515ab09e09dc9c5f204d557bfe6e1ee3f5243d5.png)

L'« authentification » du handshake est ridiculement simple :

![Handshake implementation](https://assets.kitploit.com/production/public/readmes/49064/7a0d0de452924790859fcf34ab81b103d531d8c9ffc970674ae6b5317448ce3e.png)

![Authentication flag](https://assets.kitploit.com/production/public/readmes/49064/88bb3cc9c24ac7b81d9c610b48755e677d4c026abd6b80f6ea2f585e576a94a2.png)

En gros, le robot vérifie si le paquet déchiffré contient la chaîne `"unitree"` comme secret du handshake, puis passe le flag `valid_incoming_user` à 1. C'est tout le mécanisme d'« authentification » !

## Instruction 2 : obtenir le numéro de série
Télécharger l’outil