中國信息通信研究院發(fā)布的《中國DevOps現狀調查報告(2022)》顯示:已有63.51%的企業(yè)引入了DevSecOps實踐,同比增加19.81%。這表明DevSecOps在企業(yè)中的影響力繼續(xù)擴大。國內機構開始越來越多地采用DevSecOps,專注于“左移”安全,即在軟件開發(fā)生命周期的早期引入安全實踐的想法。但實際上,DevSecOps更像是一種整體戰(zhàn)略或方法,而非分配給特定群組或個人的一組具體職責。
DevSecOps 最適用于定義組織如何解決產品安全問題,或在集成開發(fā)環(huán)境中建立文化和技術左移。它還可以提供一個能夠滿足合規(guī)、安全和開發(fā)團隊之間開展安全相關工作所需的機構框架。這里分享JFrog的金融行業(yè)客戶案例。該客戶遇到Log4j中的一個嚴重漏洞,名為"Log4Shell"或"CVE-2021-44228",允許攻擊者通過精心構造的日志記錄語句中的特殊字符,執(zhí)行任意遠程代碼。該漏洞影響范圍廣泛,受到了全球范圍內的關注。針對這種情況,JFrog產品為用戶提供了以下協助:
1. 發(fā)布安全通知和建議:JFrog迅速發(fā)布關于Log4j漏洞的安全通知,并向客戶提供詳細的修復建議。幫助客戶及時了解漏洞,并采取適當的措施來保護其系統和應用程序。
2. 幫助客戶精準定位漏洞的影響范圍:JFrog Xray漏洞掃描工具能夠在第一時間定位所有被該漏洞影響的版本,并實現受影響版本的阻斷下載。避免不必要的加班,未受影響的團隊可不做處理。
3. 制定自動化的漏洞包處理策略,如果有用戶再次下載該漏洞包,則會提示并阻止下載。
然而,現實情況是,雖然安全和開發(fā)團隊都致力于加強業(yè)務,但兩個團隊之間的協作可能具有挑戰(zhàn)性。公司安全團隊的任務是盡一切努力保護業(yè)務,而開發(fā)人員更愿意編寫高質量的代碼,而非花時間修復漏洞。保護軟件供應鏈所需的特定職責、任務和預算實際上就落在了DevOps團隊身上。
定義以 DevOps 為中心的安全
顧名思義,DevOps團隊管理軟件開發(fā)的運營方面,并負責軟件開發(fā)生命周期(SDLC) 的每個步驟。 當安全團隊制定策略,開發(fā)團隊編寫代碼時,DevOps團隊負責管理 SDLC工作流。他們是軟件供應鏈的實際負責方。
在軟件供應鏈安全方面,DevOps團隊也順理成章地成為了負責方。DevOps團隊擁有相應的資源、技能和責任,能夠識別和解決整體DevOps工作流中的安全問題——從開發(fā)到運行時再到部署。安全團隊負責合規(guī)和業(yè)務需求,開發(fā)團隊會遇到大量安全請求、流程和法規(guī)處理問題,而這些并非其核心競爭力。DevOps團隊參與軟件開發(fā)流程的每一步,所以非常適合充當安全團隊與開發(fā)團隊之間的橋梁。
以DevOps為中心的安全能夠提供機構軟件供應鏈的端到端視圖,并標記大量漏洞和薄弱環(huán)節(jié),例如CVE、配置問題、機密泄露和基礎設施即代碼違規(guī)。 它還建議在軟件開發(fā)生命周期的每個階段(從代碼到容器,再到設備)采取補救策略。
以 DevOps 為中心的安全如何運作?
以DevOps為中心的安全方法建立在嚴格的流程和持續(xù)的自動化測試之上,這是所有 DevOps團隊的標志。更重要的是,它指導著國內的機構清楚地了解每處漏洞,并提出能夠有效解決問題的行動建議。
具體如下:
關注二進制文件和源代碼
現代軟件供應鏈只有一項交付到生產中的核心資產:軟件二進制文件,它有多種形式——從數據包到容器,再到歸檔文件。攻擊者日益聚焦于攻擊二進制文件,因其包含的信息比單獨的源代碼更多。 通過分析二進制文件和源代碼,DevOps團隊就能更全面地了解任何影響或發(fā)生漏洞利用之處。這有助于消除復雜性并簡化安全檢測、評估和補救工作。
上下文情境分析:確定哪些漏洞、薄弱環(huán)節(jié)和風險需要補救,以及最具成本效益的補救方法
嚴重漏洞的數量和被識別出的頻次都在增加。 然而,這些CVE可能會被利用,也可能不會被利用,具體取決于應用程序的配置、身份驗證機制的使用、以及密鑰的暴露等因素。 以DevOps為中心的安全著眼于軟件運行的上下文情境,以確定優(yōu)先級并建議如何快速有效地修復漏洞,而不會將開發(fā)人員的時間浪費在不適用的問題上。掃描并分析容器中開源漏洞的能力尤為重要,因為如今使用容器來隱藏惡意代碼的行為呈上升趨勢。
提供軟件供應鏈的整體視圖
通過參與軟件開發(fā)流程中的每一步,DevOps團隊可以全面了解公司的軟件供應鏈及其所有薄弱環(huán)節(jié)。以DevOps為中心的安全能夠分析二進制文件、基礎設施、集成、版本發(fā)布和傳播流動,所有這些都在一處進行,消除了信息不同或有限的不同安全系統以及不一致的報告導致的混淆。因此,當在使用DevOps流程來實施安全時,不僅可以掃描以識別軟件中的問題,還可以幫助開發(fā)人員確定問題的優(yōu)先級并快速輕松地對其進行修復。
總之,國內機構正面臨著軟件供應鏈安全威脅的新時代。JFrog認為,快速、大規(guī)模地智能交付安全軟件的最佳方式是為各機構的軟件供應鏈部署以DevOps為中心的安全體系。