Cloudflare Bot Management大揭秘 | 如何分析互聯(lián)網(wǎng)流量并識別和管理bot

來源: Cloudflare
作者:Cloudflare
時間:2021-01-06
18302
構(gòu)建Cloudflare Bot Management是一個令人振奮的體驗,它融合了分布式系統(tǒng),Web開發(fā),機器學(xué)習(xí),安全性和調(diào)研以及介于兩者之間的所有學(xué)科。以下內(nèi)容即是Bot Management內(nèi)部機制的簡要概覽。

ia_300001214.png

構(gòu)建Cloudflare Bot Management是一個令人振奮的體驗,它融合了分布式系統(tǒng),Web開發(fā),機器學(xué)習(xí),安全性和調(diào)研以及介于兩者之間的所有學(xué)科。我們正在與不斷適應(yīng)和升級的強大對手作戰(zhàn),因此我們的Bot管理平臺也必須足夠強大!以下內(nèi)容即是Bot Management內(nèi)部機制的簡要概覽。

ia_300001210.png

如何定義Bot

Bot可以與計算機系統(tǒng)或用戶進行交互,模仿或替代人類用戶的行為,用比人類用戶更快的速度執(zhí)行重復(fù)性任務(wù)。

Bot的區(qū)分

Good Bots

合法地與企業(yè)互動,產(chǎn)生效益,例如搜索引擎機器人(Googlebot,Bingbot等),或Facebook Bot等運行在社交媒體平臺上的機器人。

Bad Bots

旨在執(zhí)行惡意行為并最終損害企業(yè)利益,例如憑據(jù)填充機器人,第三方爬蟲機器人,垃圾郵件機器人以及搶鞋機器人(sneakerbot)。

Bot Management的目標與要求

惡意Bot攻擊越來越普遍,而識別惡意Bot流量卻變得越來越困難。

關(guān)鍵要求

功能完整,簡單易用

單擊一下,即可開啟Bot Management,保護網(wǎng)站,移動應(yīng)用程序或API。

顯示可信賴度

客戶能夠知道他們是否可以信任網(wǎng)站訪問者,需要提供確定性指標以判定信任級別。

靈活性

客戶能夠自定義將Bot Management應(yīng)用到哪些流量子集,例如僅登錄URL、定價頁面或站點范圍內(nèi)的流量。

準確性

Bot Management的識別錯誤率應(yīng)該盡可能低,盡可能少地將人類訪客錯識別為Bot。

容錯性

在預(yù)測錯誤的情況下,應(yīng)始終確保真人用戶和好的Bot流量可以通過網(wǎng)站。

目標用例

ia_300001215.png

Bot Management的關(guān)鍵功能

可擴展性

確保計算每個請求的“Bot”分數(shù),無論每秒有多少請求

低延遲

快速執(zhí)行檢測,處理速度在100ms內(nèi)

可配置

可以配置對哪些流量應(yīng)用哪些檢測,細分到每個域/數(shù)據(jù)中心/服務(wù)器級別

可修改性

平臺應(yīng)該易于擴展,具有更多的檢測機制、不同的緩解措施、更豐富的分析和日志

安全性

不使用某個客戶的敏感信息來建立保護另一客戶的模型

可解釋且可調(diào)試

我們應(yīng)該能夠以直觀的方式解釋和調(diào)整預(yù)測

Bot分數(shù)

Bot Management的評分功能由一組微服務(wù)支持,它的總體架構(gòu)如下:

ia_300001212.png

我們的系統(tǒng)使用了多種技術(shù)來處理從邊緣數(shù)據(jù)中心接收的數(shù)據(jù),生成并存儲機器人檢測機制所需的數(shù)據(jù),在構(gòu)建過程中,每一項服務(wù)都考慮到了彈性、性能、可觀察性和安全性。

當(dāng)請求進入時,我們提取并轉(zhuǎn)換所需的請求屬性,并將其提供給我們的檢測機制。Bot Management將輸出防火墻字段,Cookies,JavaScript挑戰(zhàn),檢測日志。隨后,防火墻將接管實際的Bot緩解措施。

整合防火墻

防火墻規(guī)則提供了以下緩解措施

日志

將匹配的請求記錄在提供給客戶的Cloudflare日志中

繞行

允許客戶針對請求動態(tài)禁用Cloudflare安全功能

許可

匹配的請求不受其他防火墻規(guī)則觸發(fā)的質(zhì)詢和阻止

Captcha

用于確保訪問是人為而非自動的

JS挑戰(zhàn)

確保僵尸程序和垃圾郵件無法訪問所請求的資源

阻斷

阻止匹配請求訪問該網(wǎng)站

集成Cloudflare Workers

如果客戶希望根據(jù)分數(shù)對請求進行更靈活的處理——例如,他們可能想注入新的內(nèi)容或更改現(xiàn)有的HTML頁面內(nèi)容,或?qū)⒉徽_的數(shù)據(jù)提供給機器人,或暫停某些請求——Cloudflare Workers提供執(zhí)行這些操作的選項。

檢測機制

Bot Management使用了五種互補的檢測機制,各自產(chǎn)生自己的分數(shù),我們將它們結(jié)合起來得到進入防火墻的單個分數(shù)。

ia_300001211.png

五種檢測機制

機器學(xué)習(xí)

Cloudflare保護著超過2600萬個互聯(lián)網(wǎng)資產(chǎn),我們的機器學(xué)習(xí)模型能通過龐大、豐富且高質(zhì)量的數(shù)據(jù)中不斷得到改進。

啟發(fā)式引擎

基于請求的某些屬性,我們有多種啟發(fā)式類型和數(shù)百種特定規(guī)則,其中的一些很難被欺騙,這有助于我們進一步完善Bot Management。

行為分析

在2019年,我們?yōu)锽ot Management集成了行為分析,用以保護我們的客戶免受潛在攻擊的威脅。

已驗證的Bot

通過一些防火墻字段,客戶可以自定義是否允許或限制某些良好Bot對網(wǎng)站某些部分的訪問。

JS指紋

在不犧牲網(wǎng)站訪問者隱私的情況下,確認請求的用戶代理。

Cloudflare每周能夠從流經(jīng)其網(wǎng)絡(luò)的數(shù)萬億個請求中收集數(shù)據(jù),并通過與其他Cloudflare產(chǎn)品的集成,來識別和管理Bot活動。如果沒有多個團隊的共同努力,這一切都無法實現(xiàn)。我們感謝Bots團隊中的每個人所做出的努力!

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于Cloudflare,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
掃碼登錄
打開掃一掃, 關(guān)注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家