Come funziona un attacco DOS quando si attacca un singolo server con un singolo client?

1

Come è possibile eseguire un attacco DOS da un singolo computer?

Supponiamo che due computer, uno funga da server e l'altro da client. Entrambi hanno 100/100 mbit bandwitdh.

Come può quindi il client eseguire un attacco DOS sul server se entrambi hanno la stessa larghezza di banda? Voglio dire, perché è tecnicamente possibile?

    
posta Rox 04.03.2012 - 11:07
fonte

3 risposte

3

La larghezza di banda è solo una risorsa che può essere scelta come target. Se il server esegue alcuni costosi script sul lato server, è abbastanza possibile esaurire le risorse della CPU o della RAM senza sovraccaricare la rete.

    
risposta data 04.03.2012 - 11:15
fonte
3

Limitando semplicemente questa risposta all'esaurimento della larghezza di banda, ci sono ancora alcune possibilità non coperte dalle risposte esistenti.

È improbabile che tu sia l'unico cliente che usa il server. Se il server sta già ricevendo richieste e inviando risposte per un totale di 10 Mb / s, il client DoS dovrà utilizzare solo 90 Mb / s per saturare la connessione.

Non devi saturare completamente una connessione per causare un DoS. Non appena superi i 90 Mb / s, i clienti reali avranno problemi a superare e le richieste inizieranno ad accodarsi. In termini reali, ciò causerà un caricamento molto lento della pagina. A meno che il tasso di richieste in entrata rallenti, questo alla fine sarà un DoS completo.

Esistono anche tecniche per amplificare la larghezza di banda utilizzata dal server.

Una singola richiesta HTTP di solito richiede al server di fare diverse richieste ad altre risorse per soddisfare la richiesta originale. Questi potrebbero essere interni come query di database, memcached, sphinx, NFS, ecc. O esterni come richieste DNS, chiamate API e richieste proxy. Se la restrizione di 100Mb / s è sullo switch connesso del server, il client non avrà bisogno del suo pieno 100Mb / s per eseguire il server. Se la limitazione a 100 Mb / s è solo sul collegamento ascendente, il server potrebbe ancora utilizzare una larghezza di banda maggiore del client a causa di tali richieste DNS, chiamate API e richieste proxy.

Tuttavia, non hai specificato che il server è un server web .

Poiché l'origine di un pacchetto UDP può essere falsificata facilmente, il client può effettuare richieste UDP del server in modo tale che la risposta sia molto più grande della richiesta e venga inviata in un luogo diverso dal client. Le risposte DNS sono generalmente più grandi delle richieste e, se fatte correttamente, possono essere 30 volte più grandi. Nel caso di un server di streaming video, una singola richiesta per lo streaming di un video da 10 MB utilizza pochi Kb / s dal client e ridurrà al massimo la connessione a 100 Mb / s sul server per 8/10 di secondo. Due richieste di questo tipo al secondo farebbero il server (e qualche ragazzo a caso che possiede l'IP falsificato).

    
risposta data 04.03.2012 - 14:43
fonte
2

Il DoS viene, come dici dal fatto che hanno la stessa larghezza di banda, quindi se riesci a saturare la larghezza di banda del server, diventerà molto più difficile per le altre persone connettersi al server.

Se inizi a scaricare 30 GB di file, e il server non accelera, limita o modella la sua larghezza di banda, puoi "farlo" per tutto il tempo necessario per scaricare quei 30 pacchetti.

Ci sono altri modi come:

  • TCP SYN flood
  • ICMP flood

Anche Sergey Sheykan ha fatto un modo per fare un server con letture TCP lente, leggi l'articolo qui .

    
risposta data 04.03.2012 - 11:42
fonte

Leggi altre domande sui tag