開源安全一直很重要,但我們過去常常假裝否認它。 我們不能再偷懶了。
翻譯自 2023:開源安全供應鏈成長的一年 作者:Steven JVaughan-Nichols 別名 SJVN,一直在撰寫有關技術和技術業務的文章,從 CP M-80 到尖端的 PC 作業系統,從 300BPS 到快速的網際網絡連線,以及 wordstar 成為最先進的文字處理器。 開源安全現在不僅對開發人員至關重要,而且對**和頂級公司也至關重要。
開源安全一直很重要。 我們只是假裝不在乎。 我們不能再奢侈地懶惰了。 現在,美國網路安全和基礎設施安全域性(CISA)的開源軟體安全路線圖宣布,我們必須確保開源軟體的安全性。 這不僅僅是在國家層面。 在歐盟 (EU),網路彈性法案 (CRA) 正在迅速要求軟體在 24 小時內披露軟體漏洞,並提供至少 5 年的補丁支援保證。 最新版本的 CRA 在開源軟體上有點寬鬆。 它宣布:"為了不妨礙創新或研究,在商業活動之外開發或提供的自由和開源軟體不受本條例的約束。 "我不是律師,但我涉及開源的法律問題,其中有足夠多的模糊詞語讓開源開發者擔心。
Linux將擔心歐洲首席執行官Gabriele Columbro"為了防止責任,開源專案可能會被禁止進入歐盟或發布宣告不批准在歐盟使用”。 那麼,為什麼**突然如此擔心開源安全呢?原因很簡單,他們終於意識到軟體安全對整體安全的重要性。
幾十年前,開源的創始人之一 Eric S. Raymond雷蒙德(Raymond)創造了著名的萊納斯定律:"只要有足夠的眼球,所有的洞都是淺的。 "它讓你覺得開源安全非常溫暖和舒適,不是嗎?不過,有乙個推論。 為了讓萊納斯定律發揮作用,你需要專家的眼睛來尋找漏洞,你需要雙手來修補它們。 我們做得還不夠好。 這是乙個真正的問題,因為正如安全公司 Synopsys 在其 2023 年開源安全和風險分析報告中所說,"開源無處不在"它是"絕大多數商業**庫的基礎。 事實上,它與現代開發交織在一起,以至於所有者往往不知道他們軟體中的開源元件。 "唉。
據 Synopsys 報道,"保護軟體鏈的第一步是管理應用程式中的開源和第三方。 如果你不能有效地管理和保護你的開源和第三方軟體,那麼你為保護你的鏈所做的任何其他努力都將是無效的——或者坦率地說,甚至是無關緊要的。 "
Synopsys沒有錯。 這是開源軟體安全社群最近一直在提高其水平的地方。
軟體物料清單 (SBOM) 的興起,即 S-Bomb,為構建最佳安全防禦提供了所需的基礎。 正如喬·拜登(Joe Biden)關於改善國家安全的行政命令中宣布的那樣,SBOM是“包含用於構建軟體的各種元件的詳細資訊和鏈關係的官方記錄”。 SBOM 包括包資料交換 (SPDX)、CyclonedX:GitHub 的依賴提交格式以及 Kubernetes 安全運營中心 (KSOC) 的 Kubernetes 物料清單 (KBOM) 標準。 但是,為了保護開源軟體工件的完整性,SBOM 是不夠的。 這就是軟體工件 (SLSA) 的供應鏈級別的用武之地。 具體來說,SLSA 10 提供:討論軟體鏈安全性的常用詞彙。
評估上游依賴項的一種方法是評估您使用的工件(例如源、生成和容器映像)的可信度。
您可以採取的措施清單,以提高您自己的軟體的安全性。
一種衡量您在遵守即將推出的安全軟體開發框架 (SSDF) 標準方面所做的努力的方法。 OpenSSF董事總經理Brian Behlendorf強調,SLSA為組織提供了 “保護其軟體所需的工具”。 我對 SBOM 和 SLSA 的簡單描述是,SBOM 是食譜,SLSA 是程式的烹飪說明。
那麼,你怎麼知道這些食譜中到底發生了什麼呢?這就是開源軟體簽名服務 sigstore 的用武之地。 使用 sigstore,可以對發布檔案、容器映像和二進位檔案進行加密簽名。 簽名後,簽名記錄將儲存在防篡改的公共日誌中。 這為軟體工件提供了更安全的監管鏈,這些工件可以追溯到其來源並受到保護。 為了更輕鬆地使用 SigStore,Kubernetes 的聯合創始人之一 Craig McLuckie 共同創立了一家新公司 Stacklok,該公司建立在 SigStore 之上。 它有兩個專案,Trusty 和 Minder。 前者是一項免費服務,可對軟體包的依賴風險進行全面評估。 後者是乙個平台,供庫建立者跨多個儲存庫自動執行工件簽名和驗證。 開源安全洞察規範(OpenSSF)是另乙個最近被新增到安全性中的開源專案。 它為維護者提供了一種機制,可以使用 YAML 以機器可處理的方式提供有關其專案安全流程的資訊。 這樣,您就不需要重寫或重新定位現有的策略和文件。 它們可以直接整合到規範中。 雖然 2023 年的大部分重大安全改進都是針對軟體鏈的,但還有其他重大發展。 其中之一是漏洞利用潛在交換 (VEX) 及其開源實現 OpenVex 的興起。 Anchore、Chainguard和Microsoft等公司使用這種技術來記錄軟體漏洞的狀態。 例如,使用OpenVex,無需浪費時間建立電子來跟蹤漏洞,而是可以記錄漏洞,然後由開源漏洞掃瞄器使用,以減少管理漏洞的痛苦並減輕誤報的負擔。 但是,僅僅因為我們擁有這些工具並不意味著我們將使用它們。 在其 2023 年軟體安全調查中,開發者安全公司 SNYK 發現,儘管針對開源的網路攻擊數量創下歷史新高,但 40% 的受訪者仍未使用關鍵鏈安全技術。 當然,該公司知道存在問題,但 SYNK 發現他們正在臨時解決 ** 鏈安全問題。 只有一半的公司有正式的鏈安全政策。
我們 2024 年的安全使命很明確。 我們必須採用這些軟體鏈安全工具,並開始將它們作為我們工具鏈的一部分使用。
聽起來很簡單,不是嗎?但事實並非如此。
這很困難的乙個原因是,我們遠遠沒有足夠的IT安全人員。 正如國際資訊系統安全認證聯合會 (ISC2) 最近指出的那樣,我們目前缺乏 400 萬網路安全專家來支援全球經濟。 使用開源**的公司應該怎麼做?首先,正如惠普企業 (HPE) 首席安全官 Bobby Ford 所觀察到的那樣"人們認為網路安全是一項技術性很強的事情。 是的,有些角色確實需要深厚的技術專長,但網路安全是乙個巨大的領域,使組織具有網路彈性還需要通用角色,這需要更廣泛的技能。 "
因此,95%的網路安全專業人士認為“可以做更多的事情來鼓勵更多員工加入與網路安全相關的角色。 您的公司中可能已經有人準備好幫助保護您的軟體安全。 此外,研究表明,70% 的網路安全員工感到過度勞累,25% 的網路安全領導者會因多種與工作相關的壓力而換工作。 簡而言之,我們需要更多的人,比現在多得多。 這意味著未來要花更多的時間和精力在安全教育上。
這也意味著盡可能地實現安全自動化。 通過教育和自動化我們的安全,我們可以在 2023 年取得的進展基礎上,在安全標準化方面取得進展,並為未來做好準備。 考慮到風險,這不僅是乙個好主意,而且是必要的。