CVE-2004-1337
CVSS7.2
发布时间 :2004-12-23 00:00:00
修订时间 :2016-10-17 22:53:24
NMCOS    

[原文]The POSIX Capability Linux Security Module (LSM) for Linux kernel 2.6 does not properly handle the credentials of a process that is launched before the module is loaded, which allows local users to gain privileges.


[CNNVD]Linux内核Capability LSM模块进程特权信任状本地权限提升漏洞(CNNVD-200412-118)

        
        Linux Kernel是开放源代码操作系统Linux的内核。
        Linux Kernel在处理Capability模块实现时存在问题,本地攻击者可以利用这个漏洞提升权限。
        当特权操作由Capability LSM 模块控制时,系统基于进程信任状(creds)来仲裁特权操作。当Capability未被编译进内核时,内核使用默认的安全模块(security/dummy.c)仲裁特权操作,机制非常简单,仅仅检查进程euid、fsuid(进行文件系统相关特权操作时)是否为0。在这种情况下,dummy模块根本不关心进程的信任状,每个进程的信任状都拷贝其父进程的信任状。追根溯源,每个进程的信任状无论进程用户是否为超级用户,最终都拷贝Init进程的信任状,信任状中包含有超级用户进程的所有权能。在根据用户ID进行特权判断情况下,此错误未被激发。但在插入Capability模块后,特权机制转为根据进程信任状进行判断,而此前存在的任何进程的信任状都与Init进程一致,导致这些进程都具有超级用户root的特权。此错误的本质是装载Capability模块时没有对已有进程的信任状按Capability机制的要求进行重新计算。试验表明,此错误出现在2.6.* Linux内核中。
        

- CVSS (基础分值)

CVSS分值: 7.2 [严重(HIGH)]
机密性影响: COMPLETE [完全的信息泄露导致所有系统文件暴露]
完整性影响: COMPLETE [系统完整性可被完全破坏]
可用性影响: COMPLETE [可能导致系统完全宕机]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: LOCAL [漏洞利用需要具有物理访问权限或本地帐户]
身份认证: NONE [漏洞利用无需身份认证]

- CPE (受影响的平台与产品)

cpe:/o:ubuntu:ubuntu_linux:4.1::ia64
cpe:/o:conectiva:linux:10.0Conectiva Linux 10.0
cpe:/a:gnu:realtime_linux_security_module:0.8.7Linux Security Modules LSM1
cpe:/o:ubuntu:ubuntu_linux:4.1::ppc

- OVAL (用于检测的技术细节)

未找到相关OVAL定义

- 官方数据库链接

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-1337
(官方数据源) MITRE
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2004-1337
(官方数据源) NVD
http://www.cnnvd.org.cn/vulnerability/show/cv_cnnvdid/CNNVD-200412-118
(官方数据源) CNNVD

- 其它链接及资源

http://distro.conectiva.com.br/atualizacoes/index.php?id=a&anuncio=000930
(VENDOR_ADVISORY)  CONECTIVA  CLA-2005:930
http://marc.info/?l=bugtraq&m=110384535113035&w=2
(UNKNOWN)  BUGTRAQ  20041223 Linux 2.6 Kernel Capability LSM Module Local Privilege Elevation
http://www.securityfocus.com/bid/12093
(VENDOR_ADVISORY)  BID  12093
http://xforce.iss.net/xforce/xfdb/18673
(VENDOR_ADVISORY)  XF  linux-security-module-gain-privileges(18673)

- 漏洞信息

Linux内核Capability LSM模块进程特权信任状本地权限提升漏洞
高危 设计错误
2004-12-23 00:00:00 2005-10-20 00:00:00
本地  
        
        Linux Kernel是开放源代码操作系统Linux的内核。
        Linux Kernel在处理Capability模块实现时存在问题,本地攻击者可以利用这个漏洞提升权限。
        当特权操作由Capability LSM 模块控制时,系统基于进程信任状(creds)来仲裁特权操作。当Capability未被编译进内核时,内核使用默认的安全模块(security/dummy.c)仲裁特权操作,机制非常简单,仅仅检查进程euid、fsuid(进行文件系统相关特权操作时)是否为0。在这种情况下,dummy模块根本不关心进程的信任状,每个进程的信任状都拷贝其父进程的信任状。追根溯源,每个进程的信任状无论进程用户是否为超级用户,最终都拷贝Init进程的信任状,信任状中包含有超级用户进程的所有权能。在根据用户ID进行特权判断情况下,此错误未被激发。但在插入Capability模块后,特权机制转为根据进程信任状进行判断,而此前存在的任何进程的信任状都与Init进程一致,导致这些进程都具有超级用户root的特权。此错误的本质是装载Capability模块时没有对已有进程的信任状按Capability机制的要求进行重新计算。试验表明,此错误出现在2.6.* Linux内核中。
        

