侵權(quán)投訴
訂閱
糾錯
加入自媒體

軟件供應(yīng)鏈安全治理需打好“團體賽”

如今,軟件供應(yīng)鏈攻擊已成為突破業(yè)務(wù)防線的新路徑之一。在近幾年的重大安全事件、實戰(zhàn)攻防演練中,已頻現(xiàn)軟件供應(yīng)鏈攻擊的身影。

2020年12月,基礎(chǔ)網(wǎng)絡(luò)管理軟件供應(yīng)商SolarWinds遭遇軟件供應(yīng)鏈攻擊,受到攻擊的不僅是SolarWinds服務(wù)的多家科技公司,還有其服務(wù)的大量制造業(yè)公司。隨著時間的推移,此次供應(yīng)鏈攻擊事件波及范圍極大,包括政府部門、關(guān)鍵基礎(chǔ)設(shè)施以及多家全球500強企業(yè)。

事故發(fā)生后的1個月,SolarWinds的股價下跌了50%。2021年12月,Apache開源項目Log4j爆出核彈級漏洞,攻擊者僅需一段代碼就可以遠程控制目標服務(wù)器。

由于Log4j被廣泛地應(yīng)用在中間件、開發(fā)框架、Web應(yīng)用中,而這些中間件和開發(fā)框架作為軟件基礎(chǔ)又被其他軟件系統(tǒng)使用,因此Log4j被極其廣泛的應(yīng)用在各大軟件系統(tǒng)里面。利用此漏洞進行軟件供應(yīng)鏈攻擊造成的嚴重性、影響面,堪稱2021年之最。

除此之外,Linux“臟管道”事件、周下載量超過700萬次的JavaScript流行庫ua-parser 賬戶遭接管、影響多家大廠的依賴混淆、PHP源代碼事件等供應(yīng)鏈安全事件頻發(fā)。

據(jù)Sonatype公司的調(diào)查,供應(yīng)鏈攻擊行為比去年增加了430%。這盆冷水讓大多數(shù)開發(fā)人員意識到,他們的軟件供應(yīng)鏈有嚴重的安全問題。

過去幾十年,大大小的公司都把注意力聚焦在軟件構(gòu)建和各自的生產(chǎn)環(huán)境上,雖然在基礎(chǔ)設(shè)施方面做得非常好,但攻擊者卻到了更簡單的方法,即從敞開的供應(yīng)鏈大門中進入。

事實上,軟件供應(yīng)鏈安全風險防控并不容易,最大的挑戰(zhàn)就在于供應(yīng)鏈的復雜性。那么,軟件供應(yīng)鏈安全治理到底該如何做?

軟件供應(yīng)鏈安全的復雜性

所謂軟件供應(yīng)鏈攻擊,顧名思義,指的就是針對軟件供應(yīng)鏈所發(fā)動的網(wǎng)絡(luò)攻擊,攻擊者會先攻擊軟件供應(yīng)鏈中安全防護相對薄弱的部分,然后再利用軟件供應(yīng)鏈之間的相互連接(如軟件供應(yīng)、開源應(yīng)用)等,將風險擴大至上下游企業(yè),對大量的供應(yīng)商和最終用戶帶來巨大影響。

與其它攻擊形式相比,軟件供應(yīng)鏈攻擊往往會產(chǎn)生“牽一發(fā)而動全身”的效果。因此,僅僅對軟件供應(yīng)鏈某個單一環(huán)節(jié)進行安全防護是遠遠不夠的,需要從其供應(yīng)過程和軟件自身安全出發(fā)。

根據(jù)軟件供應(yīng)鏈的特點,軟件供應(yīng)鏈的業(yè)務(wù)流程可以抽象成開發(fā)、交付以及應(yīng)用三個環(huán)節(jié)。

開發(fā)環(huán)節(jié)

主要是指軟件開發(fā)商的編程人員根據(jù)用戶(含定制用戶)的需求,進行編程并完成軟件包提供的過程。該過程主要涉及用戶需求、編程語言、開發(fā)環(huán)境、開發(fā)框架、測試和封包等。

在這個階段,尚未有統(tǒng)一的、經(jīng)過安全檢驗的發(fā)布渠道,多數(shù)工具未經(jīng)檢測直接發(fā)布;工具及庫通常由商業(yè)公司或個人開發(fā),因代碼復雜,編程人員往往依據(jù)將易用性作為選擇開發(fā)配套的唯一標準,缺乏安全的意識。

因此,在開發(fā)階段存在被病毒污染的可能,導致開發(fā)出的功能模塊默認感染病毒。同時,在進行源代碼打包或開發(fā)過程中,對功能模塊進行后門留存,給程序的開發(fā)環(huán)境以及后續(xù)的使用環(huán)境,都帶來了安全隱患。

此外,程序開發(fā)環(huán)境一般屬于核心區(qū)域,一旦編程人員下載了不安全的工具,則可能直接導致整體編程環(huán)境出現(xiàn)重大安全隱患,所有從該環(huán)境出入的代碼,都可能存在泄密、篡改等風險。在軟件測試環(huán)節(jié)也是如此。

