FreeBSD就是一种运行在Intel平台上、可以自由使用的开放源码Unix类系统。
jail(2)系统调用允许系统管理员将进程及其所有子代锁定在一个环境中,这样即使进程拥有超级用户权限,也只能对该环境外的系统造成很有限的影响。由于对可能的符号链接缺少处理,主机的jail rc.d(8)脚本受符号链接攻击的影响。通过用符号链接替换牢笼中的/var/log/console.log,牢笼中的超级用户(root)就可能使用任意内容覆盖牢笼外主机系统上的任意文件。这可能导致以不受禁锢的超级用户权限执行任意命令。
类似的,通过将牢笼文件系统架构中的目录加载点更改为符号链接,受禁锢的攻击者可能在主机文件系统架构的任意加载点加载本应在牢笼中才能加载的文件系统,或在主机系统上卸载任意文件系统。
注意:仅在使用主机的jail rc.d(8)脚本启动或停止牢笼时才会出现这个漏洞;一旦已经启动,在停止之前运行的牢笼无法利用这个漏洞。
FreeBSD FreeBSD 6.1
FreeBSD FreeBSD 6.0
FreeBSD FreeBSD 5.5
临时解决方法:
* 如果将sysctl(8)变量security.jail.chflags_allowed设置为0(默认),则对/var、/var/log、/var/log/console.log和牢笼中的所有文件系统加载点及其父目录设置sunlnk系统标签就可以确保确保不会用符号链接替换控制台日志文件和加载点。如果在运行牢笼时执行这个操作,管理员必须在设置sunlnk标签后检查攻击者没有使用符号链接替换任何目录。
厂商补丁:
FreeBSD
-------
FreeBSD已经为此发布了一个安全公告(FreeBSD-SA-07:01)以及相应补丁:
FreeBSD-SA-07:01:Jail rc.d script privilege escalation
链接:<a href="ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-07:01.jail.asc" target="_blank">ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-07:01.jail.asc</a>
补丁下载:
[FreeBSD 5.5]
# fetch <a href="http://security.FreeBSD.org/patches/SA-07:01/jail5.patch" target="_blank">http://security.FreeBSD.org/patches/SA-07:01/jail5.patch</a>
# fetch <a href="http://security.FreeBSD.org/patches/SA-07:01/jail5.patch.asc" target="_blank">http://security.FreeBSD.org/patches/SA-07:01/jail5.patch.asc</a>
[FreeBSD 6.0]
# fetch <a href="http://security.FreeBSD.org/patches/SA-07:01/jail60.patch" target="_blank">http://security.FreeBSD.org/patches/SA-07:01/jail60.patch</a>
# fetch <a href="http://security.FreeBSD.org/patches/SA-07:01/jail60.patch.asc" target="_blank">http://security.FreeBSD.org/patches/SA-07:01/jail60.patch.asc</a>
[FreeBSD 6.1]
# fetch <a href="http://security.FreeBSD.org/patches/SA-07:01/jail61.patch" target="_blank">http://security.FreeBSD.org/patches/SA-07:01/jail61.patch</a>
# fetch <a href="http://security.FreeBSD.org/patches/SA-07:01/jail61.patch.asc" target="_blank">http://security.FreeBSD.org/patches/SA-07:01/jail61.patch.asc</a>
暂无评论