CVE-2025-69421CVE-2025-69421是OpenSSL中的一个高危拒绝服务漏洞,CVSS评分7.5。该漏洞由于PKCS12_item_decrypt_d2i_ex()函数在处理格式错误的PKCS#12文件时,未能正确检查oct参数是否为NULL,导致在解引用时触发NULL指针解引用。攻击者可通过诱导应用程序处理特制的畸形PKCS#12文件,触发应用程序崩溃,造成拒绝服务(DoS)攻击。此漏洞影响OpenSSL 3.6、3.5、3.4、3.3、3.0、1.1.1和1.0.2等多个版本。值得注意的是,FIPS模块不受此漏洞影响,因为PKCS#12实现位于OpenSSL FIPS模块边界之外。该漏洞仅能导致拒绝服务,无法升级为代码执行或内存泄露。
漏洞存在于OpenSSL的crypto/pkcs12/p12_decr.c文件中的PKCS12_item_decrypt_d2i_ex()函数。当处理PKCS#12文件时,该函数从PKCS12_unpack_p7encdata()调用,接收一个oct参数(ASN1_OCTET_STRING类型)。问题在于函数在直接解引用oct参数之前,未进行NULL检查。当攻击者提供一个精心构造的畸形PKCS#12文件时,oct参数可能为NULL,导致程序执行到解引用操作时发生崩溃。具体攻击流程为:攻击者构造一个缺少必要字段或包含异常数据的PKCS#12文件,诱导目标应用程序调用OpenSSL的PKCS12_parse()或相关函数进行解析,解析过程中触发NULL指针解引用,最终导致应用程序崩溃。由于这是NULL指针解引用,攻击者无法利用此漏洞实现代码执行或敏感内存读取。