Sistemi anti-bot: Come funzionano e possono essere aggirati?

Guide, Ottobre-07-20245 minuti di lettura

I sistemi anti-bot sono tecnologie progettate per proteggere i siti web da interazioni automatizzate, come spam o attacchi DDoS. Tuttavia, non tutte le attività automatizzate sono dannose: ad esempio, i bot sono talvolta necessari per i test di sicurezza, la costruzione di indici di ricerca e la raccolta di dati da fonti aperte. Per eseguire tali attività senza essere bloccati dai sistemi anti-bot, sono necessari strumenti specializzati.

Per poter aggirare un sistema anti-bot, è essenziale capire quali sono i diversi tipi di protezione e come funzionano.

Come fanno i sistemi anti-bot a rilevare i bot?

I sistemi anti-bot raccolgono una quantità significativa di informazioni su ogni visitatore di un sito web. Queste informazioni vengono analizzate e, se alcuni parametri non sembrano caratteristici di un utente umano, il visitatore sospetto può essere bloccato o gli viene chiesto di risolvere un CAPTCHA per dimostrare che è effettivamente di origine umana.

Queste informazioni vengono solitamente raccolte a tre livelli: rete, comportamento e impronta del browser.

  • Il livello di rete: I sistemi anti-bot analizzano le richieste, controllano il punteggio di spam degli indirizzi IP e ispezionano le intestazioni dei pacchetti. I visitatori i cui indirizzi IP compaiono nelle "liste nere", appartengono a centri dati, sono associati alla rete Tor o sembrano sospetti in altri modi, potrebbero trovarsi di fronte a una sfida CAPTCHA. È probabile che vi sia capitato quando Google vi ha inviato a risolvere un CAPTCHA solo perché stavate utilizzando un servizio VPN gratuito.
  • Livello di impronta digitale del browser: I sistemi anti-bot raccolgono informazioni sul browser e sul dispositivo utilizzato per accedere al sito web, creando un'impronta digitale del dispositivo corrispondente. Questa impronta digitale include in genere il tipo, la versione e le impostazioni della lingua del browser, la risoluzione dello schermo, le dimensioni della finestra, il rumore dell'hardware, i font di sistema, i dispositivi multimediali e altro ancora.
  • Livello comportamentale: Alcuni sistemi avanzati esaminano quanto le azioni di un utente corrispondano al comportamento dei visitatori abituali di un sito web.

Esistono molti sistemi anti-bot e le specifiche di ciascuno di essi possono variare notevolmente e cambiare nel tempo. Le soluzioni più diffuse includono:

  • Akamai
  • Cloudflare
  • Datadome
  • Incapsula
  • Casada
  • Perimetrox

Capire quale sistema anti-bot protegge un sito web può essere importante per scegliere la migliore strategia di aggiramento. Sui forum specializzati e sui canali Discord si trovano intere sezioni dedicate all'aggiramento di specifici sistemi anti-bot. Ad esempio, informazioni di questo tipo si trovano su The Web Scraping Club.

Per identificare il sistema anti-bot utilizzato da un sito web, è possibile utilizzare strumenti come l'estensione del browser Wappalyzer.

Come aggirare i sistemi anti-bot?

Per evitare che il sistema rilevi l'automazione, è necessario garantire un livello sufficiente di mascheramento a ogni livello di rilevamento. Questo obiettivo può essere raggiunto in diversi modi:

  • Utilizzando soluzioni personalizzate e mantenendo l'infrastruttura in modo indipendente;
  • Utilizzando servizi a pagamento come Apify, Scrapingbee, Browserless o Surfsky;
  • Combinando proxy di alta qualità, risolutori CAPTCHA e browser anti-rilevamento;
  • Utilizzando browser standard in modalità headless con patch anti-rilevamento;
  • Oppure utilizzando molte altre opzioni di varia complessità.

Mascheramento a livello di rete

Per proteggere un bot a livello di rete, è essenziale utilizzare proxy di alta qualità. Certo, è possibile svolgere compiti semplici utilizzando solo il proprio indirizzo IP, ma è improbabile che questo approccio sia fattibile se si intende raccogliere una quantità significativa di dati. È necessario disporre di buoni proxy residenziali o mobili che non siano stati inseriti in una lista nera per inviare regolarmente decine di migliaia di richieste.


Verifica dell'indirizzo IP tramite IPQualityScore

