Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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
CVE-2026-0073-Android-ADBD-bypass-POC — CVE-2026-0073 — Contournement de l'authentification TLS du démon ADB Android (adbd) via confusion de type EVP_PKEY_cmp. Obtenez un accès shell non autorisé via WiFi en exploitant une discordance de clés EC/Ed25519. Exploit PoC pour Android 14+. | Kitploit
Outils/GitHubGitHub/martinpsdev/cve-2026-0073-android-adbd-bypass-poc
Sécurité AndroidAnalyse des VulnérabilitésExploitationTests d'IntrusionSécurité MobileRed Teaming
GitHubmartinpsdev/cve-2026-0073-android-adbd-bypass-poc

CVE-2026-0073-Android-ADBD-bypass-POC

CVE-2026-0073 — Contournement de l'authentification TLS du démon ADB Android (adbd) via confusion de type EVP_PKEY_cmp. Obtenez un accès shell non autorisé via WiFi en exploitant une discordance de clés EC/Ed25519. Exploit PoC pour Android 14+.

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
Voir le dépôt
226il y a 3 moisVérifié par Kitploit

CVE-2026-0073 — Contournement d'authentification TLS ADBD Android

Confusion de type EVP_PKEY_cmp() → shell ADB non autorisé

Python 3.10+ CVE-2026-0073 Android License


🔥 Vue d'ensemble

Un contournement d'authentification critique dans le démon ADB d'Android (adbd) permet à tout attaquant sur le réseau local d'obtenir un shell complet sur un appareil cible sans autorisation de l'utilisateur.

La vulnérabilité existe dans adbd_tls_verify_cert() au sein de daemon/auth.cpp, où EVP_PKEY_cmp() est utilisé comme un booléen. Lorsque la clé stockée est RSA et que le certificat client TLS présenté porte une clé non-RSA (EC P-256 ou Ed25519), EVP_PKEY_cmp() renvoie -1 (incompatibilité de type), ce qui est vrai en C/C++, donc authorized = true.

root@kitploit:~
// Modèle de code vulnérable dans daemon/auth.cpp
if (EVP_PKEY_cmp(peer_key, stored_key)) {  // ← BUG : -1 est vrai !
    authorized = true;
}

⚡ Démarrage rapide

Installer les dépendances

root@kitploit:~
pip install cryptography

Exécuter l'exploit

root@kitploit:~
# Shell interactif
python adb_tls_auth_bypass.py <IP_CIBLE> <PORT>

# Exécution d'une commande unique
python adb_tls_auth_bypass.py 192.168.1.42 37521 --cmd "id"

# Mode verbeux (voir la trace complète du protocole)
python adb_tls_auth_bypass.py 192.168.1.42 37521 -v --cmd "id"

Forcer un type de clé spécifique

root@kitploit:~
python adb_tls_auth_bypass.py 192.168.1.42 5555 --key-type ec
python adb_tls_auth_bypass.py 192.168.1.42 5555 --key-type ed25519

Par défaut, le script essaie automatiquement EC P-256 → Ed25519 → EC/TLS 1.2 jusqu'à ce que l'un réussisse.


🎯 Déroulement de l'exploit

root@kitploit:~
   Attaquant                          Cible (adbd)
      │                                    │
      │──── Connexion TCP ────────────────►│
      │──── CNXN (texte clair) ───────────►│
      │◄─── STLS (demande de mise à niveau TLS) ──│
      │──── Réponse STLS ─────────────────►│
      │                                    │
      │════ Poignée de main TLS 1.3 ══════│
      │  (certificat client EC P-256 présenté)  │
      │  EVP_PKEY_cmp(EC, RSA) → -1       │
      │  -1 est vrai → authorized=true    │
      │════════════════════════════════════│
      │                                    │
      │◄─── CNXN (informations de l'appareil) ──│
      │──── OPEN "shell:" ───────────────►│
      │◄─── OKAY ────────────────────────│
      │◄──► WRTE/OKAY (E/S du shell) ────►│
      │                                    │
    [ACCÈS SHELL COMPLET]                  │

📋 Prérequis

Exigence

⚠️ Important : La clé RSA doit se trouver dans /data/misc/adb/adb_keys, qui est rempli via l'appairage de débogage USB (acceptation de la boîte de dialogue « Autoriser le débogage USB ? »). L'appairage de débogage sans fil (adb pair) stocke les clés dans un emplacement différent (adb_known_hosts.pb) et ne satisfait PAS cette exigence.


🛡️ Versions concernées

  • Android 14 (AOSP) — ✅ Vulnérable confirmé
  • Android 15 (AOSP) — Probablement vulnérable (builds non corrigés)
  • Les builds spécifiques aux fabricants peuvent varier (Samsung One UI, Pixel, etc.)

Comment vérifier le niveau de correctif

root@kitploit:~
adb shell getprop ro.build.version.security_patch

🧪 Environnement de test

Testé et confirmé fonctionnel sur :

root@kitploit:~
Kernel:   6.1.23-android14-4-00257-g7e35917775b8-ab9964412
Plateforme : Android 14 (Émulateur Android Studio)

🔧 Améliorations par rapport à l'original

Ce fork inclut plusieurs améliorations :

  • ✅ Repli multi-clés — Essaie automatiquement EC P-256 → Ed25519 → EC/TLS 1.2
  • ✅ Prise en charge d'Ed25519 — Type de clé alternatif pour une compatibilité élargie
  • ✅ Repli TLS 1.2 — Flux de certificat client différent (envoyé pendant la poignée de main vs après la poignée de main)
  • ✅ Certificat amélioré — Extensions X.509 correctes (BasicConstraints, KeyUsage)
  • ✅ Compatible Windows — Utilise des E/S par threads au lieu de select() pour la prise en charge multiplateforme
  • ✅ Délais d'attente augmentés — Meilleure fiabilité sur les réseaux plus lents
  • ✅ Diagnostics verbeux — Trace détaillée du protocole avec l'option -v

📁 Structure du projet

root@kitploit:~
CVE-2026-0073-Android-ADBD-bypass-POC/
├── adb_tls_auth_bypass.py    # Script d'exploit principal
└── README.md                 # Ce fichier

⚠️ Avertissement

Cet outil est fourni à des fins de tests de sécurité autorisés et éducatives uniquement. L'accès non autorisé à des systèmes informatiques est illégal. Obtenez toujours une autorisation appropriée avant de tester. L'auteur décline toute responsabilité en cas d'utilisation abusive de ce logiciel.


📚 Références

  • CVE-2026-0073 — MITRE
  • Bulletin de sécurité Android
  • Documentation OpenSSL EVP_PKEY_cmp
  • Référence du protocole ADB

Si cela a aidé vos recherches, laissez une ⭐

Télécharger l’outil
Valeur de retour de EVP_PKEY_cmp()SignificationVrai en C ?Résultat
1Les clés correspondent✅Autorisé (correct)
0Les clés diffèrent❌Rejeté (correct)
-1Incompatibilité de type✅Autorisé (BUG)
Détails
Options de développementActivées sur l'appareil cible
Débogage sans filActivé (ou ADB sur TCP au port 5555)
Clé RSA stockéeL'appareil doit avoir été apparié via USB au moins une fois (/data/misc/adb/adb_keys)
Accès réseauL'attaquant doit pouvoir atteindre le port TCP d'adbd