红联Linux门户
Linux帮助

Linux Kernel copy_from_user_mmap_sem()函数内存访问漏洞

发布时间:2008-03-04 00:26:19来源:红联作者:Distance
发布日期:2008-02-08
更新日期:2008-02-21

受影响系统:
Linux kernel 2.6.22 - 2.6.24
不受影响系统:
Linux kernel 2.6.24.1

描述:
BUGTRAQ ID: 27796
CVE(CAN) ID: CVE-2008-0010

Linux Kernel是开放源码操作系统Linux所使用的内核。

Linux Kernel的实现上存在漏洞,本地攻击者可能利用此漏洞获取内核内存的敏感信息。

Linux Kernel的fs/splice.c文件中的copy_from_user_mmap_sem()函数未经验证用户提供的指针便使用__copy_from_user_inatomic()拷贝了用户进程内存中的数据:

---8<--- fs/splice.c:1188 ---8<---
partial = __copy_from_user_inatomic(dst, src, n);
---8<--- fs/splice.c:1188 ---8<---

这可能允许本地攻击者通过特制的vmsplice()系统调用读取任意内核内存。

厂商补丁:

Debian
Debian已经为此发布了一个安全公告(DSA-1494-2)以及相应补丁:
DSA-1494-2:New linux-2.6 packages fix privilege escalation
链接:http://www.debian.org/security/2008/dsa-1494

补丁安装方法:

1. 手工安装补丁包:

首先,使用下面的命令来下载补丁软件:
# wget url (url是补丁下载链接地址)

然后,使用下面的命令来安装补丁:
# dpkg -i file.deb (file是相应的补丁名)

2. 使用apt-get自动安装补丁包:

首先,使用下面的命令更新内部数据库:
# apt-get update

然后,使用下面的命令安装更新软件包:
# apt-get upgrade

Linux
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.24.1.bz2
文章评论

共有 0 条评论