Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-0073-Android-ADBD-bypass-POC — CVE-2026-0073 — Android ADB 守护进程(adbd)通过 EVP_PKEY_cmp 类型混淆绕过 TLS 认证。利用 EC/Ed25519 密钥不匹配,通过 WiFi 获取未经授权的 shell 访问权限。适用于 Android 14+ 的 PoC 漏洞利用。 | Kitploit
工具/GitHubGitHub/martinpsdev/cve-2026-0073-android-adbd-bypass-poc
Android安全漏洞分析漏洞利用渗透测试移动安全红队
GitHubmartinpsdev/cve-2026-0073-android-adbd-bypass-poc

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

CVE-2026-0073 — Android ADB 守护进程(adbd)通过 EVP_PKEY_cmp 类型混淆绕过 TLS 认证。利用 EC/Ed25519 密钥不匹配,通过 WiFi 获取未经授权的 shell 访问权限。适用于 Android 14+ 的 PoC 漏洞利用。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
2263个月前Kitploit 审核通过

CVE-2026-0073 — Android ADBD TLS 认证绕过

EVP_PKEY_cmp() 类型混淆 → 未授权 ADB shell

Python 3.10+ CVE-2026-0073 Android License


🔥 概述

Android ADB 守护进程(adbd)中存在一个严重认证绕过漏洞,允许本地网络上的任何攻击者在未经用户授权的情况下获取目标设备的完整 shell。

该漏洞存在于 daemon/auth.cpp 中的 adbd_tls_verify_cert() 函数内,其中 EVP_PKEY_cmp() 被当作布尔值使用。当存储的密钥为 RSA 且提交的 TLS 客户端证书携带非 RSA 密钥(EC P-256 或 Ed25519)时,EVP_PKEY_cmp() 返回 -1(类型不匹配),而该值在 C/C++ 中为真值,因此 authorized = true。

root@kitploit:~
// daemon/auth.cpp 中的漏洞代码模式
if (EVP_PKEY_cmp(peer_key, stored_key)) {  // ← 漏洞:-1 为真值!
    authorized = true;
}

⚡ 快速开始

安装依赖

root@kitploit:~
pip install cryptography

运行漏洞利用

root@kitploit:~
# 交互式 shell
python adb_tls_auth_bypass.py <目标IP> <端口>

# 单条命令执行
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"

强制指定密钥类型

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

默认情况下,脚本会自动依次尝试 EC P-256 → Ed25519 → EC/TLS 1.2,直到其中一种成功。


🎯 漏洞利用流程

root@kitploit:~
   攻击者                          目标(adbd)
      │                                    │
      │──── TCP 连接 ────────────────────►│
      │──── CNXN(明文)────────────────►│
      │◄─── STLS(TLS 升级请求)────────│
      │──── STLS 回复 ──────────────────►│
      │                                    │
      │════ TLS 1.3 握手 ════════════════│
      │  (提交 EC P-256 客户端证书)      │
      │  EVP_PKEY_cmp(EC, RSA) → -1       │
      │  -1 为真值 → authorized=true      │
      │════════════════════════════════════│
      │                                    │
      │◄─── CNXN(设备信息)────────────│
      │──── OPEN "shell:" ───────────────►│
      │◄─── OKAY ────────────────────────│
      │◄──► WRTE/OKAY(shell 输入/输出)►│
      │                                    │
    [完整 shell 访问权限]                  │

📋 前提条件

要求详情
开发者选项目标设备上已启用

⚠️ 重要提示: RSA 密钥必须位于 /data/misc/adb/adb_keys 中,该文件通过 USB 调试配对(接受"允许 USB 调试?"对话框)生成。无线调试配对(adb pair)将密钥存储在不同位置(adb_known_hosts.pb),不满足此要求。


🛡️ 受影响版本

  • Android 14(AOSP)— ✅ 已确认存在漏洞
  • Android 15(AOSP)— 可能存在漏洞(未修补的构建版本)
  • 各厂商特定构建版本可能有所不同(Samsung One UI、Pixel 等)

如何检查补丁级别

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

🧪 测试环境

已在以下环境中测试并确认可用:

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

🔧 相对原版的改进

本分支包含多项增强功能:

  • ✅ 多密钥回退 — 自动依次尝试 EC P-256 → Ed25519 → EC/TLS 1.2
  • ✅ Ed25519 支持 — 替代密钥类型,兼容性更广
  • ✅ TLS 1.2 回退 — 不同的客户端证书流程(握手期间发送 vs 握手后发送)
  • ✅ 增强证书 — 正确的 X.509 扩展(BasicConstraints、KeyUsage)
  • ✅ Windows 兼容 — 使用线程化 I/O 替代 select(),实现跨平台支持
  • ✅ 更长的超时时间 — 在较慢网络上具有更好的可靠性
  • ✅ 详细诊断 — 通过 -v 标志提供详细的协议跟踪

📁 项目结构

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

⚠️ 免责声明

本工具仅供授权安全测试和教育目的使用。未经授权访问计算机系统属于违法行为。请务必在测试前获得适当授权。作者不对本软件的滥用承担任何责任。


📚 参考资料

  • CVE-2026-0073 — MITRE
  • Android 安全公告
  • OpenSSL EVP_PKEY_cmp 文档
  • ADB 协议参考

如果这对你的研究有帮助,请点个 ⭐

下载工具
EVP_PKEY_cmp() 返回值含义在 C 中为真?结果
1密钥匹配✅已授权(正确)
0密钥不同❌已拒绝(正确)
-1类型不匹配✅已授权(漏洞)
无线调试
已启用(或通过 TCP 端口 5555 使用 ADB)
已存储的 RSA 密钥设备必须至少通过 USB 配对过一次(/data/misc/adb/adb_keys)
网络访问攻击者必须能够访问 adbd 的 TCP 端口