李匯
由于許多組織最初關注的是掃描、分析應用程序代碼和基礎設施以獲取安全洞察力的機制,這結果通常是一種反模式,其中復雜的重疊和松散集成的工具跨越開發和生產,實際上阻礙了團隊解決開發過程中的安全問題。由于傳統的安全工具是為靜態環境構建的,考慮到云原生應用程序開發的動態和快速發展的性質,它們的效率通常不太高。
盡管云原生架構使組織能夠構建和運行可擴展的動態應用程序,但它并非沒有挑戰。根據云安全聯盟(CSA)的說法,70 %的安全專業人員和工程團隊都在努力“左移”,其中許多人無法識別反模式的形成,也無法理解云原生的開發、成本、治理和文化理念等。
正如在CNCF年度報告中所討論的,55 %的受訪者每周或更頻繁地發布代碼,18 %每天多次發布代碼。微服務的持續采用和實施越來越多地挑戰組織(包括遺留應用程序安全工具)在整個開發過程中跟蹤軟件漏洞。實施DevSecOps的實踐和自動化安全工具將更早地發現安全風險,幫助節省開發人員時間,加快發布周期,并交付更安全和合規的代碼。
此外,安全事件(例如數據泄露、零日漏洞和隱私侵犯)對業務的影響只會繼續增長,這使得組織有必要確保安全性,使之成為數字化轉型和云原生應用程序開發的關鍵。無論是Solar Winds、Zoom還是受數據泄露影響的眾多其他公司,風險都很高,后果從失去客戶到破產不等。在美國,數據泄露平均給企業造成905萬美元的損失,Log4j零日漏洞正在影響數億個應用程序和設備,數據隱私法規導致罰款8.88億美元,組織不能再忽視云原生開發引入的、不斷發展的威脅動態。
開發人員知道如何構建應用程序,但需要正確的工具、洞察力、流程和文化來安全地構建它們。確保團隊承擔安全開發是實施DevSecOps最具挑戰性和最關鍵的部分之一。根據SANS 2022 DevSecOps的調查:創建一種文化以顯著改善組織的安全態勢,管理層支持是促成DevSecOps安全計劃成功的首要因素。組織需要一種結構化的方法,讓領導者參與進來、動員安全擁護者,并確保安全成為“完成”不可或缺的一部分。

此外,通過確保工程、安全和運營之間的一致性,鼓勵開發人員提高技能,并專注于學習和實施有助于提高Web應用程序安全性的技術。更重要的是,使團隊能夠更早地轉移安全性進入設計和編碼階段。例如,OWASP云原生應用安全Top10提供有關云原生應用程序最突出的安全風險、所涉及的挑戰以及如何克服這些風險的信息。OWASP Top10鼓勵將安全性集成到CI/CD管道、參數化查詢、驗證所有輸入、實施錯誤處理、改進日志記錄策略、利用安全框架的優勢、保護靜態數據和加密、減少敏感數據暴露等準則,實施安全訪問控制等。
由于許多原因(速度和靈活性),尤其是軟件開發的發展已經遠遠超出單個開發人員從頭開始編寫代碼的貢獻。雖然從現有庫中組裝應用程序并使用自定義代碼將它們連接在一起的做法很常見,但這并非完全沒有風險,風險來自以下因素:
全球95 %以上的IT組織在任務關鍵型IT工作負載中使用開源軟件(OSS);
2021年,軟件供應鏈攻擊增長了300 %以上;
每年在開源和第三方代碼中發現超過20 000個常見漏洞和暴露(CVE)。
越來越多地使用開源軟件,軟件開發速度超過安全性的領域。出于這個原因,工程團隊應該評估正在運行的應用程序工具,以便為開發人員提供相關的應用程序感知信息。這可能包括使用信息、堆棧跟蹤以及涵蓋應用程序代碼、依賴項、容器鏡像和Web界面的全面見解。跨應用程序組件的漏洞和不安全代碼的識別和關聯,可以幫助開發人員發現、確定優先級和補救最關鍵的安全風險。
當大多數工程團隊考慮采用DevSecOps時,跨開發、運營無縫集成和自動化安全性的能力是必備功能。然而,許多傳統的安全工具通過耗時的“門”或檢查點提供反饋,給開發人員帶來了額外開銷和阻礙。擺脫這種模式代表了安全團隊的重大轉變。
然而,通過直接集成到現有CI/CD工作流和工具鏈中的技術,是在開發和測試期間“自動”觀察正在運行的應用程序,以提供安全洞察力,而不需要工程團隊浪費寶貴的資源和開發時間。