CVE-2025-15504CVE-2025-15504是lief-project LIEF项目中的一个安全漏洞,影响版本至0.17.1。该漏洞存在于LIEF库的ELF二进制解析器组件中,具体位于src/ELF/Parser.tcc文件的Parser::parse_binary函数。由于在解析ELF二进制文件时未对指针进行充分的空值检查,当处理特制的ELF文件时可能导致空指针解引用,从而引发程序崩溃或潜在的进一步安全问题。攻击者需要本地访问权限即可利用此漏洞,无需特殊权限或用户交互。该漏洞已被公开披露,可能被用于拒绝服务(DoS)攻击。LIEF是一个用于解析和操作各种可执行文件格式(如ELF、PE、Mach-O)的C++库,广泛应用于二进制分析、安全研究和逆向工程领域。
该漏洞属于空指针解引用(Null Pointer Dereference)类型。漏洞产生的根本原因是在LIEF库的ELF解析模块中,Parser::parse_binary函数在处理ELF二进制文件的头部信息时,未能正确验证某些指针的有效性。当解析器尝试访问一个未初始化或已被错误释放的指针所指向的内存时,就会触发空指针解引用。具体来说,在src/ELF/Parser.tcc文件中,解析器可能假设某个结构体成员或返回的指针不为空,但在处理恶意构造的ELF文件时,该指针实际为NULL。由于C++中解引用空指针会导致未定义行为,程序通常会立即崩溃,产生段错误(Segmentation Fault)。攻击者可通过构造一个特殊的ELF文件,在其中嵌入触发此漏洞的特定字段或结构,然后诱使受害者使用LIEF库解析该文件,从而造成拒绝服务。攻击必须从本地发起,攻击者需要能够提供特制文件给目标系统。