CVE-2025-20722CVE-2025-20722是MediaTek(联发科)GNSS驱动程序中存在的一个高危本地信息泄露漏洞。该漏洞源于GNSS驱动代码中存在的整数溢出缺陷,可能导致越界读取(Out-of-Bounds Read)操作。由于GNSS驱动通常以较高权限运行在Android设备中,一旦攻击者成功利用该漏洞,可能读取到超出预期缓冲区范围的数据,从而造成敏感信息泄露。
根据CVSS 3.1评分体系,该漏洞评分为5.5分,属于中危级别。攻击者需要本地访问权限(AV:L)并已获得System权限(PR:L)才能利用此漏洞,无需用户交互(UI:N)。漏洞的主要影响体现在机密性方面(C:H),可导致高敏感度的系统信息泄露,但不会影响系统完整性(I:N)和可用性(A:N)。
该漏洞由MediaTek安全团队([email protected])发现并报告,补丁编号为ALPS09920036,问题编号为MSV-3798。MediaTek已在2025年10月的安全公告中披露了该漏洞。由于GNSS驱动涉及设备定位功能,该漏洞在移动设备和物联网设备中具有较高的安全影响,建议相关设备制造商和用户及时关注并应用安全补丁。
该漏洞的根本原因在于MediaTek GNSS驱动程序中存在整数溢出缺陷。GNSS(全球导航卫星系统)驱动负责处理来自卫星定位系统的数据,包括GPS、GLONASS、BeiDou、Galileo等导航信号。在处理GNSS数据时,驱动程序可能需要对数据长度、缓冲区大小或偏移量进行算术运算。
整数溢出的原理是:当程序对一个整数值执行加法、乘法或其他算术运算时,如果结果超出了该整数类型的最大值(例如32位有符号整数的最大值2^31-1),则会发生溢出。溢出后的值会变成一个很小的负数或环绕到零附近。如果该溢出值随后被用作数组索引、缓冲区大小或内存拷贝长度,将导致程序访问超出分配缓冲区边界的内存区域。
在GNSS驱动场景中,攻击者可以通过构造特殊的GNSS数据输入(例如通过伪造的卫星信号或注入恶意GNSS数据帧),触发驱动程序中的整数溢出逻辑。一旦溢出发生,驱动程序将使用错误的偏移量或长度执行内存读取操作,从而读取到相邻内存区域中的敏感数据。
由于GNSS驱动通常运行在系统级权限(System UID)下,读取到的内存可能包含其他进程的数据、系统密钥、加密凭据或其他敏感信息。攻击者利用此漏洞需要预先获得设备的System权限,这通常需要通过其他漏洞链(如Root提权漏洞)实现。