CVE-2026-43859Mutt邮件客户端在2.3.2之前的版本中存在一个安全漏洞。在处理IMAP CRAM-MD5认证的摘要信息时,程序错误地使用了strfcpy函数而非memcpy函数。由于MD5摘要为二进制数据,可能包含空字节,使用字符串复制函数会导致数据被截断,从而可能影响认证的完整性,导致认证绕过风险。
该漏洞源于代码逻辑错误,具体位于IMAP CRAM-MD5认证机制中。MD5摘要由16字节的二进制数据组成,并非以空字符结尾的字符串。strfcpy函数主要用于处理字符串,它会在遇到第一个空字节(\0)时停止复制,或者为了确保字符串以空字节结尾而牺牲最后一个字节的存储空间。当Mutt计算出的MD5摘要恰好包含空字节或长度达到缓冲区边界时,strfcpy会截断摘要数据。如果服务器端对截断后的摘要进行验证,或者攻击者能够控制验证逻辑,这种不匹配可能导致原本无效的认证凭证被接受,从而实现低影响的完整性破坏(I:L)。该漏洞利用难度较高(AC:H),需要特定的数据触发条件。