UNKNOWNCVE-2026-34379

OpenEXR 在 LossyDctDecoder_execute 中存在未对齐的写入操作,导致未定义行为 (DWA/DWAB 解压缩)

平台

c

组件

openexr

已修复版本

3.2.7

OpenEXR 提供了 EXR 文件格式的规范和参考实现,EXR 是一种用于电影行业的图像存储格式。从 3.2.0 到 3.2.7、3.3.9 和 3.4.9 之前版本中,在 src/lib/OpenEXRCore/internal_dwa_decoder.h:749 的 LossyDctDecoder_execute() 函数中存在一个未对齐的内存写入漏洞。当解码包含 FLOAT 类型的通道的 DWA 或 DWAB 压缩的 EXR 文件时,解码器通过将未对齐的 uint8_t * 行指针转换为 float * 并通过它写入来执行就地 HALF→FLOAT 转换。由于行缓冲区可能未 4 字节对齐,这在 C 标准下构成未定义行为,并在强制对齐的架构(ARM、RISC-V 等)上立即崩溃。在 x86 上,它在运行时会被默默地容忍,但仍然可以通过假设对齐访问的编译器优化来利用。此漏洞在 3.2.7、3.3.9 和 3.4.9 版本中已修复。

修复方法

暂无官方补丁。请查找临时解决方案或持续关注更新。

自动监控您的依赖项

当新漏洞影响您的项目时获得提醒。

免费开始