I malintenzionati possono utilizzare degli strumenti di web scraping per accedere ai dati molto più rapidamente del previsto. Il risultato è che i dati potrebbero essere utilizzati per scopi non autorizzati.
Dopo aver letto questo articolo sarai in grado di:
Argomenti correlati
Cos'è lo scraping dei contenuti?
Cos'è un bot?
Cos'è la gestione dei bot?
Attacco brute-force
Cos'è un attacco di sottrazione e uso illecito delle credenziali?
Abbonati a theNET, il riepilogo mensile di Cloudflare sulle tematiche più discusse in Internet.
Copia link dell'articolo
Per scraping dei dati (più brevemente scraping), nella sua forma più generale, si intende una tecnica in cui un programma informatico estrae dei dati dall'output generato da un altro programma. Lo scraping si esplicita comunemente nel web scraping, che è il processo nel quale una applicazione estrae informazioni di valore da un sito web.
Gli scraper possono essere progettati per vari scopi, come ad esempio:
Il crawling è l'attività che i grossi motori di ricerca, come Google, intraprendono quando spediscono i loro robot crawler, come Googlebot, nella rete per indicizzare i contenuti di Internet. Lo scraping, invece, è un'attività strutturata specificamente per estrarre dati da uno specifico sito web.
Queste sono tre differenze comportamentali tra i bot scraper e i crawler:
| Onestà/trasparenza | Manovre avanzate | Conformità al file robots.txt | |
| I bot di scraping | Si comportano come dei browser, nel tentativo di eludere le contromisure esistenti per bloccarli. | Possono effettuare azioni avanzate, come compilare dei moduli, per accedere a informazioni riservate. | In genere, non rispettano quanto indicato nel file robots.txt. Questo significa che possono estrarre dei contenuti violando esplicitamente la volontà del proprietario di un sito. |
| I bot crawler | Manifestano esplicitamente la loro finalità e non cercano di ingannare un sito facendogli pensare di essere qualcosa che non sono. | Non provano ad accedere alle sezioni protette di un sito web. | Rispettano il file robots.txt, e si conformano alla volontà del proprietario del sito circa i dati che è lecito estrarre e le aree del sito web che invece sono interdette. |
Il processo di web scraping è abbastanza semplice, anche se la sua implementazione può essere complessa. Possiamo riassumere il processo in tre fasi:
In genere, le aziende non vogliono che i propri contenuti vengano scaricati e riutilizzati per scopi non autorizzati, quindi possono cercare di non esporre tutti i dati tramite un'API utilizzabile o altre risorse facilmente accessibili. I bot di scraping, dall'altra parte, sono interessati a ottenere i dati dei siti web indipendentemente da eventuali tentativi di limitazione dell'accesso. Di conseguenza, questi bot e le diverse strategie di protezione dei contenuti sono costantemente impegnati a giocare al gatto col topo, nel tentativo di avere la meglio gli uni sugli altri.
Le strategie di scraping intelligenti richiedono strategie di mitigazione altrettanto intelligenti. I metodi per limitare l'esposizione alle attività di data scraping includono i seguenti:
*Un browser headless è un tipo di browser web, molto simile a Chrome o Firefox, ma non dispone di un'interfaccia utente visiva, cos che gli consente di muoversi molto più velocemente rispetto a un browser classico. Poiché un browser headless gira a livello di riga di comando, non è necessario che esegua il rendering di intere applicazioni web. Gli scraper di dati scrivono bot che utilizzano browser headless per richiedere i dati più velocemente, poiché nessun umano visualizza ogni pagina sottoposta a scraping
L'unico modo per arrestare definitivamente lo scraping è cessare di pubblicare contenuti su un sito. Tuttavia, l'utilizzo di una soluzione avanzata di gestione dei bot può aiutare i siti a eliminare l'accesso per i bot scraper.
Cloudflare Bot Management utilizza l'apprendimento automatico e l'analisi comportamentale per identificare le attività di scraping dannose, proteggendo contenuti specifici e impedendo ai bot di sfruttare proprietà web. Allo stesso modo, la modalità Super Bot Fight è progettata per aiutare le organizzazioni più piccole a difendersi da scraper e altre attività bot dannose, offrendo loro maggiore visibilità sul traffico dei bot.
Lo scraping dei dati è una tecnica in cui un programma informatico estrae dati dall'output di un altro programma. Una forma comune di questo è il web scraping
Il Web scraping può essere utilizzato per molti scopi, tra cui: Content scraping: un aggressore estrae il contenuto di un sito web per replicarlo sul proprio sito. Price scraping: un concorrente estrae dati sui prezzi per ottenere un vantaggio abbassando i prezzi. Scraping dei contatti: un bot raccoglie dettagli di contatto come indirizzi email e numeri di telefono dai siti web per utilizzarli a scopo di spam, chiamate automatiche o social engineering dannosa.
Il web crawling è il processo utilizzato dai principali motori di ricerca per indicizzare i contenuti di Internet, e i bot di crawling sono generalmente trasparenti riguardo al loro scopo. Lo scraping di dati, invece, è tipicamente concepito per estrarre dati specifici da un sito web specifico.
Il processo prevede in genere tre fasi. Innanzitutto, un bot scraper invia una richiesta HTTP GET a un sito Web. In secondo luogo, quando il sito web risponde, lo scraper analizza il documento HTML alla ricerca di una sequenza specifica di dati. Infine, i dati estratti vengono convertiti in un formato specifico progettato dall'autore del bot.
Esistono diverse strategie che possono limitare l'esposizione al data scraping. Tra queste rientrano le richieste di limitazione della velocità per bloccare il traffico anormalmente veloce proveniente da un singolo indirizzo IP, la modifica regolare del markup HTML di un sito web per interrompere gli scraper semplici e l'utilizzo di sfide come i CAPTCHA per i richiedenti ad alto volume.
Tuttavia, l'utilizzo di una soluzione avanzata di gestione dei bot può aiutare i siti a eliminare l'accesso per i bot scraper. Cloudflare Bot Management, ad esempio, utilizza il machine learning e l'analisi comportamentale per identificare e bloccare le attività di scraping dannoso.