八種常見的雲配置錯誤類型及緩解方案
雲配置錯誤(Cloud misconfiguration)指的是雲環境中可能會對有價值的資訊和資產構成風險的任何錯誤、故障或缺口。當組織沒有正確配置基於雲的系統時,就會發生這種情況,造成網路暴露、安全性漏洞、內部威脅或外部駭客攻擊。
這些雲配置錯誤會導致組織未加密或敏感的資料暴露在公共互聯網上,造成大規模的資料洩露和宕機情況,進而可能導致組織或政府實體面臨無可挽回的聲譽和財務損失。
本文將探討雲配置錯誤的影響、最常見的類型,以及可以採取的緩解措施,以最大限度地保護雲環境安全。
雲配置錯誤對系統安全的影響
雲環境中的錯誤配置可以使攻擊者未經授權地訪問系統功能和敏感性資料。例如,資料庫伺服器的錯誤配置可能使資料通過基本的web搜索訪問,這可能會導致重大的資料洩露。雲配置錯誤甚至可能導致系統安全的完全破壞和其他嚴重後果。雖然,特定配置錯誤的業務影響取決於錯誤配置的嚴重程度,但由此導致的資料洩露可能會使組織損失數百萬美元。
常見的雲配置錯誤類型
1. 過於寬鬆的存取控制
當啟用了太多的雲存取權限時,就會出現雲環境過於寬鬆的情況。這可能包括:
· 在雲主機上啟用遺留協定;
· 暴露面向外部的埠;
· 在缺乏適當控制措施的情況下暴露敏感的API;
· 啟用私有和公共資源之間的通信模式;
在配置應用程式時,對訪問控制項的過多許可權可能會為攻擊者提供在系統內部垂直或橫向移動的路徑,並增加暴露的攻擊面。
2. 存儲訪問配置錯誤
雲錯誤配置的另一個例子是將存儲資產暴露給外部參與者。很多時候,組織會混淆“認證”用戶和“授權”使用者,從而錯誤地授予“認證”用戶存取權限。這些經過身份驗證的“認證”用戶可以是任何具有有效憑證的用戶端或用戶,因為他們通過AWS進行了身份驗證,但卻並未得到您的組織或應用程式“授權”。一個簡單的例子是允許所有AWS使用者(而不是應用程式的所有授權使用者)訪問S3桶。
組織應該只在組織內部授予對存儲桶的存取權限。由於這種雲配置錯誤的結果,網路犯罪分子可能會訪問存儲,並在積極掃描AWS S3存儲桶和公共GitHub存儲庫時找到關鍵資訊,如API金鑰、密碼和其他憑證。因此,組織在設置存儲配置時應該格外謹慎,以確保雲存儲不被破壞或暴露。安全團隊也應該預設為存儲桶中的關鍵資料啟用增強式加密,監視所有標記為公共的存儲節點,並消除不必要的許可權。
3. 無限制的入站和出站埠
所有對互聯網開放的入站埠都存在潛在的安全風險。當遷移至多雲(multi-cloud)基礎設施時,安全團隊應該瞭解開放埠的全部範圍,並將它們限制在基本系統中,鎖定那些並非十分必要的系統。
當然,不僅入站埠會帶來安全問題,當系統受到威脅時,出站埠也會通過資料滲漏、橫向移動和內部網路掃描產生漏洞。通過各種模式(如RDP或SSH)從公共網路甚至從您的VPN之外的網路授予對伺服器的訪問權,是一種常見的雲錯誤配置,它會使您面臨資料洩露的風險。應用程式伺服器應該將出站流量限制為“只對基本應用程式和伺服器有效”。使用最小特權原則,並限制通過SSH對出站埠的訪問,因為應用程式伺服器很少需要通過SSH與網路中的其他遠端伺服器通信。
4. 無限制地訪問非HTTP/HTTPS埠
識別和檢查所有開放埠非常重要,因為系統操作依賴於這些潛在的、易受攻擊的開放埠。組織應該開啟那些絕對需要的埠,並遮罩那些並不必要的埠。如果這些埠配置不當,攻擊者就很容易利用或強行使用身份驗證。如果這些埠需要對互聯網開放,請確保通信是加密的,並且流量只限制在特定的位址。
5. 禁用或未配置監控和日誌記錄
即使是完善的組織有時也會缺乏嚴格且強大的監控和日誌記錄機制。對雲平臺上的活動進行日誌記錄和定期監控至關重要。
這些日誌可以用於:
· 識別可疑行為和安全盲點;
· 注意到員工未經授權的行為;
· 定期報告;
· 確認任何其他錯誤或配置錯誤;
但是,只有在為了採取適當的操作而持續監視日誌時,日誌才會發揮作用。因此,請確保您對每個可能導致安全性漏洞的活動都有足夠的日誌記錄和監控。此外,基於這些日誌實現自動化和有針對性的警報,以便在任何可疑活動導致破壞之前識別和處理它。
6. 系統的預設憑據
許多開發團隊會為身份驗證創建默認憑據,以簡化開發過程。例如,許多團隊對於雲實例、資料庫和其他服務都有一些預設憑據。這些默認憑據通常很容易被猜出和/或被太多人知道。因此,這些憑據或配置絕對不應該在生產環境中使用。
組織應該根據開發環境擁有不同的設定檔。實現一個防止默認憑據傳播到生產環境的過程是關鍵,審計每個版本以確保該過程正在有效運行也是關鍵。
7. 生產環境中的開發設置
另一個常見的配置錯誤是在生產環境中使用開發設置。在大多數情況下,適合於開發環境的設置和配置並不適合於生產環境,原因有很多。例如,允許從任何伺服器以任何速率傳入請求在開發中似乎並沒問題,但在生產環境中卻可能會導致重大問題。這還包括應用程式中的隱藏代碼。例如,在控制台中列印敏感的調試資訊可能很容易被忽略,但在生產環境中卻會導致嚴重的安全性漏洞。因此,在部署到生產環境之前,組織需要仔細檢查這些代碼設置並正確設置它們。
8. 不遵循協力廠商元件的“安全”配置
在整個開發過程中,我們會使用各種協力廠商庫、元件和應用程式。雖然在為各種元件選擇供應商時,進行全面的分析是至關重要的,但確保遵循協力廠商規定的最佳實踐和配置也同樣重要。
大多數軟體供應商——無論是商業的還是開源的——都將規定最佳實踐或推薦的安全實施標準,這些配置通常都已在其端進行過安全測試。正確地實現這些最佳實踐不僅可以降低安全性漏洞的風險,而且在漏洞確實發生的情況下也能增加這些供應商的責任。
結語
配置錯誤是雲環境中安全性漏洞的最常見原因之一。即使您在開發過程中遵循了所有的最佳實踐,一個簡單的配置錯誤——如果忽略了——也可能危及整個系統的安全性。雖然採取必要的預防措施來防止這種情況發生是至關重要的,但創建一個100%安全的系統是非常困難的。儘管如此,通過識別並消除本文所述的雲安全性漏洞,將有助於最大限度地降低安全風險。
與所有的網路風險一樣,雲安全工作應該圍繞優先處理和減輕與您業務最相關的威脅,將您的資源用於最需要的地方,並開展團隊合作,以有效降低真正的網路風險。