美官方為軟件供應商提出供應鏈安全指南
10月31日,美國國家安全局(NSA)、網(wǎng)絡安全及基礎設施安全局(CISA)、國家情報總監(jiān)辦公室(ODNI)攜手發(fā)布了保護軟件供應鏈的實操指南。該指南內容總共有40頁,主要提及了軟件供應商在供應鏈中所需要承擔的責任和改進方法。指南中提及的供應商主要責任包括:
- 第一,努力識別可能危及組織、軟件開發(fā)、軟件本身和軟件交付(即內部部署或SaaS)環(huán)境的威脅,并實施相關的緩解措施;
- 第二,作為客戶和軟件開發(fā)團隊之間的聯(lián)絡人,需要確保軟件在安全環(huán)境下開發(fā),并通過安全渠道交付;
- 第三,供應商通過合同協(xié)議、軟件發(fā)布和更新、通知和漏洞緩解機制來提供所交付的軟件額外的安全功能。
對于軟件供應鏈的安全實踐,NSA、CISA與ODNI有著一系列的規(guī)劃,相關規(guī)劃落實在由NSA及CISA所主導的政企工作小組所開發(fā)的“長期安全框架”(Enduring Security Framework,ESF)之中。這一框架將產(chǎn)出指導美國重大網(wǎng)絡基礎設施的安全指南,針對軟件供應鏈總計有3部分:首先是今年9月發(fā)布、鎖定軟件開發(fā)者的《Securing the Software Supply Chain for Developers》,10月31日發(fā)布的指南適用于軟件供應商,下一步則會發(fā)布針對軟件供應鏈客戶使用者的版本。
該指南針對軟件供應商的供應鏈安全提出了非常多的建議,現(xiàn)將主要要點如下概述:
第一,該指南敦促軟件供應商在軟件收發(fā)供貨過程中保證供應鏈安全。供應商有義務做到確認發(fā)貨的軟件與客戶收到的軟件是一樣的;需要創(chuàng)建一個安全的哈希值來驗證文件是否傳送正確;需要確保軟件傳輸通信渠道是安全的。需要通過利用國際公認的標準(如NIST SSDF)對軟件進行最終檢查,這有助于確保在軟件發(fā)布前滿足軟件功能和安全要求。
第二,該指南認為供應商應提供一種機制,通過在整個軟件生命周期內對代碼進行數(shù)字簽名,來驗證軟件發(fā)布的完整性。經(jīng)過數(shù)字簽名的代碼,使代碼接收者以及客戶能夠積極地驗證和信任代碼的來源和完整性。
第三,該指南要求供應商必須確保本地開發(fā)的軟件和由第三方供應商提供的任何組件都需要符合安全要求。由于第三方提供的軟件和模塊通常會包含在供應商發(fā)布的軟件產(chǎn)品中,為此,供應商可以通過召集專家評估第三方提供的軟件是否符合適用的安全要求、與第三方軟件提供者簽訂合同協(xié)議來解決潛在的第三方軟件問題。
第四,該指南認為供應商應盡一切努力,確保提供給客戶的任何軟件中不存在公開的或容易識別的漏洞。在向客戶提供軟件之前,需要測試、了解和消除軟件中的漏洞,以防止提供容易被破壞的代碼。需要建立一個由架構師、開發(fā)、測試人員、密碼學家和人為因素工程師組成的漏洞評估小組,其任務是識別軟件中可利用的弱點。需實時檢查與第三方軟件和與軟件相關的開放源碼組件相關的軟件物料清單(SBOM)。在相關問題公布后,建立并遵循企業(yè)對嵌入式組件升級的指導。
該指南下載地址:https://media.defense.gov/2022/Oct/31/2003105368/-1/-1/0/SECURING_THE_SOFTWARE_SUPPLY_CHAIN_SUPPLIERS.PDF