Generujte datové sady SQL, Excel nebo JSON pro země a jazyky. Přizpůsobte názvy polí a exportujte s obrázky vlajek.
Internet má problém se zvířenou. Pod povrchem lidské prohlížečské aktivity existuje celý ekosystém automatizovaných programů, které crawlují, škrábou, zkoumají a vyžadují webové stránky v obrovském měřítku. Některé z těchto botů jsou přínosné. Crawler Google indexuje stránky, aby se objevily ve výsledcích vyhledávání. Crawler Bing dělá totéž pro vyhledávač Microsoft. Crawler OpenAI shromažďuje tréninková data pro jazykové modely. Tyto legitimní crawlery se čestně identifikují, dodržují pravidla specifikovaná v souborech robots.txt a operují z známé infrastruktury. Ale na každého legitimního crawleru připadá desítka podvodníků, kteří si vezou stejné identifikační značky a přitom dělají něco úplně jiného. Ve svém řetězci user agent se hlásí jako Googlebot, tvrdí, že indexují stránky pro vyhledávání, a spoléhají na fakt, že většina webových serverů jim poskytne přednostní léčbu na základě tohoto tvrzeného identity. Zoologie těchto internetových botů je stejně složitá, konkurenční a občas bizarní jako jakýkoli biologický ekosystém.
Porozumění tomuto ekosystému je důležité pro každého, kdo provozuje webovou stránku, protože rozhodnutí důvěřovat nebo blokovat bota má přímé důsledky. Blokování skutečného web searchovacího crawleru znamená, že se stránky přestávají objevovat ve výsledcích vyhledávání. Důvěra ve falešný znamená umožnění scraperu, nástroji pro soutěžní inteligenči nebo škodlivému subjektu spotřebovávat serverové zdroje a tvrdit, že poskytuje hodnotu. Schopnost rozlišovat mezi skutečnými a falešnými crawlery není teoretické bezpečnostní cvičení. Je to praktická nutnost, která ovlivňuje náklady na šířku pásma, výkon serveru, přesnost analýzy a ochranu obsahu. API pro detekci botů existuje právě pro tento účel, poskytující definitivní ověření identity crawleru na základě jedné věci, kterou nelze padělat: síťové infrastruktury, ze které se bot připojuje.
Googlebot je na internetu nejčastěji napodobovaný crawler, a důvody jsou zřejmé. Webové stránky rutinně poskytují Googlbotovi speciální privilégia. Limity rychlosti jsou uvolněny. Paywally jsou zrušeny. Obsah, který je skryt za JavaScript renderováním, je předem připraven speciálně pro crawlera Google. Pravidla v souboru Robots.txt často explicitně umožňují Googlbotovi přístup k sekcím, které jsou pro jiné crawlery omezeny. Když se bot vydává za Googlebota, zdědí si všechna tato privilégia bez toho, aby si je zasloužil. Webová stránka slouží svůj nejlepší obsah, nejrychlejší odpovědi a nejúplnější stránky tomu, co si myslí, že je infrastruktura Google pro indexování, když ve skutečnosti příjemcem je scraper provozovaný z pronajatého serveru v datovém centru.
Skutečný Googlebot je identifikovatelný s naprostou jistotou. Operuje výhradně z IP adres v autonomním systému Google, AS15169. Zpětné vyhledávání DNS na jakékoli skutečné Googlbotské IP adrese vrací název hostitele končící na googlebot.com nebo google.com. Přímé vyhledávání DNS na tomto názvu hostitele se vrací zpět na původní IP adresu. Tento třístupňový řetězec ověření, IP na název hostitele na IP, je kryptograficky vázán na infrastrukturu DNS společnosti Google a nelze jej zfalšovat bez kompromitace serverů DNS Google, což je prakticky nemožné. Detektor botů Google provádí přesně tento řetězec ověření a vrací definitivní výsledek.
Falešný Googlebot naopak pochází z infrastruktury cloud pro všeobecné použití, kterou si může pronajmout kdokoli po hodinách. Amazon Web Services, Google Cloud Platform (ironicky), Microsoft Azure, DigitalOcean, Hetzner, OVH a Contabo jsou běžné zdroje. Řetězec user agent je kopírován doslova z skutečného Googlebota, často včetně čísla verze a formátu adresy URL crawlingu. Některé sofistikované padělky dokonce napodobují vzory požadavků Googlebota, rozmisťují své požadavky a sledují odkazy způsobem, který se podobá legitimnímu crawlingu. Ale IP adresa je každé vystavuje. Žádné množství chování napodobování nemůže změnit fakt, že požadavek pochází z AS16509 (Amazon) místo AS15169 (Google).
Bingbot společnosti Microsoft je druhý nejčastěji napodobovaný crawler a jeho ověření následuje podobný vzor jako Googlebot, ale s některými důležitými rozdíly. Skutečný Bingbot operuje z infrastruktury Microsoft a jeho IP adresy se řeší prostřednictvím zpětného DNS na názvy hostitelů v doméně search.msn.com. Ověření ASN se kontroluje proti autonomním systémům Microsoft, které obsahují několik ASN kvůli rozsáhlé síťové infrastruktuře společnosti. Ověření je stejně spolehlivé, ale vyžaduje vědomí o širší alokaci IP adres Microsoft ve srovnání s konsolidovanější rozsahem Google.
Falešný Bingbot slouží mnoha stejným účelům jako falešný Googlebot, ale objevuje se v poněkud nižších objemech, což odráží menší podíl Bing na trhu a odpovídajícího menšího stimulu k napodobování. Webové stránky, které se konkrétně optimalizují pro Bing nebo které podávají jiný obsah Bingbotovi, přitahují nepřiměřené napodobování. SEO nástroje, které analyzují, jak se stránka jeví crawleru Bing, často používají falešné uživatelské agenty Bingbot k získání verze Bing-specific stránek. Služby soutěžní inteligenče dělají totéž, aby viděly, jaký obsah konkurenti podávají konkrétně infrastruktuře vyhledávání Microsoft.
Metodologie detekce je v zásadě identická. Zkontrolujte IP adresu proti známým rozsahům Microsoft. Proveďte ověření zpětného a přímého DNS. Potvrďte shodu ASN. Požadavek tvrdící, že je od Bingbota a pochází ze serveru Hetzner ve Finsku, je s naprostou jistotou falešný, bez ohledu na to, jak přesvědčivě je řetězec user agent vytvořen. API pro detekci botů toto ověření automaticky zpracovává, kontroluje tvrzenou identitu vůči skutečnému původu sítě a vrací jasný verdikt.
Vznik velkých jazykových modelů vytvořil zcela novou kategorii web crawlerů a zcela novou kategorii napodobování. GPTBot OpenAI crawluje web, aby shromáždil tréninková data, a jeho přítomnost se stala jedním z nejčastějších témat ve webovém publikování. Mnozí vydavatelé chtějí blokovat GPTBot, aby se zabránilo použití jejich obsahu pro AI trénování. Ostatní jej chtějí umožnit a doufají, že budou mít příznivé zacházení v odpovědích ChatGPT. Ať tak či onak, schopnost rozlišovat skutečný GPTBot od falešných verzí je kritická pro prosazování politiky, kterou vydavatel zvolil.
Skutečný GPTBot, stejně jako skutečný Googlebot, operuje z určité sady IP adres spojených s infrastrukturou OpenAI. Řetězec user agent se jasně identifikuje a rozsahy IP jsou zveřejněny a ověřitelné. Falešný GPTBot, který se rychle rozšířil od spuštění ChatGPT, používá stejný řetězec user agent, ale připojuje se z nesouvisející infrastruktury. Motivace pro napodobování GPTBot se liší. Někteří škrábavači jej používají, protože vydavatelé, kteří se rozhodli umožnit crawlery pro trénování AI, budou obsah volně sloužit čemukoli, co se hlásí jako GPTBot. Ostatní jej používají jako generické krytí identity, sázejíce na předpoklad, že správci serverů jsou méně obeznámeni s rozsahy IP OpenAI než s rozsahy Google a proto jsou méně pravděpodobné, že si budou ověřovat tvrzení. Detektor crawleru OpenAI to řeší přímo a ověřuje, zda tvrzený požadavek GPTBot skutečně pochází ze sítě OpenAI.
Mimo GPTBot se krajina AI crawlerů rapidně rozšiřuje. Anthropic, Perplexity, Meta a mnoho menších AI společností provozuje web crawlery s různým stupněm transparentnosti ohledně jejich aktivit. Každý z těchto crawlerů lze napodobovat a každé napodobování nese své vlastní důsledky v závislosti na tom, jak místo určení zachází s tímto konkrétním crawlerem. Stránka, která blokuje všechny AI crawlery kromě GPTBot, například vytváří silný stimul pro scrapy k napodobování GPTBot konkrétně, protože je to identita, která bude sloužit obsahu bez omezení.
Ekosystém botů se rozprostírá daleko mimo Google, Bing a OpenAI. Yandex provozuje významný crawler pro ruský web a falešné Yandex boty jsou běžné na webech s rusky-jazykovým obsahem nebo na těch, které služby pro Yandex přesměrují obsah. Crawler DuckDuckGo, DuckDuckBot, je napodobován navzdory relativně malému podílu DuckDuckGo na trhu, protože webové stránky, které se cílí uživatelům věnujícím se soukromí, často dávají DuckDuckBotovi přednostní přístup. Qwant, francouzský vyhledávač, a Seznam, český vyhledávač, mají oba crawlery, které se napodobují na jejich příslušných regionálních trzích.
Metodologie ověření funguje totožně pro všechny z nich. Každý legitimní crawler operuje z známé sady IP adres spojených se síťovou infrastrukturou jeho operátora. ASN identifikuje síť. Zpětné DNS potvrzuje název hostitele. Přímé DNS potvrzuje IP. Tento řetězec ověření je univerzální a platí bez ohledu na konkrétního crawlera, který se kontroluje. Rozdíl je pouze v referenčních datech: které ASN, které vzory názvu hostitele a které rozsahy IP patří každému crawleru. API pro detekci botů si tyto referenční datové sady uchovává pro osm hlavních crawlerů a poskytuje ověření jako jeden hovor API.
Dlouhý chvost ekosystému botů také zahrnuje crawlery, které se nikdo nenapadají. Jedná se o poctivé boty. SEO nástroje jako Ahrefs, SEMrush a Moz provozují crawlery, které se přesně identifikují ve svých řetězcích user agent. Služby porovnávání cen, академические výzkumné crawlery, kontroly přístupnosti a validátory odkazů všechny hlásí svou skutečnou identitu. Tyto boty mohou nebo nemusí být na kterékoli stránce vítány, ale alespoň může operátor webu udělat informované rozhodnutí o tom, zda je umožnit. Problém je konkrétně s padělkovatelsky, s boty, které si lžou o tom, kdo jsou, aby získali přístup, který by jinak nedostali.
Praktická obrana proti napodobování botů je jednoduchá, jakmile je mechanismus ověření na místě. Každý příchozí požadavek tvrdící, že je od web searchovacího crawleru, se kontroluje proti známé infrastruktuře crawleru. Požadavky, které procházejí ověřením, jsou povoleny s jakýmikoli oprávněními, která web poskytuje tomuto crawleru. Požadavky, které selhávají ověřením, jsou buď zcela zablokovány, nebo jsou považovány za obecný provoz podléhající standardnímu omezení sazby webu a kontrolám přístupu.
Tento přístup je lepší než behaviorální analýza z několika důvodů. Behaviorální analýza se snaží určit, zda je návštěvník bot na základě toho, jak komunikuje s webem: míra požadavků, vzory navigace, spuštění JavaScriptu, pohyby myši. Tyto signály jsou hlučné, vytvářejí falešně pozitivní výsledky a mohou být poraženy dostatečně sofistikovanými boty, které napodobují lidské chování. IP-based ověření naopak vytváří binární výsledek s nulou falešně pozitivních. Požadavek buď pochází ze sítě Google, nebo nepochází. Neexistuje žádná nejednoznačnost, žádný práh k ladění a žádný behaviorální model k tréninku.
Implementace nemusí být synchronní s každým požadavkem pro webové stránky, kde je latence problém. Ověření lze spustit asynchronně s výsledky uloženými v mezipaměti na IP adresu. Jakmile je IP ověřena jako příslušející Googlbotovi, všechny následující požadavky z této IP lze povolit bez opětovného ověření po dobu, kterou lze konfigurovat. Tento přístup přidá zanedbatelnou latenci k potrubí požadavků a přitom poskytne komplexní ochranu proti napodobování. Doba mezipaměti odráží kompromis: delší mezipaměť znamená méně volání API, ale o něco větší okno, kde by se dříve ověřená IP mohla teoreticky změnit vlastnictví. V praxi jsou alokace IP adres vyhledávacích strojů extrémně stabilní a doby trvání mezipaměti čtyřiadvacet hodin nebo déle jsou bezpečné pro većinu aplikací.
Výsledkem implementace ověřování identity botů na základě identity je čistší, realističtější pohled na to, co se skutečně chystá na server. Skuteční crawlery jsou vítáni. Falešní crawlery jsou odhaleni a zablokováni. Analytická data odrážejí realitu místo fiction. Serverové zdroje jsou přidělovány skutečným návštěvníkům a legitimním crawlerům místo toho, aby byly zmařeny na padělkovatelů. Zoologie internetových botů je složitá a neustále se vyvíjí, ale základní princip ověření podle původu sítě zůstává efektivní bez ohledu na to, jak se ekosystém botů mění.
Proveďte zpětné vyhledávání DNS na IP adrese a potvrďte, že název hostitele končí na googlebot.com nebo google.com. Poté proveďte přímé vyhledávání DNS na daném názvu hostitele a potvrďte, že se vrací zpět ke stejné IP adrese. Alternativně zkontrolujte, zda IP adresa patří do AS15169, což je autonomní systém Google. API pro detekci botů provádí všechny tyto kontroly v jednom volání.
IP adresy nelze zfalšovat pro TCP připojení, protože TCP handshake vyžaduje obousměrnou komunikaci. Bot může zfalšovat řetězec user agent triviálně, ale nemůže navázat TCP připojení s falešnou zdrojovou IP adresou. To je důvod, proč je ověřování na základě IP definitivní, zatímco identifikace založená na user agent není.
ASN, nebo Číslo Autonomního Systému, identifikuje síť provozovanou jednou organizací. Síť Google je AS15169, Microsoft používá několik ASN a OpenAI má své vlastní určené rozsahy. Kontrola IP adresy bota vůči očekávanému ASN okamžitě odhalí, zda požadavek pochází z infrastruktury tvrzené organizace nebo z nesouvisejícího datového centra.
Blokování botů, které napodobují konkrétní vyhledávače, je obecně bezpečné a doporučované. Nicméně ne všechny neověřené boty jsou škodlivé. Některé jsou legitimní nástroje, které jednoduše nenapadají crawlery. Klíčové rozlišení je mezi boty, které si lžou o své identitě (které by měly být zablokovány), a boty, které se čestně identifikují (které lze posoudit jednotlivě).
Prevalence se liší podle velikosti webu a typu obsahu. Webové stránky s vysokou autoritou domény, hodnotným obsahem nebo velkým počtem stránek mají tendenci přitahovat více falešných crawlerů. Data z průmyslu naznačují, že provoz botů představuje třicet až padesát procent všeho webového provozu celosvětově a významná část tohoto provozu je provoz napodobování tvrdící, že se jedná o legitimní crawlery vyhledávacích strojů.
Ne. Blokování na základě ověření ovlivňuje pouze požadavky z IP adres, které nepatří tvrzeným vyhledávacím strojům. Skutečný Googlebot, Bingbot a další legitimní crawlery procházejí ověřením a nadále přistupují k webu normálně. Jediným dopadem je na padělkovatelů.