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_zh_CN — CVE-2026-0073-Android-ADBD-bypass-POC汉化版 | Kitploit
Outils/GitHubGitHub/ctn-qvo/cve-2026-0073-android-adbd-bypass-poc_zh_cn
Sécurité AndroidAnalyse des VulnérabilitésExploitationTests d'IntrusionApprentissage et ÉducationExploitation de Binaires
GitHubctn-qvo/cve-2026-0073-android-adbd-bypass-poc_zh_cn

CVE-2026-0073-Android-ADBD-bypass-POC_zh_CN

CVE-2026-0073-Android-ADBD-bypass-POC汉化版

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
3248il y a 2 moisPas encore vérifié

CVE-2026-0073 — Android ADBD TLS : contournement de l'authentification

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

Python 3.10+ CVE-2026-0073 Android 许可证


🔥 Aperçu

Une vulnérabilité critique de contournement de l'authentification existe dans le démon ADB d'Android (adbd), permettant à tout attaquant présent sur le réseau local d'obtenir un shell complet sur l'appareil cible, sans aucune autorisation de l'utilisateur.

La vulnérabilité se trouve dans la fonction adbd_tls_verify_cert() du fichier daemon/auth.cpp, où EVP_PKEY_cmp() est utilisée comme une valeur booléenne. Lorsque la clé stockée est une clé RSA et que le certificat client TLS fourni porte une clé non-RSA (EC P-256 ou Ed25519), EVP_PKEY_cmp() renvoie -1 (incompatibilité de type), ce qui est considéré comme vrai en C/C++, donc authorized = true.

root@kitploit:~
// daemon/auth.cpp 中的易受攻击代码模式
if (EVP_PKEY_cmp(peer_key, stored_key)) { // ← BUG: -1 是真值!
已授权 = true;
}

⚡ Démarrage rapide

Installer les dépendances

root@kitploit:~
pip install cryptography

Exécuter l'exploit

root@kitploit:~
# 交互式 shell
python adb_tls_auth_bypass.py <TARGET_IP> <PORT>

# 单命令执行
python adb_tls_auth_bypass.py 192.168.1.42 37521 --cmd "id"

# 详细模式(查看完整协议跟踪)
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 cela réussisse.


🎯 Processus d'exploitation

root@kitploit:~
攻击者目标(adbd)
      │                                    │
│──── TCP 连接 ──────────────────►│
│──── CNXN(明文)────────────►│
│◄─── STLS(TLS 升级请求)──│
│──── STLS 回复 ──────────────────►│
      │                                    │
│════ TLS 1.3 握手 ════════════│
│(已提交 EC P-256 客户证书)│
│ EVP_PKEY_cmp(EC, RSA) → -1 │
│ -1 为真 → authorized=true │
│════════════════════════════════════│
      │                                    │
│◄─── CNXN(设备信息)──────────│
│──── 打开“shell:” ───────────────►│
│◄─── 好的 ────────────────────────│
│◄──► WRTE/OKAY(shell I/O)──────►│
      │                                    │
【完全 shell 访问权限】

📋 Prérequis

Exigence

⚠️ Remarque importante : la clé RSA doit se trouver dans le fichier /data/misc/adb/adb_keys, qui est rempli via l'appairage du débogage USB (en acceptant la boîte de dialogue « Autoriser le débogage USB ? »). L'appairage en débogage sans fil (adb pair) stocke la clé dans un emplacement différent (adb_known_hosts.pb), et ne répond donc pas à cette exigence.


🛡️ Versions affectées

  • Android 14 (AOSP) — ✅ Vulnérabilité confirmée
  • Android 15 (AOSP) — Potentiellement vulnérable (versions non corrigées)
  • Les versions des différents fabricants peuvent varier (par exemple 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 l'appareil suivant :

root@kitploit:~
内核:6.1.23-android14-4-00257-g7e35917775b8-ab9964412
平台:Android 14(Android Studio 模拟器)

🔧 Améliorations par rapport à l'original

  • ✅ 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 (envoi pendant la poignée de main et après la poignée de main)
  • ✅ Certificats renforcés — extensions X.509 correctes (BasicConstraints, KeyUsage)
  • ✅ Compatible Windows — utilise des E/S par threads plutôt que select() pour une prise en charge multiplateforme
  • ✅ Délais d'expiration accrus — fiabilité accrue sur les réseaux plus lents
  • ✅ Diagnostics détaillés — affiche la trace détaillée du protocole à l'aide du drapeau -v

📁 Structure du projet

root@kitploit:~
CVE-2026-0073-Android-ADBD-bypass-POC/
├── adb_tls_auth_bypass.py # 主漏洞利用脚本
└── README.md # 此文件

⚠️ Avertissement

Cet outil est destiné uniquement à des tests de sécurité autorisés et à des fins éducatives. L'accès non autorisé à un système informatique est illégal. Assurez-vous d'obtenir une autorisation appropriée avant tout test. 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 ce projet vous a été utile pour vos recherches, merci de laisser une étoile ⭐

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❌Refusé (correct)
-1Incompatibilité de type✅Autorisé (BUG)
Détails
Options de développementActivées sur l'appareil cible
Débogage sans filActivé (ou ADB via le port TCP 5555)
Clé RSA stockéeL'appareil doit avoir été appairé au moins une fois via USB (/data/misc/adb/adb_keys)
Accès réseauL'attaquant doit avoir accès au port TCP d'adbd