如何加固基于云端憑據(jù)的身份認(rèn)證
譯文 ???
【51CTO.com快譯】如今,云服務(wù)已是無處不在了。從商業(yè)角度來看,任何希望得到快速發(fā)展的公司,都會選擇通過其首選的云服務(wù)提供商,來獲取計算、網(wǎng)絡(luò)和存儲資源,以加持他們的產(chǎn)品。不可否認(rèn),云服務(wù)正在以指數(shù)級的速度簡化著他們的開發(fā)和自動化過程。而人工智能(AI)和物聯(lián)網(wǎng)(IoT)等新興技術(shù),也在助推著這些過程的轉(zhuǎn)化。
然而,應(yīng)用架構(gòu)在得益于云服務(wù)所提供的效率、靈活性和成本收益的同時,也暴露出了安全上的薄弱環(huán)節(jié)。不同程度及類型的數(shù)據(jù)和信息泄露事件,屢屢登上新聞頭條??偟恼f來,如下三個因素是導(dǎo)致大多數(shù)攻擊者有可乘之機的安全漏洞與隱患:
- 用于身份驗證(verification)和認(rèn)證(authentication)的集中式云原生模型
- 存在著根本性缺陷的數(shù)據(jù)安全與隱私架構(gòu)
- 云原生解決方案的復(fù)雜性,以及主動性安全措施內(nèi)在固有的缺陷
本文將專注于討論上述第一類漏洞的基礎(chǔ)上,提供基本的解決思路與方法。
現(xiàn)有弱密碼認(rèn)證機制存在的問題
基于憑據(jù)的身份驗證(即:用戶名和密碼的方式)是導(dǎo)致目前80%以上數(shù)據(jù)泄露的根源。然而,大多數(shù)最終用戶仍然會通過這種簡單方便方式,去訪問他們的網(wǎng)站和應(yīng)用。更糟糕的是,許多DevOps和云服務(wù)工程師并未對其敏感的云端生產(chǎn)環(huán)境引起足夠重視。目前,諸如GitHub之類越來越多的網(wǎng)站,都已意識到了此類威脅,并在逐漸棄用基于密碼的身份驗證方式。
來自云端的威脅
如前所述,雖然云服務(wù)的好處主要體現(xiàn)在靈活性、可擴展性、以及分布式訪問上,但是將數(shù)據(jù)湖、數(shù)據(jù)庫、以及IAM(身份訪問管理)等服務(wù)集中到一處,只會造成安全組件的簡單堆砌,甚至相互影響。因此,任何安全工程師都應(yīng)該清楚,由于體量的原因,集中在龐大的、基于云的數(shù)據(jù)湖里的數(shù)據(jù)和服務(wù),都是網(wǎng)絡(luò)黑客寧可鋌而走險,也要攻擊并獲取的豐厚資源,他們需要通過合理的規(guī)劃,來提高整體安全態(tài)勢。具體而言,當(dāng)前的身份與密碼驗證方案存在著如下三類漏洞:
- 對于那些依賴用戶憑據(jù)實施訪問控制的云端數(shù)據(jù)庫而言,由于它們在同一處聚合了各種關(guān)于用戶身份、活動、歷史等數(shù)據(jù),因此天然地形成了單點隱患。
- 嚴(yán)重依賴用戶識別和授權(quán),而忽略了用于執(zhí)行此類操作的手段。例如,短信和電子郵件,是攻擊者兩個極易得手的渠道。
- 最終用戶的體驗度與合規(guī)性之間的摩擦。畢竟硬件令牌的使用,以及僅包含短信的SFA(單因素認(rèn)證)等方式,看似方便了用戶,但是在一些安全等級要求較高的場合,顯然是不合規(guī)的。
此外,就攻擊本身而言,它們既可以來自任何地方、任何設(shè)備、以及任何水平的黑客(或為業(yè)余愛好者、或為老練的專業(yè)人士),又可以源于僵尸主機、惡意軟件、勒索軟件,甚至是AI軟件。此類攻擊通常能夠比負(fù)責(zé)監(jiān)控的安全組件,提前一步得手。
我們應(yīng)該如何應(yīng)對?
秉承著迎難而上的思想,我們下面來討論如何基于簡單的設(shè)計和網(wǎng)絡(luò)安全構(gòu)建,去消減云端威脅的攻擊面。
1. 使用加密密鑰而非憑據(jù)來強化訪問認(rèn)證
使用AES的256位強加密方式,來有效地防止身份憑據(jù)在被盜的情況下,暴露敏感的信息資源。
2. 將加密訪問綁定到設(shè)備,再將設(shè)備綁定給用戶
我們可以通過兩個簡單的步驟來保障設(shè)備的安全。
- 將密鑰綁定到設(shè)備。我們可以使用包括可信平臺模塊(Trusted Platform Module,??TPM??)在內(nèi)的多種方法,將加密密鑰的使用,唯一性地限制在對于相應(yīng)設(shè)備的構(gòu)建和授權(quán)環(huán)節(jié)。
- 將設(shè)備與經(jīng)過身份驗證的用戶相綁定。在上一步確認(rèn)了設(shè)備的真實性的基礎(chǔ)上,我們可以為設(shè)備添加有權(quán)使用或控制的唯一性身份角色,及其驗證方法。
3. 將MFA(多因素身份驗證)去中心化,并綁定到設(shè)備上
如今,所有的MFA都會最終依賴于基于云端的數(shù)據(jù)庫和服務(wù)器,并且需要由一個信任鏈(??Chain of Trust??)來執(zhí)行。為了讓云服務(wù)能夠完全脫離單點管控,我們可以將MFA分散開來,并分發(fā)給綁定到設(shè)備的用戶側(cè),進(jìn)而消除所謂中心節(jié)點的角色。
可見,上述三步不但極大地增強了訪問過程中的安全性,而且減少了與最終用戶的潛在“摩擦”、以及IT人員的支持開銷。就MFA而言,其首要因素是:您“知道”什么。這主要體現(xiàn)在通過登錄環(huán)節(jié)的常規(guī)密碼輸入、一次性口令、消息推送、以及硬件令牌等,對設(shè)備予以身份驗證。更重要的是,我們應(yīng)該利用基于加密設(shè)備的驗證方式,去提供另兩個強大的因素,進(jìn)而確保身份的合法性:
- 您“擁有”什么?——擁有AES的256位私鑰。
- 您“是”誰?——利用生物識別技術(shù)將基于云端與設(shè)備的活動監(jiān)控相結(jié)合。
4. 持續(xù)使用零信任
上三步足以給絕大多數(shù)身份驗證用例與需求,帶來安全與隱私保護。不過,對于那些嚴(yán)格要求訪問人員與身份相對應(yīng)的場景,我們則需要引入具有“永不信任,持續(xù)驗證”特性的零信任,來保障終端安全、鏈路安全、以及訪問控制安全。
安全加固的意義
從簡單層面來看,上述四招可以直接將云端身份驗證和認(rèn)證的受攻擊面大幅減少。從深遠(yuǎn)角度而言,我們將獲得如下三方面的優(yōu)勢:
1. 消減基于憑據(jù)的攻擊
我們所熟悉的網(wǎng)絡(luò)釣魚、身份盜竊和冒用、社會工程等攻擊方式,都是基于身份憑據(jù)的。如果沒有了可竊取的憑據(jù),那么由它所引發(fā)的受攻擊面將會大幅縮減。
2. 消減基于云端的、系統(tǒng)范圍的攻擊
根據(jù)零信任的管控方式,用戶在訪問資源的時候,需要一個接一個地持續(xù)認(rèn)證,其訪問到的端點設(shè)備也會被逐一跟蹤。顯然,此舉抬高了絕大多數(shù)黑客攻擊云端系統(tǒng)與服務(wù)的門檻。
3. 按需升級和執(zhí)行“人在回路(Human-In-The-Loop)”中的零信任驗證
歸根結(jié)底,如今各種基于云服務(wù)的身份驗證,都需要依賴軟件或端點設(shè)備,來驗證身份。當(dāng)您的應(yīng)用上下文需要對設(shè)備或用戶,進(jìn)行實時且重復(fù)性的身份驗證時,就可以適當(dāng)?shù)匾胫獣栽撚脩羯矸莸氖跈?quán)人員角色,根據(jù)預(yù)先配置好的自動化軟件驅(qū)動流程,來流暢地執(zhí)行身份驗證任務(wù)。
小結(jié)
綜上所述,我們與其沿用以前“打地鼠”式的安全補救方式,不如從根本上對易受攻擊的、集中式的云原生服務(wù)架構(gòu)進(jìn)行安全加固。希望上述為您提供的設(shè)計與構(gòu)建方式,能夠協(xié)助您不斷彌補云服務(wù)中的現(xiàn)有漏洞,并能持續(xù)提高其安全態(tài)勢。
原文標(biāo)題:Raising the Bar on Security by Purging Credentials From the Cloud,作者:Gene Allen
【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】