什么是CVE-2021-4034 Polkit特权提升漏洞?
Linux被广泛认为是一种非常安全的操作系统。然而,和其他系统软件一样,它也可能存在漏洞和利用,最严重的就是特权升级漏洞,这些漏洞允许对手提升权限,并有可能接管整个组织。Polkit CVE-2021-4034是一种严重的特权升级漏洞,已经在过去的12年中被忽视,影响着所有主要的Linux发行版。这个漏洞实在太可怕了,所以它被评为8级的严重性。那么,Polkit CVE-2021-4034到底是什么,怎样解决它呢?
Polkit特权升级漏洞利用了Linux PolicyKit组件的可执行部分pkexec。pkexec是一个可执行文件,允许用户以另一个用户的身份执行命令。pkexec的源代码中存在漏洞,任何人都可以利用这些漏洞来在Linux系统中获得最高权限,即成为root用户。这个漏洞被称为”Pwnkit”,并被追踪为CVE-2021-4034。
Linux中的Polkit漏洞允许非特权用户以root身份执行恶意代码。这可能导致一系列破坏性行为,包括安装后门、完全接管系统和对受害者系统进行永久更改。
Polkit是所有主要Linux发行版(如Ubuntu、Fedora和Debian)以及服务器发行版(如RHEL和CentOS)中随附的一个软件包,它定义和管理允许非特权进程与特权进程在Linux系统上进行通信的策略。
Polkit组件中有一个可执行部分pkexec,用于处理用户如何以其他用户的身份执行命令。这个漏洞的根源就在这个可执行文件的源代码中。
Pwnkit利用了*NIX系统如何处理参数的方式,利用越界读写机制注入不安全的环境变量以获得root权限。如果你想深入了解这个漏洞的技术细节,请查阅官方安全公告,由报告这个漏洞的研究人员发布。
这个漏洞易于利用,并且由于受影响的Policy Kit组件默认随所有主要发行版一起发布,攻击者将会积极尝试利用这个漏洞在云环境和主要企业的运营空间中获得优势。
这个漏洞的受害者包括但不限于Ubuntu、Fedora、CentOS和Red Hat 8。在撰写本文时,这个漏洞已经在所有最新版本的发行版中修复。所以,请检查你的发行版的版本号,并尽快更新。
如果你正在运行最新版本的Linux发行版,那么你不需要担心Polkit漏洞。但是为了安全起见,可以运行以下命令检查你的系统中安装的PolicyKit软件包的版本:
dpkg -s policykit-1
如果这个命令的输出返回的版本号等于或低于0.105.18,那么你的系统就存在漏洞,需要进行升级。要修复CVE-2021-4034 Polkit特权升级漏洞,请将Linux发行版更新到最新版本。
在Ubuntu/Debian衍生版上运行以下命令:
sudo apt-get -y update && sudo apt-get -y upgrade
在Arch Linux上运行以下命令:
sudo pacman -Syyu
在Red Hat/Fedora/CentOS上运行以下命令:
sudo dnf update && sudo dnf upgrade
根据Linux服务器统计数据,Linux是超过一百万个Web服务器所采用的操作系统。这个数据足以说明CVE-2021-4034 Polkit漏洞的范围和可能带来的灾难性后果。
此外,就像Dirty Pipe一样,除了更新系统之外,没有其他解决办法。因此,如果Web服务器和运行易受攻击的Polkit版本的系统遭到攻击,它们将面临严重的问题。
建议所有个人和服务器维护者更新和升级他们的系统。如果整体更新系统不可行,你可以单独升级polkit软件包来提高服务器的安全性。