敏捷和靈活是現代雲原生技術的標志,它可以處理從構建到生產的複雜數字化轉型計劃。隨著市場變化和疫情常態化,優化軟件開發生命周期(SDLC)已逐漸成為公司密切關注的焦點,特別是管理 CI/CD 流水線和 SDLC 後期生產階段的安全風險。
借助合適的雲技術,開發團隊能够與 DevOps 及安全運營團隊一起安全地構建和測試應用程序的代碼,並最終實現更高效運行,同時减少生產過程中的安全問題。
安全已成為市場差异化標志
2020年,在已知漏洞中,90%涉及到Web 應用程序,這是黑客攻擊的主要目標。而消費者則是最直接受害者,因為他們的個人身份信息(PII)正在被曝光並在暗網上出售。將安全代碼更快地投入生產環境意味著更少的安全漏洞。同時用戶隱私和安全對消費者來說十分重要,而企業以因提供更安全的服務給消費者能够獲得更多青睞和收入。
惡意攻擊者在對漏洞進行攻擊時也在調整策略、技術和程序,其攻擊速度比以往任何時候都要快,因此在沒有 DevSecOps 技術以及 DevOps 流程和團隊的情况下開發軟件並不可取。而構建强大的 DevOps 基礎,需要對團隊成員、工具和組織架構投入精力和金錢。
CI/CD 流水線中的安全左移
CI/CD 流水線是開發人員的必經之路。任何步驟的故障都會觸發向對應開發人員發送的通知。
以下是 CI/CD 流水線中的三個基本階段:
構建階段
在這個階段,代碼從源代碼中獲取並與其依賴項相結合。隨後對代碼進行編譯以在生產服務器上部署最終的應用程序。容器鏡像和 IaC 模板在本地進行掃描,或作為 CI/CD 工作流的一部分進行掃描。隨後執行自動化測試來驗證代碼的真實性和質量。
部署階段
鏡像倉庫會受到持續監控,以確保應用程序鏡像在部署之前是安全的,同時具有防護策略來阻止不安全部署。一旦源代碼通過了所有測試,就會部署到各種環境中,如生產環境。
運行階段
通過環境警報和風險優先級與通知工具的集成,以此來監控生產環境中的風險。CI/CD 流水線加了嚴格的法規來保護個人身份信息。
在 DevOps 中使用 CI/CD 流水線讓開發人員無需破壞代碼就能够輕松識別缺陷和軟件/應用程序質量問題。當“安全左移”概念被加入到 SLDC 時,CI/CD 流水線可以得到進一步强化。安全防護左移將 DevSecOps 原則和工具自動化作為動態集成應用,以在構建-測試-運行周期中强化安全。
安全左移嵌入 CI/CD 流水線的優勢
當安全左移嵌入到 CI/CD 流水線中時,企業可獲得以下四個優勢:
1. 提高應用程序的安全狀况
合適的雲平臺可以掃描容器鏡像,並在 IaC 模板中幫助識別 SDLC 中的漏洞或錯誤配置。尋找能够為安全運營團隊提供左移掃描結果的雲安全功能,並深入了解生產環境,如果潜在的攻擊路徑與現有風險相結合,這些功能幫助DevOps 和開發團隊高效解决問題。
2. 在 SDLC 早期預防安全風險
在相比之下,早期的代碼問題更容易修複,且修複成本更低。而當代碼進入生產環境並出現問題時,修複成本極高。
3. 更早地將應用程序部署到生產環境
安全不再是開發結束後才進行的工作。將安全更早地集成到 CI/CD 流水線中,能够避免在生產環境出現相關問題無法快速解决,而導致應用程序無法按時在生產環境中部署的情况。
4. 優化團隊協作,加强安全管理
通過將安全集成到 CI/CD 流水線中,並使開發人員和 DevOps 能够在使用與安全團隊相同的平臺的同時,能够自行進行掃描流程,團隊能够很好地協作,各部門從開發到運行時能够主動管理安全風險。
通過安全左移强化多部門協作
協作對於安全和開發團隊至關重要。安全運營中心 (SOC) 團隊可能需要接受雲技術相關培訓,而雲團隊則需要了解企業如何執行風險管理。
了解團隊的角色和職責以及各團隊履行的安全責任,對於管理安全風險至關重要。安全團隊可以引導開發和 DevOps 團隊如何充分執行威脅建模演習,同時在安全事件期間提供充分支持。安全團隊也可以操作底層平臺或庫,為雲工程團隊提供支持(如 IAC 掃描功能、用於身份驗證和監控的共享庫)以及對工作負載結構進行支持(如安全服務網格)。
隨著技術的發展,安全管理人員比以往任何時候都有更多的選擇,通過專門構建的 SDLC 功能來推進雲安全,而這些功能提供了從開發到運行時的環境可視性。這可以將跨職能團隊聚集在一起,以統一工作流程和管理安全風險。