機器人管理是指,阻止有害或惡意的互聯(lián)網(wǎng)機器人流量,同時仍允許有用的機器人訪問 web 資產(chǎn)。為此,機器人管理檢測機器人活動、辨別有用和有害的機器人行為,并識別有害活動的來源。
如果不加控制,機器人有可能給 Web 資產(chǎn)帶來各種嚴重問題,因此機器人管理必不可少。機器人流量過多會給 Web 服務器造成沉重負載,導致對合法用戶提供服務的速度下降或拒絕服務(有時表現(xiàn)為 DDoS 攻擊)。惡意機器人可從網(wǎng)站抓取或下載內(nèi)容、盜取用戶憑據(jù)、快速傳播垃圾內(nèi)容,或?qū)嵤┢渌鞣N網(wǎng)絡攻擊。
機器人管理的工作內(nèi)容是什么?
機器人管理器是指任何管理機器人的軟件產(chǎn)品。機器人管理程序應該能夠阻止某些機器人并允許其他機器人通過,而不是簡單地阻止所有非人為流量。例如,如果所有機器人都被阻止并且谷歌的機器人無法為頁面編制索引,則該頁面將不會顯示在谷歌搜索結果中,從而大大減少了網(wǎng)站的自然流量。
一個好的機器人管理程序可以實現(xiàn)以下目標:
-識別機器人與訪客之間的差異
-識別機器人的信譽
-識別機器人來源 IP 地址并根據(jù) IP 信譽進行阻攔
-分析機器人行為
-將"良性“機器人添加到白名單
-使用 CAPTCHA 測試、JavaScript 注入或其他方法質(zhì)詢可能的機器人。
-對過度使用服務的潛在機器人進行限速
-拒絕"惡意”機器人對某些內(nèi)容或資源的訪問
-為機器人提供替代內(nèi)容
什么是機器人?
機器人是在網(wǎng)絡上運行的計算機程序。機器人被編程為自動執(zhí)行某些操作。通常,機器人執(zhí)行的任務相當簡單,但是機器人可以一次又一次地以比人類更快的速度完成任務。
例如,谷歌使用機器人不斷抓取網(wǎng)頁并將內(nèi)容編入索引以進行搜索。一個人力團隊需要花費天文數(shù)字的時間才能查看整個互聯(lián)網(wǎng)上散布的內(nèi)容,但是谷歌的機器人能夠使谷歌的搜索索引始終保持最新狀態(tài)。
作為負面示例,垃圾郵件發(fā)送者使用電子郵件收集機器人從互聯(lián)網(wǎng)上收集電子郵件地址。機器人程序會爬蟲網(wǎng)頁,查找遵循電子郵件地址格式(文本+ @符號+域)的所有文本,然后將該文本保存到數(shù)據(jù)庫中。自然,人們可以在網(wǎng)頁上查找電子郵件地址,但是由于這些電子郵件收集機器人是自動的,并且僅查找適合某些參數(shù)的文本,因此查找電子郵件地址的速度成倍增長。
與人類用戶訪問 Internet 不同的是,機器人通常不通過 Google Chrome 或者 Mozilla Firefox 等傳統(tǒng) Web 瀏覽器訪問 Internet。機器人并不操作鼠標(或者智能手機)也不點擊瀏覽器中的可視內(nèi)容,它們只是會提出 HTTP 請求(還有其他活動)的軟件程序,通常使用的是所謂的“無界面瀏覽器”。
機器人能做什么?
機器人幾乎能夠執(zhí)行任何非創(chuàng)新性的重復任務,即任何可以自動化的任務。它們能夠與網(wǎng)頁交互、填寫并提交表格、點擊鏈接、掃描(或“爬取”)文本,以及下載內(nèi)容。機器人能夠“觀看”視頻、發(fā)表評論,以及在社交媒體平臺上發(fā)帖、點贊或者轉(zhuǎn)發(fā)文章。某些機器人甚至可以與人類用戶進行基本的對話,這些就是所謂的聊天機器人。
良性機器人和惡意機器人有什么區(qū)別?
令人驚訝的是,據(jù)諸多來源估計,互聯(lián)網(wǎng)所有流量中大約有一半是機器人流量。就像某些(但不是全部)軟件是惡意軟件一樣,某些機器人是惡意機器人,而有些是“良性的”。
任何濫用在線產(chǎn)品或服務的機器人均被視為"惡意“。惡意機器人的范圍很廣,從公然惡意的機器人(例如試圖闖入用戶帳戶的機器人)到輕度濫用資源的形式(例如在活動網(wǎng)站上購買門票的機器人)。
執(zhí)行所需或有用服務的機器人,可能會被視為“善意”機器人??蛻舴樟奶鞕C器人、搜索引擎爬網(wǎng)程序和性能監(jiān)測機器人都是善意機器人的示例。善意機器人通常會查找并遵守網(wǎng)站的 robots.txt 文件中所述的規(guī)則。
什么是robots.txt文件?
Robots.txt是網(wǎng)頁服務器上的文件,概述了機器人訪問該服務器屬性的規(guī)則。但是,文件本身不執(zhí)行這些規(guī)則。從本質(zhì)上講,對機器人進行編程的任何人都應遵守榮譽制度,并確保其機器人在訪問網(wǎng)站之前檢查網(wǎng)站的robots.txt文件。當然,惡意機器人通常不遵循此系統(tǒng),因此需要機器人管理。
機器人管理如何工作?
為了識別機器人,機器人管理者可以使用JavaScript質(zhì)詢(確定是否使用傳統(tǒng)的網(wǎng)頁瀏覽器)或CAPTCHA質(zhì)詢。他們還可以通過行為分析(即通過將用戶的行為與過往用戶的標準行為進行比較)來確定哪些用戶是人類用戶,哪些是機器人。要檢查到后者,機器人管理者必須收集大量的質(zhì)量行為數(shù)據(jù)進行比對。
如果確定某個機器人是惡意的,則可以將其重定向到其他頁面,或者完全阻止其訪問網(wǎng)頁資源。
良性的機器人則可以添加到白名單,或允許的機器人列表(與黑名單相反)。機器人管理程序還可以通過進一步的行為分析來區(qū)分良性和惡意機器人。機器人管理器還可通過進一步的行為分析來分辨善意機器人和惡意機器人。
另一種機器人管理方法是使用robots.txt文件設置蜜罐。蜜罐是針對不良機器人的虛假目標,一旦被訪問,就會將暴露不良機器人為惡意對象。對于機器人,蜜罐可能是robots.txt文件禁止機器人訪問的網(wǎng)站上的網(wǎng)頁。好的機器人會讀取robots.txt文件,并避開該網(wǎng)頁;一些不良的漫游器會抓取該網(wǎng)頁。通過跟蹤訪問蜜罐的機器人的IP地址,可以識別并阻止不良的機器人。
機器人管理可緩解哪些類型的機器人攻擊?
機器人管理解決方案可以幫助阻止各種類型的攻擊:
-DDoS 攻擊
-DoS 攻擊
-憑證填充
-信用卡填充
-暴力破解密碼
-垃圾電子郵件內(nèi)容
-數(shù)據(jù)抓取/網(wǎng)頁抓取
-電子郵件地址搜集
-廣告欺詐
-點擊欺詐
下面這些其他機器人活動并不總是被認為是"惡意的”,但機器人管理器仍然能夠防護它們:
-庫存囤積
-在社交論壇或平臺上的自動發(fā)布
-購物車填充
Cloudflare如何管理機器人?
Cloudflare擁有獨一無二的能力,從每天流經(jīng)其網(wǎng)絡的數(shù)十億個請求中收集數(shù)據(jù)。Cloudflare 能夠利用這些數(shù)據(jù),結合機器學習和行為分析,識別可能的機器人活動,並能夠提供必要的數(shù)據(jù)來建立有效的善意機器人允許列表或者惡意機器人阻止列表。Cloudflare 還擁有廣泛的 IP 信譽數(shù)據(jù)庫。
超級機器人抵御模式現(xiàn)已通過 Cloudflare Pro 和 Business 計劃提供,旨在幫助較小規(guī)模的企業(yè)及組織防御機器人攻擊,同時更深入地了解其機器人流量。