Linux sudo 被曝提權漏洞,任意使用者均能以 root 身份執行命令
| 2019-10-16 11:14 評論: 1
Linux 使用者請注意!根據外媒的報導,Linux sudo 被曝出存在一個提權漏洞,可完全繞過 sudo 的安全策略。
先簡單說明一下情況,報導指出 sudo
存在一個安全策略隱患,即便 /etc/sudoers
配置檔案中明確表明不允許以 root 使用者進行訪問,但透過該漏洞,惡意使用者或程式仍可在目標 Linux 系統上以 root 使用者身份執行任意命令。
sudo
,也就是以超級管理員身份執行的意思。sudo
是 Linux 中最常使用的重要實用程式之一,它功能十分強大,幾乎安裝在每一款基於 UNIX 或 Linux 的作業系統上,也是這些作業系統的核心命令。作為一個系統命令,普通使用者可透過它以特殊許可權來執行程式或命令(通常以 root 使用者身份執行命令),而無需切換使用環境。
預設情況下,在大多數 Linux 發行版中,/etc/sudoers
檔案中 RunAs
規約的 ALL
關鍵字允許 admin 或 sudo 組中的所有使用者以系統中的任何有效使用者身份執行任何命令。如下圖所示:
然而,在 Linux 系統中存在一條基本安全正規化 —— 許可權劃分。管理員可以配置 sudoers
檔案,來指定哪些使用者可以執行哪些命令。如此一來,即使限制了使用者以 root 使用者身份執行特定命令或任何命令,該漏洞也可能允許使用者繞過此安全策略並完全接管系統。
sudo 開發者說到: “即便 RunAs
規約明確禁止 root 使用者訪問,但如果 RunAs
規約檔案中首先列出了 ALL
關鍵字,具有 sudo
許可權的使用者就可以使用它來以 root 身份執行任意命令。”
如何利用此漏洞?
據悉,該漏洞由蘋果資訊保安部門的 Joe Vennix 追蹤發現(漏洞的 CVE ID 為 CVE-2019-14287 )。如果想要利用這個漏洞,只需按以下的方式執行即可:
sudo -u#-1 id -u
或者
sudo -u#4294967295 id -u
不過我們也能看到這裡存在一個這樣的前提,那就是你的安全策略設定如下(幸運的是,這不是標準的配置):
eviluser = (ALL, !root) /usr/bin/vi
然後這個 eviluser 就能夠透過sudo -u#-1 vi
命令以 root 身份執行vi
。
之所以會產生這個漏洞,是因為將使用者 ID 轉換為使用者名稱的函式會將 -1(或無效等效的 4294967295)誤認為是 0,而這正好是 root 的使用者 ID 。此外,由於透過 -u
選項指定的使用者 ID 在密碼資料庫中不存在,因此不會執行任何 PAM 會話模組。
最後,快將 sudo 升級到 1.8.28 最新版本吧,新版本已於今天釋出!該漏洞會影響 1.8.28 之前的所有版本。
相關文章
- Linux Sudo 被爆重要漏洞,允許黑客提權執行root命令Linux黑客
- sudo以其他使用者身份身份執行命令-linux命令學習Linux
- 【sudo】配置sudoers實現oracle使用者以root身份執行命令Oracle
- linux sudo提權Linux
- Sudo提權漏洞可執行root命令;網友製造虛擬交通擁堵;協同辦公軟體集體崩潰
- 【Linux】Liunx配置sudo 使oracle使用者有root許可權執行指令碼LinuxOracle指令碼
- 在redhat 5.4或suse 11以sudo執行需要root使用者許可權的命令Redhat
- Linux提權-70種sudo提權彙總Linux
- Linux 提權-Sudo_1Linux
- Linux 提權-Sudo_2Linux
- 利用CouchDB未授權訪問漏洞執行任意系統命令
- 設定非root賬號不用sudo直接執行docker命令Docker
- Linux伺服器漏洞防護 可SUDO提權到管理員Linux伺服器
- Docker普通使用者不使用sudo提權Docker
- WordPress4.6任意命令執行漏洞
- 以root使用者執行命令
- ubuntu如何能以root身份圖形化操作?Ubuntu
- Linux下ACL許可權控制以及用sudo設定使用者對命令的執行許可權Linux
- Mysql滲透及提權,命令執行MySql
- 在PHP中以root身份執行外部命令(轉)PHP
- DC-9-sudo提權
- Linux sudo 提權之軟連結攻擊Linux
- Linux因15年前的核心漏洞被獲得 Root 許可權Linux
- WinRAR被曝存嚴重程式碼執行漏洞 19年影響5億使用者!
- Django任意程式碼執行漏洞分析Django
- 命令執行漏洞
- 詳解管理root使用者許可權的sudo服務程式
- OpenWRT 曝遠端程式碼執行漏洞
- linux 普通使用者提權Linux
- Linux、Windows提權命令速記LinuxWindows
- 用大寫字母輸入 Linux 命令以將其作為 sudo 使用者執行Linux
- linux給使用者新增sudo許可權Linux
- linux為使用者新增sudo許可權Linux
- LINUX下使用指令碼直接執行SQLPLUS命令(root使用者下)Linux指令碼SQL
- 在 Linux 中執行特定命令而無需 sudo 密碼Linux密碼
- 如何在 Linux 中不輸入密碼執行 sudo 命令Linux密碼
- linux sudo 命令Linux
- Linux sudo 漏洞可能導致未經授權的特權訪問Linux