发布日期:2010-05-27
更新日期:2010-05-28
受影响系统:
FreeBSD FreeBSD 8.0
描述:
--------------------------------------------------------------------------------
BUGTRAQ ID: 40399
CVE ID: CVE-2010-2022
FreeBSD就是一种运行在Intel平台上、可以自由使用的开放源码Unix类系统。
FreeBSD所使用的jail(8)工具在关押(imprison)进程时没有更改当前的工作目录,其后代可以访问当前工作目录。
如果攻击者在jail调用之前设法获得了当前工作目录的描述符,就可以访问任意文件。除非中间进程更改了牢笼中的当前工作目录,否则启动牢笼的第一个进程的所有后代都会继承描述符。
默认下FreeBSD /etc/rc.d/jail脚本(可使用jail_* rc.conf(5)变量启用)不受这个漏洞影响。这是由于用于启动牢笼的默认牢笼标记(-l -U root)会导致jail(8)执行chdir(2)调用。如果设置了rc.conf(5)变量jail_flags或jail_<jname>_flags,且没有包含-l -U root,牢笼会受这个漏洞影响。
<*来源:Aaron D. Gifford
链接:ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-10:04.jail.asc
*>
建议:
--------------------------------------------------------------------------------
临时解决方法:
* 在启动牢笼时对jail(8)命令包含-l -U root参数。
厂商补丁:
FreeBSD
-------
FreeBSD已经为此发布了一个安全公告(FreeBSD-SA-10:04)以及相应补丁:
FreeBSD-SA-10:04:Insufficient environment sanitization in jail(8)
链接:ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-10:04.jail.asc
补丁下载:
# fetch :04/jail.patch
# fetch :04/jail.patch.asc