開源治理工具有哪些?今天我們來盤點一下

開源治理是個大話題,我們今天不對開源治理的定義做探究,我們可以簡單理解為解決開源社區、開源項目、開源企業的各類問題的動作稱為開源治理。

為什麼要做開源治理呢?這要從開源的發展現狀來說了。這些年來開源的熱度可謂是持續增長,並且開源軟件已經基本覆蓋了關鍵技術領域,包括操作系統、雲計算、大數據、人工智能等。但是同時我們也要看到因為開源許可證合規性風險和開源漏洞風險所造成的訴訟案件和糾紛也不斷出現,企業就紛紛開始關注開源治理。2006年位於德國GmbH的D-Link德國分部因違反GPL開源許可協議被Linux有名開發者Welte起訴並且受到了懲罰。2016 年底,Artifex 公司因Hancom 違反AGPL開源許可協議向美國加利福尼亞北部地區法院發起訴訟。開源治理中必不可少的一環就是配套的開源治理工具了,市面上已經存在了不少的開源治理工具,但是這些工具具體有哪些功能?掃描原理是什麼?掃描結果又是否相同?今天我們就來盤點一下。

目前市場上已經存在一些用於對開源代碼組成及安全性分析的開源治理工具,總體來說可以分為以下三種類型:

1.工具掃描開源軟件源代碼,進行源代碼片段式比對來識別組件並識別許可證類型。此類工具掃描後得出的組件信息需人工確認。

2.工具不掃描開源軟件源代碼,對文件級別提取特徵文件,生成二進制包,通過對二進制包進行比對來識別組件並確定許可證類型。此類工具掃描後得出的組件信息是自動確認的。

3.工具不掃描開源軟件源代碼,通過掃描包配置文件讀取信息,進行依賴識別從而識別組件並識別許可證類型。此類工具掃描後得出的組件信息是自動確認的。

這三種識別技術的識別速度是依次增快的,並且組件物料清單的完整性也是依次增高的。源代碼片段對比識別的組件數量較多但是誤報率較高,另外兩種技術的誤報率較低但是識別出來的組件數量較少。

我們選取了kubernetes 1.16.2版本來進行開源治理工具掃描對比。目前kubernetes是一個開源中主流的容器編排軟件,市場佔有率超過80%,國內開發的容器編排軟件基本基於kubernetes開發。

此次共使用代碼掃描工具共計6個,均使用工具的SaaS版本進行掃描。為保證公立性,我們僅展示掃描結果,不做掃描結果評價及對工具掃描能力評價。

工具A掃描結果:611個開源組件數,有版本信息(當前版本,最新版本),有依賴項掃描,0個安全漏洞,無許可證分類統計,有許可證風險分級,掃描耗時11分鐘,支持本地掃描,自動確認

開源治理工具有哪些?今天我們來盤點一下

工具B掃描結果:270個開源組件數,有版本信息(當前版本,最新版本),有依賴項掃描,2個安全漏洞,有許可證分類統計,有許可證風險分級,掃描耗時2分鐘,支持本地掃描,自動確認

開源治理工具有哪些?今天我們來盤點一下

開源治理工具有哪些?今天我們來盤點一下

工具C掃描結果:68個開源組件數,有當前版本,無最新版本,有依賴項掃描,5個安全漏洞,有許可證分類統計,無許可證風險分級,掃描耗時51分鐘,不支持本地掃描,需手動確認

開源治理工具有哪些?今天我們來盤點一下

開源治理工具有哪些?今天我們來盤點一下

工具D掃描結果:915個開源組件數,有當前版本,無最新版本,有依賴項掃描,17個安全漏洞,無許可證分類統計,無許可證風險分級,掃描耗時18分鐘,支持本地掃描,自動確認

開源治理工具有哪些?今天我們來盤點一下

開源治理工具有哪些?今天我們來盤點一下

工具E掃描結果:112個開源組件數,有組件版本信息,有依賴項掃描,6個安全漏洞,有許可證分類統計,有許可證風險分級,支持本地掃描,自動確認

開源治理工具有哪些?今天我們來盤點一下

開源治理工具有哪些?今天我們來盤點一下

開源治理工具有哪些?今天我們來盤點一下

開源治理工具有哪些?今天我們來盤點一下

工具F掃描結果:無開源組件數統計,無開源組件版本信息,有依賴項掃描,只做許可證掃描,無安全漏洞掃描功能,有許可證分類統計,無許可證風險分級,掃描耗時10分鐘,支持本地掃描,需手動確認

kubernetes( 1.16.2)掃描結果如下表所示:

開源治理工具有哪些?今天我們來盤點一下

注1:我們所選取的k8s軟件較大,可能不適用每個工具的使用場景。

注2: 掃描結果可能受網絡和電腦硬件配置要求的影響。

注3:各工具掃描結果,開源組件數並不是越多越好,可能會誤報;開源組件數也並不是越少越好,可能會漏報,開源最接近真實的才是最準確的,當然k8s真實的開源組件數量我們目前還無法準確得到。

注4:每家算法實現方法不同,有些掃描源碼,有些掃描二進制碼;有些直接上傳到雲端進行掃描,有些需要本地部署客戶端,有些需要集成到開發環境使用;有些側重漏洞信息,有些側重開源許可證信息。

注5:各家掃描時間並不一定在同一維度上比較,我們只是模擬用戶體現時間,有些包含了拉取國外鏡像的時間,所以時間差異比較大,耗時長短不能表示工具好用與否,與掃描對象和應用場景直接相關。

雲計算標準和開源推進委員會將於11月28日召開《開源治理工具能力要求第一部分-開源組成及安全性分析》第一次專家研討會,會議將啟動《開源治理工具能力要求 第1部分:開源組成及安全性分析》,並對各章節指標、內容進行技術研討,標準制定後我們會對工具進行系統測試,給出測試報告。如果您也對開源治理工具感興趣的話,就趕緊加入我們吧!


分享到:


相關文章: