今天,大多數(shù)組織已經(jīng)采用了DevOps實(shí)踐,這些實(shí)踐有助于自動(dòng)化,提供了一種團(tuán)隊(duì)可以集成流程的文化,并且應(yīng)該能夠以更快的方式交付可靠的軟件和更新。隨著對(duì)軟件應(yīng)用程序需求的不斷增長(zhǎng),對(duì)擴(kuò)展的需求也隨之增長(zhǎng),這反過來(lái)又導(dǎo)致了安全漏洞和威脅。因此,對(duì)于DevOps團(tuán)隊(duì)來(lái)說(shuō),在軟件開發(fā)周期工作流的每個(gè)階段添加安全措施變得非常重要。安全問題應(yīng)得到比以往任何時(shí)候都更高的優(yōu)先地位。提供一種文化,使團(tuán)隊(duì)能夠集成流程,并且應(yīng)該能夠以更快的方式交付可靠的軟件和更新。因?yàn)殡S著軟件應(yīng)用需求的不斷增長(zhǎng),對(duì)擴(kuò)展的需求也隨之增長(zhǎng),這反過來(lái)又會(huì)導(dǎo)致安全漏洞和威脅。因此,對(duì)DevOps團(tuán)隊(duì)來(lái)說(shuō),在軟件開發(fā)周期工作流程的每個(gè)階段都加入安全措施變得非常重要,安全性應(yīng)該得到比以往任何時(shí)候都更高的優(yōu)先級(jí)。
一、DevOps(DevSecOps)中的安全性是什么?
DevSecOps或DevOps中的安全性是一套實(shí)踐、文化和功能方法,以及一套DevOps安全工具,在這些工具中,我們將開發(fā)、操作和安全性結(jié)合在一起,以高效和安全的方式交付應(yīng)用程序和服務(wù)。通過DevSecOps,安全性被注入到持續(xù)集成和連續(xù)交付(CI/CD)管道中,這有助于開發(fā)人員解決安全問題。
早些時(shí)候,在軟件開發(fā)生命周期結(jié)束時(shí)引入了安全考慮,這導(dǎo)致了網(wǎng)絡(luò)安全攻擊的增加,開發(fā)團(tuán)隊(duì)正在為應(yīng)用程序開發(fā)更頻繁的版本修復(fù)。下面的文章分享了將安全性應(yīng)用于DevOps環(huán)境的基本注意事項(xiàng),并提供了DevOps安全挑戰(zhàn)和最佳實(shí)踐的概述。本文介紹了將安全性應(yīng)用于DevOps環(huán)境的基本考慮事項(xiàng),并概述了DevOps安全挑戰(zhàn)和最佳實(shí)踐。
二、DevOps的安全挑戰(zhàn)是什么?
實(shí)現(xiàn)DevOps安全性帶來(lái)了幾個(gè)挑戰(zhàn)。從一個(gè)大的組織到小的組織,我們?cè)谌魏蔚胤蕉伎梢钥吹桨踩捎梅矫娴亩窢?zhēng)和挑戰(zhàn)。DevOps安全挑戰(zhàn)分為技術(shù)、人員、工具等。我們將了解團(tuán)隊(duì)面臨的大多數(shù)挑戰(zhàn):
文化變遷
對(duì)于任何人來(lái)說(shuō),引入一種新的方法并進(jìn)行文化轉(zhuǎn)換是相當(dāng)具有挑戰(zhàn)性的,特別是如果它需要正確的DevOps安全方法和思想轉(zhuǎn)變,將安全作為軟件開發(fā)中考慮的第一步。此外,安全團(tuán)隊(duì)主要關(guān)注應(yīng)用程序的安全性,以便環(huán)境和代碼應(yīng)該是安全的,而開發(fā)人員則關(guān)注于開發(fā)和由于及時(shí)性而加快交付。意見和目標(biāo)的不同導(dǎo)致了操作摩擦,這對(duì)今后的發(fā)展具有很大的挑戰(zhàn)性
這可以通過讓來(lái)自安全性和開發(fā)人員的人員參與到共同的實(shí)踐中來(lái)解決,并共同朝著一個(gè)統(tǒng)一的目標(biāo)努力。人們期望代碼能夠更快、更安全地交付
云的復(fù)雜性
許多組織正在使用多個(gè)云來(lái)提高管理效率,利用最佳的云解決方案和多重自動(dòng)化的實(shí)現(xiàn),這使得安全設(shè)置成為團(tuán)隊(duì)非常具有挑戰(zhàn)性的任務(wù)
缺乏技能和知識(shí)
專業(yè)技能和知識(shí)在實(shí)施DevOps實(shí)踐中也起著關(guān)鍵作用。缺乏安全實(shí)現(xiàn)技能成為團(tuán)隊(duì)在DevOps管道中實(shí)現(xiàn)安全性的障礙
對(duì)DevOps和DevOps cyber security中的安全工具相關(guān)的員工進(jìn)行內(nèi)部培訓(xùn)可以幫助他們獲得DevOps安全模型的知識(shí)并提高意識(shí),從而為團(tuán)隊(duì)培養(yǎng)更有經(jīng)驗(yàn)的DevOps安全工程師,并進(jìn)一步成為指導(dǎo)其他團(tuán)隊(duì)成員的機(jī)會(huì)
工具集成不足和復(fù)雜
靜態(tài)應(yīng)用安全測(cè)試(SAST)和軟件組合分析(SCA)對(duì)早期狀態(tài)漏洞的檢測(cè)非常有幫助,但不支持更快的部署和較長(zhǎng)的運(yùn)行時(shí)間,因此開發(fā)人員傾向于避免將工具集成到應(yīng)用程序中。此外,當(dāng)安全工具需要與不同的DevOps工具集成時(shí),場(chǎng)景會(huì)變得更加復(fù)雜
找到一個(gè)可以解決安全問題的工具,或者使用更多的clouddevops安全服務(wù)來(lái)避免SAST和SCA工具的問題,這將很有幫助
角色與責(zé)任不匹配
將DevOps和安全團(tuán)隊(duì)的角色和職責(zé)協(xié)調(diào)起來(lái)是非常具有挑戰(zhàn)性的。首先,主要關(guān)注點(diǎn)是更快的發(fā)布和部署,而安全團(tuán)隊(duì)則專注于確保DevOps的安全實(shí)踐,這就造成了安全性和DevOps之間的不兼容性。需要DevOps的安全實(shí)踐和系統(tǒng)是安全的,保持可追溯性,容錯(cuò),并解決問題。但由于文化的轉(zhuǎn)變,它變得具有挑戰(zhàn)性,這一點(diǎn)在上文中也已經(jīng)討論過。
DevOps安全檢查表中最好的方法之一是向左移動(dòng),即在軟件開發(fā)生命周期(SDLC)中將DevOps安全實(shí)踐移到更早的位置,這樣開發(fā)人員就可以及早發(fā)現(xiàn)安全問題。
三、在組織中啟用DevSecOps的步驟
與DevOps類似,DevSecOps要求組織文化和程序發(fā)生轉(zhuǎn)變,以升級(jí)DevOps應(yīng)用程序安全性。以下是可用于在組織中啟用DevSecOps的方法之和:
將安全作為第一步
這是一個(gè)重要的步驟,即左移,這意味著所有與證券有關(guān)的活動(dòng)都應(yīng)包括在早期階段,從而在整個(gè)過程中繼續(xù)進(jìn)行。安全專家不僅應(yīng)該從開發(fā)階段就參與進(jìn)來(lái),而且應(yīng)該從計(jì)劃階段本身就參與進(jìn)來(lái)。如果能在開發(fā)的早期階段發(fā)現(xiàn)錯(cuò)誤或bug,總比在生產(chǎn)或后期階段修復(fù)錯(cuò)誤或bug要好
DevOps管道安全測(cè)試自動(dòng)化
自動(dòng)化的安全性測(cè)試不僅有助于使用DevOps pace維護(hù)安全性而不存在任何漏洞或問題,而且有助于以警報(bào)形式通知任何失敗的測(cè)試。
讓開發(fā)人員編寫安全代碼
既然在上面討論過,我們需要從開發(fā)或規(guī)劃階段的開始就實(shí)現(xiàn)安全性。因此,通過內(nèi)部、外部的培訓(xùn)課程來(lái)培訓(xùn)開發(fā)人員,以便從代碼中從一開始就實(shí)現(xiàn)安全性,并將重點(diǎn)放在安全性上,而不僅僅是交付速度
除了對(duì)團(tuán)隊(duì)進(jìn)行安全意識(shí)培訓(xùn)外,有關(guān)安全風(fēng)險(xiǎn)、安全編碼需求、DevOps中的安全測(cè)試以及創(chuàng)建安全代碼的工具的知識(shí)也非常有益。對(duì)組織進(jìn)行安全文化教育總是可以更好地幫助組織
基礎(chǔ)設(shè)施安全
當(dāng)應(yīng)用程序被部署時(shí),試著把它部署到一些安全的工具上,比如OSSEC,這樣它可以幫助保護(hù)所有的應(yīng)用程序主機(jī)
持續(xù)集成和構(gòu)建
在為應(yīng)用程序創(chuàng)建映像或包時(shí),請(qǐng)確保構(gòu)建工具或系統(tǒng)具有適當(dāng)?shù)陌踩浴J袌?chǎng)上可用于持續(xù)集成和構(gòu)建的工具有Jenkins、Circle CI、AWS CodeBuild、Google云函數(shù)、docker等。
四、減輕安全威脅的策略
DevOps實(shí)踐提供了許多保護(hù)和審核應(yīng)用程序的方法,以及諸如更快的反饋、自動(dòng)化、定期發(fā)布等特性
監(jiān)測(cè)和警報(bào)
DevSecOps為團(tuán)隊(duì)提供的跟蹤管道和發(fā)布的方法之一是通過日志記錄和監(jiān)控系統(tǒng)來(lái)幫助CI/CD管道中的故障和問題更快地通過連續(xù)反饋進(jìn)行跟蹤
不僅如此,它還有助于跟蹤軟件開發(fā)生命周期,更好地理解在運(yùn)行時(shí)環(huán)境中部署了什么,并保持跟蹤
保持審計(jì)和合規(guī)性
為了使任何行業(yè)能夠無(wú)縫地工作,審計(jì)和合規(guī)在減輕威脅和漏洞方面發(fā)揮著重要作用。采用DevSecOps實(shí)踐,有助于團(tuán)隊(duì)確保應(yīng)用軟件遵循所有必需的遵從性的基本實(shí)踐。?
云使用
在DevSecOps服務(wù)和實(shí)踐中采用云時(shí),云的使用也有助于減輕威脅。當(dāng)軟件在任何云提供商中開發(fā)和部署時(shí),它有助于分析代碼、監(jiān)控合規(guī)性、調(diào)查威脅等等。接受DevOps認(rèn)證培訓(xùn)深入研究DevOps安全緩解措施。
五、DevSecOps最佳實(shí)踐
當(dāng)我們談?wù)揇evSecOps時(shí),它不僅僅是關(guān)于速度或敏捷性,還有一些挑戰(zhàn)。DevSecOps實(shí)踐背后的一個(gè)目標(biāo)是使安全性成為軟件開發(fā)周期的核心組成部分。下面是幾個(gè)DevOps security的最佳實(shí)踐,它們將使應(yīng)用程序進(jìn)程平穩(wěn)運(yùn)行:
自動(dòng)化
通過引入安全性,不應(yīng)該在交付速度上有太大的妥協(xié),這是DevOps過程的一個(gè)重要方面。我們可以在軟件開發(fā)生命周期中進(jìn)行自動(dòng)化的安全控制和測(cè)試,以確保軟件交付的安全性和速度。
培訓(xùn)和提升員工技能
為了使DevSecOps團(tuán)隊(duì)取得成功,必須為員工提供良好的培訓(xùn)和專業(yè)課程,讓安全專家和培訓(xùn)人員提高團(tuán)隊(duì)的技能和意識(shí)。提高技能的另一種方法是使用編碼標(biāo)準(zhǔn)來(lái)教育開發(fā)人員安全編碼實(shí)踐,這本身可以提供更好的學(xué)習(xí)。
文化變遷
要在組織中實(shí)現(xiàn)DevSecOps目標(biāo),需要付出更多的努力,同時(shí)也需要技術(shù)的升級(jí)。這里可以使用的一種方法是左移文化,在這種文化中,DevOps團(tuán)隊(duì)作為組織模式的一部分,在軟件開發(fā)生命周期的早期階段移動(dòng)安全性。
合規(guī)性
這可以由安全策略用于標(biāo)記,以便實(shí)現(xiàn)體系結(jié)構(gòu)中的安全性。
安全編碼實(shí)踐
所有的編碼標(biāo)準(zhǔn)都必須根據(jù)最新的安全實(shí)踐進(jìn)行審查,這應(yīng)該被設(shè)置為事件驅(qū)動(dòng)的,這樣就可以在更早的階段發(fā)現(xiàn)問題,而不是開發(fā)人員在代碼投入生產(chǎn)后進(jìn)行修復(fù)。
所有的修改都要檢查,因?yàn)闆]有太小的變化,這種方法可以證明是有利的。
紅隊(duì)、藍(lán)隊(duì)和臭蟲獎(jiǎng)
使用紅色團(tuán)隊(duì)、藍(lán)色團(tuán)隊(duì)和缺陷獎(jiǎng)勵(lì)有助于及時(shí)發(fā)現(xiàn)漏洞和安全漏洞。具體情況如下:
紅色團(tuán)隊(duì):這是一個(gè)道德黑客團(tuán)隊(duì),目的是測(cè)試安全程序的有效性,并在空間中發(fā)現(xiàn)潛在的攻擊,以便在實(shí)際的漏洞發(fā)生之前將其緩解?;旧希ㄟ^這個(gè),團(tuán)隊(duì)試圖用不同的方法接管系統(tǒng)。
藍(lán)隊(duì)-藍(lán)隊(duì)負(fù)責(zé)事故的及時(shí)反應(yīng)和安全保衛(wèi)。該隊(duì)對(duì)紅隊(duì)的進(jìn)攻采取必要的行動(dòng),提供防御。
缺陷獎(jiǎng)勵(lì):根據(jù)該計(jì)劃,組織向報(bào)告軟件應(yīng)用程序缺陷或安全問題的個(gè)人提供獎(jiǎng)勵(lì),可進(jìn)一步用于確保系統(tǒng)無(wú)風(fēng)險(xiǎn)且不存在漏洞。
部署前后審計(jì)
為了確??鐟?yīng)用程序的安全性,在軟件開發(fā)生命周期中對(duì)部署前和部署后進(jìn)行審計(jì)變得非常重要。部署前檢查的目標(biāo)是代碼修改,而部署后檢查包括策略和代碼修改。
部署前和部署后審計(jì)的目標(biāo)是確保部署前和部署后經(jīng)過認(rèn)證的安全檢查是相同的,這證明部署沒有引入任何安全漏洞。
日志和監(jiān)控
我們可以使用日志和監(jiān)控工具來(lái)收集數(shù)據(jù)、審計(jì)系統(tǒng)、記錄用戶的活動(dòng)等,這有助于進(jìn)一步調(diào)試和調(diào)查安全事件。市場(chǎng)上提供的一些不同的日志和監(jiān)控工具有Splunk、Grafana、Kibana、Nagios等。
事件管理
我們應(yīng)該確保為事件響應(yīng)制定一致的工作流程和可衡量的行動(dòng)計(jì)劃。在DevSecOps中,應(yīng)該對(duì)漏洞進(jìn)行連續(xù)的檢測(cè)和響應(yīng),以使過程更順暢。
安全測(cè)試
如上所述,DevSecOps需要組織中的文化轉(zhuǎn)變才能成功。以下是促進(jìn)文化變革的安全測(cè)試方法:
自上而下的強(qiáng)制變更,執(zhí)行人員將在整個(gè)組織內(nèi)傳達(dá)所需的變更。
自下而上的有機(jī)變化,跨團(tuán)隊(duì)的安全協(xié)作從小規(guī)模開始,逐漸擴(kuò)展到其他團(tuán)隊(duì)。
這兩種方法都不容易實(shí)現(xiàn),但在創(chuàng)建文化變革方面非常有效,這些變革集中于在生產(chǎn)和用戶報(bào)告問題之前解決安全問題。有些組織傾向于采用這兩種方法中的一種,而有些組織則傾向于同時(shí)采用這兩種方法。
自動(dòng)生成問題單
每個(gè)檢測(cè)到的漏洞或威脅都應(yīng)該自動(dòng)鏈接到Jira,以便在正確的工具的幫助下提高團(tuán)隊(duì)的性能和效率。因此,一旦問題得到解決,可以更新和關(guān)閉類似方式的票證。
自動(dòng)化安全掃描
通過仔細(xì)檢查并列出應(yīng)用程序中的所有步驟,可以創(chuàng)建和自動(dòng)化使用DevOps安全實(shí)踐的應(yīng)用程序。
六、結(jié)論
DevOps和DevSecOps面臨著很多威脅,但也有許多最佳實(shí)踐可用于改進(jìn)DevSecOps,這在組織中正呈增長(zhǎng)趨勢(shì)。通過實(shí)施上述最佳實(shí)踐,組織可以幫助保護(hù)您的系統(tǒng)免受攻擊。
DevSecOps是一個(gè)非常廣泛的話題,如果您想了解更多關(guān)于DevOps和up skill的知識(shí),請(qǐng)隨時(shí)查看有關(guān)認(rèn)證培訓(xùn)的信息?實(shí)踐中的DevSecOps方法是什么樣的。
DevSecOps常見問題解答
為什么DevOps的安全性很重要?
安全性現(xiàn)在已經(jīng)成為任何軟件必不可少的,而不是可選的。早期的安全性在SDLC(軟件開發(fā)生命周期)中常常是后遺癥。由于受到多起黑客攻擊,數(shù)據(jù)遭到破壞,安全問題已成為一個(gè)重要問題。在數(shù)字時(shí)代,安全與效率并重。這基本上是保護(hù)軟件免受不計(jì)后果的網(wǎng)絡(luò)攻擊的經(jīng)濟(jì)方法安全性現(xiàn)在已經(jīng)成為任何軟件必不可少的,而不是可選的。早期的安全性在SDLC(軟件開發(fā)生命周期)中常常是后遺癥。由于受到多起黑客攻擊,數(shù)據(jù)遭到破壞,安全問題已成為一個(gè)重要問題。在數(shù)字時(shí)代,安全與效率并重。它基本上是保護(hù)軟件免受不計(jì)后果的網(wǎng)絡(luò)攻擊的經(jīng)濟(jì)方法。
你如何確保DevOps的安全?
好的證券策略對(duì)組織的每一部分都至關(guān)重要。對(duì)于采用DevOps模型的公司來(lái)說(shuō),安全性對(duì)于保護(hù)使用其產(chǎn)品的組織和客戶更加重要。可以遵循的最佳實(shí)踐包括:-設(shè)置治理策略、盡可能多地自動(dòng)化DevOps安全性、執(zhí)行漏洞管理和定期的安全審核。對(duì)于代碼保存和工作,首選版本控制。密碼至關(guān)重要,而且往往是安全的薄弱環(huán)節(jié)。為了更好地保護(hù),強(qiáng)烈和頻繁的變化總是首選,這變得非常煩人和復(fù)雜的員工記住它。所以,密碼管理器出現(xiàn)了,它允許團(tuán)隊(duì)將信息存儲(chǔ)在一個(gè)中心位置,以防被盜。就像公司每年或每半年進(jìn)行一次安全審計(jì)一樣,它也應(yīng)該被用來(lái)確定DevOps團(tuán)隊(duì)中的區(qū)域。很煩人,員工很難記住。所以,密碼管理器出現(xiàn)了,它允許團(tuán)隊(duì)將信息存儲(chǔ)在一個(gè)中心位置,以防被盜。就像公司每年或每半年進(jìn)行一次安全審計(jì)一樣,它也應(yīng)該被用來(lái)確定DevOps團(tuán)隊(duì)中的區(qū)域。
何時(shí)在DevOps中進(jìn)行安全測(cè)試?
當(dāng)我們?cè)贒evOps中集成安全性時(shí),它就變成了DevSecOps。與其提供一個(gè)安全層作為軟件開發(fā)生命周期的最后一步,更重要的是要考慮整個(gè)過程中的安全性。在安全軟件開發(fā)生命周期中,它允許開發(fā)團(tuán)隊(duì)采用安全監(jiān)視和工具,以接近如何使用監(jiān)視和操作等工具:當(dāng)我們?cè)贒evOps中集成安全性時(shí),它就變成了DevSecOps。與其提供一個(gè)安全層作為軟件開發(fā)生命周期的最后一步,更重要的是要考慮整個(gè)過程中的安全性。在安全軟件開發(fā)生命周期中,它允許開發(fā)團(tuán)隊(duì)采用安全監(jiān)視和工具,以接近如何使用監(jiān)視和操作等工具。
安全性應(yīng)該始終在DevOps中扮演重要角色,所以“左移”的概念就出現(xiàn)了。在這兩個(gè)測(cè)試中,質(zhì)量和安全都需要在SDLC中向開發(fā)者靠攏,這將使安全測(cè)試更快,也將提高效率。
如何在華為云DevOps中實(shí)現(xiàn)安全性?
如今,安全性已變得至關(guān)重要,在華為云 DevOps中應(yīng)遵循的一些實(shí)踐包括:
使用多因素身份驗(yàn)證:身份驗(yàn)證在驗(yàn)證用戶或服務(wù)id的身份時(shí)起著重要作用。而多重身份驗(yàn)證是一種附加密碼保護(hù)的方法,它提供兩個(gè)或多個(gè)驗(yàn)證因子來(lái)訪問資源?;旧?,它不僅通過詢問用戶名和密碼,還添加了其他多種方法,如電話、短信、移動(dòng)應(yīng)用程序通知等,增加了更多的安全性。
限制用戶訪問:該訪問控制僅授予用戶執(zhí)行任務(wù)所需的訪問級(jí)別,并提供預(yù)定義角色以幫助將角色分配給團(tuán)隊(duì)及其成員。
開發(fā)過程漏洞掃描VSS:漏洞掃描服務(wù)(Vulnerability Scan Service,簡(jiǎn)稱VSS)集Web漏洞掃描、操作系統(tǒng)漏洞掃描、資產(chǎn)及內(nèi)容合規(guī)檢測(cè)、安全配置基線檢查、弱密碼檢測(cè)、開源合規(guī)及漏洞檢查、移動(dòng)應(yīng)用安全檢查七大核心功能為一體,自動(dòng)發(fā)現(xiàn)網(wǎng)站或服務(wù)器在網(wǎng)絡(luò)中的安全風(fēng)險(xiǎn),為云上業(yè)務(wù)提供多維度的安全檢測(cè)服務(wù),滿足合規(guī)要求,讓安全弱點(diǎn)無(wú)所遁形。
代碼質(zhì)量檢查:代碼檢查(CodeCheck)是基于云端實(shí)現(xiàn)代碼質(zhì)量管理的服務(wù),軟件開發(fā)者可在編碼完成后執(zhí)行多語(yǔ)言的代碼靜態(tài)檢查和安全檢查,獲取全面的質(zhì)量報(bào)告,并提供缺陷的分組查看與修復(fù)建議,有效管控代碼質(zhì)量,確保產(chǎn)品原生高質(zhì)量和產(chǎn)品安全,幫助產(chǎn)品成功。代碼檢查默認(rèn)支持Java、C++、PHP、C#、JS、TypeScript、HTML、CSS、Go和Python語(yǔ)言的規(guī)則集,且每種語(yǔ)言類型對(duì)應(yīng)多種不同級(jí)別的規(guī)則集。提供近2000條典型檢查規(guī)則。提供多維度質(zhì)量統(tǒng)計(jì)報(bào)表,包括質(zhì)量門禁和代碼健康度徽標(biāo)等。
原文標(biāo)題:什么是DevSecOps?理解DevOps安全性
文章出處:【微信公眾號(hào):華為DevCloud】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
華為
+關(guān)注
關(guān)注
215文章
34263瀏覽量
251024
原文標(biāo)題:什么是DevSecOps?理解DevOps安全性
文章出處:【微信號(hào):華為DevCloud,微信公眾號(hào):華為DevCloud】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論