來源:【科學(xué)網(wǎng)】
代碼投毒、刪庫跑路,近年來,隨著軟件供應(yīng)鏈各個環(huán)節(jié)的攻擊事件頻頻出現(xiàn),軟件供應(yīng)鏈安全問題已經(jīng)成為了開源生態(tài)建設(shè)非常重要的部分。
近日,中國科學(xué)院軟件研究所(以下簡稱軟件所)智能軟件研究中心團隊(以下簡稱團隊)基于開源軟件供應(yīng)鏈重大基礎(chǔ)設(shè)施,實現(xiàn)了面向全網(wǎng)針對開源生態(tài)“投毒”攻擊現(xiàn)象的持續(xù)監(jiān)測。團隊在開源軟件存儲庫惡意擴展包檢測中,發(fā)現(xiàn)Python官方擴展包倉庫被惡意上傳了8個惡意包及707個被“投毒”成功的開源項目。
開源,既是數(shù)字化創(chuàng)新的動力,也是軟件供應(yīng)鏈攻擊的目標(biāo)。所謂開源生態(tài)“投毒”,指的是攻擊者利用軟件供應(yīng)商與最終用戶之間的信任關(guān)系,在合法軟件的開發(fā)、傳播和升級過程中進行劫持或篡改,從而達到非法目的的攻擊類型。
“投毒攻擊在開源生態(tài)中是一個特有的現(xiàn)象,因為其鏈?zhǔn)絺魅镜牟懊娣浅V,威脅也更大?!避浖芯繂T開源軟件供應(yīng)鏈重大基礎(chǔ)設(shè)施技術(shù)負責(zé)人吳敬征表示。
當(dāng)前,有超過99%的商業(yè)軟件包含開源軟件,一旦具有大規(guī)模用戶基礎(chǔ)的開源軟件存在安全漏洞,勢必會影響整個軟件產(chǎn)業(yè)、甚至其他重要行業(yè)的供應(yīng)鏈安全。
正因如此,針對開源軟件生產(chǎn)、分發(fā)、使用全過程的風(fēng)險管理尤為重要,其中就包括開源軟件安全檢測機制。
“開源生態(tài)下,軟件數(shù)量非常龐大,同時單個軟件的代碼規(guī)模也很大。這就使得過去基于規(guī)則的檢測工具面臨著沉重的運行負擔(dān)。而且,這些工具的檢測目標(biāo)比較寬泛,難以針對‘投毒’攻擊進行精準(zhǔn)打擊?!眳蔷凑鹘忉尅?/p>
為此,團隊自主研發(fā)了一種新型的惡意包分析工具。在應(yīng)用于Python惡意包的檢測中,他們發(fā)現(xiàn)Python官方擴展包倉庫被上傳了8個惡意包,其中包含了惡意代碼,存在巨大的安全隱患,比如竊取隱私信息、數(shù)字貨幣密鑰、種植持久化后門、遠程控制等一系列攻擊活動。團隊已經(jīng)把在Python平臺發(fā)現(xiàn)的8個惡意包上報給PyPI官方。
此外,對于第三方插入的代碼執(zhí)行后門的擴展包的檢測,團隊通過開源軟件供應(yīng)鏈重大基礎(chǔ)設(shè)施的供應(yīng)鏈分析模塊進行檢測。結(jié)果共發(fā)現(xiàn)了707個被“投毒”成功的開源項目,其中85個發(fā)布在Python官方擴展包倉庫,622個發(fā)布在公共代碼托管平臺(Github、GitLab)。
目前,團隊已將707個被“投毒”成功的開源項目反饋給國家信息安全漏洞共享平臺(CNVD)、國家信息安全漏洞庫(CNNVD)等安全漏洞管理機構(gòu),其中17個漏洞現(xiàn)已獲得正式編號。
為應(yīng)對開源生態(tài)存在的風(fēng)險,軟件所于2021年起聯(lián)合中科南京軟件技術(shù)研究院啟動開源軟件供應(yīng)鏈重大基礎(chǔ)設(shè)施,建設(shè)了國內(nèi)首個集開源軟件采集存儲、開發(fā)測試、集成發(fā)布、運維升級等一體化設(shè)施。其主要功能包括開源軟件供應(yīng)鏈關(guān)鍵節(jié)點分析、開源軟件供應(yīng)鏈可靠構(gòu)建、開源軟件可維護性分析、開源軟件及其供應(yīng)鏈安全分析及開源軟件合規(guī)性分析等。
開源軟件供應(yīng)鏈重大基礎(chǔ)設(shè)施致力于支撐圍繞開源軟件的基礎(chǔ)研究和產(chǎn)業(yè)創(chuàng)新,維護開源生態(tài)健康發(fā)展,增強使用開源的信心和貢獻開源的能力,保障各行各業(yè)的高質(zhì)量開源軟件供應(yīng)。
本文來自【科學(xué)網(wǎng)】,僅代表作者觀點。全國黨媒信息公共平臺提供信息發(fā)布傳播服務(wù)。
ID:jrtt