- 公告与补丁

        临时解决方法:
        如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:
        * 第三方补丁如下:
        在 security/capability.c中加入以下代码
        static void recompute_capability_creds(struct task_struct *task)
        {
         if(task->pid <= 1)
         return;
         task_lock(task);
         task->keep_capabilities = 0;
        
         if ((task->uid && task->euid && task->suid) && !task->keep_capabilities)
         cap_clear (task->cap_permitted);
         else
         task->cap_permitted = CAP_INIT_EFF_SET;
         if (task->euid != 0){
         cap_clear (task->cap_effective);
         }
         else{
         task->cap_effective = CAP_INIT_EFF_SET;
         }
        
         if(task->fsuid)
         task->cap_effective &= ~CAP_FS_MASK;
         else
         task->cap_effective |= CAP_FS_MASK;
        
         task_unlock(task);
        
         return;
        }
        并且在已有capability_init 函数在其返回前加入以下代码:
        
         struct task_struct *task;
         read_lock(&tasklist_lock);
         for_each_process(task){
         recompute_capability_creds(task);
         }
         read_unlock(&tasklist_lock);
        
         return 0;
        厂商补丁:
        Linux
        -----
        目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
        
        http://www.kernel.org/

- 漏洞信息

12604
Linux Security Modules Running Processes Privilege Escalation

- 漏洞描述

Unknown or Incomplete

- 时间线

2004-12-23 Unknow
Unknow Unknow

- 解决方案

Unknown or Incomplete

- 相关参考

- 漏洞作者

Unknown or Incomplete

- 漏洞信息

Linux Security Modules Process Capabilities Design Error Vulnerability
Design Error 12093
No Yes
2004-12-23 12:00:00 2009-07-12 09:26:00
Discovered by LiangBin <liangbin@venustech.com.cn>.

- 受影响的程序版本

Ubuntu Ubuntu Linux 4.1 ppc
Ubuntu Ubuntu Linux 4.1 ia64
Ubuntu Ubuntu Linux 4.1 ia32
Mandriva Linux Mandrake 10.1 x86_64
Mandriva Linux Mandrake 10.1
Linux Security Modules LSM1
Conectiva Linux 10.0

- 漏洞讨论

It has been reported that Linux Security Modules suffers from a design error that could result in host compromise. According to the report, when LSM is loaded as a kernel module, existing processes on the system will be granted unauthorized capabilities. This includes non-root processes. A malicious user on the system at this time will have effectively gained administrative access.

Reported affected are versions of LSM for Linux kernels 2.5.x and 2.6.x. LSM on Linux 2.4.x is reportedly not vulnerable.

- 漏洞利用

There is no exploit code required.

- 解决方案

An unofficial source code modification has been made available. See reference section. It has not been verified by Symantec.

Conectiva has released a security advisory (CLA-2005:930) and fixes to address this and other issues. Please see the referenced advisory for further information regarding obtaining and applying appropriate updates.

Ubuntu has released an advisory called USN-57-1 to address this, and other issues for Ubuntu Linux. Please see the referenced advisory for further information.

Mandriva Linux has released advisory MDKSA-2005:110 addressing this issue. Please see the referenced advisory for further information.

- 相关参考

 

 

关于SCAP中文社区

SCAP中文社区是国内第一个以SCAP为主题的中文开放社区。了解更多信息,请查阅[关于本站]

版权声明

CVE/CWE/OVAL均为MITRE公司的注册商标,它们的官方数据源均保存在MITRE公司的相关网站