如果進行源代碼測試、封包的工具存在惡意代碼感染,則可能感染整體測試環(huán)境;測試人員不具備安全意識,測試電腦在不安全的環(huán)境進行操作,則帶來次生感染。

交付環(huán)節(jié)

主要是指開發(fā)商或者推廣商通過互聯(lián)網(wǎng)網(wǎng)站、在線商城、社交工具、在線網(wǎng)盤或者通過存儲介質(zhì),將開發(fā)或定制的軟件交付給最終用戶。

在發(fā)布渠道方面,目前主流的軟件發(fā)布渠道缺乏有效的監(jiān)管,各應(yīng)用發(fā)布商缺乏對軟件發(fā)布的安全審核;從應(yīng)用在上傳至渠道用于下載的傳輸途徑、存儲、發(fā)布等環(huán)節(jié),易發(fā)生多維度的篡改行為,導致渠道風險的發(fā)生;非官方發(fā)布平臺直接發(fā)布或被篡改并植入惡意代碼,造成感染。

在發(fā)布下載方面,軟件廠商出于推廣需要,多數(shù)軟件往往會對自有軟件進行捆綁安裝,已形成了完整的灰色產(chǎn)業(yè)鏈,缺乏對捆綁軟件的審核機制。同時,常見如域名劫持(DNS)、內(nèi)容分發(fā)系統(tǒng)(CDN)緩存節(jié)點篡改等,導致用戶在不知情的情況下,下載存在惡意代碼或后門的軟件。

應(yīng)用環(huán)節(jié)

主要是指最終用戶使用該軟件產(chǎn)品,包括下載、安裝、注冊、付費、使用、故障修復、升級、卸載等全部過程。

在安裝方面,安裝源自身可能存在隱患,安裝時往往會配套一個腳本安裝工具代為執(zhí)行,但是安裝工具的出現(xiàn)無疑會增加整體使用供應(yīng)鏈的安全。

在升級方面,升級包是對原軟件進行升級的代碼包,未經(jīng)認證的升級包存在一定的安全風險;官方廠商以及第三方非認證組織往往會通過自身渠道進行補丁包發(fā)布,終端用戶多數(shù)不會進行分辨,下載即安裝。

在卸載方面,官方應(yīng)用往往會將卸載工具內(nèi)嵌至應(yīng)用中,但是對于部分應(yīng)用由于其卸載不便,且容易殘留,提供的第三方卸載工具,也會存在安全隱患。

軟件供應(yīng)鏈安全

治理框架的推進

為了應(yīng)對不斷升級的軟件供應(yīng)鏈安全威脅,業(yè)界已經(jīng)在逐步推出軟件供應(yīng)鏈安全框架。

最為知名的莫過于Google的軟件供應(yīng)鏈安全框架SLSA,用于確保整個軟件供應(yīng)鏈中軟件工件完整性的端到端框架。

SLSA以Google內(nèi)部的“Borg二進制授權(quán)”(BAB)為主導——Google八年來一直使用這一流程來驗證代碼出處和實現(xiàn)代碼身份。

SLSA希望鎖定軟件開發(fā)鏈中的所有內(nèi)容,從開發(fā)人員到源代碼、開發(fā)平臺和CI/CD系統(tǒng)、以及包存儲庫和依賴項。

CNCF基金會托管的in-toto項目,也是一個通過收集和驗證相關(guān)數(shù)據(jù)來保護軟件供應(yīng)鏈的框架。

它通過使庫能夠收集關(guān)于軟件供應(yīng)鏈行為的信息,并允許軟件消費者和項目經(jīng)理發(fā)布關(guān)于軟件供應(yīng)鏈實踐的政策來做到這一點,這些政策可以在部署或安裝軟件之前進行驗證。

簡而言之,它有助于捕獲軟件供應(yīng)鏈中發(fā)生的事情,并確保它按照定義的策略發(fā)生。

在國內(nèi),中國信通院也在助力企業(yè)針對軟件全生命周期進行安全管控,以全鏈路安全保障為目標,建立了一系列軟件供應(yīng)鏈安全標準體系,并落地評估測試。

中國信通院認為,針對軟件供應(yīng)鏈安全保障流程,可劃分為軟件供應(yīng)鏈入口(對內(nèi)引入)、自身(自研應(yīng)用)、出口(對外供給)三大階段,應(yīng)從軟件來源、軟件安全合規(guī)、軟件資產(chǎn)管理、服務(wù)支持、安全應(yīng)急響應(yīng)多個維度,對軟件供應(yīng)鏈安全保障能力進行規(guī)范,搭建軟件供應(yīng)鏈安全模型。

在落地實踐方面,中國信通院已牽頭制定了研運安全工具標準體系,包括:靜態(tài)應(yīng)用程序安全測試工具(SAST)、交互式應(yīng)用程序安全測試工具(IAST)、軟件組成分析工具(SCA)、應(yīng)用運行時自我保護系統(tǒng)(RASP)、軟件物料清單建設(shè)總體框架(SBOM)等多項標準。

