《不只是DevOps,更需要DevSecOps》要點:
本文介紹了不只是DevOps,更需要DevSecOps,希望對您有用。如果有疑問,可以聯(lián)系我們。
DevOps作為軟件開發(fā)過程管理領(lǐng)域的新思維,已經(jīng)被越來越多的IT企業(yè)所接受.不得不說,DevOps所帶來的業(yè)務(wù)效率提升是毋庸置疑的,“1天10次部署”、“15分鐘從完成補丁到上線”已經(jīng)逐漸成為更多企業(yè)用于評價開發(fā)和運維的新標準.
在前不久結(jié)束的RSA 2017大會上,安全連接DevOps(開發(fā)運維一體化)成為大會的一個熱點話題,這也就是DevSecOps.
一、什么是DevSecOps?
“DevSecOps”,是一種全新的安全理念與模式,從DevOps的概念延伸和演變而來,其核心理念為安全是整個IT團隊(包括開發(fā)、運維及安全團隊)每個人的責任,需要貫穿從開發(fā)到運營整個業(yè)務(wù)生命周期的每一個環(huán)節(jié).
過去由于絕大部分企業(yè)IT部門會采用開發(fā)團隊負責價值交付、運維團隊負責可用性保障、安全團隊負責安全保障的方式完成IT業(yè)務(wù)的管理,導(dǎo)致大部分企業(yè)和機構(gòu)的安全、開發(fā)和運維部門業(yè)務(wù)目標相互獨立、割裂,有時甚至是對立和沖突,最終導(dǎo)致安全風(fēng)險的閉環(huán)管理時間周期長、成本高.
二、如今DevSecOps有希望讓二者展開協(xié)作
DevSecOps的實踐可能會顛覆企業(yè)現(xiàn)有的IT開發(fā)與運營模式.在RSA 2017大會DevSecOps研討專題演講嘉賓Chris Carlson做了比較詳細的介紹.
傳統(tǒng)安全運營工作與DevSecOps模式下安全運營工作最核心的區(qū)別在于兩點:
(傳統(tǒng)模式下,安全運營主體工作)
(DevSecOps模式下安全運營工作的具體內(nèi)容)
1)新模式里安全工作前移(Shift Left)
采用安全在軟件開發(fā)前期介入的方式降低解決安全問題的成本,前期介入的內(nèi)容包括對開發(fā)、維護人員的安全意識培訓(xùn)、安全開發(fā)規(guī)范的培訓(xùn)、安全需求(非功能需求)的導(dǎo)入、前期的代碼審計工作、基于白盒的安全測試、滲透測試等內(nèi)容.在運營階段增加的內(nèi)容與前期開發(fā)階段類似,主要內(nèi)容集中在對新安全需求實現(xiàn)情況的驗證以及軟件整體安全評估.IBM的研究人員曾公開過統(tǒng)計數(shù)據(jù),在產(chǎn)品的發(fā)布以后修復(fù)安全問題的成本是在設(shè)計階段解決成本的4到5倍,而在運維階段修復(fù)安全問題其成本將達到甚至超出100倍.雖然在DevSecOps模式中,安全工作環(huán)節(jié)增加了,但是從軟件整個生命周期的開發(fā)與維護成本來看,提前發(fā)現(xiàn)問題會導(dǎo)致安全成本大幅降低.
2)安全與開發(fā)工作的對接
為了避免安全工作(例如:測試與評估、安全策略的部署等)成為開發(fā)瓶頸,使得應(yīng)用系統(tǒng)在最短周期內(nèi)實現(xiàn)其應(yīng)有的價值和安全屬性.DevSecOps采用快速迭代的開發(fā)方式,這就需要實現(xiàn)安全與開發(fā)工作實現(xiàn)無縫對接,將安全工作導(dǎo)入現(xiàn)有的開發(fā)工作流程和工具中,包括將安全需求導(dǎo)入至統(tǒng)一需求管理流程與工具、安全測試工作與持續(xù)集成/持續(xù)部署(CI/CD)對接、安全測試結(jié)果導(dǎo)入至缺陷管理工具等諸多環(huán)節(jié).
而MITRE提出從攻擊視角進行協(xié)同
MITRE是一家美國非營利性研究機構(gòu).他們提出,開發(fā)階段的安全目標是預(yù)防導(dǎo)致漏洞的安全問題;運營階段的安全目標是通過保護已部署系統(tǒng)的基礎(chǔ)設(shè)施、配置與使用,防止系統(tǒng)出現(xiàn)安全問題.所以,最終目標是使所有的運營軟件沒有漏洞,徹底安全.安全開發(fā)與安全運營的共通之處是都需要了解攻擊者攻擊軟件的方法,這是兩者的核心問題.盡管如此,兩個領(lǐng)域在抽象化水平和目的等具體需求上各有不同,但又相互協(xié)同.安全開發(fā)需要從理論上了解攻擊者的意圖,以全面提高安全,而并非針對單個實例.安全運營需要詳細掌握攻擊者的具體攻擊行為,以識別、了解攻擊,預(yù)估其影響,規(guī)劃緩解方案.安全開發(fā)提供的是自上而下視角,安全運營則是自下而上視角,兩者達到平衡后,每個領(lǐng)域都可以解決自己的需求,同時為另一領(lǐng)域主要關(guān)注的問題提供重要輸入.
三、但流程工具等方面仍舊是DevSecOps實踐中的難點:
雖然DevSecOps提的框架很誘人,但RSA 2017大會上,來自甲方、乙方和第三方機構(gòu)紛紛講述了實踐的難點,大致可分成三類問題.
第一類:問題是戰(zhàn)略與文化的挑戰(zhàn).對傳統(tǒng)開發(fā)模式和安全運營模式來說,DevSecOps實質(zhì)上是一種顛覆性的模式變革,其實踐的推動首先需要CIO從戰(zhàn)略高度推動.實現(xiàn)DevSecOps需要改變過去只有安全人員對安全負責的態(tài)度和觀念,必須能讓開發(fā)團隊、運維團隊和安全團隊認識到每個人都需要對安全負責.
第二類:問題是人員技能與知識結(jié)構(gòu)的調(diào)整.DevSecOps實踐需要開發(fā)人員、運維人員和安全人員通力合作,能站在對方的視角客觀看待問題.具體到開發(fā)人員而言,不僅僅需要開發(fā)技能,還需要對運維及安全有了解,對運維人員和安全人員也是一樣,需要各自擴充不同領(lǐng)域的通用技能與知識.
第三類:問題是流程與工具的對接.DevSecOps達到初始目標需要實現(xiàn)快速迭代,在開發(fā)和運營的過程上需要高度自動化.開發(fā)、運維、安全工作的工具和流程需要無縫對接.這對大多數(shù)企業(yè)而言,需要是個艱巨的挑戰(zhàn).
DevSecOps的出現(xiàn)將對應(yīng)用及IT基礎(chǔ)設(shè)施的安全管理產(chǎn)生極其深遠的意義,DevSecOps的廣泛應(yīng)用將標志著應(yīng)用及IT基礎(chǔ)設(shè)施的安全管理進入到一個全新的時代,將安全作為管理對象的一種屬性,從應(yīng)用和IT基礎(chǔ)設(shè)施開發(fā)開始進行全生命周期的安全管理,構(gòu)建一個安全屬性很高的應(yīng)用或IT基礎(chǔ)設(shè)施,而不僅僅是通過安全為應(yīng)用和IT基礎(chǔ)設(shè)施提供保障.筆者認為,DevSecOps的如果能夠廣泛應(yīng)用,將徹底改善企業(yè)和機構(gòu)在應(yīng)用和IT基礎(chǔ)設(shè)施的安全現(xiàn)狀.
不知各位運維兄弟如何看待安全在DevOps實踐中的挑戰(zhàn)和機遇呢?
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/4340.html