在23andMe的Yamale (YAML的模式和驗(yàn)證器)中披露了一個(gè)高度嚴(yán)重的代碼注入漏洞,網(wǎng)絡(luò)攻擊者可以隨意利用該漏洞執(zhí)行任意Python代碼。
該漏洞被跟蹤為CVE-2021-38305(CVSS分?jǐn)?shù):7.8),涉及操縱作為工具輸入提供的架構(gòu)文件,以繞過(guò)保護(hù)并實(shí)現(xiàn)代碼執(zhí)行。特別是,問(wèn)題存在于模式解析函數(shù)中,該函數(shù)允許對(duì)傳入的任何輸入進(jìn)行求值和執(zhí)行,從而導(dǎo)致在模式中使用特殊制作的字符串來(lái)注入系統(tǒng)命令的情況。
Yamale是一個(gè)Python包,它允許開(kāi)發(fā)人員從命令行驗(yàn)證YAML(一種經(jīng)常用于編寫(xiě)配置文件的數(shù)據(jù)序列化語(yǔ)言)。GitHub上至少有224個(gè)存儲(chǔ)庫(kù)使用這個(gè)包。
JFrog Security 首席技術(shù)官 Asaf Karas 在電子郵件聲明中說(shuō):“這個(gè)漏洞允許攻擊者提供輸入模式文件來(lái)執(zhí)行 Python 代碼注入,從而導(dǎo)致使用Yamale進(jìn)程的特權(quán)執(zhí)行代碼?!?“我們建議對(duì)任何進(jìn)入eval() 的輸入進(jìn)行徹底的清理,最好是用任務(wù)所需的更具體的api替換eval()調(diào)用?!?/p>
該問(wèn)題已在Yamale 版本3.0.8中得到糾正。Yamale的維護(hù)者在8月4日發(fā)布的發(fā)布說(shuō)明中指出:“這個(gè)版本修復(fù)了一個(gè)錯(cuò)誤,即格式良好的模式文件可以在運(yùn)行Yamale的系統(tǒng)上執(zhí)行任意代碼?!?/p>
這是JFrog在Python包中發(fā)現(xiàn)的一系列安全問(wèn)題中的最新發(fā)現(xiàn)。
2021年6月,Vdoo在PyPi存儲(chǔ)庫(kù)中披露了typosquatted包,發(fā)現(xiàn)這些包下載并執(zhí)行第三方加密器,如T-Rex、ubqminer或PhoenixMiner,用于在受影響的系統(tǒng)上挖掘以太坊和Ubiq。
隨后,JFrog安全團(tuán)隊(duì)發(fā)現(xiàn)了另外8個(gè)惡意的Python庫(kù),這些庫(kù)被下載了不少于3萬(wàn)次,可以用來(lái)在目標(biāo)機(jī)器上執(zhí)行遠(yuǎn)程代碼,收集系統(tǒng)信息,竊取信用卡信息和自動(dòng)保存在Chrome和Edge瀏覽器中的密碼,甚至竊取Discord認(rèn)證令牌。
“軟件包存儲(chǔ)庫(kù)正成為供應(yīng)鏈攻擊的熱門(mén)目標(biāo),npm、PyPI和RubyGems等流行存儲(chǔ)庫(kù)已經(jīng)受到惡意軟件攻擊,”研究人員稱(chēng)?!坝袝r(shí),惡意軟件包被允許上傳到包存儲(chǔ)庫(kù),這給了惡意行為者利用存儲(chǔ)庫(kù)傳播病毒的機(jī)會(huì),并對(duì)開(kāi)發(fā)人員和管道中的CI/CD機(jī)發(fā)起成功的攻擊?!?/p>
隨著敏捷開(kāi)發(fā)的盛行,第三方軟件包存儲(chǔ)庫(kù)被廣泛使用,這在一定程度上幫助開(kāi)發(fā)人員加快開(kāi)發(fā)進(jìn)程,提高工作效率。但在犯罪分子眼中,開(kāi)發(fā)人員及其團(tuán)隊(duì)及客戶(hù)群已成為惡意軟件的關(guān)鍵切入點(diǎn),針對(duì)開(kāi)發(fā)人員的最常見(jiàn)的攻擊媒介之一是利用公共軟件包存儲(chǔ)庫(kù)。因此在使用這些托管包時(shí),對(duì)框架及代碼及時(shí)進(jìn)行安全檢測(cè)十分重要。
當(dāng)應(yīng)用程序中的第三代碼方庫(kù)不能保持在最新?tīng)顟B(tài)時(shí),對(duì)企業(yè)來(lái)說(shuō)后果可能很?chē)?yán)重。首先,違規(guī)風(fēng)險(xiǎn)可能會(huì)更高,其次是增加了補(bǔ)丁的復(fù)雜性。漏洞時(shí)間越長(zhǎng)修補(bǔ)就越復(fù)雜,打補(bǔ)丁所需的時(shí)間就越長(zhǎng),破壞應(yīng)用程序的風(fēng)險(xiǎn)也就越大。
因此在軟件開(kāi)發(fā)期間就開(kāi)始關(guān)注代碼質(zhì)量和安全,使用靜態(tài)代碼檢測(cè)工具或SCA等工具,檢測(cè)編碼規(guī)范問(wèn)題及缺陷,提高自研代碼及第三方代碼的安全性,不但可以為開(kāi)發(fā)人員查看修改代碼問(wèn)題節(jié)省大量時(shí)間成本,還能為后續(xù)維護(hù)軟件安全問(wèn)題減少阻力,確保軟件自身安全。
參讀鏈接:
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/122337.html