
CVE-2026-0013 Android EoP PoC - Compiled artifacts for security research (Derivative of inforcqb/cve-2026-0013-exploit)
Android DocumentsUI 混淆代理漏洞(Confused Deputy)- 安全研究验证项目
本仓库为衍生编译仓库,与原始主仓库构成附属关系。
| 角色 | 仓库 | 说明 |
|---|---|---|
| 主仓库 | inforcqb/cve-2026-0013-exploit | 原始漏洞研究 |
| 本仓库 | XiaoBaiLovesStirring/cve-2026-0013-poc | 云端编译产物分发 |
访问本仓库前,请务必阅读并理解 SECURITY_PROTOCOL.md。
要点:
GitHub Pages: https://XiaoBaiLovesStirring.github.io/cve-2026-0013-poc/
触发编译: https://github.com/XiaoBaiLovesStirring/cve-2026-0013-poc/actions
获取产物: git clone --branch artifacts https://github.com/XiaoBaiLovesStirring/cve-2026-0013-poc.git
改动:将 DocumentsUI 代发起的 targetIntent 指向新增的自建组件 IdTestActivity。该组件负责执行 id 并把运行身份与结果写入 logcat、通知栏,用于实测两条关键事实:
Intent.EXTRA_INTENT 并代为启动目标组件机制说明(重要):依 Android 隔离模型,第三方 App 的任何组件无论由谁启动,都只会运行在它自身声明的进程/UID 内。仅靠 DocumentsUI 代发起,IdTestActivity 仍会以 com.example.cve20260013exploit 自己的 UID(如 u0_a702/10702)运行,不会自动变为 DocumentsUI 的 uid=10054。要让整个 APK 获得 10054,需 sharedUserId="android.uid.documentsui"(需 system 签名,第三方不可得)或 root 环境。v1.0.4 的价值在于验证 EXTRA_INTENT 是否被消费及代发起的真实身份。
问题:在 OPPO/ColorOS 上,DocumentsUI 的 PickActivity 不再消费调用方传入的 Intent.EXTRA_INTENT。实测中 mCallingUid 仍为调用方 u0_a702,PickActivity 仅渲染自身选择界面后即停止,没有任何以 DocumentsUI 身份(uid=10054)代发起目标动作,原混淆代理链路事实上断裂。
修复(触发链重设计):
ACTION_OPEN_DOCUMENT / ACTION_GET_CONTENT + CATEGORY_OPENABLE + */*)下解析出 DocumentsUIpicker.PickActivity 与原生入口 PickActivity 的显式点名兜底,防止找不到入口即崩溃content:// 临时授权 URI 反查授权宿主身份(probeUriGrant),从授权方角度验证混淆代理是否成立机制说明:应用本身无法让 DocumentsUI 进程代执行任意命令;混淆代理的"提权"体现在让它替你持有/转发它以自身 uid 才能获得的授权资源。因此 v1.0.3 改为验证"谁拿到了 DocumentsUI 授予的 URI 权限",而非在应用自己进程内执行 id。
编译修复记录:首发构建失败,getPackageManager().resolveActivity() 返回类型为 ResolveInfo 而非 ComponentName,报错 error: incompatible types: ResolveInfo cannot be converted to ComponentName。修复为从 ResolveInfo.activityInfo 中取出 packageName/name 构造 ComponentName 后通过。
改动:将概念验证的动作从「启动 Termux」改为「触发混淆代理链路后执行 id 命令,并把结果显示在系统通知栏」。
id 命令(尝试 sh -c id、id、/system/bin/id、/system/xbin/id 多种路径)uid/gid/groups 等执行结果显示在通知栏picker.PickActivity → 原生 .PickActivity)POST_NOTIFICATIONS 权限来发送通知问题:多家厂商(如 OPPO)魔改了 DocumentsUI 的类路径,原生入口 com.android.documentsui.PickActivity 已被移动至 com.android.documentsui.picker.PickActivity,导致旧版编译产物在目标设备上无法定位到漏洞利用入口。
修复:
com.android.documentsui.picker.PickActivity.PickActivity编译失败的排查指引(重要):
dumpsys package com.android.documentsui 或 Activity Resolver Table 自行确认被厂商魔改后的真实入口类名,然后修改 ExploitActivity.java 中的 setClassName 参数并推送触发重新编译CVE-2026-0013 | HIGH (CVSS 8.4) | CWE-441 | Android 14-16 | DocumentsUI PickActivity
修复公告: Android Security Bulletin 2026-03-01