高度严重的Linux Sudo漏洞允许用户获得根权限
据报告,Linux中存在一个高严重性漏洞,低权限攻击者可以利用该漏洞在受影响的系统上获得完整的根访问权限。
“获取\u进程\u ttyname()”用于Linux的函数,允许具有Sudo权限的用户以root用户身份运行命令或将权限提升到root用户。
Sudo代表“superuser do!”,是一个适用于Linux和UNIX操作系统的程序,它允许标准用户以超级用户(也称为root用户)的身份运行特定命令,例如添加用户或执行系统更新。
该漏洞实际上存在于Sudo从proc文件系统中的进程状态文件解析“tty”信息的方式中。
Qualys Security在其建议中解释说,在Linux机器上,sudo解析/proc/[pid]/stat文件,以便从字段7(tty_nr)确定进程的tty的设备号。
尽管文件中的字段是以空格分隔的,但字段2(命令名)可能包含空格(包括换行符),而sudo不考虑这一点。
因此,在支持SELinux的系统上具有sudo权限(Sudoer)的本地用户可以让sudo使用自己选择的设备号“通过创建一个从sudo二进制文件到一个包含空格和数字的名称的符号链接,”升级他们的权限以覆盖文件系统上的任何文件,包括root所有的文件。
“要利用该漏洞,用户可以选择一个当前不存在于/dev下的设备号。如果sudo在/dev/pts目录下找不到终端,它会对/dev执行广度优先搜索。然后,攻击者可能会在/dev下的世界可写目录中创建一个指向新创建设备的符号链接,例如/dev/shm,”一个sudo项目网站上的警告如下:
“在sudo命令行上指定SELinux角色时,此文件将用作命令的标准输入、输出和错误。如果在[sudo打开它]之前,/dev/shm下的符号链接被替换为指向另一个文件的链接,可以通过写入标准输出或标准错误来覆盖任意文件。通过重写受信任的文件,例如/etc/shadow或甚至/etc/sudoers,可以将其升级为完全根访问"。
该漏洞影响Sudo 1.8.6p7至1.8.20,并标记为高严重性,已在Sudo 1.8.20p1中修补,建议用户将其系统更新至最新版本。
Red Hat昨天推出了Red Hat Enterprise Linux 6、Red Hat Enterprise Linux 7和Red Hat Enterprise Linux Server的修补程序。Debian还发布了针对其Wheezy、Jessie和Sid版本的修复程序,SUSE Linux也为其多个产品推出了修复程序。
Qualys Security表示,一旦最大数量的用户有时间修补其系统的漏洞,它将发布其Sudoer-to-root漏洞。
