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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-0073 — Preuve de concept d'exploit pour un contournement de l'authentification TLS du débogage sans fil adbd d'Android, exploitant une inadéquation de type de clé EC/RSA pour obtenir un shell distant non authentifié. | Kitploit
Outils/GitHubGitHub/umarrehmansiddiqui/cve-2026-0073
Sécurité AndroidAnalyse des VulnérabilitésExploitationExploitation d'Applications WebCryptographieSécurité MobileAuthentificationOutil d'Accès à Distance

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
GitHub
umarrehmansiddiqui/cve-2026-0073

CVE-2026-0073

Preuve de concept d'exploit pour un contournement de l'authentification TLS du débogage sans fil adbd d'Android, exploitant une inadéquation de type de clé EC/RSA pour obtenir un shell distant non authentifié.

Voir le dépôt
1il y a 2 joursPas encore vérifié

CVE-2026-0073 : Contournement d'authentification du débogage sans fil Android (adbd)

Avertissement : Cette preuve de concept (PoC) est fournie strictement à des fins éducatives et de recherche en sécurité autorisée. L'accès non autorisé à des systèmes informatiques est illégal. Assurez-vous toujours de disposer d'une autorisation explicite avant de tester sur un appareil ou un réseau.

📖 Comprendre la vulnérabilité (adapté aux débutants)

Les appareils Android disposent d'une fonctionnalité appelée Débogage sans fil, qui permet aux développeurs de se connecter à l'appareil via Wi-Fi sans câble USB. Pour sécuriser cette connexion, l'appareil utilise le chiffrement TLS et exige que l'ordinateur qui se connecte prouve son identité à l'aide d'une clé cryptographique.

Où se situe la faille ? Lorsqu'un ordinateur se connecte, le démon Android (adbd) vérifie si la clé de l'ordinateur correspond à l'une des clés précédemment autorisées. Il effectue cette vérification à l'aide d'une fonction mathématique intégrée (EVP_PKEY_cmp) qui renvoie l'un de trois nombres :

  • 1 signifie : « Les clés correspondent parfaitement. »
  • 0 signifie : « Les clés ne correspondent pas. »
  • -1 signifie : « Erreur : Les clés sont de types complètement différents (par exemple, comparaison d'une clé RSA avec une clé EC). »

Le bug : Le programmeur a écrit une vérification simple : if (result) { grant_access(); }. En programmation, 1 et -1 sont tous deux considérés comme « Vrai ». Par conséquent, si un attaquant envoie intentionnellement un type de clé complètement différent (comme une clé à courbe elliptique au lieu de la clé RSA attendue), la fonction renvoie -1 (une erreur). Le code défectueux voit -1, suppose que cela signifie « Vrai », et accorde l'accès complet malgré tout.

Le résultat : Un attaquant présent sur le même réseau Wi-Fi peut contourner entièrement l'authentification et obtenir un shell distant sur l'appareil sans avoir besoin des clés d'appairage d'origine, et sans que l'utilisateur ne voie aucune demande d'approbation.


⚠️ Prérequis

Pour que cet exploit fonctionne, l'appareil Android cible doit remplir deux conditions :

  1. Le débogage sans fil doit être activé dans les options pour les développeurs.
  2. L'appareil doit avoir été préalablement appairé avec au moins un ordinateur. (L'exploit repose sur le fait que l'appareil possède une clé RSA existante dans son keystore pour déclencher le bug de type incompatible).

Configuration requise pour la machine de l'attaquant

Ce script nécessite Python 3 et la bibliothèque cryptography pour générer les certificats éphémères à la volée.

Vous pouvez installer la bibliothèque requise à l'aide de apt (sur Debian/Ubuntu/Kali) ou de pip :

Avec apt (recommandé sous Linux) :

sudo apt update
sudo apt install python3-cryptography

Utilisation de pip (multiplateforme) :

pip3 install cryptography

🔍 Trouver le port cible

Contrairement au débogage USB, Android attribue un port élevé aléatoire pour le débogage sans fil à chaque redémarrage de l'appareil ou changement de réseau Wi-Fi.

Si vous ne connaissez pas le port actuel, vous pouvez facilement le rechercher à l'aide de nmap. Les ports de débogage sans fil se situent généralement entre 30000 et 50000.

Exécutez la commande suivante, en remplaçant <hostname> par l'adresse IP de votre appareil cible :

nmap -Pn -p T:30000-50000 <hostname>

Comment lire la sortie : Recherchez un port qui apparaît comme open. Par exemple :

PORT      STATE SERVICE
41234/tcp open  unknown

Dans cet exemple, 41234 est le port que vous utiliserez à l'étape suivante.


🚀 Utilisation

Une fois que vous disposez du nom d'hôte/IP cible et du port correct, vous pouvez exécuter l'exploit.

1. Shell interactif

Pour ouvrir un shell distant entièrement interactif (similaire à SSH) :

python3 adb_bypass.py <hostname> <port>

Exemple :

python3 adb_bypass.py 192.168.1.50 41234

Une fois connecté, vous serez placé dans une invite de commande de l'utilisateur shell. Appuyez sur Ctrl+C pour quitter.

2. Exécuter une seule commande

Si vous souhaitez simplement exécuter une commande spécifique et voir la sortie sans entrer dans un shell interactif, utilisez l'option --cmd :

python3 adb_bypass.py <hostname> <port> --cmd "id"

3. Mode verbeux

Pour voir le trafic réseau sous-jacent et les détails de la poignée de main à des fins de débogage ou de recherche, ajoutez l'option -v :

python3 adb_bypass.py <hostname> <port> -v

🛠️ Fonctionnement (résumé technique)

  1. Négociation en clair : Le script se connecte au port TCP de la cible et échange les paquets initiaux CNXN et STLS pour convenir d'une mise à niveau TLS.
  2. Génération de certificat éphémère : À l'aide de la bibliothèque cryptography, le script génère en mémoire une clé privée EC P-256 éphémère et un certificat X.509 auto-signé.
  3. Mise à niveau vers TLS 1.3 : Le script fait passer le socket en TLS 1.3, en présentant le certificat EC à l'appareil Android.
  4. Déclenchement de la faille : L'appareil tente de comparer le certificat EC à ses clés RSA stockées. EVP_PKEY_cmp renvoie -1, la vérification if (cmp) s'évalue à vrai, et l'appareil marque la connexion comme autorisée.
  5. Exploitation post-TLS : Le script vide les paquets de handshake post-TLS et ouvre immédiatement un flux shell: en utilisant une grande fenêtre delayed_ack, ce qui aboutit à un shell distant non authentifié.

Télécharger l’outil