Qual è il sito Web che controlla il mio browser per proteggere il sito Web da un DDoS?

100

Alcuni siti che visito mi portano in una pagina che dice approssimativamente "Controllo del browser prima di accedere a example.com. Protezione dagli attacchi DDoS da parte di CloudFlare".

Che cosa si sta verificando esattamente sul mio browser e in che modo contribuirà a proteggerlo da un attacco DDoS?

    
posta Supreme Grand Ruler 26.03.2017 - 22:07
fonte

4 risposte

95

La maggior parte degli attacchi DOS (Denial-Of-Service) si basa su una certa asimmetria tra le risorse coinvolte sul lato dell'attaccante e sul lato bersaglio. In altre parole, per avere successo, un DOS ha bisogno di un'azione per richiedere pochissime risorse sul lato client (in modo che ogni client possa inviare un sacco di richieste) mentre coinvolge risorse più grandi lato server (quindi i server non saranno in grado per gestire il carico).

A causa di questo, gli attacchi DDOS (la versione "Distributed" degli attacchi DOS) non sono ovviamente coinvolti da umani reali che fanno clic sui collegamenti in una scheda del browser, ma da robot che inviano una quantità enorme di richieste parallele al target. La conseguenza di ciò è che il "client" DDOS non è un vero browser, ma uno strumento che può simularne di più.

Il sistema di protezione DDOS di Cloudflare è rapidamente descritto sul loro sito web come segue: "viene presentata una pagina interstitial al tuo i visitatori del sito per 5 secondi mentre i controlli sono completati ".

Due cose attirano la mia attenzione qui:

  • I controlli : il modo più ovvio per ordinare gli utenti di siti Web reali da bot automatici DDOS è controllare se il client HTTP è un vero browser o meno. Questo può essere verificato testando il comportamento del cliente rispetto a un pannello di test (vedi il post " rilevamento bot tramite fingerprinting del browser " per esempio) e confrontare il risultato con quello atteso da un'autentica istanza del browser che il client afferma di essere (ad esempio se il client dichiara di essere una versione 52 di Firefox in esecuzione su un computer Windows 10, presenta le stesse caratteristiche?).

  • 5 secondi : l'esecuzione di test JavaScript e il reindirizzamento del visitatore potrebbero essere un'operazione molto veloce e quasi trasparente, quindi credo che questo timeout "5 secondi" non sia lì per caso, ma è destinato a tornare l'asimmetria computazionale torna a favore del server.

    • La versione più leggera di tale principio sarebbe semplicemente chiedere al client di attendere (dormire) 5 secondi prima di inviare nuovamente la stessa richiesta (con un identificatore univoco memorizzato in un cookie, come descritto nella pagina Cloudflare). Ciò costringerebbe il client DDOS a gestire in qualche modo una coda di reindirizzamenti in sospeso e renderebbe il processo DDOS generale meno efficace.

    • Un'alternativa più brutale sarebbe quella di richiedere al browser di risolvere alcune sfide matematiche che richiederebbero alcuni secondi per essere risolti su un sistema domestico medio. In tal caso, gli aggressori non avrebbero altra scelta che spendere il potere computazionale per risolvere queste sfide se vorrebbero procedere, ma farlo annullerebbe completamente l'asimmetria dal momento che tutta la risorsa dell'attaccante sarà impegnata a risolvere le sfide invece di inviare richieste, finalmente "DOS" il sistema dell'attaccante invece di quello di destinazione.

risposta data 26.03.2017 - 23:03
fonte
16

Solo per aggiungere quello che so per esperienza: Cloudflare blocca i browser non grafici (testati: link, lynx), non sulla prima pagina, ma dalla seconda. Questi browser (presumibilmente) non caricano le immagini, almeno non li mostrano e non supportano neanche javascript.

Come faccio a saperlo? Essere bloccato con un ambiente grafico rotto e amp; ricerca nel Web di risposte ...

    
risposta data 27.03.2017 - 16:09
fonte
2

Ciò significa che il proprietario della pagina ha assunto i servizi Cloudflare per proteggere la sua pagina dagli attacchi DoS. È una sorta di pagina intermedia che controlla la connessione e quindi reindirizza e mostra la pagina finale se il controllo viene superato.

Controllano l'origine (IP) della connessione, il tipo di pacchetto, la dimensione del pacchetto, il numero di pacchetti ricevuti (tasso), l'agente utente del browser, ecc ... è come si misurano se la connessione è legitime o non passare il filtro o no.

    
risposta data 26.03.2017 - 22:19
fonte
2

Che cosa fa la "sfida browser"?

Un semplice calcolo mediocre in JavaScript. Quindi imposta un UID come cookie nel tuo browser. Quindi la prossima volta che visiti il sito web controlla se il cookie è presente e se non è scaduto. Se il cookie non è presente o è scaduto, "ti sfida" di nuovo.

Come?

C'è un modulo nascosto all'interno della pagina e JavaScript, il modulo ottiene numeri "segreti" casuali e JavaScript esegue i calcoli e invia il modulo al server.

Questo è il modo più mediocre per mitigare gli attacchi DDoS di Layer 7, perché solo un vero browser (ish) può eseguire JavaScript e fare i conti. Script DDoS regolari come ad esempio: loris lento non può eseguire JavaScript e, poiché il server non riceve il calcolo, restituisce solo 403/503.

    
risposta data 05.07.2018 - 09:17
fonte

Leggi altre domande sui tag