关键漏洞信息 漏洞编号: Bug 504843 漏洞标题: crash (segfault) @ oc_sb_create_plane_mapping when playing corrupted ogg theora file 漏洞类型: defect 优先级: P2 严重程度: normal 漏洞描述 状态: RESOLVED FIXED 产品: Core 组件: Audio/Video 平台: x86 Linux 版本: 1.9.1 影响版本 State Tracking: status1.9.2 beta-fixed, status1.9.1.5+ Status Flags: beta-fixed, 1.9.1.5+ 问题重现 重现步骤: 1. 加载附加的文件。实际结果:Firefox 崩溃。预期结果:应该显示某种“此文件已损坏”的消息。 提供的测试文件 音频文件 (导致崩溃的测试文件) 相关线程的堆栈跟踪 漏洞分析 问题原因: 在播放损坏的 Ogg Theora 文件时,由于文件头中包含异常的帧宽和高,导致解码器(liboggplay 和 libtheora)在处理这些值时发生段错误(segfault)。 解决措施: 通过对 liboggplay 和 libtheora 进行更新,增加帧尺寸限制和更严格的检查。 其他信息 讨论: 大量的讨论内容集中在如何正确处理媒体文件头中的不合理值、以及如何优化 liboggplay 和 libtheora 以避免此类问题。 补丁: 提供了多个补丁版本和代码修改来解决该问题。