CVE-2007-4619 (CNNVD-200710-238)
中文标题:
FLAC库多个溢出漏洞
英文标题:
Multiple integer overflows in Free Lossless Audio Codec (FLAC) libFLAC before 1.2.1, as used in Wina...
漏洞描述
中文描述:
免费无损音频压缩(FLAC)是用于压缩音频数据的流行文件格式。 多个厂商播放器所使用的libFLAC库中都存在缓冲器溢出漏洞,攻击者可能利用此漏洞通过诱使用户处理恶意文件控制用户系统。 #1 元数据块大小堆溢出 当使用FLAC库的有漏洞软件打开或处理畸形FLAC文件时,会使用大小字段引用指针分配内存(malloc)并将文件内容写入到这些内存缓冲区。如果将该值设置为很大(如0xFFFFFFFF)的话,就会触发堆溢出。 #2 VORBIS标注字符串大小字段堆溢出 如果将VORBIS标注字符串大小字段设置为很大值(如0xFFFFFFF)的话,在解析该值时就会触发堆溢出。 #3 VORBIS标注字符串大小长度栈溢出 使用FLAC库的应用程序在处理VORBIS标注元数据块中的数据时使用了预先确定的缓冲区大小,如果在超大的VORBIS标注数据字符串大小值中注入了超长的VORBIS标注数据字符串的话(如0x000061A8后跟随25,050个A),就会触发栈溢出。 #4 图片MIME类型大小堆溢出 图片元数据块允许在FLAC文件中为嵌入式相册封面注入MIME类型。当支持FLAC相册封面的应用程序试图处理超长的MIME类型大小字段时,就可能触发堆溢出。 #5 图片MIME类型栈溢出 如果对图片MIME类型设置了大约5000字节的大小值(具体取决于有漏洞的应用程序)和很大的字符串值,就可以触发栈溢出。 #6 图片维度大小堆溢出 攻击者可以通过修改图片元数据块的宽度和高度值触发堆溢出。当支持FLAC图形的应用程序试图渲染超大图形时,应用程序会根据维度字段分配内存,这可能导致用任意值覆盖内存值和指针。 #7 图片描述大小堆溢出 如果应用程序支持图片元数据块的话,超大的描述大小值(如0xFFFFFFFF)可能导致堆内存破坏并执行任意代码。 #8 图片描述长度栈溢出 这个漏洞类似于VORBIS标注字符串长度栈溢出漏洞,输入了超大的描述大小值和描述字符串值就可以触发栈溢出。 #9 图片数据长度堆溢出 远程攻击者可以通过将图片数据长度字段设置为超大的值(如0xFFFFFFFF)触发堆溢出。当支持图片元数据块的应用程序处理相册封面图形时,会使用这个字段确定嵌入图形文件的字节数,但没有执行边界检查便分配了内存,导致用FLAC文件中的任意值覆盖内存和指针。 #10 图片URL栈溢出 如果FLAC文件的MIME类型设置为"-->",这个标记就表示Data的值不是图形文件的内容,而是图形文件所在的URL。如果将这个值设置为很大的字符串值的话,就会在支持FLAC图形的应用程序中触发栈溢出。 #11 畸形图形/文件下载漏洞 如果应用程序在下载文件之前没有确认文件类型的话,使用"-->"MIME类型标记可能导致下载任意文件。结合GDI+或其他图片渲染漏洞,这还可能导致代码执行。 #12 填充长度堆溢出 如果将填充长度字段值设置为很大值(如0xFFFFFFFF)的话,畸形的FLAC文件就会导致堆溢出。 #13 查询表越界双重释放 如果在畸形FLAC文件中对查询表值设置了无效的数据指针的话,就会触发双重释放的情况。此外所释放指针的位置可由FLAC文件中的任意值控制,这可能导致执行任意代码。 #14 畸形查询表双重释放 将多个查询表数据偏移设置为很大的值(如0x41414141)然后将查询表点(Seektable Point)设置为相互引用的话,就可能导致多个双重释放的情况。
英文描述:
Multiple integer overflows in Free Lossless Audio Codec (FLAC) libFLAC before 1.2.1, as used in Winamp before 5.5 and other products, allow user-assisted remote attackers to execute arbitrary code via a malformed FLAC file that triggers improper memory allocation, resulting in a heap-based buffer overflow.
CWE类型:
标签:
受影响产品
| 厂商 | 产品 | 版本 | 版本范围 | 平台 | CPE |
|---|---|---|---|---|---|
| flac | libflac | * | - | - |
cpe:2.3:a:flac:libflac:*:*:*:*:*:*:*:*
|
| nullsoft | winamp | * | - | - |
cpe:2.3:a:nullsoft:winamp:*:*:*:*:*:*:*:*
|
解决方案
中文解决方案:
英文解决方案:
临时解决方案:
参考链接
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
CVSS评分详情
AV:N/AC:M/Au:N/C:C/I:C/A:C
时间信息
利用信息
数据源详情
| 数据源 | 记录ID | 版本 | 提取时间 |
|---|---|---|---|
| CVE | cve_CVE-2007-4619 |
2025-11-11 15:17:55 | 2025-11-11 07:32:46 |
| NVD | nvd_CVE-2007-4619 |
2025-11-11 14:52:12 | 2025-11-11 07:41:32 |
| CNNVD | cnnvd_CNNVD-200710-238 |
2025-11-11 15:08:58 | 2025-11-11 07:49:21 |
版本与语言
安全公告
变更历史
查看详细变更
- vulnerability_type: 未提取 -> 数字错误
- cnnvd_id: 未提取 -> CNNVD-200710-238
- data_sources: ['cve', 'nvd'] -> ['cnnvd', 'cve', 'nvd']
查看详细变更
- severity: SeverityLevel.MEDIUM -> SeverityLevel.CRITICAL
- cvss_score: 未提取 -> 9.3
- cvss_vector: NOT_EXTRACTED -> AV:N/AC:M/Au:N/C:C/I:C/A:C
- cvss_version: NOT_EXTRACTED -> 2.0
- affected_products_count: 0 -> 2
- data_sources: ['cve'] -> ['cve', 'nvd']