<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    如何更好地構建與利用SBOM

    VSole2023-06-07 10:04:40

    軟件物料清單(SBOMs)的有效性在于它能否幫助企業在合規方面發揮作用,解釋整個代碼庫,并實現企業規模上的互操作性。然而,目前行業中缺乏一種統一的規范來實現這些目標。

    簡單地生成一個SBOM相對容易。但要生成符合規范標準、允許企業大規模互操作的SBOM往往困難重重。這就是"fullMonty SBOM"的意義所在,它描述了一個全面的SBOM解決方案,為其未來的實用工具提供了安全、法律以及操作用途等方面所需的內容和互操作性。要想實現有效的安全性或操作假設,這種全面性的SBOM往往是不可或缺的。

    美國總統拜登于2021年5月發布的行政命令14028中強調了聯邦政府需要購買包含SBOM的軟件的要求。同時該命令也強調了“了解軟件供應鏈,獲取并利用SBOM來分析已知漏洞,在風險管理中至關重要。”這對于安全領域來說是一個重要的推動因素。它引發了用戶對所用軟件的內部運作方式的更多疑問。人們開始對常用軟件的內部結構和工作原理提出更多問題,以確保其安全性和可靠性,特別是在涉及政府以及與政府相關的業務時。

    如今市場上越來越多的安全廠商開始主動生成SBOM作為其產品的一部分。盡管每個工具在具體功能上有所不同,但這無疑是該領域的一項重大進步,為用戶提供了對現代云基礎架構中復雜代碼部署的可見性。

    在該領域中,許多安全廠商和一些開源框架都可以掃描依賴關系樹。然而,目前主要問題就是SBOM的生成缺乏統一的標準。如果能夠成功實施統一標準,那么SBOM就可以順利應用于風險管理和漏洞影響評估等環節。但如果數據無法在多個平臺上進行標準化,那么構建全面的風險模型將會變得困難。

    一個有效的SBOM文件需要滿足以下三項要求:

    格式符合標準規范

    為了實現SBOM的廣泛交換以及自動讀取功能,它們的交換格式必須符合標準規范。

    目前業界認可度最高的兩個標準為SPDX和CycloneDX。這些標準旨在確保SBOM輸出的一致性。也就是說,當使用不同的SBOM生成工具來生成同一軟件的SBOM時,它們會產生相同的結果。這些統一的格式可以根據不同的使用案例和行業垂直領域來進行定制,企業可以選擇“包含”、“排除”或“鏈接到”特定的信息(例如許可證、版權和漏洞等)。這樣的靈活性可以在滿足不同需求的同時,促進標準化的應用和交流。

    需要注意的是,SPDX和CycloneDX僅描述了SBOM文件結構的標準,而沒有涉及到SBOM文件的全面性和準確性等方面。生成SBOM文件的過程或工具只是按照標準來對所輸入文件中的信息進行組織和呈現,而無法保證輸入文件本身的質量或準確性。也就是說,如果使用的SBOM生成過程或工具接受了錯誤或不完整的輸入文件,那么即使它能夠按照規定的結構生成SBOM文件,但所產生的SBOM文件仍然可能是錯誤或不完整的。

    全面性

    對于幾乎所有的應用軟件來說,開源組件都是其攻擊面的最大構成部分。這些開源組件出自世界各地的開發者之手,平均占據軟件應用的76%。Log4j就是一個典型的例子,它向人們展現了單個開源組件中的單個漏洞所能夠在全球范圍內產生的巨大影響。對于大多數組織來說,要想確保軟件供應鏈以及信息基礎設施的安全性,就必須要把對開源軟件漏洞的迅速識別及修復列入優先級最高的安全事項行列。

    其實,很多人都對SBOM有一種偏見,認為它只是一個開源軟件( open source software, OSS))的物料清單。但實際上,大多數軟件成分分析(software composition analysis ,SCA)供應商所生成的不同類型SBOM中,除了會列出OSS組件,同時還會將不同級別的傳遞依賴關系展現出來。對于那些僅包含OSS的SBOM,它可能會使組織忽略掉軟件供應鏈中其他類型代碼所攜帶的漏洞。

    一個全面的SBOM會對應用程序中的所有組成部分進行揭示,包括自定義代碼、開源組件以及第三方的非開源組件。這是因為并非只有開源代碼會存在漏洞,其他不同類型的代碼中也同樣具有攜載漏洞的可能,這一點至關重要。

    互操作性

    SBOM本質上是一種靜態文檔。但如果從軟件供應商那里獲取的SBOM文件只能幫助組織進行軟件成分的檢查,那么其價值就顯得十分有限。SBOM的真正價值在于對其的利用,即互操作性。組織要能夠將其納入諸如補丁管理以及部署風險評估等其他生命周期風險管理的流程之中,同時還要能夠在企業規模上對其進行操作。

    安全團隊可以通過具有互操作性的SBOM進行的三個常見的操作,即合并、查詢和監控。

    ? 合并:一個完整的汽車所包含的配件往往出自不同的供應商,不同的軟件供應商通常會使用不同的標準格式來生成各自的SBOM,而汽車制造商則需要將這些不同格式的SBOM聚合到一個系統級的SBOM之中。

    ? 查詢: 如果某個被廣泛應用的組件中存在新的零日漏洞,那么就需要查詢所有的SBOM來確定組織中的眾多軟件應用中哪些包含了這個具體的易受攻擊的組件。假設組織具有數千個應用需要檢查,那么平均每天就要處理大約60個新CVE,這在技術上是很難實現的。因此,對于互操作性以及有效的軟件風險管理來說,能夠通過單一的界面來對數千個SBOM進行查詢檢測是十分關鍵的要素。

    ? 監控: 安全團隊可以將旨在實現互操作性的SBOM與威脅情報和漏洞管理系統進行集成。這樣,當出現新的零日漏洞時,它們就可以對所有現存的SBOM進行自動檢測,以查找該漏洞的波及范圍,同向其產品生命周期管理系統通知風險。

    從軟件物料清單(SBOM)中,我們可以了解到以下三個關鍵內容:

    了解軟件的應用范圍

    通常情況下,安全專業人員需要時刻搞清楚“組織擁有哪些軟件?以及這些軟件應用于何處?”如果將軟件依賴項納入到開發與生產級別的代碼中,那么這個問題將變得更加復雜。然而實際上,一些組織擁有多個產品或者多個具有不同風險配置文件的環境,這樣一來,為了做出合理的商業決策,需要處理的問題就更多了。因此,除了軟件物料清單(SBOM)之外,組織還需要更多的元數據和環境信息。所以說,了解軟件及其所應用的位置將有助于建立上下文,以便正確地進行風險決策。

    了解使用的開源庫所面臨的法律風險

    組織需要充分了解開源許可軟件,以確保其行為符合組織政策,這是經常被忽視的方面。許可證問題可能會引發法律糾紛,使組織面臨罰款的風險。組織可以通過研究過去的案例來了解這些風險。此外,額外的上下文數據和審查日期有助于確保合規性的基礎建設。另外還需要注意的是,工程使用案例往往會隨著時間的推移而變化。

    了解下游庫

    還記得那個名為“faker”的開源項目事件嗎?它幾乎徹底摧毀了整個下游的用戶。大部分組織在掃描過程中時常會忽略一些依賴項,而依賴關系卻往往存在在這些被忽視的依賴項中。需要注意的是,要遞歸地搜索組織中的代碼(尤其是在生產環境中),從而發現可能受影響的下游庫。

    提前準備備選方案

    檢測到開源庫中的漏洞之后,緊接著要做的就是進行漏洞修復。修復漏洞需要花費時間,短則幾天,多則數月。要想有效地采取應對措施,關鍵就是要及時地意識到自己的風險狀態。為了應對漏洞與風險,組織可能需要自行刪除庫中的代碼,或者將所涉及到的開源項目復制到獨立的代碼庫中,并在其內部進行維護和開發。當然,完全消除所有風險概率是不現實的,組織能做到是要提前制定針對該弱點的計劃,以在風險發生時,盡量減輕可能遭遇的沖擊與損失。

    SBOM實踐還有很長一段路要走。人們正在努力將其格式標準化為機器可讀的標準,例如SPDX、CycloneDX等,這些標準遠遠超出了本文所提及的內容。如今,行業正朝著正確的方向前進。但與此同時,我們還需要努力將這些標準統一到一個共同的機器可讀格式中,從而避免不同標準的爆炸性增長。

    隨著組織不斷構建規模更大、結構更為復雜的模塊化軟件,引入的外部依賴性也開始飛速增長,最終擴大了供應鏈攻擊的風險。盡管我們可以采取手動的模式來進行開發,但不可否認的,未來的方向是實現整個工作流程(從發現漏洞到修復)的自動化。

    最后,同樣需要明確的是,SBOM并非萬能的解決方案。全面的SBOM固然重要,但它也只是軟件供應鏈風險管理中的一小部分。確保自研代碼和開源軟件中(OSS)不存在漏洞,軟件符合法規要求,以及開發流程安全防篡改同樣是其中重要的環節。類比于食物供應鏈,人們肯定不愿食用成分未知或者由衛生不達標的工廠生產的食物。同理,企業也需要確保其軟件供應鏈的安全性,才能贏得用戶等利益相關者的信任和支持。

    無論是食物還是軟件,都必須要確保產品是安全可消費的,而這僅依靠SBOM是遠遠不夠的。在整個產品的制作過程中,其他類型的安全性流程以及定期的檢測同樣重要。

    軟件軟件安全
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    隨著 5G、云計算、人工智能、大數據、區塊鏈等技術的日新月異,數字化轉型進程逐步推進,軟件已經成為日常生產生活必備要素之一,滲透到各個行業和領域。
    軟件供應鏈安全風險解析 隨著互聯網的迅猛發展,軟件供應鏈安全事件近年來頻繁發生。軟件供應鏈安全具有威脅對象種類多、極端隱蔽、涉及緯度廣、攻擊成本低回報高、檢測困難等特性。軟件供應鏈中的任意環節遭受攻擊,都會引起連鎖反應,甚至威脅到國家網絡安全。
    由中國信通院指導、懸鏡安全主辦的中國首屆DevSecOps敏捷安全大會(DSO 2021)現場,《軟件供應鏈安全白皮書(2021)》正式發布。
    安全要求》給出了軟件供應鏈安全保護目標,規定了軟件供應鏈組織管理和供應活動管理的安全要求;適用于指導軟件供應鏈中的需方、供方開展組織管理和供應活動管理,可為第三方機構開展軟件供應鏈安全測試和評估提供依據,也可為主管監管部門提供參考。
    隨著 5G、云計算、人工智能、大數據、區塊鏈等技術的日新月異,數字化轉型進程逐步推進,軟件已經成為日常生產生活必備要素之一,滲透到各個行業和領域。容器、中間件、微服務等技術的演進推動軟件行業快速發展,同時帶來軟件設計開發復雜度不斷提升,軟件供應鏈也愈發復雜,全鏈路安全防護難度不斷加大。近年來,軟件供應鏈安全事件頻發,對于用戶隱私、財產安全乃至國家安全造成重大威脅,自動化安全工具是進行軟件供應鏈安全
    隨著容器、微服務等新技術日新月異,開源軟件成為業界主流形態,軟件行業快速發展。但同時,軟件供應鏈也越來越趨于復雜化和多樣化,軟件供應鏈安全風險不斷加劇,針對軟件供應鏈薄弱環節的網絡攻擊隨之增加,軟件供應鏈成為影響軟件安全的關鍵因素之一。近年來,全球針對軟件供應鏈的安全事件頻發,影響巨大,軟件供應鏈安全已然成為一個全球性問題。全面、高效地保障軟件供應鏈的安全對于我國軟件行業發展、數字化進程推進具有重
    隨著軟件技術的飛速發展和軟件開發技術的不斷進步,軟件開發和集成過程中常會應用第三方軟件產品或開源組件,其供應鏈中軟件安全性和可靠性逐步成為軟件產業面臨的重要安全問題。近年來大量涌現的軟件供應鏈安全事件則具有不同的特點,攻擊軟件供應鏈相較于攻擊軟件本身,難度和成本顯著降低,影響范圍一般顯著擴大,并且由于攻擊發生后被供應鏈上的多次傳遞所掩蓋,難以被現有的計算機系統安全防范措施識別和處理。
    針對軟件供應鏈的網絡攻擊,常常利用系統固有安全漏洞,或者預置的軟件后門開展攻擊活動,并通過軟件供應鏈形成的網鏈結構將攻擊效果向下游傳播給供應鏈中所有參與者。近年來,軟件供應鏈網絡攻擊事件頻發,影響越來越大。據 Accenture 公司調查,2016 年 60% 以上的網絡攻擊是供應鏈攻擊。裝備軟件供應鏈安全事關國家安全、軍隊安全,一旦出現安全風險將會給國家和軍隊帶來重大安全挑戰,產生的后果不堪設想。
    尤其是SolarWinds 事件,爆發之迅猛,波及面之大,社會影響之深,潛在威脅之嚴重,令世界為之震驚,堪稱過去近十年來最重大的網絡安全事件。據美國司法部披露,黑客已向其內部郵件系統滲透,受影響人數多達司法部員工郵件賬戶總數的三分之一,其第二階段重大受害機構之一。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类