侵權投訴
訂閱
糾錯
加入自媒體

軟件供應鏈安全如此重要,但為什么難以解決?

軟件供應鏈安全如今已經(jīng)成了一個(gè)世界性難題。從2021年底Apache Log4j“核彈級”風(fēng)險爆發(fā),時(shí)至今日影響仍然存在,保障軟件供應鏈安全已成為業(yè)界關(guān)注焦點(diǎn)。

但近2年時(shí)間過(guò)去了,軟件供應鏈安全問(wèn)題似乎并沒(méi)有得以緩解,安全事件層出不窮,開(kāi)源漏洞風(fēng)險與日俱增。

Venafi對來(lái)自全球不同企業(yè)的1000位CIO調研顯示,其中82%的人表示他們的組織容易受到針對軟件供應鏈的網(wǎng)絡(luò )攻擊。

奇安信《2023中國軟件供應鏈安全分析報告》顯示,開(kāi)源項目維護者對安全問(wèn)題的重視度和修復積極性較低。

同時(shí),不活躍(超過(guò)一年未更新發(fā)布過(guò)版本)的開(kāi)源軟件,一旦出現安全漏洞,難以得到及時(shí)修復。

為什么人人都知道軟件供應鏈安全問(wèn)題很重要,卻難以解決?

軟件供應鏈安全與開(kāi)源息息相關(guān)

要搞清楚軟件供應鏈安全的癥結,先得厘清其涵義。

基于中國信通院的定義,軟件供應鏈安全是指“軟件供應鏈上軟件設計與開(kāi)發(fā)的各個(gè)階段中來(lái)自本身的編碼過(guò)程、工具、設備或供應鏈上游的代碼、模塊和服務(wù)的安全,以及軟件交付渠道及使用過(guò)程安全的總和。”

這里是把軟件供應鏈安全分為了兩部分:一是軟件自身的供應鏈安全,二是軟件供應鏈交界面的安全管理。

軟件自身的供應鏈,可以簡(jiǎn)單理解為應用的代碼來(lái)源,應用的代碼來(lái)源主要有兩個(gè)部分:一個(gè)是產(chǎn)品研發(fā)自己寫(xiě)的代碼,另一個(gè)就是引入的第三方的開(kāi)源組件代碼。針對這兩者的安全檢測也是我們常說(shuō)的開(kāi)發(fā)安全。

軟件供應鏈交接界面,針對的是開(kāi)源軟件或者商業(yè)采購第三方軟件。

這部分的供應鏈安全管理,主要是在交付和使用過(guò)程中進(jìn)行相關(guān)的準入檢測,并形成標準化可溯源的軟件物料清單。

事實(shí)上,軟件供應鏈的安全的重要性提升和開(kāi)源的大趨勢是息息相關(guān)的。

軟件開(kāi)源化的趨勢是一個(gè)累積的過(guò)程,十幾年的時(shí)間經(jīng)歷了一個(gè)量變到質(zhì)變的階段,現在全球的開(kāi)發(fā)者都在依賴(lài)開(kāi)源組件來(lái)做應用的研發(fā),絕大多數現代代碼庫都包含開(kāi)源組件。

但是開(kāi)源的繁榮本身就建立在一系列自由許可協(xié)議和免責條款上——其中也包括風(fēng)險免責,“使用者風(fēng)險自負”是開(kāi)源社區的共識。

近年來(lái),開(kāi)源軟件自身的安全狀況持續下滑,企業(yè)軟件開(kāi)發(fā)中因使用開(kāi)源軟件而引入安全風(fēng)險的狀況更加糟糕,例如:危險開(kāi)源組件的使用、自研代碼缺陷漏洞引入、容器鏡像漏洞引入等,這些風(fēng)險導致軟件系統的整體安全防護難度越來(lái)越大。

因此,開(kāi)源軟件供應鏈安全風(fēng)險治理任重道遠。

直面軟件供應鏈安全治理挑戰

盡管業(yè)界已經(jīng)普遍認識到軟件供應鏈安全的重要性,但治理起來(lái)依然面臨重重挑戰。

