GSS資安電子報0216期 【Mend.io軟體組成分析工具(SCA):如何選擇優質開發解決方案?】

訂閱電子報
2023年十一月10日(五) AM 09:00
翻譯及整理:叡揚資訊 資訊安全事業處

  

⽬錄

  

  • 什麼是 SCA 工具, 以及為什麼它很重要?
  • MEND 能有效整合敏捷式開發下的 SCA 解決方案和開發者工具
  • SCA 工具如何⽀持您組織中的 DevSecOps
  • 解析 SCA:您需要的 4 個基本功能,能為了有效地使用開源技術 透過有效的使用分析增強開源檢測自動化整合
  • MEND SCA 核心價值

   

什麼是 SCA 工具, 以及為什麼它很重要?

   

  Software Composition Analysis, SCA 軟體組成分析,對於開源元件已成為當前企業在軟體開發過程中不可或缺的⼀部分。而使用開源元件使公司能夠更快、更簡便的建⽴更好的產品。
  畢竟,當開發人員可以從 開源社群 GitHub 便利的下載它時,為什麼要重新自行開發相同元件?
  但是,使用開源元件的同時,即有責任確保產品中所有開源元件的安全性,且符合組織的資安政策與產業要求。
  問題是,要驗證產品所使用的每個開源元件是否安全,以及是否合規,已變得越來越複雜及挑戰。這是因為有關開源元件的資訊分散在數百個來源中而其可信度異差懸殊,而且大多數資料庫不容易比對搜尋。
  那麼如何才能獲得開源使用所需的安全性控制呢?透過自動化!這就是軟體組成分析 SCA 工具的重要之處。

  

MEND 能有效整合敏捷式開發下的 SCA 解決方案和開發者工具

   

  透過 SCA 管理工具可自動偵測應用程式中的開源元件,並協助您管理與開源使用相關的不同方面。大多數 SCA 工具屬於以下兩類之一:即時執行策略並產生報告的管理工具,或針對開發環境中的元件漏洞問題,向開發人員發出警報,並提供最佳修復指引。
  每個類別都有重要的好處,但都專注於其目標用戶。只有將兩種類型的工具結合起來才能提供滿足整個組織需求的解決方案。
  具備同時符合安全性、DevOps 和法律團隊獲得所需的可見性和控制,以及開發人員則獲得所需的工具,以預防和修復開源安全性和合規性問題。

螢幕擷取畫面_2023-11-13_145736.jpg

SCA 工具如何⽀持您組織中的 DevSecOps?

   

  DevSecOps, 軟體開發過程中每個階段整合安全測試的實務。它包括開發人員、資訊安全人員和營運團隊之間的協作的工具和流程,以建置既有效又安全的軟體產品,旨在將安全性整合到開發週期的每個階段 ‑ 從規劃和設計到開發、測試、部署、上線後和維護。 導入 SCA 可以幫助開發人員、IT、安全和法律團隊分擔開源元件版本、漏洞、授權風險的責任,從而幫助實現 DevSecOps 營運。
  過去,管理階層有時會在開發團隊不知情或不參與的情況下強制執行開源安全標準並阻止元件的使用。其他時候,開發人員會使用自己的工具來偵測和避免開源漏洞,而其他團隊或外部稽核人員看不到。採用可提供以開發人員為中⼼的工具和治理解決方案的 SCA 技術,可以將開發人員、IT、安全和法律放在同一頁上。

  

解析 SCA:您需要的 4 個基本功能,能有效地使用開源技術

   

  您的組織需要哪些功能才能從開源使用中受益,而不面臨開源安全漏洞和法律風險?以下是四種核心功能,以及您在嘗試實作這些功能時可能遇到的相關挑戰。

     螢幕擷取畫面_2023-11-13_150634.jpg

01 漏洞檢測

    

  您必須能夠在修復最容易的時候儘早發現具有已知漏洞的開源元件。
  一旦漏洞被公開披露,您就需要與駭客競賽來修復它。如果您不知道自己正在使用易受攻擊的開源元件,那麼您就無法贏得這場比賽。

  
挑戰
同一時間要收集來自各方的開源漏洞資訊是非常困難的
開源漏洞的資訊會分散在多個來源,其中許多來源不明,可信度也有不同程度的風險。需要存取更多的有效修復資訊來解決已知漏洞。

  
誤報
許多 SCA 工具經常發出錯誤警報,使得對資料採取行動變得更加困難。

  
檢測機制在 Secure Software Development Life Cycle, SSDLC(安全的軟體發展生命週期)的每個階段都至關重要
光是在上版前的檢測是不夠的。因為在開發週期的每個階段都會有新組件被開發使用。

  
新的漏洞Common Vulnerabilities and Exposures, CVE(通用漏洞披露資料庫)不斷被發布
即使是以前被認為安全的組件也可能會有新的漏洞警報被發布。

  
識別易受攻擊的組件:基本功能

     螢幕擷取畫面_2023-11-13_152105.jpg

  

02 漏洞修復

   

  為了降低開源風險,一旦發現開源漏洞就必須立即修復。然而,在大多數情況下,修復所有漏洞是不切實際的,有些漏洞需要大量的開發驗證工作。
  您必須優先考慮漏洞風險程度,了解哪些漏洞代表真正的風險,並向開發和 IT 團隊提供他們所需的信息,以便第一時間快速修復最關鍵的漏洞。您還必須幫助團隊能在開發階段並更早發現漏洞,使修復變得更容易。

  
挑戰
快速修復漏洞至關重要
當發現新的漏洞時,您必須在駭客利用它之前快速修復它。然而,許多修復措施需要大量的開發工作。

 
優先順序
為了提高修復效率,您必須能夠快速確定重要漏洞的風險修復優先順序。

 
開源元件選擇
最好的補救措施是在最初為項目選擇不安全組件時避免使用它們。這需要在開發的早期階段整合安全性。

 
定位程式碼中的漏洞
一旦發現漏洞,就很難確定程式碼中引用的位置

 
漏洞修復:基本功能

螢幕擷取畫面_2023-11-13_155028.jpg 

03 物料清單管理

   

  確定您的軟體中使用了哪些開源元件至關重要。要全面管理開源安全、授權和合規性問題,您必須了解 SSDLC 所有階段(從選擇階段到開發、部署和上線後階段)的開源程式碼使用情況。

 
挑戰
手動庫存管理非常耗時
開發人員花費寶貴的時間檢查授權和安全性並請求批准。
這些流程可以自動化。

 
支援多種語言和框架
自動化工具必須支援組織中使用的所有語言和框架,才能準確追蹤開源元件。

 

收集有關開源元件的資訊很困難
有關開源元件、版本和授權的資訊分佈在數百個來源中。手動盤點追蹤非常複雜。

 
檢測傳遞依賴
大多數開源元件與其他開源元件具有相依性,從而創建複雜的關聯性。

 
庫存管理:基本功能

  螢幕擷取畫面_2023-11-13_155436.jpg

  

04 開源授權合規性

   

  您必須制定開源使用策略,並阻擋不適當或過度限制的開源授權。您還必須確保滿足軟體中使用的所有開源元件的許可證要求。管理、安全、法律團隊和第三方(例如進行盡 職調查的投資者)需要對開源授權有完全的可見性。

  
挑戰
手動許可證管理非常耗時
應用程式使用數千個開源元件。手動管理許可證會產生開銷並減慢開發速度。

  

某些情況下需要專家評審
即使使用自動化工具,也必須有一種方法來對某些類型的許可證進行審查。

  
檢測不準確
不太先進的自動化 SCA 工具並不總是能準確地偵測許可證。將庫和許可證關聯起來並不簡單。缺少有問題的許可證可能會在以後產生重大成本。

  
誤報
有些 SCA 工具會發出錯誤警報,給團隊帶來負擔,或錯過問題許可導致責任。

     

透過有效的使用分析增強開源檢測自動化整合

   

  開源漏洞管理和授權合規性的自動化對於解決我們上面概述的挑戰至關重要。然而,整合自動化工具也有其限制。
  前幾代 SCA 工具能夠偵測開源元件並告知組織它們存在漏洞,但無法識別這些漏洞的潛在影響。
  這就需要安全和開發團隊投入大量的資源來調查和回應大量的漏洞報告。
  研究表明,在發現的漏洞中,70‑85% 並不真正嚴重,因為易受攻擊的開源程式碼實際上並未被組織的專有程式碼存取或使用。
  MEND 透過有效使用分析開創了下一代 SCA 工具。這項技術不僅告訴您擁有哪些開源元件,還告訴您如何使用它們。它可以讓您深入研究產品中實際活躍使用的 15‑30% 的開源漏洞。
  它還準確顯示程式碼中引用易受攻擊的功能的位置,使開發人員更容易修復漏洞。
  有效的使用分析提供自動優先排序,可以減少修復工作,並幫助團隊更快地修復重要漏洞。

     

MEND SCA 核心價值

   

  我們已經介紹了為您的組織選擇 SCA 工具時的許多注意事項。
  最重要的是,您應該選擇一個 SCA 工具,使您能夠最大限度地降低風險並減少所有團隊(從管理、法律和安全方面)的工作量
  透過維運人員、開發人員和 QA 工程師。
  MEND 是具有遠見的 SCA 檢測工具 。它可以幫助您以盡可能低的努力最大限度地降低風險,同時在整個組織內培養 DevSecOps 思維和合作:

     螢幕擷取畫面_2023-11-13_162313.jpg

 

簡化開源元件管理

   

  我們相信,在不影響安全性或品質、不拖慢開發人員速度的情況下使用開源的唯一方法是盡可 能讓這個複雜的風險緩解過程簡單。
  使用開源程式碼應該很容易。這就是我們創建 MEND SCA 的原因。技術負責處理開源使用帶來的繁重工作。需在有警報發布注意時,會有即時提醒,為您提供做出正確選擇所需的所有資訊。

  

我們如何為繁瑣的開發流程帶來敏捷式的開發管理機制

   

  MEND SCA 平台持續偵測您產品中所使用的所有開源元件。然後它將這些組件與 MEND 的資料庫進行比對。該資料庫是透過從眾多官方來源收集有關開源元件的最新 CVE 漏洞資訊而建構的,其中包括各種漏洞來源以及數百個社群和開發人員資源。 MEN SCA 平台專為安全和合規專業人士而設計,為管理人員提供控制和管理組織內開源使用所需的一切。它使他們能夠在整個 SSDLC 中自動執行公司政策、獲取關鍵問題的即時警報並產生最新報告。
  它包括一組適合開發人員生態系統的工具,使他們能夠做出明智的選擇,加快整合速度,並快速找到和修復有問題的開源元件。使開發人員可以開發出更好、更安全的軟體。

  

相關文章

資安通報:Apache Struts CVE-2023-50164

Apache Struts 近日被通報高風險漏洞,目前通報等級為 9.8 分,其攻擊方式主要透過攻擊者操縱上傳文件的參數,引發路徑遍歷(Path Traversal)攻擊。這可以讓攻擊者上傳惡意文件,並最終執行遠端程式碼(Remote Code Execution),從而掌控應用程式或伺服器。
2024/01/08