Vai al contenuto
Offerte

Googlebot nei log: perché quasi tutti sono falsi

Se nei report di traffico compare Googlebot impegnato a visitare centinaia o migliaia di URL, la sensazione è che stia lavorando il crawler ufficiale di Google. Peccato che nella maggior parte dei casi non sia così. Il motivo è tecnico ma anche piuttosto banale: lo user agent non prova l’identità di chi si connette. Qualunque client HTTP può presentarsi come Googlebot cambiando una semplice intestazione, senza fornire alcuna prova di essere davvero collegato all’infrastruttura di Mountain View.

Chi si mette a leggere i log di un server web, specie quando il traffico sembra anomalo, arriva quasi sempre alla stessa conclusione. Gran parte delle richieste che dichiarano di arrivare da Google non supera i controlli necessari ad attribuirle davvero all’azienda. Crawler di altra provenienza, sistemi di scraping e automazioni varie usano da anni nomi conosciuti per scivolare oltre i filtri poco rigorosi, ottenere un trattamento di favore o mimetizzarsi nel traffico legittimo che serve all’indicizzazione.

Il protocollo HTTP, del resto, ha sempre lasciato al client la libertà di dichiarare quello che vuole. Una richiesta può spacciarsi per browser, app mobile, scanner di sicurezza o motore di ricerca senza portare alcuna prova crittografica. La stessa Google, con Chrome, ha avviato un progressivo ridimensionamento dello user agent, ritenuto troppo ricco di dettagli e comodo per il fingerprinting. Anche i Client Hints, però, restano intestazioni controllate dal software che apre la connessione e non dimostrano nulla su chi c’è davvero dall’altra parte.

Perché così tanti bot si travestono da Googlebot

La ragione è semplice. Googlebot gode di un trattamento particolare su moltissimi siti. Gli amministratori evitano di bloccarlo, e fanno bene, perché un errore rischierebbe di rallentare la scansione delle pagine, mandare in tilt l’aggiornamento dell’indice o far sparire contenuti importanti dai risultati di ricerca. In più alcune configurazioni gli concedono limiti di frequenza più larghi, accesso a URL protetti dai filtri antiautomazione o l’uscita da certe regole del Web Application Firewall.

Per uno scraper il vantaggio è lampante. Copiare uno user agent non costa niente e può ridurre le probabilità di beccarsi un errore 403, una pagina CAPTCHA o una risposta HTTP 429. Altri software usano il nome Googlebot per raccogliere prezzi, testi, indirizzi email, dati sui prodotti oppure per mappare applicazioni e percorsi nascosti. Un’intestazione credibile può somigliare a quella del crawler per smartphone, oggi centrale dopo il passaggio al mobile-first indexing. La stringa contiene un riferimento a Googlebot/2.1 e un link alla pagina informativa di Google, ma sono soltanto testo inviato dal client. Non stabiliscono alcun legame tra l’indirizzo IP sorgente e l’infrastruttura del motore di ricerca.

Il controllo giusto parte dall’indirizzo IP

Google indica due metodi per verificare i suoi crawler, entrambi molto più solidi del semplice confronto sullo user agent. Il primo usa gli intervalli IP pubblicati dall’azienda come file JSON. Il secondo si affida a una verifica DNS in due passaggi. Gli elenchi sono distinti per crawler comuni, crawler speciali e fetcher attivati dagli utenti. I file contengono prefissi IPv4 e IPv6 in notazione CIDR, per esempio reti come 66.249.64.0/19. Un’applicazione può scaricarli con regolarità e controllare se l’IP rilevato nei log rientra tra quelli autorizzati.

Il controllo DNS segue invece una sequenza precisa. Prima si esegue una ricerca PTR sull’indirizzo IP sorgente, ottenendo il nome host. Per un Googlebot autentico il risultato deve terminare con domini come googlebot.com o google.com, a seconda del tipo di crawler. Su Linux e macOS si può usare il comando host oppure interrogare il record PTR con dig, su Windows c’è nslookup. Poi conviene fare la verifica opposta, cioè risolvere il nome ottenuto tramite record A e AAAA e controllare che tra gli indirizzi restituiti compaia esattamente l’IP di partenza.

Cosa saltano fuori dai log quando la verifica è seria

Nei log grezzi le richieste con user agent Googlebot possono sembrare tantissime e sparse su molte reti. Dopo il controllo dell’origine, però, una fetta consistente perde quell’identità. Gli indirizzi non appartengono alle reti pubblicate da Google oppure falliscono la verifica DNS. Un picco di traffico attribuito a Google potrebbe nascondere scraper aggressivi. Un consumo di banda apparentemente legato all’indicizzazione potrebbe arrivare da sistemi esterni che copiano contenuti. URL visitati in continuazione da un presunto crawler potrebbero segnalare tentativi di mappare tutte le risorse disponibili.

Condividi:
161 Condivisioni