騰訊安全開(kāi)發(fā)安全專(zhuān)家劉天勇表示,從技術(shù)角度看,軟件供應鏈安全的治理的難點(diǎn)可以分成三部分:

一是檢測門(mén)檻高。

開(kāi)源組件的來(lái)源復雜,依靠單一的技術(shù)手段難以做到全面覆蓋。

市面上常見(jiàn)的開(kāi)源組件檢測技術(shù)是基于源代碼的SCA分析,但基于源碼的SCA難以覆蓋軟件供應鏈交接界面的第三方軟件成品。

二是修復成本高。

在企業(yè)開(kāi)始做開(kāi)源組件的風(fēng)險治理的時(shí)候,存量業(yè)務(wù)往往會(huì )發(fā)現大量的漏洞,但這些業(yè)務(wù)大多數處于上線(xiàn)運營(yíng)的階段,修復的過(guò)程對研發(fā)資源是一個(gè)較大的消耗,同時(shí)對安全團隊來(lái)說(shuō)也是較大的推動(dòng)阻力。

三是攻擊影響范圍廣。

第三方開(kāi)源組件的使用,間接擴大了軟件的受攻擊面,針對上游供應鏈環(huán)節的漏洞挖掘和惡意利用,能夠快速覆蓋大量的下游軟件,同時(shí)相關(guān)的攻擊具有較高的隱蔽性,常用的安全檢測手段難以進(jìn)行全面的防御,目前軟件供應鏈攻擊已經(jīng)成為攻防演練中非常常用的攻擊手段。

此外,供應商對產(chǎn)品安全性的重視程度不足、開(kāi)發(fā)人員安全開(kāi)發(fā)能力有限等,導致第三方供應商產(chǎn)品安全質(zhì)量參差不齊,也加大了軟件供應鏈安全治理的難度。

那么,企業(yè)該如何應對這些挑戰?在技術(shù)上是否有對應的解決手段?

SCA和SBOM

當前,SCA(Software Composition Analysis)是目前業(yè)界主要的解決開(kāi)源組件風(fēng)險檢測的手段。

SCA是一類(lèi)工具的統稱(chēng),可以通過(guò)分析源代碼識別其中引用的開(kāi)源組件信息(名稱(chēng)、版本、校驗值)、組件漏洞、開(kāi)源協(xié)議等信息,從而幫助開(kāi)發(fā)人員和安全人員快速對于企業(yè)代碼中的開(kāi)源風(fēng)險進(jìn)行識別。

隨著(zhù)供應鏈安全開(kāi)始獲得更多關(guān)注,SCA工具內置了對與跟蹤組件相關(guān)的漏洞和安全風(fēng)險的更深入分析和管理,并成為企業(yè)生成SBOM和管理其開(kāi)源使用的主要方法之一。

Linux基金會(huì )最近的一項調查發(fā)現,SBOM的意識度很高,目前有47%的IT供應商、服務(wù)提供商和受監管的行業(yè)在使用SBOM,88%的受訪(fǎng)者預計將在2023年使用SBOM。

代碼掃描和滲透測試

保護軟件供應鏈的核心是一個(gè)應用程序安全問(wèn)題,因此傳統的應用程序安全代碼掃描工具將在這個(gè)解決方案堆棧中發(fā)揮重要作用。

靜態(tài)應用程序安全測試(SAST)、動(dòng)態(tài)應用程序安全測試(DAST)、交互式應用程序安全測試 (IAST)和運行時(shí)應用程序掃描保護(RASP)工具,以及明智地使用滲透測試,可以幫助企業(yè)測試他們自己的內部代碼,并提供對第三方代碼的進(jìn)一步檢查,以作為應對風(fēng)險的后盾。

相比于SCA和SBOM產(chǎn)品依賴(lài)于已知的、先前發(fā)現的漏洞,徹底的應用程序滲透評估可能會(huì )在檢查第三方庫和框架時(shí)識別出脆弱的代碼使用情況,而這些代碼以前可能在其他地方?jīng)]有報告過(guò)。

此外,共享機密掃描和管理也正在從一個(gè)獨立的工具類(lèi)別快速轉變?yōu)橐粋(gè)功能,該功能正在融入軟件供應鏈安全工具的各個(gè)方面。

