Come forzare il "calcolo costoso" quando i client si connettono al mio server?

8

Pagina 183 di Segreti e amp; Si trova nel contrastare gli attacchi denial-of-service:

Some researchers have proposed defenses that force the client to perform an expensive calculation to make a connection. The idea is that if the client has to spend computation time to make a connection, then it can't flood the target with as many connections.

Forzare il client a eseguire un calcolo prima che la connessione sembri un ottimo modo per combattere DOS , ma ci sono alcuni esempi di questo metodo utilizzato nella pratica?

In particolare, come posso usare questa idea per proteggere il mio server HTTP dagli attacchi DOS?

    
posta Pacerier 09.03.2014 - 15:59
fonte

1 risposta

8

Penso che questa idea fondamentalmente descriva il concetto proof-of-work come viene usato in anti -spam setup o più popolarmente Bitcoin.

La prova di lavoro viene utilizzata per fare in modo che il richiedente / il mittente esegua un piccolo calcolo per dimostrare la sua autenticità, seguendo l'idea che gli spammer (incluso lo spam non correlato alla posta) eviteranno tali sistemi perché costerebbe loro troppa potenza della CPU per inviare il loro spam.

Non conosco alcuna implementazione nel traffico http "normale", ma sembra che esistano sicuramente:

La loro implementazione: gli attacchi DoS comuni sono basati sul protocollo TCP (la base per il traffico HTTP). Gli attacchi abusano della stretta di mano a tre vie inviando richieste SYN al server senza rispondere ai segnali SYN-ACK inviati dal server. Come è l'idea principale di un attacco DoS, il server può avere così tante richieste in sospeso e smette di inviarle a mittenti legittimi di segnali SYN che a un certo punto appaiono quindi offline. Aggiungendo un ulteriore livello nel tremolio della mano a tre vie tramite POW, il DoS TCP viene evitato perché i calcoli aggiuntivi necessari interrompono il flusso di richieste DoS previsto. Poiché solo le richieste legittime raggiungono il server, il traffico HTTP può fluire liberamente e poiché i calcoli extra richiesti dal POW richiedono solo 0,2-0,3 secondi, l'utente non subisce alcun ritardo.

Inoltre, questa domanda potrebbe conservare alcune informazioni pertinenti

    
risposta data 10.03.2014 - 11:09
fonte

Leggi altre domande sui tag