找回密码
立即注册
搜索
发回帖 发新帖

6328

积分

0

好友

799

主题
发表于 2 小时前 | 查看: 2| 回复: 0

导语:Android 安全公告 2026 年 11 月版共披露 216 个漏洞,其中 23 个评级为 Critical。最值得警惕的是框架组件中的 CVE-2026-58868——FrameDecoder.cpp 的 onOutputReceived 存在堆缓冲区溢出,可导致越界写入,且不需要任何用户交互即可完成远程代码执行。

Android 框架层零点击远程代码执行漏洞攻击示意

一、为什么值得关注

过去聊 Android 漏洞,大家默认的前提是"用户总得点一下"——弹窗、授权、打开一张图片。可这套假设在 CVE-2026-58868 面前直接失效了。Google 在公告里写得很直白:no additional execution privileges needed. User interaction is not needed for exploitation(无需额外执行权限,利用过程不需要用户交互)。

这意味着威胁模型已经改变。攻击者只需要让受害者接收一段精心构造的媒体数据——一条消息、一次缩略图请求、一个被投毒的网页——后续的内存破坏与提权全部由系统框架代劳。更麻烦的是,漏洞处在系统媒体播放路径而非普通应用沙箱,一旦利用成功,攻击者拿到的是框架层权限,突破沙箱只是时间问题。

安全研究员 Nicolas Krassas(@Dinosn)转发 Security Affairs 的报道之后,这条漏洞迅速成为当月 Android 安全圈讨论的焦点。

二、漏洞基本信息

根据 AOSP 官方 2026 年 11 月安全公告(补丁级别 2026-11-01),CVE-2026-58868 的条目如下:

项目 内容
CVE 编号 CVE-2026-58868
组件 Framework(框架层)
漏洞类型 RCE(远程代码执行)/ 堆缓冲区溢出导致越界写
严重级别 Critical
受影响版本 Android 14、15、16、16-qpr2、17
缺陷位置 FrameDecoder.cpp 的 onOutputReceived
Bug ID A-486464711
用户交互 不需要

CVE 记录由 Google 作为 CNA 于 2026 年 11 月 2 日发布。CISA 的 SSVC 评估给出的结论是:exploitation: none、automatable: yes、technicalImpact: total——自动化程度高,技术影响为完全接管。

值得注意的是,Google 已确认其 11 月公告中的部分漏洞存在在野利用。同批公告里,CVE-2026-58876 与 CVE-2026-58936 同属 System 组件的免交互 RCE,与本漏洞共享"零点击"威胁模型。

三、代码层面:崩溃是如何被升级为 RCE 的

漏洞位于 AOSP 源码 frameworks/av/media/libstagefright/FrameDecoder.cpp。VideoFrameDecoder::onOutputReceived() 的职责是:拿到解码器输出的原始帧数据,按裁剪区域做色彩空间转换,写入目标缓冲区。

核心逻辑可以简化为这样一段:

// FrameDecoder.cpp —— VideoFrameDecoder::onOutputReceived()
int32_t width, height, stride, srcFormat;

// 从 outputFormat 中取出解码器上报的尺寸与 stride
outputFormat->findInt32("width", &width);
outputFormat->findInt32("height", &height);
outputFormat->findInt32("color-format", &srcFormat);

// 依据裁剪区域分配目标缓冲区
sp<IMemory> frameMem = allocVideoFrame(
    trackMeta(),
    (crop_right - crop_left + 1),
    (crop_bottom - crop_top + 1),
    0, 0, dstBpp(), bitDepth, ...);

// 色彩转换:源尺寸按 width/height/stride,目标按 mFrame 实际大小
colorConverter.convert(
    (const uint8_t *)frameData,
    width, height, stride,
    crop_left, crop_top, crop_right, crop_bottom,
    mFrame->getFlattenedData(),
    mFrame->mWidth, mFrame->mHeight, mFrame->mRowBytes,
    0, 0, mFrame->mWidth - 1, mFrame->mHeight - 1);

危险点在两套尺寸的错配:分配目标缓冲区用的是 crop 区域推导出的宽高(甚至被 slice-height 二次改写),而色彩转换读取源数据时用的是解码器上报的 width / height / stride。恶意媒体文件一旦让上报尺寸与裁剪区域不一致,convert() 按源尺寸算出的写入量就会超过 mFrame 的实际容量——写操作越过堆缓冲区尾部,污染相邻堆对象的元数据。

