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