SaltStack 水平權限繞過漏洞(CVE-2020-11651)
SaltStack 是基于 Python 開發的一套C/S架構配置管理工具。國外某安全團隊披露了 SaltStack 存在認證繞過漏洞(CVE-2020-11651)和目錄遍歷漏洞(CVE-2020-11652)。
在 CVE-2020-11651 認證繞過漏洞中,攻擊者通過構造惡意請求,可以繞過 Salt Master 的驗證邏輯,調用相關未授權函數功能,從而可以造成遠程命令執行漏洞。
參考鏈接:
- https://labs.f-secure.com/advisories/saltstack-authorization-bypass
- https://github.com/rossengeorgiev/salt-security-backports
- https://github.com/saltstack/salt/blob/a67d76b15615983d467ed81371b38b4a17e4f3b7/tests/integration/master/test_clear_funcs.py
漏洞環境
執行如下命令啟動一個SaltStack Master服務:
docker-compose up -d
環境啟動后,將會在本地監聽如下端口:
- 4505/4506 這是SaltStack Master與minions通信的端口
- 8000 這是Salt的API端口
- 2222 這是容器內部的SSH服務器監聽的端口
漏洞復現
本文檔復現CVE-2020-11651漏洞。
我們可以使用如下請求來執行salt/master.py中的ClearFuncs:_prep_auth_info方法:
{'cmd': '_prep_auth_info'}
利用這個方法,可以獲得目標的所有用戶的key,利用這個key即可通過超級管理員權限執行一些后臺功能,比如下發任務等。
使用這個POC,首先獲取Key,再在master中執行touch /tmp/success:

Vulhub 文檔
推薦文章: