标题:
【转载】FreeBSD系统/amd64 swapgs指令 本地权限提升漏洞
[打印本页]
作者:
期待~~
时间:
2009-11-2 16:53
标题:
【转载】FreeBSD系统/amd64 swapgs指令 本地权限提升漏洞
FreeBSD系统/amd64 swapgs指令 本地权限提升漏洞
受影响系统:
FreeBSD FreeBSD 7.0
FreeBSD FreeBSD 6.3
描述:
FreeBSD就是一种运行在Intel平台上、可以自由使用的开放源码Unix类系统。
FreeBSD/amd64通常用于AMD和Intel CPU的64位系统上。对于Intel CPU,这种架构也被称为EM64T或Intel 64。
用户进程和内核都使用gs段CPU寄存器以方便的访问状态数据。用户进程使用这个寄存器管理每个线程的数据,内核使用这个寄存器管理每个处理器的数据。当处理器进入和离开内核时,会使用swapgs指令在gs寄存器的内核与用户值之间转换。
网络安全
当处理器在用户与内核级之间切换的时候,会执行一些检查以实现权限保护系统。如果处理器在试图切换权限级别时检测到了问题,会生成trap,通常为通用保护错误(GPF)。在这种情况下,处理器不再返回到用户级进程而是重新进入内核。FreeBSD内核允许通过SIGSEGV或SIGBUS信号通知用户进程这样的事件。
网络安全
如果FreeBSD/amd64系统在从中断、trap或系统调用返回时出现了通用包含错误,就可能在不应调用的情况下额外调用一次swapgs CPU指令,导致混合用户域和内核状态。本地攻击者可以在在内核从中断、trap或系统调用返回时导致通用保护错误,以控制栈帧并以内核权限执行任意代码。
网络安全
攻击者可以利用这个漏洞获得内核/管理程序权限。例如,普通用户可以获得root权限、摆脱牢笼限制或绕过强制访问控制(MAC)限制。
黑客
厂商补丁:
FreeBSD已经为此发布了一个安全公告(FreeBSD-SA-08:07)以及相应补丁:
FreeBSD-SA-08:07:amd64 swapgs local privilege escalation
链接:
ftp://ftp.freebsd.org/pub/FreeBS ... -SA-08:07.amd64.asc [url=http://www.3ast.com.cn]
黑客
a) 从以下位置下载相关补丁,并使用PGP工具验证附带的PGP签名。
# fetch
http://security.FreeBSD.org/patches/SA-08:07/amd64.patch [url=http://www.3ast.com.cn]
网络安全
# fetch
http://security.FreeBSD.org/patches/SA-08:07/amd64.patch.asc [url=http://www.3ast.com.cn]
网络安全
b) 以root执行以下命令:
# cd /usr/src
# patch < /path/to/patch
c) 如<URL:
http://www.FreeBSD.org/handbook/kernelconfig.htm> 所述重新编译内核并重启系统。 [url=http://www.3ast.com.cn]
网络安全
欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com/)
Powered by Discuz! 7.2