存在近十年的Linux Sudo漏洞,可让任何本机用户取得执行根权限

安全厂商Qualys研究人员发现类Unix操作系统常用的Sudo程序,存在一个权限升级漏洞,在默认Sudo组态情况下,任何人都能取得主机上的根执行权限。

Sudo是一种工具程序,用于各种类Unix操作系统,包括BSD、Mac OS X以及GNU/Linux,允许一般用户以另一人的根权限来执行程序。

Qualys研究人员发现的漏洞属于Sudo的堆积(heap-based)缓冲溢出漏洞,编号CVE-2021-3156。它在本机用户发送sudoedit -s及以单反斜线(\)结尾的指令行参数开采,任何本机用户(包括一般用户和系统用户、sudoer或非sudoer)在未经验证(即无需知道密码)都能轻易完成。成功开采可造成权限扩张,无权限的本机用户因此取得主机根权限,可能危及资料隐私或导致系统被变更或无法使用。这项漏洞CVSS 3.1风险评分达7.0,属中高度风险。

这项漏洞从2011年7月就存在,等于公开将近10年,这个漏洞影响所有从1.8.2到1.8.31p2的旧版本,及从1.9.0到1.9.5p1的稳定版本。

Qualys研究人员发展了数个概念验证攻击程序,并且成功在Ubuntu 20.04 (Sudo 1.8.31)、Debian 10 (Sudo 1.8.27)和Fedora 33 (Sudo 1.9.2)上,取得完整根权限。而其他Linux版本和操作系统,可能也同样曝险。

安全公司于今年1月中发现后,通报Sudo的开发维护单位。Sudo已在本周完成修补。

Red Hat、SUSE、Ubuntu和Debian也分别发布安全公告,呼吁用户尽快升级到最新版本的Sudo组件。根据Red Hat公告,这项漏洞除了影响Red Hat Enterprise Linux 5-8版外,也影响Red Hat OpenShift Container Platform 4.x版。