網頁抓取是使用機器人從網站中提取內容和數據的過程。
與僅復制屏幕上顯示的像素的屏幕抓取不同,網絡抓取提取底層 HTML 代碼,并使用它提取存儲在數據庫中的數據。然后扒取網站代碼工具,抓取工具可以在其他地方復制整個網站內容。
網絡抓取用于依賴數據收集的各種數字業務。合法用例包括:
搜索引擎機器人抓取網站,分析其內容,然后對其進行排名。
價格比較網站部署機器人以自動獲取聯盟賣家網站的價格和產品描述。
市場研究公司使用抓取工具從論壇和社交媒體中提取數據(例如,用于情緒分析)。
什么是網頁抓取
網絡抓取也被用于非法目的,包括壓低價格和竊取受版權保護的內容。被刮刀攻擊的在線實體可能會遭受嚴重的經濟損失,特別是如果它是一個強烈依賴競爭性定價模型或內容分發交易的企業。
抓取工具和機器人
網絡抓取工具是軟件(即機器人),用于篩選數據庫和提取信息。使用了多種機器人類型,其中許多是完全可定制的:
由于所有抓取機器人都有相同的目的——訪問站點數據——很難區分合法機器人和惡意機器人。
也就是說,幾個關鍵差異有助于區分兩者。
合法的機器人被識別為它們所針對的組織。例如, 在其 HTTP 標頭中將自己標識為屬于 。相反,惡意機器人通過創建虛假的 HTTP 用戶代理來冒充合法流量。
合法的機器人遵守網站的 .txt 文件,該文件列出了機器人可以訪問的頁面和不能訪問的頁面。另一方面,惡意抓取工具會在不考慮網站運營商允許的情況下抓取網站。
運行網絡爬蟲機器人所需的資源 是巨大的——以至于合法的爬蟲機器人運營商大量投資于服務器來處理被提取的大量數據。
缺乏這種預算的犯罪者通常會使用 僵尸網絡——地理上分散的計算機,感染相同的惡意軟件并從一個中心位置進行控制。個別僵尸網絡計算機所有者不知道他們的參與。受感染系統的綜合力量使犯罪者能夠大規模抓取許多不同的網站。
惡意網頁抓取示例
在未經網站所有者許可的情況下提取數據時,網絡抓取被認為是惡意的。兩個最常見的用例是價格抓取和內容盜竊。
價格抓取
在價格抓取中,犯罪者通常使用僵尸網絡啟動抓取機器人來檢查競爭業務數據庫。目標是獲取定價信息、削弱競爭對手并促進銷售。
攻擊經常發生在產品易于比較且價格在購買決策中起著重要作用的行業。價格爬取的受害者可能包括旅行社、售票員和在線電子產品供應商。
例如,以相對一致的價格銷售類似產品的智能手機電子交易商經常成為目標。為了保持競爭力,他們有動力提供盡可能最優惠的價格,因為客戶通常會選擇成本最低的產品。為了獲得優勢,供應商可以使用機器人不斷抓取競爭對手的網站,并立即相應地更新自己的價格。
對于肇事者來說,成功的價格抓取可能會導致他們的報價在比較網站上突出顯示 – 客戶將其用于研究和購買。同時,被抓取的網站經常會遭受客戶和收入損失。
內容抓取
內容抓取包括從給定站點進行的大規模內容竊取。典型的目標包括在線產品目錄和依賴數字內容推動業務的網站。對于這些企業來說,內容抓取攻擊可能是毀滅性的。
例如,在線本地企業目錄投入大量時間、金錢和精力來構建其數據庫內容。刮取可能導致它全部被釋放到野外,用于垃圾郵件活動或轉售給競爭對手。這些事件中的任何一個都可能影響企業的底線及其日常運營。
以下內容摘自 提交的 投訴,詳細介紹了其在內容抓取方面的經驗。它強調了這種做法的破壞性:
“[內容抓取服務] 每天都會向 發送大量數字機器人,以復制和下載數百萬 用戶廣告的全文。[該服務] 然后不分青紅皂白地將這些盜用的列表——通過其所謂的“數據饋送”——提供給任何想要出于任何目的使用它們的公司。一些這樣的‘客戶’每月為這些內容支付高達 20,000 美元……”
根據索賠,抓取的數據用于垃圾郵件和電子郵件欺詐,以及其他活動:
“[被告] 然后從該數據庫中獲取 用戶的聯系信息,并每天向從 服務器獲取的地址發送數千封電子郵件…… [消息] 在垃圾郵件正文中包含誤導性的主題行和內容,旨在誘使 用戶從使用 的服務切換到使用 [捍衛者的] 服務……”
網頁抓取保護
惡意爬蟲程序日益復雜,使得一些常見的安全措施變得無效。例如, 無頭瀏覽器機器人 可以偽裝成人類,因為它們在大多數緩解解決方案的雷達下飛行。
為了對抗惡意機器人操作員的進步扒取網站代碼工具, 使用精細的流量分析。它確保進入您網站的所有流量,無論是人和機器人,都是完全合法的。
該過程涉及因素的交叉驗證,包括:
HTML 指紋– 過濾過程從對 HTML 標頭的細粒度檢查開始。這些可以提供有關訪客是人還是機器人,惡意還是安全的線索。將標頭簽名與包含超過 1000 萬個已知變體的不斷更新的數據庫進行比較。
IP 聲譽 – 我們從針對客戶的所有攻擊中收集 IP 數據。來自曾被用于攻擊的 IP 地址的訪問會受到懷疑,并且更有可能受到進一步審查。
行為分析 – 跟蹤訪問者與網站互動的方式可以揭示異常行為模式,例如可疑的攻擊性請求率和不合邏輯的瀏覽模式。這有助于識別偽裝成人類訪客的機器人。
漸進式挑戰 ——我們使用一系列挑戰,包括 支持和 執行,來過濾機器人并最大程度地減少誤報。作為最后的手段,驗證碼挑戰可以淘汰試圖將自己偽裝成人類的機器人。