CVE-2021-4034
漏洞概述
近日,國外安全團隊發布安全公告稱,在 polkit 的 pkexec 程序中發現了一個本地權限提升漏洞。pkexec 應用程序是一個 setuid 工具,旨在允許非特權用戶根據預定義的策略以特權用戶身份運行命令。 由於當前版本的 pkexec 無法正確處理調用參數計數,並最終會嘗試將環境變量作為命令執行。攻擊者可以通過控制環境變量,從而誘導 pkexec 執行任意代碼。利用成功后,可導致非特權用戶獲得管理員權限。
影響版本
- ubuntu用戶對照
https://ubuntu.com/security/CVE-2021-4034
- centos用戶對照
https://access.redhat.com/security/cve/CVE-2021-4034
- debian用戶對照
https://security-tracker.debian.org/tracker/CVE-2021-4034
漏洞測試
利用腳本github地址:https://github.com/berdav/CVE-2021-4034
查看linux版本以及polkit包版本
# debian&ubuntu
cat /etc/os-release
dpkg -l | grep polkit
# redhat
cat /etc/redhat-release
rpm -qa polkit
使用debian9進行測試
git clone https://github.com/berdav/CVE-2021-4034
make
./cve-2021-4034

防御手段
1.更新到最新的polkit版本
2.將pkexec的suid權限取消
chmod 0755 /usr/bin/pkexec
之后使用提權腳本會提示
GLib: Cannot convert message: Could not open converter from 'UTF-8' to 'PWNKIT'
pkexec must be setuid root