FrameDecoder 堆溢出升级为远程代码执行的攻击流程示意

这就是堆溢出最典型的升级路径:崩溃只是最坏的情况。一旦攻击者能控制溢出内容与相邻堆布局,就能覆写函数指针、vtable 或后续释放的元数据,把一次内存破坏转化为任意代码执行,在框架层进程中实现。

四、同批公告中其他需要立刻关注的点

11 月公告规模空前:216 个漏洞、23 个 Critical。其中几个与本漏洞同一量级:

  • CVE-2026-58876 / CVE-2026-58936:System 组件,免交互远程代码执行,Google 确认存在在野利用。
  • CVE-2026-58882("SMS of Death"):decodeWapPdu 处理 WAP Push 消息时导致 com.android.phone 崩溃,可中断呼叫(含紧急呼叫),并且设备会在重启后反复重放该恶意消息,形成崩溃循环。研究者 Mark B 于 10 月 29 日发布的技术分析中已在多款机型上复现崩溃;不过 Google 公告并未明确确认该 CVE 与这份研究系同一问题,引用时需保留这一区分。
  • 内核层:6 个 Critical,涉及蓝牙(2 个)、pKVM(3 个)与 HID(1 个),最严重者无需交互即可提权。
  • 基带侧:MediaTek 调制解调器 8 个 Critical,MediaTek 自身公告披露了其中 6 个(CVE-2026-20499、CVE-2026-20545 至 CVE-2026-20549),均因缺少边界检查、整数溢出或输入校验不当导致越界写;高通闭源组件另有一个 CVE-2026-25285。厂商均表示未发现在野利用。

五、验证方法:怎么确认自己是否受影响

  1. 查补丁级别:进入「设置 → 关于手机 → 软件信息」,确认"安全补丁级别"为 2026-11-01 或更高。低于该日期的设备理论上仍受影响,具体还取决于厂商与运营商的推送节奏。
  2. 不要只看系统版本:Android 14/15/16/16-qpr2/17 全部在影响范围内,包括长期支持机型;反过来说,更老的系统(Android 13 及以下)不在公告的修复清单中,但也不能因此认为安全。
  3. 审计媒体路径:如果你的产品集成了 libstagefright,或者调用了 MediaMetadataRetriever / MediaCodec 做视频帧提取,需要检查是否存在自研的格式解析与尺寸校验逻辑,尤其是依赖解码器上报 stride 的场合。
  4. 关注利用迹象:留意系统进程 mediaserver / media.sw 相关的异常崩溃日志,以及框架进程被异常重启的记录。

六、未来趋势预测

CVE-2026-58868 折射出一个正在成型的攻击面迁移方向:从"应用层逻辑漏洞"转向"媒体与框架层的内存安全漏洞"。

一方面,Stagefright 之后的十余年里,Android 媒体栈已经过多轮沙箱化与权限收敛,框架层进程被进一步隔离到权限更低的服务中。但这类隔离恰恰要求解析器在极小的地址空间里正确处理不可信输入——一次越界写就足以在受限沙箱内部完成提权。另一方面,零点击触发路径正在变得比"诱导安装应用"更廉价:一条消息、一个自动拉取的缩略图就够了。

值得持续关注的方向包括:更多针对同一 FrameDecoder / ColorConverter 路径的边界检查缺陷;厂商在推送 2026-11-01 补丁时对不同芯片平台的差异表现;以及该漏洞是否会像过去的 Stagefright 系列一样,出现公开的 PoC 与在野利用工具包。

结语:CVE-2026-58868 的真正分量不在于它的分数,而在于它把"必须点一下"的前提彻底删掉了。对移动端安全团队而言,媒体输入路径的内存安全审计,已经从可选项变成了必选项。

版权声明:本文由华盟网原创发布,保留所有权利。配图由华盟网授权使用。




上一篇:AI造假证件产业链:15美元一张护照,KYC、交易所、联合国接连失守
下一篇:存储型XSS实战复盘:某APP前端绕过、WAF事件FUZZ与32位截断
您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-11-13 23:12 , Processed in 0.069253 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表