秘密管理相關的常見風險和注意事項,機密管理的最佳實踐

      秘密管理是一種允許開發人員在具有嚴格訪問控制的安全環境中安全地存儲敏感數據(例如密碼、密鑰和令牌)的做法。對于小型軟件項目,秘密管理可以很簡單地實現。但隨著團隊和軟件代碼庫的增長,應用程序生態系統中散布著更多的秘密,使它們更難管理。微服務、開發工具、容器、編排器和 API 連接都需要秘密來執行它們的功能,并且這些必須以安全的方式存儲和交付。

      秘密管理相關的常見風險和注意事項,機密管理的最佳實踐-南華中天

      將秘密硬編碼到腳本、配置或源代碼中是很常見的,這使得攻擊者可以輕松訪問它們。秘密管理解決方案可以確保敏感信息永遠不會以明文形式嵌入到任何工件中,將秘密與代碼分開保存,并通過對所有訪問嘗試實施基于特權的會話來提供審計跟蹤。

      秘密管理挑戰

      IT 生態系統越復雜,機密越多樣化、數量越多,安全存儲、傳輸和跟蹤機密的難度就越大。以下是與秘密管理相關的一些常見風險和注意事項。

      1. 手動分享和未能輪換敏感數據

      如果沒有秘密管理,使軟件系統能夠相互訪問的唯一方法是在團隊內手動共享秘密,或者將它們嵌入代碼或配置中。這導致使用弱密碼,以及跨系統重用密碼。

      此外,如果沒有秘密管理,就很難輪換秘密,因為對密碼的任何更改都需要更改代碼、配置或在不安全的通道中重新共享密碼。密碼和訪問權限在不再需要時無法輕易撤銷。

      2. 硬編碼憑證

      應用程序到應用程序和應用程序到數據庫的訪問和通信需要特權密碼等秘密來啟用身份驗證。IoT 設備和應用程序通常使用默認的硬編碼(嵌入式)憑據,黑客可以使用掃描儀、字典攻擊或猜測技術輕松破解這些憑據。尤其是 DevOps 工具,通常會將秘密嵌入到文件或腳本中,從而危及自動化過程的安全性。

      秘密管理相關的常見風險和注意事項,機密管理的最佳實踐-南華中天

      3. 缺乏意識和可見度

      在一個組織的環境中通常部署了許多特權應用程序、帳戶、工具、微服務或容器,以及它們相關的秘密,例如密鑰和密碼。一些組織擁有數百萬個 SSH 密鑰,這只是整體秘密管理負擔的一部分。

      去中心化的生態系統對于管理秘密尤其成問題,因為不同的開發人員、管理員等獨立管理秘密(如果有的話)。缺乏企業范圍的監督確保了安全漏洞和審計困難。

      4. 云計算特權

      Office 365 和 AWS 等虛擬化和云管理員控制臺使用超級用戶權限,允許用戶訪問廣泛的資源并快速啟動或關閉應用程序和虛擬機。每個 VM 實例都有需要管理的單獨秘密和特權。云環境的規模增加了管理機密的負擔。

      5. DevOps 解決方案

      機密需要跨組織的 IT 生態系統進行管理,但 DevOps 環境往往會放大機密管理的挑戰。DevOps 團隊通常使用許多不同的配置管理和編排工具,采用依賴秘密操作的自動化技術和平臺。應用最佳實踐來保護這些秘密非常重要,例如輪換憑證、限制訪問、審計等。

      6. 第三方賬戶和遠程訪問

      第三方供應商和外部用戶經常使用通過遠程訪問解決方案連接的帳戶訪問敏感資源。確保外部用戶實施正確的遠程訪問實踐和授權具有挑戰性。在這些情況下,組織依靠第三方來管理機密,從而放棄對 IT 系統安全性的一些控制。

      秘密管理相關的常見風險和注意事項,機密管理的最佳實踐-南華中天

      7. 管理機密的手動流程

      密碼和秘密安全不應該是人類的唯一責任,人類容易出錯和管理不善。手動安全流程更有可能存在漏洞和較差的秘密衛生,包括默認密碼、重復使用或共享密碼、硬編碼秘密和不復雜的密碼。人為錯誤和疏忽會暴露秘密并導致泄露。

      8. 缺乏集中的秘密管理

      另一個問題是需要集中式秘密管理。隨著 IT 系統的數量、種類和復雜性的增加,跨系統實施和管理一致的策略、了解機密在哪里以及如何使用它們變得越來越困難。這個問題被稱為“秘密蔓延”——秘密分布在不同的系統中,每個系統都有自己獨特的秘密管理策略。因為每個應用程序、云提供商或組織單位都有自己的安全模型,所以整個組織都沒有可見性。

      什么是秘密管理工具,為什么它們很重要?

      秘密管理工具可以解決這些挑戰并防止未經授權訪問敏感數據。這降低了數據泄露、數據盜竊以及未經授權操縱或更改敏感公司數據和個人身份信息(PII) 的風險。所有這些都可能給組織帶來災難性后果,包括直接財務損失、聲譽損害、法律風險和監管罰款。

      秘密管理工具允許公司維護密碼、加密密鑰、SSH 密鑰、API 密鑰、數據庫憑據、令牌和證書(包括 TLS/SSL 證書和私有證書)等數據的機密性。這些工具可以安全地存儲、傳輸和管理數字憑證。

      企業使用機密管理解決方案來集中管理整個 IT 生態系統的機密。這些工具降低了與不適當和手動秘密管理相關的風險,例如將秘密硬編碼到腳本中、使用默認密碼、手動共享密碼以及無法輪換憑據。

      秘密管理相關的常見風險和注意事項,機密管理的最佳實踐-南華中天

      秘密管理工具取代了手動秘密管理(例如,使用敏感系統的憑據維護電子表格),并為整個組織的秘密提供集中的可見性、監控和管理。這些工具最常被軟件開發人員、安全專業人員和 IT 運營團隊(DevOps 或DevSecOps)使用。

      機密管理的最佳實踐

      區分秘密和標識符

      機密是密碼、連接字符串和其他信息,一旦泄露可能會危及您的組織。它應該只與受信任的應用程序和經過身份驗證的用戶或服務共享。

      系統上的其他信息,如標識符、IP 地址、用戶名和 DNS 名稱,應謹慎共享。這些不是秘密,但不應輕易被第三方猜到,應盡可能保密。標識符對于授權服務器的所有客戶端都應該是唯一的。

      由于標識符的風險遠低于秘密,因此明確區分它們并與秘密分開管理非常重要。機密信息需要受到非常嚴格的控制,因為一旦泄露,它們會直接對應用程序和業務造成嚴重損害。

      管理權限

      在任何組織中,受信任的用戶帳戶和應用程序都可以訪問敏感數據和資源。這增加了數據被惡意內部人員或無意暴露的風險。遵循最小權限原則很重要,在該原則中,用戶或應用程序僅在執行其角色所必需時才被授予權限。當不再需要訪問時,應將其撤銷。升級權限時,例如啟用緊急維護工作,應該有充分的理由并在有限的時間內完成。應仔細監控特權會話,以改進監控和問責制。

      秘密管理相關的常見風險和注意事項,機密管理的最佳實踐-南華中天

      經常輪換秘密

      使用后應定期更改密碼和其他機密信息。如果一個秘密長期保持不變,更多的用戶和系統會獲得它的訪問權,并可能危及它。組織內外的員工可能會在不知不覺中泄露機密,也可能會被惡意代理人有意獲取。使用機密管理工具時,請確保使用其機密輪換功能并將輪換設置為足夠高的頻率。

      使用 KMS 加密數據

      確保所有敏感數據都經過加密以增加安全性。因為加密密鑰是敏感的,丟失就意味著底層數據的丟失,所以建議使用密鑰管理服務(KMS)。KMS 存儲和管理密鑰,并在數據需要加密或解密時自動提供它們。它還可以使用不同的加密密鑰加密每個數據集或資源,幫助您更精細地控制訪問。

      檢測未經授權的訪問

      即使有最好的安全實踐和工具,漏洞也不可避免地會發生。確保您有一個強大的流程來監控和識別未經授權的訪問。安全、開發和運營團隊應建立事件響應流程,以快速響應漏洞并快速修復任何受影響的系統,從而最大限度地減少對組織的損害。