你的應用安全嗎?--用 Xray 和 Synk 保駕護航

背景


在當下軟件應用的開發過程當中,自研的內部代碼所佔的比例逐步地減少,開源的框架和共用庫已經得到了廣泛的引用。如下圖所示,在一個 Kubernetes 部署的應用當中,我們自己開發代碼所佔的比例可能連 0.1% 都不到。



開源軟件能夠幫助開發者共享彼此的成果,使得我們能夠快速複用其他人開發並已得到驗證的軟件庫,從而能夠集中精力專注於創新性的工作。然而,開源軟件的大量引用也給我們的應用帶來了安全隱患。安全檢測已成爲當前 DevOps 流程的重要組成部分。



你的應用安全嗎


據不完全統計,現在有78%的企業都在使用開源軟件。但是,大家在享受開源軟件帶來的研發便利的同時,是否也意識到開源軟件帶來的安全隱患呢?



從上圖的統計數據可以看出,只有13%的企業會把安全放在引用開源軟件時的首要關注點。大部分的使用者選擇相信開源軟件的創造和維護者會保證其安全性。然而,下圖的統計數據表明,安全性並不是開源軟件維護者的維護重點。



這樣的現狀導致我們常用的開源軟件庫包含了各種各樣的安全漏洞,例如,據統計,目前14%的 NPM 包、30%的 Docker Hub 鏡像都包含安全漏洞。而且在這些漏洞被發現之後,也得不到及時的修復。據統計,Maven 包裏有59%的已知安全漏洞還沒有得到修復,而漏洞的平均修復時間是290天,最嚴重級別漏洞的平均修復時間也僅是265天。***們已逐漸把開源軟件作爲了主要的***目標。


該怎麼樣保證我們上線應用的安全呢?



JFrog Xray,監測安全漏洞的利器


JFrog 公司提供的 Artifactory+Xray 是一個很好的產品組合。Artifactory 是全語言的製品倉庫,能夠在同一個倉庫中存儲和管理我們應用研發中使用的所有外部依賴包。而 Xray 通過對 Artifactory 的監視,能夠在構建,甚至開發階段就發現安全漏洞問題,使得安全監測前置,避免了在應用上線前緊急排查問題的窘境。



如上圖所示,當 Artifactory 倉庫中新加入了製品包,設置了對其監視的 Xray 就會啓動安全檢查,並報告查到的安全漏洞和 License 授權情況。而針對安全漏洞,Xray 會提供詳細的漏洞信息,以及在應用中的準確定位來輔助我們對其進行分析和檢查。



同時,針對查出來的安全漏洞,Xray 還提供了針對其擴散範圍的分析。也就是說,可以幫助我們分析,出了被檢查的這個製品包外,還有哪些其他的應用也包含了這個安全漏洞。



除了安全漏洞及其擴散範圍的分析,Xray 還提供自定義問題的能力。我們可以把用其他工具發現的安全問題,或者如性能過低、版本過老等非安全問題定義在對應的製品包上,同樣也可以利用 Xray 的能力檢查這些問題在我們的應用中的擴散範圍。



Snyk, 不僅僅是監測漏洞


JFrog Xray 是基於開源的 NVD 開源漏洞數據庫來監測安全漏洞的,而 Snyk(https://snyk.io)提供了額外的商業漏洞數據庫。Xray 可以通過和 Snyk 的集成,實現利用 Snyk 的商業漏洞數據庫進行安全漏洞檢查。



當然,基於自身的商業漏洞數據庫,Snyk 也提供了安全漏洞的掃描和監測能力。Snyk 提供了與各種各樣平臺的集成,幫助我們監測部署在這些平臺上的應用安全。



然而,Snyk 的能力不僅如此,他還能幫助我們修復安全漏洞。例如,當和我們的 Github Enterprise 集成後,我們可以選擇我們需要監測的項目。



選定後,Snyk 就會自動掃描我們的代碼並報告在項目當中發現的安全漏洞。



Snyk 最大的特色是,針對這些安全漏洞,能夠自動給出PR(Pull Request)形式的修復建議。PR 既可以針對所有發現的漏洞,也可以只針對某一個具體的漏洞。




直接 Merge 這些 PR 就可以幫助我們替換使用已修復安全漏洞的依賴包,實現安全隱患的自動消除。



總結


開源軟件的大量引用,在方便了應用開發的同時,也帶來了安全的隱患。利用 JFrog Xray 和 Snyk 等工具,能夠幫助我們儘早地發現開源依賴引入的安全漏洞,分析漏洞的擴散範圍,也可以給出修復建議,實現安全隱患的自動消除。






參考資料

  • Xray and Snyk -  Don’t just scan … Fix!

https://www.youtube.com/watch?v=jlUQd1l2j40&list=PLY0Zjn5rFo4OuGDcUEgb48JcObItA4TLW&index=46

  • JFrogXray試用地址

http://www.jfrogchina.com/artifactory/free-trial/


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章