軟件組成分析(SCA)為軟件開發人員及其組織提供了用于構建應用程序的開源組件清單的可見性。
在開發商和應用程序安全團隊在跟蹤開源組件(包括其代碼庫中的直接依賴項和傳遞依賴項)遇到問題之后,軟件組成分析(SCA)工具應運而生。依靠人工流程和電子表格這種做法效率低下、容易出錯,并且不可擴展。
軟件組成分析工具如何工作
采用軟件組成分析(SCA)工具可以自動化識別和分類開發環境中使用的開源代碼的過程,并識別安全性、許可和質量問題及其依賴關系。
為此需要討論選擇軟件組成分析(SCA)解決方案的最佳實踐。
軟件組成分析(SCA)和持續監控
為了有效地工作,軟件組成分析(SCA)工具必須持續監視代碼,因為使用開放源代碼的現代開發方法本質上是連續的。
一個安全團隊負責人喜歡這個功能,他說:“我們一直在開發新的應用程序,我們發現在未被積極開發的應用程序中,存在很多需要修復的漏洞。”
這就是可見性在選擇軟件組成分析(SCA)解決方案時成為一個重要考慮因素的原因。開發人員以及負責分析工作的人員必須了解開發中使用的開源組件。
一家擁有上萬名員工的金融服務機構的員工說:“這就像一直在黑暗中工作,突然之間就擁有了可見性??梢源_切地看到自己正在使用的內容并提出建議。這樣如果不能使用某些東西,則還有其他選擇。”
另一家采用軟件組成分析(SCA)的大型金融服務機構的用戶也表達了這樣的觀點。他們說,“我們不再盲目地使用易受攻擊的組件。我們已經意識到正在向開發人員推廣這種意識,并且認為我們對威脅的前景有了更好的了解。我們甚至都不知道哪些是錯誤或漏洞,而現在我們已經知道了,并且可以很快地補救。”
誤報率低
誤報會浪費時間,并導致用戶在軟件組成分析(SCA)工作中不堪重負。與其相反,假否定會在代碼中引入安全性和許可問題。由于這些原因,軟件組成分析(SCA)解決方案需要盡可能精確。
一家解決方案服務商的一位高級主管指出了此問題的重要性,。他說,“這有助于我們避免在現場暴露關鍵漏洞。它為我們節省了部署之后可能進行的補救活動的時間,因為如果我們在應用程序完全開發和部署之后發現了安全問題,那么需要進行更改或重新使用將變得更加困難。”
提高開發人員的生產力和投資回報率
軟件組成分析(SCA)不僅僅是保護代碼。它也應該是提高開發人員生產力的驅動力。
這位主管還發現在解決問題時,由于明確列出了問題,解決方案提高了開發人員的生產力。如果按數字計算,可以將開發人員的生產力提高5%至10%。
他表示,采用軟件組成分析(SCA)技術可能支付一定的成本,因為修復開發生命周期中的安全漏洞將花費大量資金。
開源代碼政策
軟件組成分析(SCA)實踐和解決方案的最終目的是將安全策略強制應用到代碼庫的所有部分。因此,首選的軟件組成分析(SCA)解決方案是可以強制實施開源代碼策略的解決方案。
這位主管補充說:“由于它具有主動性和實時數據,可以立即知道應用程序的任何部分現在是否容易受到攻擊。”
盡管確實需要強大的安全策略,但是如果它們過于嚴格,則會對開發人員的生產率產生負面影響,它們甚至可能被完全規避。因此,如果軟件組成分析(SCA)解決方案可提供靈活的政策實施,則很有用。
軟件組成分析(SCA)是一個新的緩解控件,可以發現新的漏洞類別。它有助于實施安全的編碼實踐,在首次推出時可能會花費一些時間,但在應用一段時間后,將會降低成本,因為更多的開發人員對此非常熟悉。
此外,軟件組成分析(SCA)工具甚至可以繼承某些組件,因為在現實世界中,由于它不向后兼容,不能總是花費時間去更新。擁有這些功能使它變得更易于使用,并且更加實用,而無需采用全有或全無的方法。
很多用戶希望軟件組成分析(SCA)對開發活動的可見性和意識進行連續監控。他們還希望軟件組成分析(SCA)具有來自多個來源的高質量數據、較低的誤報率、提高開發人員生產率,投資回報率、靈活的策略執行、通過破壞構建來實施開源策略、集成功能和強大的供應商支持。
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。