In che modo un'azienda come CloudFlare blocca la scansione dei bot e i raccoglitori di e-mail?

21

L'ho visto su CloudFlares homepage:

CloudFlare protects against a range of threats: cross site scripting, SQL injection, comment spam, excessive bot crawling, email harvesters, and more.

In che modo un'azienda come CloudFlare blocca i crawler e le e-mail? Credo che siano abbastanza intelligenti da non usare User-Agent: Evil-Email-Harvester . Quindi, come fai a distinguere un bot come un e-mail da un utente normale?

Immagino che potresti vedere che si tratta di un tipo di bot perché ricevi richieste per più siti dallo stesso IP. Ma questo sarebbe anche il caso di molti IP legittimi, come una VPN. Come fai a distinguere il buono dal cattivo?

    
posta Anders 03.03.2016 - 09:54
fonte

3 risposte

23

CloudFlare funge da protezione tra il tuo server web e il client. Ogni contenuto ricevuto dal cliente viene fornito dal tuo server web e filtrato da CloudFlare. In questo modo, CloudFlare offusca gli indirizzi e-mail filtrandoli utilizzando un'espressione regolare prima di inviarli al client.

Se il tuo sito web contiene l'e-mail

<a href="mailto:[email protected]">[email protected]</a>

CloudFlare lo sostituirà con

<a href="/cdn-cgi/l/email-protection#fed8ddcfcfcbc5d8ddc8cac5d8ddcfcfcbc5d8ddc7c7c5d8ddcfcecac5d8ddc7c9c5d8ddcac8c5d8ddc7c6c5d8ddcfccccc5">&#115;&#64;&#115;&#99;&#104;&#97;&#46;&#98;&#122;</a>

La cartella / cdn-cgi / -, sebbene punti ancora al server web, è solo per CloudFlare che filtra automaticamente tutto ciò che invii, deoffuscando e restituendo l'indirizzo email corretto.

Naturalmente questo non è a prova di proiettile (questo semplicemente non è possibile) dato che un bot può continuare su quell'URL o cercare email codificate - pattern. Questo è un evento raro e la maggior parte dei semplici crawler di oggi non troverà la tua email.

Non dovresti fare affidamento su questo approccio - CF è già abbastanza popolare ed è facile rilevare e deobfuscare quegli indirizzi email. Usare le tue proprie tecniche di offuscamento è più probabile che sia sicuro contro i mietitori intelligenti poiché è troppo lavoro per adattare il crawler a ogni singola tecnica di offuscamento.

    
risposta data 03.03.2016 - 10:20
fonte
16

Il comportamento del bot semplice e il comportamento del "normale utente" sono evidenti e la maggior parte dei bot tendono ad essere relativamente semplici, poiché funziona per la maggior parte dei siti. Ad esempio, considera l'arrivo su Security.SE:

  • Un essere umano carica la pagina, c'è un ritardo di alcuni secondi verso l'alto mentre leggono le prime domande, poi ottieni una richiesta per una pagina, seguita da richieste avviate dal browser per i file di supporto (immagini, script, stili) . Ci si aspetta quindi un po 'di tempo prima di una richiesta con quella pagina quando il referente entra per un'altra pagina. Un utente più tecnico potrebbe aprire diverse domande se sta utilizzando un browser a schede, ma ci sarà una breve pausa tra queste richieste (mentre spostano il mouse o la scheda alla domanda successiva), quindi, di nuovo, ci si aspetta una pausa prima eventuali richieste manuali da queste pagine.
  • Un bot carica la pagina e la analizza immediatamente, cercando collegamenti / indirizzi email. Si vede un gran numero di richieste quasi immediatamente dopo che la pagina è stata inviata. A seconda del bot, potresti scoprire che i file di supporto non sono caricati (bot non si cura del tuo stile). È probabile che il bot faccia lo stesso con i link delle pagine ricevute e continui a farlo finché non sarà in grado di trovare altri link.

Questi metodi possono essere aggirati con un po 'di sforzo per rendere un bot simile a un essere umano, ma questo rallenterebbe molto il processo di scansione, quindi i proprietari di bot dubbi non sembrano preoccuparsi di farlo.

    
risposta data 03.03.2016 - 10:16
fonte
12

Oltre alla risposta di James 'e Matthew (che sono entrambi punti validi tra l'altro):

Ovviamente servizi come CloudFlare hanno un sacco di metodi di rilevamento per decidere se un client è autorizzato o meno attraverso i vari livelli di protezione.

Hanno molte informazioni sul loro sito web su queste funzionalità, ma probabilmente non troverai regole specifiche e dettagli di implementazione che renderebbero più facile l'individuazione del rilevamento.

I guess you could see that it is some kind of bot because you get requests for multiple sites from the same IP. But that would also be the case for many legit IPs, like a VPN. How do you tell the good from the bad?

Aneddot: sono spesso considerato sospetto da CloudFlare mentre sono connesso a una VPN.

Sospetto che molti dei fattori menzionati da Matteo (tempo di caricamento, tipo di risorse richieste, pause prima delle prossime richieste) contribuiscano a CloudFlare a non bloccarmi istantaneamente.
Al contrario, pubblicano ReCaptcha di Google per confermare che non sono un bot / crawler e me ne facciano seguito.

Altre informazioni:
Risposta di James: E-mail offuscamento < br> La risposta di Matthew: Web Application Firewall / WAF

    
risposta data 03.03.2016 - 11:04
fonte

Leggi altre domande sui tag