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