关键信息 漏洞标题: libtiff tiffcmp 4.7.0+ (latest master branch) Memory Leak 漏洞类型: 内存泄漏导致非法指令 受影响函数: TIFF处理链中的多个函数 主要函数: _TIFFReadDirectory, _TIFFCheckTileFunc, TIFFHashSHNew, InitGTTTFastT 信号: SIGBUS (7) - 非法指令 受影响程序: tiffcmp 技术细节 漏洞类型: 内存泄漏导致非法指令 受影响函数: 多个函数在TIFF处理链中 主要函数: - _TIFFReadDirectory - _TIFFCheckTileFunc - TIFFHashSHNew - InitGTTTFastT 信号: SIGBUS (7) - 非法指令 受影响程序: tiffcmp 机制和根本原因 内存泄漏漏洞是由在解析和处理TIFF文件时的不当资源管理引起的。 根本问题在于错误处理路径,当TIFF头读取失败或GDTT Fax压缩初始化遇到错误时,分配的内存没有正确释放。 漏洞发生情况 1. tiffcmp程序尝试处理格式错误的TIFF文件。 2. TIFF头读取失败,出现“无法读取TIFF头”错误。 3. 在解析尝试期间发生各种内存分配: - 主要TIFF结构分配通过_TIFFReadDirectory(1365-158字节) - 字段合并操作通过_TIFFCheckTileFunc(1,72字节) - 哈希表创建通过TIFFHashSHNew(434字节×2)