Linux内核Capability LSM模块进程特权信任状本地权限提升漏洞

漏洞信息详情

Linux内核Capability LSM模块进程特权信任状本地权限提升漏洞

漏洞简介

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/” target=”_blank”>
http://www.kernel.org/

参考网址

来源: XF
名称: linux-security-module-gain-privileges(18673)
链接:http://xforce.iss.net/xforce/xfdb/18673

来源: BID
名称: 12093
链接:http://www.securityfocus.com/bid/12093

来源: BUGTRAQ
名称: 20041223 Linux 2.6 Kernel Capability LSM Module Local Privilege Elevation
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=110384535113035&w=2

来源: CONECTIVA
名称: CLA-2005:930
链接:http://distro.conectiva.com.br/atualizacoes/index.php?id=a&anuncio=000930

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享