最終用戶帳戶安全始終是頭等大事,但仍然是一個(gè)棘手的問題。更糟糕的是,對(duì)用戶進(jìn)行身份驗(yàn)證很困難。隨著違反憑據(jù)的數(shù)據(jù)集變得司空見慣,以及更高級(jí)的機(jī)器人在網(wǎng)絡(luò)上爬行并嘗試進(jìn)行憑據(jù)填充攻擊,對(duì)于專注于安全性的團(tuán)隊(duì)而言,保護(hù)和監(jiān)視身份驗(yàn)證端點(diǎn)已成為一項(xiàng)挑戰(zhàn)。最重要的是,許多身份驗(yàn)證端點(diǎn)仍僅依靠提供正確的用戶名和密碼來使未被檢測(cè)到的憑證填充導(dǎo)致惡意行為者接管帳戶。
Cloudflare平臺(tái)的許多功能可以幫助實(shí)現(xiàn)帳戶接管保護(hù)。在本文中,我們將介紹幾個(gè)示例并宣布一些新功能。這些包括:
打開代理托管列表(NEW):確保對(duì)您的應(yīng)用的身份驗(yàn)證嘗試不是來自代理服務(wù);
超級(jí)機(jī)器人大戰(zhàn)模式(NEW):讓自動(dòng)流量遠(yuǎn)離您的身份驗(yàn)證端點(diǎn);
暴露的憑據(jù)檢查(NEW):每當(dāng)用戶使用受損的憑據(jù)登錄時(shí),都會(huì)收到一條警告。這可用于啟動(dòng)兩因素身份驗(yàn)證流程或重置密碼。
Cloudflare Access:通過與第三方OATH服務(wù)輕松集成來添加額外的身份驗(yàn)證層,并很快通過可選實(shí)施受管設(shè)備(NEW)來實(shí)現(xiàn);
登錄失敗的速率限制:停止對(duì)應(yīng)用程序進(jìn)行強(qiáng)力憑證填充嘗試;
當(dāng)結(jié)合使用這些功能時(shí),這些功能可以成為功能強(qiáng)大且易于部署的工具,以提高最終用戶帳戶的安全性。
Cloudflare開放代理列表
2020年7月,我們引入了IP列表-用戶在編寫自定義防火墻規(guī)則時(shí)可以創(chuàng)建并維護(hù)的IP的可重用列表。盡管對(duì)于任何防火墻管理員來說,這都是一個(gè)不錯(cuò)的工具,就像用于訪問控制的任何IP列表一樣,它很快就會(huì)過時(shí)。
使用我們新的Cloudflare Open Proxy Managed列表-您現(xiàn)在可以編寫自定義防火墻規(guī)則,并與Cloudflare完全管理并定期更新(每小時(shí))的列表進(jìn)行匹配。該列表是根據(jù)觀察到的網(wǎng)絡(luò)流量和對(duì)開放代理端點(diǎn)的主動(dòng)搜索來填充的。
新的Open Proxies托管列表-可以在“帳戶主頁”→“配置”→“列表”下找到,或直接在自定義規(guī)則中使用
通過在編寫自定義防火墻規(guī)則時(shí)將IP列表與其他過濾器結(jié)合在一起,可以降低嘗試登錄身份驗(yàn)證端點(diǎn)的風(fēng)險(xiǎn)。使用我們的wirefilter語法編寫一個(gè)利用新列表的規(guī)則,如下所示:
http.request.uri.path contains "/login" and (not ip.src in $cf.open_proxies and cf.bot_management.score < 30)
然后,根據(jù)對(duì)規(guī)則的選擇操作,任何身份驗(yàn)證嘗試都將被阻止或挑戰(zhàn)。
SOCK和代理IP列表適用于所有企業(yè)客戶。
超級(jí)機(jī)器人格斗模式和API濫用檢測(cè)
登錄端點(diǎn)為機(jī)器人提供了機(jī)會(huì)。不良的bot通過在幾秒鐘內(nèi)測(cè)試成千上萬個(gè)(甚至不是數(shù)百萬個(gè))憑據(jù)來真正利用時(shí)間。這些漫游器將持續(xù)存在,直到它們從您的網(wǎng)站中提取了某種價(jià)值。
幸運(yùn)的是,我們最近發(fā)布了“超級(jí)機(jī)器人大戰(zhàn)模式”。此功能包含在所有Pro和Business計(jì)劃中,并且我們已將其與實(shí)時(shí)分析配對(duì),因此您可以隨時(shí)觀察攻擊的發(fā)生。超級(jí)機(jī)器人戰(zhàn)斗模式旨在阻止憑證填充。在后臺(tái),我們正在運(yùn)行許多相同的檢測(cè)引擎,這些引擎為我們的企業(yè)機(jī)器人管理產(chǎn)品提供了動(dòng)力。
我們新的超級(jí)機(jī)器人格斗模式??梢栽诜阑饓Α鷻C(jī)器人下找到
最好的部分:您可以立即添加保護(hù)。專業(yè)版用戶可以選擇允許,阻止或挑戰(zhàn)Internet上的“確定性機(jī)器人”。商業(yè)用戶甚至可以針對(duì)“可能的機(jī)器人”,這種機(jī)器人往往更加復(fù)雜且難以發(fā)現(xiàn)。我們的免費(fèi)用戶可以繼續(xù)使用Bot Fight Mode開關(guān)進(jìn)行基本保護(hù)。
暴露的憑證檢查
憑據(jù)填充攻擊者試圖使用用戶名/密碼對(duì)(用戶的憑據(jù))登錄到目標(biāo)帳戶,該用戶名/密碼對(duì)先前是由于違反某些其他服務(wù)而被盜用的。令人遺憾的是,這種方法通常奏效,因?yàn)槌^50%的用戶將相同的密碼用于多個(gè)帳戶-結(jié)果是大量的帳戶遭到破壞。因此,您自己的最終用戶帳戶安全性不僅取決于您自己的系統(tǒng)的安全性,還取決于用戶使用的所有其他系統(tǒng)的安全性。盡管多因素身份驗(yàn)證可以提供深度防御,但許多身份驗(yàn)證服務(wù)和用戶尚未使用它,即使如此,當(dāng)用戶名/密碼對(duì)為“真”時(shí),我們?nèi)韵M軌蛳蚍?wù)及其用戶發(fā)出警告。易受傷害的。
除了諸如僵尸程序檢測(cè)之類的其他方法之外,行業(yè)中的一種新的最佳實(shí)踐是使登錄服務(wù)自己檢查其用戶憑據(jù)之一是否在已知的數(shù)據(jù)泄露中。這需要擁有一組已知的違反用戶名/密碼對(duì)。諸如“我已被盜”和“ Google密碼泄露警報(bào)”之類的服務(wù)匯總了已知盜用的用戶名/密碼對(duì)的大型數(shù)據(jù)庫,并允許公司或最終用戶進(jìn)行查找以確定漏洞。但是集成可能具有挑戰(zhàn)性,理想情況下,組織只需按一下按鈕就可以打開憑據(jù)檢查保護(hù)。
通過我們的托管規(guī)則集輕松啟用暴露的憑據(jù)檢查,另外,您可以編寫自己的自定義規(guī)則。??
Cloudflare保護(hù)的任何應(yīng)用程序的登錄請(qǐng)求都通過WAF進(jìn)行路由,這為“按路徑”公開的憑據(jù)檢查提供了機(jī)會(huì)。啟用后,在進(jìn)行任何身份驗(yàn)證嘗試時(shí),WAF都會(huì)根據(jù)Cloudflare收集和維護(hù)的泄漏憑證數(shù)據(jù)庫自動(dòng)檢查最終用戶憑證。如果找到匹配項(xiàng),則WAF會(huì)將標(biāo)頭添加到原點(diǎn),以便可以警告您的應(yīng)用程序有關(guān)易受攻擊的憑據(jù),例如,觸發(fā)該用戶的密碼重設(shè)流程或第二因素身份驗(yàn)證挑戰(zhàn)。
至少可以說,處理用戶名和密碼是高度敏感的,并且我們已經(jīng)設(shè)計(jì)了公開的憑據(jù)檢查功能來保護(hù)用戶憑據(jù)。一個(gè)關(guān)鍵的設(shè)計(jì)原則是,用戶名/密碼對(duì)絕不應(yīng)暴露在WAF流程的邊界之外,從而確保我們可以執(zhí)行檢查而不會(huì)增加任何其他風(fēng)險(xiǎn)。這意味著該功能永遠(yuǎn)不會(huì)在WAF流程之外傳輸用戶名或密碼或?qū)⑵溆涗?因?yàn)槲覀儾幌M肋@些憑據(jù)中的任何一個(gè)-僅在它們對(duì)您的網(wǎng)絡(luò)安全構(gòu)成威脅的情況下才有意義。但是,除此之外,我們還建立了一個(gè)保護(hù)隱私的加密協(xié)議來執(zhí)行數(shù)據(jù)庫查找。粗略地說,我們?cè)赪AF流程中將密鑰加密哈希函數(shù)應(yīng)用于用戶名/密碼對(duì),并檢查結(jié)果哈希值是否與我們已知的泄露憑據(jù)數(shù)據(jù)庫中的密鑰對(duì)哈希值匹配。我們將在后續(xù)的技術(shù)深入探討中對(duì)此進(jìn)行進(jìn)一步說明。
使用受管設(shè)備進(jìn)行Cloudflare訪問
借助Cloudflare Access,您可以在受Cloudflare保護(hù)的任何應(yīng)用程序之前提供一個(gè)附加的身份驗(yàn)證層。Access通過在每個(gè)請(qǐng)求上驗(yàn)證用戶身份,位置和網(wǎng)絡(luò)來保護(hù)應(yīng)用程序。這自然增加了最終用戶帳戶的安全性。
但是,用戶使用的設(shè)備可能仍然不安全。與受感染設(shè)備的有效身份驗(yàn)證會(huì)話可能導(dǎo)致數(shù)據(jù)泄露,或者更糟糕的是,最終用戶帳戶或應(yīng)用程序被完全破壞。企業(yè)試圖通過管理和發(fā)行可通過移動(dòng)設(shè)備管理(MDM)解決方案實(shí)施安全策略的公司設(shè)備來降低這種風(fēng)險(xiǎn)。
為了解決此問題,我們正在改進(jìn)Cloudflare Access,以強(qiáng)制只有公司設(shè)備才能訪問敏感的應(yīng)用程序。通過訪問規(guī)則,現(xiàn)在可以在允許訪問之前根據(jù)受管設(shè)備列表來驗(yàn)證設(shè)備的序列號(hào)。即使要公開用戶的憑據(jù),由于設(shè)備的序列號(hào)不在受管設(shè)備列表之內(nèi),任何未經(jīng)授權(quán)的訪問都將被阻止。有關(guān)更多信息,請(qǐng)參閱我們最近的公告。
登錄失敗的速率限制
蠻力攻擊出奇地有效,特別是在迭代泄漏憑據(jù)數(shù)據(jù)庫時(shí)執(zhí)行。要阻止這些攻擊,通常只需將它們放慢到執(zhí)行起來過于昂貴的程度即可。
如果登錄嘗試失敗,許多用戶名/密碼表單將發(fā)出HTTP 403禁止?fàn)顟B(tài)代碼或其他可識(shí)別的錯(cuò)誤消息。這可以用作發(fā)出速率限制響應(yīng)的非常有效的信號(hào),從而避免對(duì)合法用戶產(chǎn)生任何潛在的副作用。
以上速率規(guī)則限制了在一分鐘內(nèi)連續(xù)5次失敗的登錄嘗試(在一小時(shí)內(nèi))后的任何IP。
可以根據(jù)需要自定義速率限制響應(yīng),以支持帶有JSON負(fù)載的API或基于標(biāo)準(zhǔn)HTML的端點(diǎn)。
速率限制可作為所有付費(fèi)服務(wù)供所有自助服務(wù)客戶使用。