現代雲端環境中,短暫性管理已成為提升資安的關鍵策略。它著重於減少永續性存取,並透過動態機制降低風險。文章將探討短暫性管理在秘密、帳戶、例項和許可權管理上的應用,並介紹混沌工程如何強化系統韌性。藉由動態產生秘密、實施即時帳戶管理、定期更新例項以及依需求調整許可權,能有效限制攻擊面並提升系統安全性。此外,混沌工程的匯入能幫助預先識別系統弱點,提升應對突發事件的能力,進一步強化雲端環境的可靠性。
雲端架構中的短暫性管理:強化資安的關鍵
在現代雲端運算環境中,短暫性(Ephemerality)已成為強化資安的重要策略之一。短暫性管理的核心概念是盡量減少永續性存取(Persistent Access),並透過動態管理機制降低資安風險。本章將探討短暫性管理在秘密管理、帳戶管理、例項管理和許可權管理等方面的應用。
短暫性秘密管理
傳統的秘密(Secrets)管理方式往往導致機密資訊長時間暴露,從而增加被竊取的風險。短暫性秘密管理的核心是縮短秘密的生命週期:
- 每次使用後重新產生新的秘密,以限制其暴露時間
- 維護秘密歷史記錄,以備份還原資產時能夠還原存取許可權
這類別動態秘密管理機制能夠顯著降低憑證洩露帶來的風險。
短暫性帳戶管理
帳戶管理是資安的另一個重要環節。如果秘密可以是短暫的,那麼帳戶是否也能實作短暫性?答案是肯定的,這種做法通常被稱為「即時」(Just-In-Time, JIT)帳戶管理。主要技術包括:
- 帳戶僅在需要時建立,使用後即刪除
- 帳戶平時保持停用狀態,需要時臨時啟用,使用完後立即停用
- 帳戶根據需要動態加入或移除特定許可權群組
- 使用特權存取管理(PAM)方案在端點上根據策略動態提升許可權
當帳戶和秘密都實作短暫性時,能夠大幅提高存取請求的可信度。然而,這種流程必須受到嚴格監控,並實施變更控制流程以記錄帳戶使用情況。
短暫性例項管理
雲端運算的一大優勢是可以快速建立和銷毀資產,這為資安帶來新的機會。如果例項能夠頻繁重新整理、重新命名、更換秘密並修補漏洞,攻擊者維持永續性的難度將大大增加。這種做法能夠有效阻礙橫向移動(Lateral Movement),因為攻擊者需要在每次環境變化後重新建立橋頭堡。
然而,這種方法的最大風險在於,如果攻擊者已經滲透了範本、原始碼函式庫或DevOps管道,那麼每次佈署新例項時都會引入攻擊者的永續性存在。這類別供應鏈攻擊(如SolarWinds和Kaseya事件)對開發軟體的組織來說是需要高度警惕的風險。
短暫性許可權管理
使用短暫性技術管理許可權與即時帳戶管理的理念相似,主要目標是消除永續性特權存取。具體實施方法包括:
- 應用程式以低許可權執行,需要時根據策略提升許可權
- 在執行前修改應用程式,使其包含一次性特權令牌
- 根據任務需求動態新增或移除特定許可權
內容解密:
- 應用程式許可權提升技術:常見的方法包括使用
RunAs或Sudo指令來臨時提升許可權,或者採用廠商專有的特權提升技術。# 使用sudo臨時提升許可權執行指令 sudo <command> - 一次性特權令牌:某些廠商的專利技術允許在應用程式執行前嵌入一次性特權令牌,使其在核心層級獲得更高許可權。
- 動態許可權調整:透過與應用程式或作業系統整合,根據任務需求動態調整帳戶許可權。
綜上所述,結合短暫性帳戶管理和即時存取模型,可以建立最佳的雲端身份驗證策略。進一步搭配多因素驗證(MFA),即使流程被破壞,也能透過多層次的安全控制來降低威脅。只有在組態錯誤、漏洞利用和弱安全設定的情況下,攻擊者才有可能找到入侵入口。透過這些措施,可以大幅減少根據身份和特權的攻擊。
群體智慧在雲端安全中的應用
在自然界中,蜜蜂、螞蟻等昆蟲尋找食物和保護其群落免受攻擊的過程,涉及複雜的點對點通訊,且無需中央集權的指揮控制。這些昆蟲使用多種通訊方法,從聽覺訊號到化學物質,來傳遞訊息給同伴,以傳播有關某種情況的資訊。一旦訊息被傳遞並得到其他個體的確認(以某種形式),就會形成一個分散式的任務來處理該情況。
根據群體中僅一個個體的反應以及訊息在點對點模式下的傳遞,整個環境可以做出反應,而無需中央長官者處理資料並下達命令。對於大多數習慣於層級式權威結構的人來說,這是一個陌生的概念。然而,這種群體智慧的概念對於理解現代網路安全的新方法至關重要。
過去幾年中,全球範圍內掀起了廣泛的數位轉型熱潮,遷移和佈署到雲端是推動這波浪潮的引擎。這種演變導致了網際網路和雲端裝置的爆炸式增長。這些物聯網裝置的使用場景從個人數位助理到家用電器無所不包。
1989年,Gerardo Beni 和 Jing Wang 首次提出了「群體智慧」一詞,將基本的人工智慧模型應用於自組織和分散式系統。2019年,格拉斯哥卡利多尼安大學和巴基斯坦COMSATS大學的研究人員開發了一種創新模型,可能能夠保護網際網路和雲端資源免受網路攻擊。這種攻擊方法在IEEE的中國新興技術會議上提出,源自人工蜂群(ABC)和隨機神經網路(RNN)。
人工蜂群與隨機神經網路演算法
圖10-1展示了該演算法的基本原理。這種演算法是一種群體智慧模型,利用AI模擬蜜蜂的搜尋行為,並將這些概念應用於解決現實世界的計算問題。為了使該模型運作,RNN被應用於ABC模型,使用根據人類大腦生物神經網路行為的機器學習。
研究人員在其論文中寫道:「本文提出了一種根據異常的入侵檢測方案,可以保護敏感資訊並檢測新型網路攻擊。人工蜂群(ABC)演算法用於訓練根據隨機神經網路(RNN)的系統(RNN-ABC)。」
內容解密:
- 人工蜂群(ABC)演算法是一種模擬蜜蜂搜尋行為的最佳化技術,用於解決複雜的計算問題。
- 隨機神經網路(RNN)是一種模仿人類大腦神經網路行為的機器學習模型,用於處理複雜的資料模式。
- 將ABC演算法與RNN結合,可以提高入侵檢測系統的準確性和效率。
研究人員使用一個包含大量網際網路流量資料的資料集來訓練其入侵檢測模型,並進行了一系列評估,以衡量其在識別和量化網路攻擊方面的效能。研究結果表明,該模型能夠以91.65%的準確率分類別新的攻擊。此外,研究人員還得出結論,當ABC群體智慧的「群落」規模越大時,該模型在分類別網路攻擊方面的準確性越高。因此,參與模型的「人工蜜蜂」越多,整體解決方案的可信度就越高。
群體智慧在物聯網安全中的潛在應用
目前,物聯網裝置正在迅速普及,並連線到網際網路和雲端。我們是否可以實際使用這些物聯網裝置作為群體的一部分來識別潛在威脅並最終降低風險?首先,也是最重要的,群體智慧需要大量的群落規模,以使裝置能夠通訊資訊並處理相關資料,而不僅僅是網路流量。隨著具有簡單行為模型的物聯網裝置的日益普及,這是可能的。其次,我們需要一種網狀式的網際網路協定,以允許裝置之間進行可靠的通訊,並向ABC-RNN模型提供資訊。然而,在撰寫本文時,這種大規模的點對點協定尚不存在。第三,ABC和RNN模型需要規則、策略和輸出,可以將任何發現分類別為人類可讀的結果。
內容解密:
- 網狀式的網際網路協定是一種允許裝置之間直接通訊的網路拓撲結構,可以提高通訊的可靠性和效率。
- TAXII(Trusted Automated Exchange of Intelligence Information)是一種旨在促進威脅情報交換的標準,但它在支援大規模點對點通訊方面仍有不足。
混沌工程:提升雲端系統的韌性與信心
混沌工程是一種在資源上進行實驗的概念,目的是為了建立對資源在營運期間面對不可預測情況的容忍能力的信心。這有點像是一個更複雜的版本,讓一隻猴子把扳手扔進一台複雜的機器中,看看會發生什麼。事實上,將混沌工程概念普及化的Netflix,就將他們的混沌工具命名為「Chaos Monkey」。
混沌工程的重要性
隨著雲端運算、數位轉型以及對軟體的依賴程度日益增加,我們的生活已經發生了翻天覆地的變化。企業在短短十年內開發了數百萬行程式碼,這引發了對生產環境中解決方案的韌性與安全性的質疑。
目前,佈署在雲端的應用程式數量驚人。這些應用程式由成千上萬家不同的供應商、開源社群以及不同地區開發。我們如何確保這些應用程式和系統在其他安全、擴充套件性和環境問題變得不可預測時仍能正常運作?畢竟,誰也不知道下一個攻擊向量或導致停機的原因是什麼。
混沌工程的實踐
混沌工程允許在受控環境中測試雲端資源,模擬真實情況,包括攻擊、停機和其他形式的破壞(混沌)。結果表明了當可預測的雲端資源控制被破壞並引入風險和混沌時,真正會發生什麼,以及會發生什麼。這與一般由品質保證進行的受控測試有著本質上的不同。
混沌工程實驗的五個步驟
- 定義正常運作:確定環境中某些可衡量的輸出,表明正常和預期的行為。這將是您的對照組,而不是您的混沌工程測試組。
- 假設正常運作將繼續:在對照組和混沌實驗組中,假設正常運作將繼續。這是您對將要發生的事情的最佳猜測。
- 設計實驗:設計實驗,包括單個測試、組合測試,以及手動和自動化步驟的混合。這將幫助您在真實世界中發生問題時制定解決方案。
- 引入混沌:引入攻擊、變更、停機、硬體故障、虛擬機器(VM)和例項故障等,反映真實世界的事件,以在雲端進行測量。收集結果。
- 記錄和分析結果:記錄系統的效能和預期可用性,並比較對照組與混沌工程測試組的結果。這將幫助您設計補救措施並應用解決方案,以避免任何未來的不良結果。
混沌工程的最佳實踐
- 模擬正常運作行為:關注系統的可衡量輸出,例如串流媒體影片。同時,也要包括內部指標,如延遲、錯誤率等。
圖示說明:此圖示展示了混沌工程實驗的五個步驟,從定義正常運作到記錄和分析結果。
混沌工程與冒牌者症候群:雲端安全的兩大挑戰
在雲端運算的世界中,企業面臨著日益複雜的安全挑戰。混沌工程(Chaos Engineering)是一種透過模擬真實世界中的故障和攻擊來測試系統韌性和可靠性的技術。與此同時,許多網路安全專業人士卻在內心掙扎於「冒牌者症候群」(Imposter Syndrome),懷疑自己的能力和成就。
混沌工程:揭露系統的隱患
混沌工程是一種有系統的方法,用於測試分散式系統的韌性和可靠性。其核心理念包括:
- 定義穩態:建立系統正常運作的基準,包括CPU使用率、錯誤率、網路延遲等指標。
- 模擬真實問題:設計實驗來模擬真實世界中的故障和攻擊,如例項故障、虛擬機器當機、軟體故障、網路中斷等。
- 在生產環境中進行實驗:在實際生產環境中執行混沌工程實驗,以驗證系統在真實條件下的表現。
- 自動化實驗:自動執行混沌工程實驗,並結合多種測試來評估系統在不同場景下的反應。
- 控制混沌:限制實驗的範圍和時間,並設計完善的容錯移轉機制,以避免對使用者造成影響。
混沌工程的實踐
import random
def simulate_instance_failure(instances):
# 模擬例項故障
failed_instance = random.choice(instances)
print(f"Instance {failed_instance} has failed.")
# 進一步處理故障例項的邏輯
# 使用範例
instances = ["instance1", "instance2", "instance3"]
simulate_instance_failure(instances)
內容解密:
simulate_instance_failure函式接受一個例項列表作為引數。- 使用
random.choice隨機選擇一個例項來模擬故障。 - 函式輸出被選中的故障例項名稱,並可進一步擴充套件以處理故障例項的後續邏輯。
冒牌者症候群:網路安全專業人士的心理挑戰
冒牌者症候群是一種心理現象,個體懷疑自己的能力和成就,害怕被揭露為「騙子」。在網路安全領域,這種現象尤其普遍,因為該領域知識更新迅速,且沒有統一的認證標準。
克服冒牌者症候群
- 自我認知:認識到自己的能力和經驗,避免過度自責。
- 持續學習:不斷更新知識和技能,保持在業界的前沿。
- 建立支援網路:與同行交流,分享經驗,獲得支援。
選擇雲端服務供應商
數位轉型不僅僅是將資產和資源遷移到雲端以實作更靈活的消費。選擇雲端服務供應商就像選擇結婚物件一樣,兩者都希望能長久地合作下去,而非只是短暫的合作。在選擇雲端服務供應商時,成功的關鍵在於瞭解自己的業務需求。
在開始尋找雲端服務供應商之前,與團隊討論並記錄業務需求、服務水準協定(SLA)以及最低期望是非常重要的。如果只是接受供應商提供的標準功能和服務,可能會導致成功標準的落差。如果風險、角色和責任沒有在前期被充分理解,這可能會對業務造成毀滅性的影響。因此,在評估潛在的雲端服務供應商時,建立一個可比較的檢查清單是非常重要的,這個清單可以用來比較不同供應商的服務是否符合你的業務需求。
選擇雲端服務供應商時需要考慮的特徵
- 認證和標準:符合行業品質和安全標準的雲端服務供應商,證明他們遵循最新的最佳實踐。至少,你所選擇的供應商應該具備與你組織內部相似的認證和標準,否則供應商可能會成為你的負擔。
- 技術和戰略路線圖:雲端服務供應商的技術堆積疊應該與你的戰略方向一致。例如,如果他們選擇了關聯式資料函式庫服務(RDS)作為主要的資料儲存,而你的應用程式使用的是其他資料函式庫,你需要確認他們能夠提供你所需的支援和服務。同樣地,這也適用於虛擬機器中使用的作業系統,以及你將要開發的任何協調和自動化工具。與供應商討論戰略路線圖,可以幫助你瞭解他們目前能夠提供什麼,以及未來計畫提供什麼。
- 資料安全、資料隱私、資料保護和資料治理:資料管理通常被視為雲端最大的風險之一。雖然安全、隱私、保護和治理都是不同的概念,但它們都與資料的健康息息相關。在審查過程中,瞭解雲端服務供應商如何管理資料以及他們使用什麼安全控制措施來確保資料完整性是非常重要的。這包括未授權存取偵測、加密、資料遺失防護、惡意軟體緩解(包括勒索軟體)等。與認證類別似,雲端服務供應商應該具備與你組織內部相同或更嚴格的控制措施。
- 營運依賴性:當授權使用某項服務時,我們經常會忽略提供該服務的人員和技術。這包括供應商、承包商和其他被納入其服務中的授權解決方案。如果你的業務對員工國籍、敏感資訊外包以及出口限制有嚴格的要求,請將任何服務和營運依賴性納入你的選擇標準。
- 技術和商業夥伴關係:雲端服務供應商就像CISO一樣,他們傾向於成群結隊地運作。供應商傾向於建立技術和商業關係,以使自己與其他供應商區別開來。換句話說,一個供應商可能與某個廠商合作,而其競爭對手則與另一個廠商合作。在極少數情況下,第三方廠商會與所有供應商合作並提供服務。在選擇雲端服務供應商時,請考慮他們在所有主要領域(如IAM、IGA、PAM、VM、PM和SIEM)中與哪些廠商建立了基礎技術合作,或者這些堆積疊是否僅為其原生服務。
- 合約條款和定價:大多數雲端服務供應商更傾向於使用自己的合約範本來進行客戶的入職和服務。這本身並沒有問題,但你必須讓你的法律團隊審查合約的所有條款,以確保它們符合你的業務需求。如果不符合,不要害怕提出修改並將修改後的版本送回給供應商。通常簡單的修改是可以被接受的。另一方面,如果不提出問題,你可能會被繫結在不符合你業務或客戶需求的服務和報告上(特別是在安全性方面)。
- 服務水準協定(SLA):雲端服務供應商在其市場宣傳材料和合約中會宣告多種SLA。事實是,除非有相應的信用或處罰,否則這些SLA實際上毫無意義。SLA本身變成了沒有任何責任感的指標或目標。因此,在審查任何宣告的SLA時,請確保有相應的不符合規定的執行措施,並且所宣告的值是你願意向客戶提供的最低標準。例如,如果雲端服務供應商聲稱99.9%的可用性,你就不能向自己的客戶承諾更高的可用性。不幸的是,這是業界常見的一種把戲,當你依賴雲端提供服務時。
- 可靠性和效能:所有的雲端服務供應商都有所不同。有些具有更好的基礎設施,可以實作自動擴充套件、爆發和適應效能需求。其他的則專注於為虛擬機器、混合環境和內部佈署的工作負載遷移提供服務。只有少數能夠同時做好兩者,並能在不同的地理位置提供可靠性和效能。例如,我是否能夠根據需要擴充套件我的應用程式?供應商是否能夠在不同地理區域提供一致的效能?
總之,選擇合適的雲端服務供應商需要仔細評估多個因素,包括認證和標準、技術和戰略路線圖、資料安全和管理能力等。透過建立檢查清單並仔細比較不同供應商的能力,你可以做出明智的選擇,從而降低風險並提高業務成功率。
圖表說明
@startuml
skinparam backgroundColor #FEFEFE
skinparam componentStyle rectangle
title 雲端架構短暫性管理強化資安策略
package "安全架構" {
package "網路安全" {
component [防火牆] as firewall
component [WAF] as waf
component [DDoS 防護] as ddos
}
package "身份認證" {
component [OAuth 2.0] as oauth
component [JWT Token] as jwt
component [MFA] as mfa
}
package "資料安全" {
component [加密傳輸 TLS] as tls
component [資料加密] as encrypt
component [金鑰管理] as kms
}
package "監控審計" {
component [日誌收集] as log
component [威脅偵測] as threat
component [合規審計] as audit
}
}
firewall --> waf : 過濾流量
waf --> oauth : 驗證身份
oauth --> jwt : 簽發憑證
jwt --> tls : 加密傳輸
tls --> encrypt : 資料保護
log --> threat : 異常分析
threat --> audit : 報告生成
@enduml
圖表內容解密
此圖示呈現了評估與選擇合適雲端服務供應商(CSP)的流程。首先從評估開始,然後逐步檢查各項關鍵因素,包括認證與標準、技術與戰略路線圖等,最終根據檢查清單比較結果選擇最合適的CSP,從而降低風險並提高成功率。
雲端服務供應商的選擇與安全考量
在選擇雲端服務供應商(Cloud Service Provider, CSP)時,企業必須考慮多項關鍵因素,以確保所選供應商能夠滿足其業務需求和安全要求。以下是選擇雲端服務供應商時需要考慮的幾個重要方面:
1. 效能與可靠性
雲端服務的效能和可靠性是企業在選擇供應商時的首要考量。企業需要了解其所選擇的雲端服務在不同地區(如歐洲、亞洲和北美)的表現是否一致。深入瞭解業務需求和營運模式有助於建立適合的可靠性和效能模型。
2. 備份、復原、高用性和災難復原
為了達到理想的服務水準協定(Service Level Agreement, SLA),雲端服務供應商必須提供強壯的平台以減少因各種故障導致的中斷。企業應詢問供應商關於備份、復原、高用性和災難復原的相關服務,以及在不同事件發生時的平均復原時間。從意外刪除到安全漏洞,各種情況下的復原能力都是至關重要的。
3. 技術黏著性(供應商鎖定)
每個雲端服務供應商都有一個未公開的目標,即讓其服務和平台具有「黏著性」。這意味著供應商會提供特定的技術堆積疊和實施方案,使得客戶很難轉換到其他供應商。例如,如果企業選擇Azure作為雲端服務供應商並使用Microsoft Fabric技術開發應用程式,那麼將該應用程式遷移到其他供應商的平台上將會非常困難。因此,在選擇雲端服務供應商時,企業需要考慮其解決方案在該平台上的黏著度,以及未來遷移到其他雲端平台的成本和難度。
4. 業務可行性
如果所選擇的雲端服務供應商停止營運,企業的業務將受到嚴重影響。對於那些依賴二線或三線供應商的專門服務的企業來說,這是一個真實存在的風險。因此,企業應要求供應商提供獨立稽核報告或業務可行性證明,以確保他們能夠持續提供服務。同時,制定應對供應商違約的應急計劃也是非常重要的。
5. 公司與文化比對度
企業與雲端服務供應商之間的文化比對度和團隊合作對於業務關係的成功至關重要。企業可以考慮進行試用期,讓雙方團隊成員能夠見面並共同工作,以驗證團隊之間的溝通和合作是否順暢。