受影响系统:
MIT Kerberos 5 1.4 - 1.6
不受影响系统:
MIT Kerberos 5 1.6.1
描述:
Kerberos是一款广泛使用的使用强壮的加密来验证客户端和服务器端的网络协议。MIT Kerberos 5是一种常用的开源Kerberos实现。
Kerberos在处理特定畸形的请求时存在内存处理漏洞,远程攻击者可能利用此漏洞在服务器上执行任意指令。
如果在消息中检测到了无效的direction值的话src/lib/gssapi/krb5/k5unseal.c文件的kg_unseal_v1()函数会释放为message_buffer gss_buffer_t所分配的内存。该函数既没有将指针设置为空,也没有将长度设置为0,应用程序之后对这个gss_buffer_t调用gss_release_buffer()就会导致二次释放内存。
krb5-1.4所引入的RPC库RPCSEC_GSS认证在gss_unwrap()失败时会调用gss_release_buffer(),这允许已认证的攻击者触发二次释放。调用了MIT krb5所提供的RPC库且使用RPCSEC_GSS认证方式的第三方应用程序受这个漏洞影响。如果在出现gss_unseal()或gss_unwrap()错误时调用gss_release_buffer()的话,则调用MIT GSS-API库的第三方应用程序也受这个漏洞影响。
厂商补丁:
Debian已经为此发布了一个安全公告(DSA-1276-1)以及相应补丁:
DSA-1276-1:New krb5 packages fix several vulnerabilities
链接:http://www.debian.org/security/2007/dsa-1276