CVE-2026-2920CVE-2026-2920是GStreamer中ASF(Advanced Systems Format)Demuxer组件的一个高危安全漏洞,CVSS评分7.8。该漏洞属于堆缓冲区溢出(Heap-based Buffer Overflow)类型,允许远程攻击者在受影响系统上执行任意代码。漏洞存在于GStreamer处理ASF文件流头(stream headers)的过程中,由于缺乏对用户提供的流头数据长度的适当验证,在将数据复制到固定长度的堆缓冲区时未进行边界检查,导致缓冲区溢出。攻击者可以通过诱骗用户打开特制的ASF文件来触发此漏洞,成功利用后可获得当前进程的执行权限。该漏洞由ZDI(Zero Day Initiative)披露,编号为ZDI-CAN-28843。
GStreamer是一个开源的多媒体处理框架,广泛应用于各种Linux发行版和跨平台应用中。ASF Demuxer是GStreamer中负责解析ASF格式媒体的组件。漏洞具体存在于gstasfdemux.c或相关流处理代码中,当解析ASF文件的流头信息时,程序未能正确验证流头中声明的数据长度是否超过目标缓冲区的实际容量。具体来说,在处理ASF文件头中的流描述符(如音频或视频流参数)时,如果攻击者构造一个长度字段被恶意夸大的ASF文件,GStreamer在执行memcpy或类似内存复制操作时会写入超出预定缓冲区大小的数据,从而触发堆缓冲区溢出。攻击者可以利用此漏洞覆盖堆内存中的关键数据结构、函数指针或其他敏感信息,最终实现代码执行。攻击成功需要用户交互(如打开恶意ASF文件),但不需要认证。