開源軟件讓企業可以利用世界上最優秀、最聰明的開發人員的力量。通過提供構建產品的捷徑,它可以極大地提高生產率并縮短上市時間。然而,盡管它被廣泛使用(您很難找到一個不使用開源組件構建的應用程序)以及它的優點,開放軟件代碼對于開發人員來說可能是一個麻煩,對于那些由于開源漏洞而導致數據泄露的組織來說則是一場噩夢。
今年早些時候,OpenAI,最新的人工智能寵兒,要么拯救世界,要么毀滅世界,取決于你相信誰,成為數據泄露的受害者,原因是一個被利用的開源庫漏洞。黑客將私人聊天數據暴露給了其他用戶。
ChatGPT漏洞說明了使用開源組件的一個重要問題——急于進入市場。在其他一些引人注目的錯誤之后,該公司因過早上市而受到批評。然而,考慮到先發優勢,企業不太可能愿意放慢開發時間表作為回應。
由于市場壓力沒有顯示出任何緩和的跡象,DevOps團隊能做的最好的事情就是采取積極主動的方式進行開源集成。以下是與使用開源組件相關的最常見問題,以及開發人員如何克服這些問題。
1.兼容性
開發人員可以為幾乎任何功能找到開源組件。團隊可以從多個資源中挑選和選擇來創建創新產品。然而,每個元素都有自己的做事方式——數據格式、協議、應用程序編程接口(api)——讓它們無縫通信可能是一個巨大的挑戰。以下是處理兼容性問題的一些技巧:
定期檢查發行說明、文檔和社區論壇,了解任何更改或兼容性問題,以保持更新。
實現自動化測試,包括單元測試、集成測試和回歸測試,以便在開發周期的早期捕獲兼容性問題。
創建一個軟件材料清單,以了解每個組件的依賴關系以及它們如何相互作用。
2.漏洞
開源的協作性質意味著,雖然源代碼是免費提供的,但漏洞也是免費提供的。任何人都可以查看和分析代碼,包括潛在的攻擊者。開源組件中的安全漏洞可能在修補甚至識別之前就被利用了。隨著網絡安全和數據保護法規的迅速擴展,安全地集成開源組件通常是一個法律問題,而不僅僅是一個最佳實踐。開發團隊可以通過以下方式加強他們的開源網絡安全態勢:
使用自動化工具掃描已知漏洞的代碼
審計代碼以識別潛在的安全缺陷,特別是在集成新的開源元素之后
在DevOps過程中采用和實施安全最佳實踐。
使用依賴項管理工具跟蹤并更新項目中所有開源組件的安全問題,包括間接依賴項
制定事件響應計劃,以處理發現的漏洞和安全問題
3.標準化
許多擁有多個團隊從事不同項目或包含開源組件的特性的組織無法實現標準化實踐。團隊可能同時使用同一組件的不同版本或多個組件。每個部門都有自己使用開源組件的標準實踐,這并不罕見。相互沖突的實踐可能會減慢開發速度,并導致缺陷、錯誤和兼容性問題。通過開發一個適用于整個組織的清晰的開源治理策略來避免這些問題。該策略應該處理如何、何時以及在何處使用、跟蹤和保護開源組件的所有元素。
4.過時的軟件
開源軟件通常依賴于社區對新特性、更新和補丁的支持。隨著時間的推移,支持可能會減少,使過時的軟件存在多個漏洞和關鍵問題。依賴于不再更新或支持的軟件的開發團隊將不得不在內部處理軟件的管理。
使用像Kiuwan這樣的軟件組合分析(SCA)工具來識別和跟蹤代碼庫中的開源軟件,這樣團隊就可以識別任何不受支持的開源軟件。從這里開始,DevOps團隊可以創建一個更新和維護軟件的計劃。
5.許可要求
因為開源代碼通常是免費提供的,所以很容易忘記它附帶許可要求。使用多個開源組件的大型項目必須遵守具有不同條款和條件的許多不同類型的許可。
不遵守許可條款的企業可能面臨重大風險。自動化SCA工具使團隊能夠看到開源代碼,并在需要采取行動遵守許可條款時提醒他們。
6.知識產權曝光
與許可風險密切相關的是暴露知識產權的風險。一些開源軟件包含copyleft條款。這種類型的許可證允許任何人使用該軟件,前提是所有修改和衍生軟件都是以相同類型的許可證生產的。使用copyleft軟件的團隊必須在相同的許可下發布他們使用開源組件創建的應用程序。這種類型的許可使得創建專有軟件和保護知識產權變得不可能。
為了避免這種風險,開發團隊需要清楚地了解代碼庫中的所有開源元素及其相關許可。這可能特別棘手,因為依賴項可能包含隱藏的開源組件。SCA工具可以掃描代碼庫以查找隱藏的開源代碼,包括適用的版本和許可證。
7.可伸縮性限制
使用開源集成進行擴展可能會很復雜。一些開源軟件包括開放核心模型,其中核心元素是免費的,但某些功能需要商業許可。其他項目以開源開始,但最終會過渡到商業許可。這兩種模式都可能導致意想不到的費用,從而干擾組織的發展。計劃擴大規模的企業應該仔細考慮如何將開源軟件集成到他們的特色產品中。然后,他們要么采用可能保持開源的組件,要么為商業許可的最終成本做計劃。
使用Kiuwan有效地管理開源
Kiuwan的端到端應用程序安全平臺使企業可以輕松地保持在其開源組件的頂部。我們的Insights(SCA)通過降低與開源軟件相關的風險來增強開發人員的能力。它自動掃描源代碼組件的代碼,以提供全面的風險概述。
審核編輯:劉清
-
SCA
+關注
關注
1文章
36瀏覽量
11932 -
devops
+關注
關注
0文章
105瀏覽量
11969 -
ChatGPT
+關注
關注
28文章
1517瀏覽量
6955
原文標題:Kiuwan:開源集成令人頭痛的7個原因(以及如何避免)
文章出處:【微信號:哲想軟件,微信公眾號:哲想軟件】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論