一、漏洞描述
Polkit是一个用于在类Unix操作系统中控制系统范围权限的组件,它为非特权进程与特权进程提供了一种通信方式。Polkit中的pkexec应用程序旨在允许非特权用户根据预定义的策略以特权用户身份运行命令。Polkit pkexec存在本地权限提升漏洞(CVE-2021-4034)。由于pkexec无法正确处理调用参数计数,攻击者可以通过制作环境变量来诱导pkexec执行任意代码。具有低权限的攻击者可以利用此漏洞绕过pkexec自带的安全保护措施,获取目标机器的ROOT权限。
漏洞等级:高危。
二、修复方案
目前各Linux发行版官方均已给出安全补丁,建议用户尽快升级至安全版本以下为Debian、RedHat等Linux发行版为Polkit更新的安全版本列表:
1.版本升级
用户可以使用以下命令升级Polkit到最新版。
CentOS、RedHat 系列:yum clean all && yum makecache yum update polkit -y
Debian、Ubuntu 系列:sudo apt-get update sudo apt-get install policykit-1
2.版本检测
用户可通过下面的命令检测升级后的版本是否是安全版本:
CentOS、RedHat 系列:rpm -qa polkit
Debian、Ubuntu 系列:dpkg -l policykit-1
3、缓解措施
若暂时无法安装安全更新,在不影响业务的情况下可采用以下缓解措施进行防护:
删除pkexec程序的SUID位:chmod 755 /usr/bin/pkexec
网络信息中心
2022年1月29日