漏洞概述 漏洞名称: Little CMS (lcms2) 的 函数存在整数溢出漏洞。 漏洞描述: 函数在计算 时,如果 数组中的值导致乘法溢出,会返回一个被包装的值。调用者根据这个错误的值分配了较小的 CLUT 缓冲区,但在后续处理中读取了超出缓冲区范围的数据,导致段错误(SIGSEGV)。 漏洞影响: 该漏洞可以被利用来崩溃 Poppler 和 OpenJDK 等应用程序。 影响范围 受影响版本: 所有发布的 lcms2 2.18 版本。 受影响系统: - Ubuntu 24.04 LTS - Debian bookworm - Fedora - Alpine Edge - Windows Server 2022 - macOS 消费者路径 - Ghostscript 10 - ImageMagick - Pillow - libvips - Node.js - Python (ctypes) - Rust (lcms2 crate 5.6) 修复方案 修复状态: 上游已修复,但尚未发布新版本。 修复提交: - (2025年2月) - (2025年3月) 修复内容: 修复了 函数中的整数溢出问题。 POC 代码 直接 C POC 92-字节 PDF Python (ctypes) Rust (5 lines after Cargo.toml) 信息泄露 (CWE-200) 漏洞描述: 在 Ubuntu 24.04 LTS 上,使用 ASLR 和 glibc 的默认分配器,第一个输出字节可以通过 跟踪预运行堆栈字节。 影响: 可能导致敏感信息泄露。 总结 该漏洞是一个整数溢出问题,可能导致段错误和信息泄露。受影响的应用程序包括 Poppler、OpenJDK 等。上游已修复,但尚未发布新版本。