資安公司Qualys在 Linux Polkit Pkexec 發現了一個嚴重漏洞Pwnkit,編號為CVE-2021-4034。Polkit,以前稱為 PolicyKit,是一個systemd SUID-root 程序。它預設安裝於每個 Linux版本中。
這個漏洞很容易被利用。任何普通用戶都可以透由預設配置,利用此漏洞來取得完全 root 權限。如 Qualys對其漏洞描述:「這個漏洞是駭客夢想成真的地方。」
Pwnkit 危險的原因包含:
- Pkexec 預設安裝在所有主要的 Linux發行版本。
- Qualys 在漏洞測試中利用Ubuntu、Debian、Fedora和CentOS等版本,同時也確定其他Linux發行版本利用此漏洞。
- Pkexec 自 2009 年 5 月創建以來一直存在漏洞(commit c8c3d83, "Add a pkexec(1) command")。
- 無特權的本地用戶可以利用此漏洞獲得完全的 root 權限。
- 儘管此漏洞在技術上是記憶損壞,但可被獨立運用。
- 即使 polkit背景程序沒有運行,它也是可以利用的。
Red Hat將PwnKit 的通用漏洞評分系統 (CVSS) 評分為 7.8。Polkit 為非特權與特權程序間提供有效的溝通。換句話說,pkexec 就像sudo 命令。
雖然 Qualys 不會揭露如何利用漏洞,但該公司表示進行 PwnKit 攻擊並不難,並建議盡快修補漏洞。如果您的操作系統沒有可用的補丁,建議可以從 pkexec 中刪除 SUID-bit作為臨時緩解措施。例如,這個 root 驅動的 shell 命令可停止攻擊:
# chmod 0755 /usr/bin/pkexec
本文轉載自ZDNet。