PoC公開宣稱駭客利用Salt RCE漏洞展開大規模的攻擊行為!

駭客於本周末針對伺服器管理及自動化的基礎設施,利用Salt RCE展開攻擊。LineageOS、Vates、Ghost blogging platform及DigiCert在內等組織,都宣稱受到攻擊,成千上百的伺服器,無論管理端或客戶端都遭受潛在威脅。

在3000.2和2019.2.4之前的Salt版本容易受到代碼CVE-2020-11651和代碼CVE-2020-11652的影響。F-Secure上週對外公開揭露這兩個漏洞,宣稱任何駭客只需不到24小時即可開發出100%可用的攻擊模式。

第一個漏洞CVE-2020-11651讓駭客利用指令佇列主發布伺服器(master publish server)上的訊息,並從主伺服器上的本地根用戶那裡取得用於驗證命令的根金鑰(root key)。F-Secure解釋:「無意間的暴露使得遠端未經身份驗證的駭客,能以root用戶等級存取salt master。」

CVE-2020-11652是一種路徑遍歷(path traversal)漏洞,允許讀取預期目錄之外的檔案。與CVE-2020-11651和在一起使用,會讓未經身份驗證的駭客在任何地方讀取和寫入存取權限,並竊取密鑰以作為根向主服務器進行身份驗證。

由於利用代碼創建漏洞很簡單,因此,資安公司拒絕公布漏洞,以保護修補速度較慢的公司。但是網路上早已出現數個版本,這通常表示更多的攻擊將蜂擁而至。Salt漏洞頁面上出現120多則留言,多數是在描述攻擊軌跡,及如何阻擋伺服器上的非法入侵。

值得一提的是,光是阻擋駭客攻擊可能還不夠,甚至需要重新安裝伺服器。最好是將Salt設定為可以從官方SaltStack資料庫(SaltStack repository)自動取得更新。如果無法設定自動更新,F-Secure表示應該設置網路安全控制措施,以限制對Salt主伺服器的存取(預設端口4505和4506)。進而禁止從使用公共網路存取。

美國電腦緊急應變小組(US CERT)正式警告問題的嚴重性,大肆宣傳「盡快保護您的雲端基礎伺服器」。SaltStack提出保護並強化Salt環境的忠告。

遭受攻擊的組織

利用最近的Salt漏洞是Kinsing/H2Miner殭屍網絡的加密貨幣挖礦行為的一部分。挖礦程式(XMRig)是以「salt-minions」、「salt-minions-bak」、「salt-store」的名稱在執行。惡意軟體分析公司Intezer在推特證實,H2Miner利用F-Secure所提到的兩個漏洞來攻擊SaltStack。

LineageOS

針對LineageOS主要基礎架構(客製化Android操作系統)的攻擊,讓管理員失去所有服務的管理權限。接下來的幾個小時,團隊努力評估並修復所遭受的損壞。

本文公開時,仍有stats & builds兩項服務尚未恢復,儘管builds因為其他因素已於4月30日起停止服務。目前仍不清楚此次駭客入侵的原因為何?

DigiCert

DigiCert公開聲明,駭客破壞了用於signing certificate timestamps(簡稱SCTs)的Certificate Transparency Log 2 key(簡稱CT log 2)。

目前已將log轉為唯讀模式,沒有跡象顯示駭客在SCT上使用了密鑰。很可能是因為他們不知道自己有權限存取。反之,則在伺服器上執行其他服務。

DigiCert表示,任何在遭駭後出現的SCT都是可疑的,應該從信任列表中刪除。指出駭客之所以可以存取Certificate Transparency Log 2,因為這是比較傳統的基礎架構,當初在部署時並未在專用網絡上運行。

CT log 2原定於5月1日關閉。由於某些客戶仍有需求,所以延後關閉。也代表CT log 2與其他CT log分開操作。CT log和憑證頒發是在不同的作業環境執行的,因此CT存取並不會影響到憑證。

Ghost blogging platform

Ghost平台是Salt漏洞的另一個受害者。目前已知有Ghost(Pro)和Ghost.org收費服務受到了影響。調查顯示,信用卡資訊沒有受到影響,而且「沒有直接證據表示客戶私人資料,密碼或其他資料遭到破壞。」

確認資安問題以及對於Ghost平台的影響後,宣稱攻擊的目的是加密貨幣挖礦。 公告寫道:「挖礦程式使CPU運行達到尖峰,迅速使得系統超載,我們立即意識到問題的嚴重性。」

Ghost平台表示,目前已經清除駭客及挖礦程式,系統目前非常穩定,沒有發現其他問題。

Xen Orchestra

Xen Orchestra,另一個Salt漏洞的受害者。該公司發現,入侵的目的是藉由流氓salt挖礦程式在虛擬化主機上執行虛擬貨幣挖礦程式。而且目的是在提升挖礦效率,並不是持久存在的。

這些受害組織只是Salt漏洞的幾個例子。主要目的都是用於植入挖礦程式。根據專門用於主機和網路的搜尋引擎Censys,目前在公共網路約有超過5,000個SaltStack伺服器,很容易受到這兩個Salt漏洞攻擊。

 

關於漏洞概述

SaltStack是一套基於Python開發的C/S架構配置管理工具。國外資安團隊揭露SaltStack存在認證繞過漏洞(CVE-2020-11651)和目錄遍歷漏洞(CVE-2020-11652)。

在CVE-2020-11651,駭客藉由發出惡意請求,繞過 Salt Master的驗證邏輯,調用相關未授權的函數功能,可以從遠端發出指令執行漏洞。在 CVE-2020-11652,攻擊者藉由發出惡意請求,讀取伺服器上任意的檔案。

漏洞技術說明

身份驗證繞過漏洞(CVE-2020-11651)

ClearFuncs 類在處理授權時,並未限制 _send_pub() 方法,該方法直接可以在發佈佇列消息,發佈的消息會通過 root 身份許可權進行執行命令。

ClearFuncs 公開了 _prep_auth_info() 方法,通過該方法可以獲取到”root key”,通過獲取到的”root key”可以在主服務上執遠端調用命令。

目錄遍歷漏洞(CVE-2020-11652)

whell 模組中包含用於在特定目錄下讀取、寫入文件命令。函數中輸入的資訊與目錄進行拼接可以繞過目錄限制。

在 salt.tokens.localfs 類中的 get_token() 方法(由 ClearFuncs 類可以通過未授權進行調用)無法刪除輸入的參數,並且作為檔案名稱使用,在路徑中通過拼接”..”進行讀取目標目錄之外的檔案。唯一的限制時檔案必須通過 salt.payload.Serial.loads() 進行反序列化。

 

影響版本

SaltStack < 2019.2.4

SaltStack < 3000.2

修復版本

SaltStack = 2019.2.4

SaltStack = 3000.2

 

修復建議

升級至安全版本及其以上,升級前建議做好快照備份措施。安全版本下載地址參考:https://repo.saltstack.com

將SaltStack設定為自動更新,及時獲取相應更新。

將Salt Master預設監聽埠(預設4505和4506)設置為禁止對公共網路開放,或僅對可信對象開放。

 

如何入侵的實作

目前在github已經有文章教導人如何實作入侵,如有興趣請參照下方連結

https://github.com/jasperla/CVE-2020-11651-poc

本文由捕夢網參閱集結國外相關說明文章譯成

參考文章:

https://www.bleepingcomputer.com/news/security/hackers-exploit-salt-rce-bugs-in-widespread-attacks-pocs-public/

https://nosec.org/home/detail/4452.html

 

 

You may also like...

發佈留言