谷歌确认高通安卓组件中的 CVE-2026-21385 漏洞已被利用

2026-03-04 00:44:30 2 733

谷歌周一披露,影响安卓设备中使用的开源高通组件的一个严重安全漏洞已被恶意利用。相关漏洞编号为 CVE-2026-21385(CVSS 评分:7.8),是 Graphics 组件中的缓冲区溢出读取漏洞。



谷歌周一披露,影响安卓设备中使用的开源高通组件的一个严重安全漏洞已被恶意利用。

相关漏洞编号为 CVE-2026-21385(CVSS 评分:7.8),是 Graphics 组件中的缓冲区溢出读取漏洞。

高通公司在一份公告中表示:“在未检查可用缓冲区空间的情况下添加用户提供的数据会导致内存损坏”,并将其描述为整数溢出。

芯片制造商表示,该漏洞于 2025 年 12 月 18 日通过谷歌 Android 安全团队报告给他们。客户于 2026 年 2 月 2 日收到有关该安全缺陷的通知。

目前尚无关于该漏洞在实际环境中如何被利用的详细信息。然而,谷歌在其每月发布的安卓安全公告中承认,“有迹象表明 CVE-2026-21385 可能正被有限的、有针对性的利用。”

谷歌 2026 年 3 月的更新包含了针对 129 个漏洞的补丁,其中包括系统组件中的一个严重漏洞 (CVE-2026-0006),该漏洞可能导致远程代码执行,而无需任何额外权限或用户交互。相比之下,谷歌在 2026 年 1 月仅修复了一个 Android 漏洞,而上个月则没有修复任何漏洞。

谷歌还修复了多个严重级别的漏洞:框架中的权限提升漏洞 (CVE-2026-0047)、系统中的拒绝服务 (DoS) 漏洞 (CVE-2025-48631) 以及内核组件中的七个权限提升漏洞 (CVE-2024-43859、CVE-2026-0037、CVE-2026-0038、CVE-2026-0027、CVE-2026-0028、CVE-2026-0030 和 CVE-2026-0031)。

Android 安全公告包含两个补丁级别——2026-03-01 和 2026-03-05——以便让 Android 合作伙伴能够更灵活地更快地解决不同设备上的常见漏洞。

第二级补丁包括内核组件的修复,以及来自 Arm、Imagination Technologies、联发科、高通和紫光展锐的修复。

关于作者

weak_hong40篇文章52篇回复

评论2次

要评论?请先  登录  或  注册
  • 2楼
    2026-3-4 09:28

    这个Graphics 组件中的缓冲区溢出读取漏洞 值得 复现一波儿 ,我只能期待poc了,我对这个组件完全不懂。

  • 1楼
    2026-3-4 00:46

    结论

    CVE-2026-21385是高通安卓组件Graphics模块中的整数溢出漏洞(触发缓冲区溢出读取),攻击面直接暴露于xi统级服务或应用层交互场景。攻击者可能通过恶意APK文件或构造特定图形数据触发漏洞,导致内存损坏并实现远程代码执行(RCE)。当前需优先验证设备补丁状态并监控异常内存访问行为。


    分析路径

    L1 攻击面识别

    • 输入源(Source)
      • 用户提供的图形数据(如图片、GPU命令缓冲区)
      • 通过xi统接口(如SurfaceFlingerAdreno驱动)传递的参数
    • 危险点(Sink)
      • Graphics组件代码中未做边界检查的内存写入/读取操作
      • 整数溢出导致计算出的缓冲区长度小于实际需求

    L2 假设与验证

    • 假设1:漏洞存在于处理图形数据时的长度计算阶段,开发者未检查int型变量的溢出(如length = width * height)。
    • 假设2:攻击者可通过构造超大尺寸图片或GPU命令参数,触发溢出后读取任意内存区域(RCE需进一步链式利用)。

    L3 边界/异常场景

    • 输入极端尺寸的图像(如width/height = MAX_INT或负数)
    • 超出预期的数据格式(如非标准颜色通道数、压缩算法)
    • 跨进程调用场景(通过Binder接口传递恶意参数)

    L4 防御反推与修复

    • 补丁逻辑可能为:

      // 漏洞代码(伪代码)  int buffer_size = width * height; // 整数溢出  char* buffer = malloc(buffer_size);  // 修复逻辑  if (width > MAX_ALLOWED || height > MAX_ALLOWED ||      (width * height) / width != height) { // 溢出检测      return ERROR;  }  

    验证步骤

    1. 补丁差异分析

      • 反编译高通Graphics组件(如libadreno_utils.so)的旧版(未修复)与新版(2026-03补丁)二进制文件。
      • 通过IDA/ Ghidra对比关键函数(如decode_imageprocess_gpu_command),定位新增边界检查逻辑。
    2. Fuzz测试触发漏洞

      • 使用AFL/AFL++对Graphics组件接口进行Fuzzing,输入异常尺寸图片或GPU命令数据包。
      • 监控崩溃日志中的内存越界读写异常(如READ of size XX at 0xXXXX by thread XXX)。
    3. 沙箱环境验证利用链

      • 构建未打补丁的安卓虚拟机,部署监控工具(如ptraceFrida)。
      • 通过恶意APK注入触发漏洞的测试用例,观察是否能稳定读取内核/用户空间内存。

    修复建议

    1. 强制补丁更新

      • 优先为高通芯片设备部署2026年3月补丁(重点关注2026-03-05补丁层级)。
      • 检查设备厂商的修复时间线(高通公告提2026年2月通知客户,需确认下游厂商响应)。
    2. 临时防护策略

      • SECCOMP过滤:在xi统调用层拦截 Graphics 组件的异常内存访问行为。
      • 输入过滤规则:限制图形数据的尺寸范围(如图片尺寸不超过4K×4K)。
    3. 防御监控部署

      • 监控异常xi统日志(如dmesg | grep adreno)中的内存错误或崩溃记录。
      • 使用EDR工具追踪libadreno*进程的异常内存操作(如rwx权限变化)。

    信息缺失与补充建议

    当前公告未披露PoC或利用细节,建议:

    1. 通过逆向分析高通补丁的heap buffer overflow防护逻辑,推导漏洞利用路径。
    2. 关注后续公开的漏洞分析(如Project Zero/CVE Details),重点关注Graphics组件的ioctl接口或内存分配函数(如kmalloc)。