libxslt RC4加密/解密函数堆溢出漏洞

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

BUGTRAQ ID: 30467 CVE(CAN) ID: CVE-2008-2935 Libxslt是为GNOME项目开发的XSLT C库,XSLT本身是用于定义XML转换的XML语言。 Libxslt库的crypto.c文件中crypto:rc4_encrypt函数错误的信任了密钥字符串的长度: static void exsltCryptoRc4EncryptFunction (xmlXPathParserContextPtr ctxt, int nargs) { ... key = xmlXPathPopString (ctxt); key_len = xmlUTF8Strlen (str); ... padkey = xmlMallocAtomic (RC4_KEY_LENGTH); key_size = xmlUTF8Strsize (key, key_len); memcpy (padkey, key, key_size); memset (padkey + key_size, '\0', sizeof (padkey)); ... padkey堆分配是固定的128位(RC4_KEY_LENGTH),但却从XSL函数参数拷贝了任意长度的字符串,带有超长输入的XML文件就可以触发堆溢出,导致执行任意指令。 XMLSoft libxslt 1.1.24 Debian ------ Debian已经为此发布了一个安全公告(DSA-1624-1)以及相应补丁: DSA-1624-1:New libxslt packages fix arbitrary code execution 链接:<a href=http://www.debian.org/security/2008/dsa-1624 target=_blank>http://www.debian.org/security/2008/dsa-1624</a> 补丁下载: Source archives: <a href=http://security.debian.org/pool/updates/main/libx/libxslt/libxslt_1.1.19.orig.tar.gz...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息