Quando si sceglie un proxy, prestare attenzione ai seguenti parametri:

  • Se il suo indirizzo IP compare nei database di spam. Questo può essere verificato con strumenti come PixelScan o consultando il database iplists.firehol.org.
  • Se ci sono perdite DNS. Quando si esegue il test utilizzando un verificatore adeguato come DNS Leak Test, il vostro server reale non dovrebbe comparire nell'elenco dei server.
  • Il tipo di provider proxy. I proxy appartenenti agli ISP sono meno sospetti.

Per saperne di più sulla verifica della qualità del proxy , consultare il sito.

I proxy a rotazione sono utili anche per il web scraping. Forniscono molti indirizzi IP, invece di uno solo, riducendo la possibilità che un bot che raccoglie informazioni venga bloccato, poiché è più difficile per il sito web trovare schemi nelle richieste. I proxy a rotazione distribuiscono le richieste tra molti indirizzi IP, riducendo i rischi di blocco dovuti a un numero elevato di richieste da un singolo IP.

Mascheramento a livello di impronte digitali

I browser multiaccount (anti-detect) sono perfetti per la contraffazione delle impronte digitali del browser. Quelli di qualità migliore, come Octo Browser, falsificano l'impronta digitale a livello del kernel del browser e consentono di creare un gran numero di profili di browser, ognuno dei quali appare come un utente separato.

Configurazione dell'impronta digitale di un profilo Octo Browser

Lo scraping dei dati con un browser anti-detect può essere effettuato con l'aiuto di qualsiasi libreria o framework di automazione del browser. È possibile creare il numero desiderato di profili con le necessarie impostazioni di impronte digitali, proxy e cookie, senza dover aprire il browser stesso. In seguito, questi profili possono essere utilizzati in modalità di automazione o manualmente.

Lavorare con un browser multi-account non è molto diverso dall'utilizzare un normale browser in modalità headless. Octo Browser fornisce una documentazione dettagliata con istruzioni passo-passo sulla connessione all'API per tutti i linguaggi di programmazione più diffusi.

Un esempio di creazione di un profilo del browser Octo utilizzando Python

I browser professionali anti-detect consentono di gestire comodamente un gran numero di profili di browser, di collegare proxy e di accedere a dati normalmente non disponibili con i metodi di scraping standard grazie a un sistema avanzato di spoofing dell'impronta digitale.

Simulare le azioni di un utente reale

Per aggirare i sistemi anti-bot, è anche necessario simulare le azioni di utenti reali: ritardi, emulazione del movimento del cursore, pressione ritmica dei tasti, pause casuali e modelli di comportamento irregolari. Spesso è necessario eseguire azioni come autorizzare, cliccare sui pulsanti "Leggi tutto", seguire i link, inviare moduli, scorrere i feed, ecc.

Le azioni dell'utente possono essere simulate utilizzando le più diffuse soluzioni open-source per l'automazione del browser, come Selenium, ma esistono anche altre opzioni, come MechanicalSoup, Nightmare JS e altre.

Per far sì che lo scraping appaia più naturale ai sistemi anti-bot, è consigliabile aggiungere alle richieste ritardi con intervalli irregolari.

Conclusioni

I sistemi anti-bot proteggono i siti web da interazioni automatizzate analizzando le informazioni di rete, del browser e comportamentali dell'utente. Per aggirare questi sistemi, ciascuno di questi livelli richiede un adeguato mascheramento.

  • A livello di rete, è possibile utilizzare proxy di alta qualità, soprattutto quelli a rotazione.
  • Per falsificare l'impronta digitale del browser, è possibile utilizzare browser anti-rilevamento multi-account come Octo Browser.
  • Per simulare le azioni reali degli utenti, è possibile utilizzare strumenti di automazione del browser come Selenium, incorporando inoltre ritardi irregolari e modelli di comportamento.

Volete potenziare la vostra configurazione di web scraping con strumenti anti-detector di alto livello? 

Octo Browser è la soluzione ideale. Offre uno spoofing delle impronte digitali all'avanguardia e una gestione multi-account senza sforzo. 

Utilizzate il codice promozionale PROXYSCRAPE per un abbonamento base gratuito di 4 giorni a Octo Browser per i nuovi utenti. Non perdete questa opportunità di migliorare il vostro gioco di web scraping!

Buona raschiatura!