發(fā)布時(shí)間 :2022年12月07日
類型 :勒索軟件
近日,亞信安全CERT監(jiān)控到Cacti存在命令執(zhí)行漏洞(CVE-2022-46169),漏洞細(xì)節(jié)已公開。該漏洞存在于remote_agent.php文件中,無(wú)需身份驗(yàn)證即可訪問此文件,攻擊者可通過(guò)設(shè)置網(wǎng)絡(luò)頭HTTP_變量繞過(guò)身份驗(yàn)證,觸發(fā)polldata功能,當(dāng)get_nfilter_request_var()函數(shù)檢索的參數(shù)$poller_id滿足特定條件時(shí),可觸發(fā)proc_open()函數(shù),從而導(dǎo)致命令執(zhí)行。此命令注入漏洞允許未經(jīng)身份驗(yàn)證的用戶在構(gòu)造惡意請(qǐng)求的情況下執(zhí)行任意命令。
對(duì)此,目前廠商已發(fā)布修復(fù)補(bǔ)丁,但暫未發(fā)布版本更新。鑒于該漏洞受影響面較大,亞信安全CERT建議使用Cacti的用戶及時(shí)關(guān)注官方更新,參照官方修復(fù)方案盡快采取相關(guān)措施,做好資產(chǎn)自查以及預(yù)防工作,以免遭受黑客攻擊。
Cacti是一套基于PHP,MySQL,SNMP及RRDTool開發(fā)的開源網(wǎng)絡(luò)流量監(jiān)測(cè)圖形分析工具,提供了非常強(qiáng)大的數(shù)據(jù)和用戶管理功能。
漏洞編號(hào)和等級(jí)
CVE-2022-46169
CVSS3.1 9.8分
漏洞狀態(tài)

受影響版本
Cacti = 1.2.22
修復(fù)建議
臨時(shí)緩解措施
1. 禁止lib/functions.php文件中的get_client_addr函數(shù)返回任意IP地址來(lái)防止授權(quán)繞過(guò),設(shè)置不遵循HTTP_... $_SERVER變量。若無(wú)法修改,應(yīng)禁止偽造運(yùn)行Cacti的服務(wù)器的IP地址。
2. 對(duì)remote_agent.php文件進(jìn)行修改以防止命令注入,變量$poller_id應(yīng)該是一個(gè)整數(shù),因此應(yīng)該通過(guò)函數(shù)get_filter_request_var代替get_nfilter_request_var進(jìn)行檢索:

3. 為了進(jìn)一步加強(qiáng)對(duì)命令注入的防御,$poller_id參數(shù)應(yīng)該在傳遞給proc_open之前使用escapeshellarg進(jìn)行轉(zhuǎn)義:

安全補(bǔ)丁修復(fù)
目前Cacti官方已發(fā)布安全補(bǔ)丁,建議受影響用戶盡快安裝修復(fù)補(bǔ)丁。
1.2.x版本補(bǔ)丁:https://github.com/Cacti/cacti/commit/7f0e16312dd5ce20f93744ef8b9c3b0f1ece2216
1.3.x版本補(bǔ)?。?/p>
https://github.com/Cacti/cacti/commit/b43f13ae7f1e6bfe4e8e56a80a7cd867cf2db52b
對(duì)于在PHP < 7.0下運(yùn)行的1.2.x實(shí)例,還需要進(jìn)一步更改:
https://github.com/Cacti/cacti/commit/a8d59e8fa5f0054aa9c6981b1cbe30ef0e2a0ec9
參考鏈接
https://github.com/Cacti/cacti/security/advisories/GHSA-6p93-p743-35gf