KPPP特权文件描述符泄漏漏洞
发布日期:2005-02-28
更新日期:2005-03-04
受影响系统:KDE KDE 3.1
KDE KPPP 2.1.2
不受影响系统:KDE KDE 3.2.x
KDE KDE 3.1.5
描述:
BUGTRAQ ID:
12677
CVE(CAN) ID:
CVE-2005-0205
KPPP是pppd的拨号程序和前端,允许交互脚本生成和网络设置。
KPPP的实现在权限处理上存在漏洞,本地攻击者可能利用些漏洞获取本地管理员权限。
由于kppp不能正确的关闭特权文件描述符导致了这个漏洞。通常KPPP安装为setuid root,使用权限分隔来允许PPP拨号程序的某些函数以提升的权限执行。kppp的特权部分和非特权部分通过域套接字通讯,而该套接字没有正确的关闭。
1998年的kppp代码库引入了类似漏洞的修复,如下:
// close file descriptors
for (int fd = 3; fd < 20; fd++)
close(fd);
如果攻击者在执行kppp之前打开了17个文件描述符的话就可以轻易的绕过这个修复。然后就会执行循环,关闭之前打开的文件描述符,但为攻击者保留用于同kppp特权组件对话的特权文件描述符。攻击者可能滥用KPPP以读写/etc/hosts和/etc/resolv.conf,这样就能完全控制系统的域解析功能。这个级别的攻击可以用于帮助网络钓鱼和社会工程学的尝试。
<*来源:iDEFENSE Security Advisory (
labs@idefense.com)
链接:www.idefense.com/application/poi/display?id=208
*>
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 从KPPP临时删除setuid位,在执行KPPP前手动获取root权限:
chmod -s /usr/sbin/kppp
厂商补丁:
KDE
---
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载KDE 3.1补丁:
ftp://ftp.kde.org/pub/kde/security_patches :
0e999df54963edd5f565b6d541f408d9 post-3.1.5-kdenetwork.diff
浏览次数:3150
严重程度:0(网友投票)