0x00 漏洞編号
-
CVE-2020-11651
-
CVE-2020-11652
0x01 漏洞概述
SaltStack 是基于 Python 開(kāi)發的一(yī)套C/S架構配置管理工(gōng)具。國(guó)外某安全團隊披露了 SaltStack 存在認證繞過漏洞(CVE-2020-11651)和目錄遍曆漏洞(CVE-2020-11652)。在 CVE-2020-11651 認證繞過漏洞中,攻擊者通(tōng)過構造惡意請求,可以繞過 Salt Master 的驗證邏輯,調用相(xiàng)關未授權函數功能(néng),從(cóng)而可以造成遠(yuǎn)程命令執行漏洞。在 CVE-2020-11652 目錄遍曆漏洞中,攻擊者通(tōng)過構造惡意請求,讀(dú)取服務器(qì)上(shàng)任意文件(jiàn)。
0x02 漏洞描述
CVE-2020-11651
ClearFuncs 類在處理授權時,并未限制 _send_pub() 方法,該方法直接可以在發布隊列消息,發布的消息會(huì)通(tōng)過 root 身份權限進行執行命令。ClearFuncs還(hái)公開(kāi)了_prep_auth_info()方法,通(tōng)過該方法可以獲取到(dào)"root key",通(tōng)過獲取到(dào)的"root key"可以在主服務上(shàng)執遠(yuǎn)程調用命令。CVE-2020-11652
whell 模塊中包含用于在特定目錄下(xià)讀(dú)取、寫入文件(jiàn)命令。函數中輸入的信息與目錄進行拼接可以繞過目錄限制。
在salt.tokens.localfs類的get_token() 方法(由 ClearFuncs 類可以通(tōng)過未授權進行調用)無法删除輸入的參數,并且作為(wèi)文件(jiàn)名稱使用,在路(lù)徑中通(tōng)過拼接”..”進行讀(dú)取目标目錄之外的文件(jiàn)。唯一(yī)的限制時文件(jiàn)必須通(tōng)過salt.payload.Serial.loads()進行反序列化。
0x03 影響版本
< 2019.2.4
< 3000.2
0x04 修複建議
升級至安全版本
官方鏈接地址:
https://community.saltstack.com/blog/critical-vulnerabilities-update-cve-2020-11651-and-cve-2020-11652/