譯者|布加迪
審校|孫淑娟
安全左移(shiftsecurityleft)這股熱潮使開發人員能夠及早發現并修復缺陷。當應用程序部署到生產環境后,它可以盡可能擺脫當時已知的漏洞……但安全左移只是一個開端。漏洞出現在已經部署和運行的軟件組件中。從開發環境到生產環境,組織需要一套綜合全面的方法來規避。雖然沒有通用的方法實現端到端安全性,但有幾個寶貴的策略可以幫助您實現這個目標。
全面的端到端云原生安全策略有三個“P”,有助于全面彌補安全缺口。
堅持不懈(Persistence)
以生產環境為中心(Production-centric)
確定優先級(Prioritization)
堅持不懈
新的漏洞層出不窮,隨時可能冒出來。發現漏洞所需的時間從數小時到數年不等。GitHub發現軟件包中的安全漏洞平均需要4年的時間,而開發和分發修復程序另需要14周的時間。漏洞被發現的時間跨度非常長,需要持續的掃描、監控和分析,這需要保持警惕和堅持不懈。
哪怕使用最好的漏洞掃描工具,您也應該明白:左移掃描無法檢測一切,因為它只能洞察特定時間點的安全性。即使相同的代碼現在被認為是安全的也無法保證將來不出現漏洞。在整個CI/CD生命周期中堅持掃描和檢測工作的安全團隊才有能力有效地修復威脅。
以生產環境為中心
左移可以幫助組織在開發應用程序時心系安全。但是無論應用程序離開開發環境后,您對其安全性有多大信心,都無法保證它在生產環境中依然安全。
我們經常看到,漏洞常常在部署到生產環境后暴露無遺。ApacheStruts、Heartbleed以及最近的Log4j就是幾個典型例子,后者于2013年首次發布,但直到去年才被發現。
此外,生產環境不僅包含您部署的代碼,還包括以下內容:
從外部存儲庫提取的容器鏡像。
部署軟件時,安裝的運行時Sidecar和集成工具。
沒有像您的代碼那樣經過嚴格檢查就部署的第三方應用程序,比如應用程序服務器、儀表板、代理和防火墻。
不受DevOps團隊控制且無法通過左移工具掃描的基礎架構。
確定生產環境中應用程序的上下文是保護云原生應用程序的一個重要部分。還有哪些其他組件、代碼和基礎架構與該應用程序進行交互?您需要不同的理念和額外的工具集來全面彌補安全缺口。
確定優先級
掃描生產系統中的漏洞可能會發現成百上千個易受攻擊的組件,但檢測到的漏洞不一定就與高風險威脅有關,這是由于脆弱性不等同于可利用性。
為了更好地了解漏洞帶來的風險,有必要了解漏洞在應用程序上下文中的位置。是否可以通過特定方式使用應用程序來利用漏洞?是否可以從外部攻擊面訪問易受攻擊的應用程序,或者潛在的攻擊者是否需要先獲得一定程度的內部控制權才能訪問它?
通過確定最嚴重的漏洞,您可以為修復工作確定優先級。團隊可以從成百上千個潛在漏洞中過濾掉良性問題(以及它們引發的所有警報),優先考慮極少數破壞很嚴重的漏洞,因為它們現在就對您的安全構成了最大風險。如果專注于被利用的風險,并按嚴重程度為修復工作確定優先級,連人手不足的小團隊都能有效地保護大批的云原生應用程序。
結論
綜上所述,安全左移是一種非常值得采用的做法,但光靠它還不夠。只有堅持不懈、關注生產環境以及優先考慮對貴組織真正構成風險的小部分漏洞,您才能以更大的把握管理貴組織的安全狀況。