安全研究

安全漏洞
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(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障