事實上,要做好軟件供應(yīng)鏈安全,不僅要在安全技術(shù)及工具上對軟件全生命周期的每個階段進行安全防護,形成開發(fā)運營安全閉環(huán),還要從組織文化、安全開發(fā)流程等多角度考慮,不斷優(yōu)化流程實踐,以建立更安全的環(huán)境。

       軟件供應(yīng)鏈安全的全球性政策

軟件供應(yīng)鏈安全是一個全球性問題,究其根本,是由于軟件行業(yè)全球化、市場化、模塊化的特點。為了防止諸如SolarWinds、Log4j等事件的再次發(fā)生,全球多國法規(guī)都在提升對供應(yīng)鏈安全的管控要求。

近期,美國和歐盟都發(fā)布了新的供應(yīng)鏈安全相關(guān)要求法案,要求廠商評估供應(yīng)鏈數(shù)字化產(chǎn)品的安全性。

美國和歐盟在各自的法案都提到了軟件安全檢測,軟件物料清單(SBOM)等內(nèi)容,這意味著通過強制性的網(wǎng)絡(luò)安全法規(guī)要求,企業(yè)必須通過披露SBOM、源代碼安全檢測等手段提升數(shù)字化產(chǎn)品安全性,才能繼續(xù)正常地銷售提供數(shù)字化產(chǎn)品。

美國白宮在9月14日發(fā)布了題為《通過安全的軟件開發(fā)實踐增強軟件供應(yīng)鏈的安全性》的備忘錄,要求供應(yīng)商產(chǎn)品需提供安全自我證明。自我證明是指開發(fā)人員必須提供以證明其符合安全軟件開發(fā)框架的文檔。

此外,美國政府還發(fā)布了《ICT供應(yīng)鏈風險管理標準》(NIST SP800-161)、商用信息技術(shù)軟件及固件審查項目(VET)等,清楚界定了軟件供應(yīng)鏈中涉及存儲、檢索、修改、傳輸以及服務(wù)的相關(guān)標準與要求,在一定程度上規(guī)避了軟件供應(yīng)鏈面臨的諸多風險。

歐盟在9月15日發(fā)布了題為《網(wǎng)絡(luò)彈性法案》(Cyber Resilience Act)的草案,旨在為聯(lián)網(wǎng)設(shè)備制定通用網(wǎng)絡(luò)安全標準。法案要求所有出口歐洲的數(shù)字化產(chǎn)品都必須提供安全保障、軟件物料清單SBOM、漏洞報告機制,以及提供安全補丁和更新。

違反規(guī)定的公司將面臨最高1500萬歐元或全球營收2.5%的罰款。在中國,近年來先后頒布的《中華人民共和國網(wǎng)絡(luò)安全法》、《網(wǎng)絡(luò)安全審查辦法》、《中華人民共和國國民經(jīng)濟和社會發(fā)展第十四個五年規(guī)劃和 2035 年遠景目標綱要》、《關(guān)鍵信息基礎(chǔ)設(shè)施安全保護條例》等政策法規(guī),都強調(diào)加強軟件供應(yīng)鏈的安全保障。

在標準制定方面,我國出臺了供應(yīng)鏈安全管理國家標準《信息安全技術(shù)ICT供應(yīng)鏈安全風險管理指南》(GB/T 36637-2018),從產(chǎn)品全生命周期的角度開展風險分析及管理,以實現(xiàn)供應(yīng)鏈的完整性、保密性、可用性和可控性安全目標。

全國信息安全標準化技術(shù)委員會歸口的國家標準《信息安全技術(shù)軟件供應(yīng)鏈安全要求》已形成標準征求意見稿,規(guī)定了信息技術(shù)產(chǎn)品供應(yīng)方和需求方應(yīng)滿足的供應(yīng)鏈基本安全要求。

盡管國內(nèi)對軟件供應(yīng)鏈安全的重視認知稍微滯后于國外,但隨著國內(nèi)技術(shù)的發(fā)展和安全意識覺醒,很快就能追趕上來。

結(jié)語

開源技術(shù)應(yīng)用、國際形勢復雜、軟件供應(yīng)鏈的多樣化,供應(yīng)鏈各個環(huán)節(jié)的攻擊急劇上升,已然成為網(wǎng)絡(luò)主要的安全成脅。想要做好軟件供應(yīng)鏈安全治理,需要打好“團體賽”,由整個開源生態(tài)角色在供應(yīng)鏈的各個環(huán)節(jié),建立一系列的安全準則和最佳實踐,切實保障整個網(wǎng)絡(luò)空間的安全。

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

轉(zhuǎn)載請注明“科技云報道”并附本文鏈接


       原文標題 : 軟件供應(yīng)鏈安全治理需打好“團體賽”

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

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

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

暫無評論

暫無評論

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

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