這是因為在開(kāi)發(fā)和實(shí)際環(huán)境中,針對嵌入在源代碼、配置文件和基礎設施代碼中的機密數據的網(wǎng)絡(luò )攻擊活動(dòng)仍然猖獗,因此迫切需要解決這個(gè)問(wèn)題。

此外,依賴(lài)關(guān)系管理和分析、受信任的存儲庫和注冊中心、安全代碼簽名、CI/ CD管道安全性、第三方風(fēng)險管理平臺、IaC安全和CNAPP,都是軟件供應鏈安全治理要重點(diǎn)關(guān)注的對象。

正如Gartner公司的高級主管兼應用安全分析師Dale Gardner所說(shuō):“當人們關(guān)注供應鏈安全時(shí),他們關(guān)注的是使用SCA、SBOM等工具,這些都是解決方案中非常重要的部分,但它們實(shí)際上只是一種不全面的解決方案。”

軟件供應鏈安全治理并非純粹的技術(shù)問(wèn)題

事實(shí)上,軟件供應鏈安全問(wèn)題是人、流程和知識的問(wèn)題,而非純粹的技術(shù)問(wèn)題。

在解決軟件研發(fā)過(guò)程的供應鏈安全問(wèn)題時(shí),需要貼合SDLC(軟件開(kāi)發(fā)生命周期)考慮供應鏈安全風(fēng)險。

為此,Goolge提出了SLSA(Supply-chain Levels for Software Artifacts)框架,微軟提出了SCIM(Supply Chain Integrity Model)框架以及CNCF(云原生計算基金會(huì ))的軟件供應鏈最佳實(shí)踐,三種框架都強調對于源代碼、第三方依賴(lài)、構建系統、制品、發(fā)布、部署的安全性。

以SLSA框架為例,SLSA是一個(gè)標準清單和控制框架,用于緩解軟件項目中的代碼和軟件包的供應鏈風(fēng)險。

SLSA框架從三個(gè)方面評估軟件供應鏈的安全等級,分別是源碼、構建和依賴(lài),并可劃分為4個(gè)級別:

Level 1:構建過(guò)程是完全腳本化或自動(dòng)化,且能夠基于結果識別來(lái)源源碼;

Level 2:使用有身份認證能力的版本控制和托管服務(wù),確保構建來(lái)源是可信的;

Level 3:源碼和構建平臺符合可審計標準,且有成品完整性保證;

Level 4:所有變更均有雙人評審,且有封閉的、可重復的構建過(guò)程。

以L(fǎng)evel 4等級要求為例,在軟件構建過(guò)程中企業(yè)需要實(shí)踐以下4點(diǎn):可驗證的版本控制、雙人評審、安全的自動(dòng)化構建流程/環(huán)境、可重復構建的流程。

結語(yǔ)

軟件供應鏈上每一個(gè)環(huán)節的安全問(wèn)題,都有可能成為黑客攻擊的切入口。千里之堤毀于蟻穴,把住軟件供應鏈每個(gè)關(guān)卡,莫讓小小漏洞成為洪水猛獸。

 相關(guān)閱讀

軟件供應鏈安全治理需打好“團體賽”

開(kāi)源“新風(fēng)潮”

拉響警報!2023年三大網(wǎng)絡(luò )安全威脅不容忽視

網(wǎng)絡(luò )安全“廣闊天地大有作為”,還有這個(gè)短板亟需補齊

【科技云報道原創(chuàng )】

轉載請注明“科技云報道”并附本文鏈接

       原文標題 : 軟件供應鏈安全如此重要,但為什么難以解決?

聲明: 本文由入駐維科號的作者撰寫(xiě),觀(guān)點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權或其他問(wèn)題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內容...

請輸入評論/評論長(cháng)度6~500個(gè)字

您提交的評論過(guò)于頻繁,請輸入驗證碼繼續

暫無(wú)評論

暫無(wú)評論

安防 獵頭職位 更多
文章糾錯
x
*文字標題:
*糾錯內容:
聯(lián)系郵箱:
*驗 證 碼:

粵公網(wǎng)安備 44030502002758號