Come un pacchetto TCP DOS diverso dal normale pacchetto?

0

a normal tcp packet shown in figure

Come un pacchetto TCP che causa un attacco DOS diverso dal normale pacchetto Tcp?

    
posta ebola virus 09.04.2013 - 11:11
fonte

5 risposte

6

Non è diverso, davvero. Una negazione del servizio di solito comporta un flusso di pacchetti, piuttosto che un singolo pacchetto malformato. Ci sono stati alcuni attacchi "nel corso della giornata", come il Ping of Death, che ha sfruttato le vulnerabilità nel codice di gestione pacchetti sul sistema di destinazione, ma queste sono (in gran parte) una cosa del passato.

In generale, con un attacco DoS, scoprirai che migliaia di pacchetti SYN vengono inviati per affamare il sistema di risorse. Questo può impedire ai legittimi utenti di connettersi, dal momento che il sistema sta tentando di servire i client falsi.

    
risposta data 09.04.2013 - 11:21
fonte
4

I pacchetti TCP "per DoS" non sono diversi dai pacchetti TCP "non per DoS". La differenza è nell'intenzione .

Un server tipico, di fronte a Internet (ad esempio un server Web), è pronto a spendere alcune delle sue preziose risorse (CPU, RAM ...) per l'elaborazione e rispondere alle richieste dei client anonimi. Questa è la sua funzione. Il server è progettato per agire in questo modo. Naturalmente, queste risorse non sono gratuite; le persone che hanno pagato per loro lo fanno perché credono che i clienti utilizzeranno il server in un "modo normale". Ad esempio, per un Q & Un sito come security.stackexchange.com , i proprietari del server sono pronti a pagare per il server con il accordo tacito che il client è sotto il controllo di un essere umano che leggerà o almeno sfoglia il contenuto della pagina.

Un tipico rifiuto-di-servizio è quando molti client si connettono senza rispettare tale accordo: i client fai molte richieste e nessun umano legge le risposte. Questo fa sì che il server spenda le risorse "per niente" e, se ci sono abbastanza molti client non umani, il server non ha più risorse sufficienti per gestire altri client normali, onesti e umani.

Ma tutto questo riguarda l'elaborazione dei dati una volta ottenuti dal lato client. Per sua natura, questo è fuori dalla portata del server. Dal punto di vista del server, queste richieste DoS non sono individualmente distinguibili dalle richieste normali. Per evidenziare la differenza, considera le seguenti situazioni:

  1. Una botnet, sotto il controllo di un utente malintenzionato, invia un milione di richieste al secondo al server di destinazione.
  2. Dieci milioni di esseri umani, sotto l'ordine diretto di un governo totalitario, usano ciascuno il proprio computer per fare clic follemente sul sito.
  3. Dieci milioni di esseri umani, fuori dal tempo libero e dal consumismo, visitano il sito e lo usano come previsto.

La situazione 1 è un semplice DoS. Così è la situazione 2, che non è distinguibile dalla situazione 1 semplicemente guardando i pacchetti. La situazione 3, tuttavia, non è un DoS; il proprietario del server non reagirà lamentandosi e chiamando la polizia; invece, il proprietario del server acquisterà server più grandi e berrà champagne alla prospettiva di dieci milioni di potenziali clienti. Ma, ancora una volta, non c'è alcuna differenza tecnica tra le situazioni 2 e 3, come si può vedere dal server.

Difesa pratica contro il DoS implica metodi euristici per riconoscere la situazione 3 in modo diverso dalle situazioni 1 e 2. CAPTCHA , ad esempio, vengono utilizzati per assicurarsi che dietro la tastiera ci sia un vero essere umano, quindi viene rilevata la situazione 1 (ma non 2) (almeno questo è l'intento, se il CAPTCHA funzioni bene è un'altra domanda). Il sistema di rilevamento euristico sarà efficace nel discriminare il DoS di tipo 1 mal fatto, ma è facilmente sconfitto con un po 'di competenza e usando molti di client distinti (il famoso rifiuto di servizio distribuito attacco).

In ogni caso, i metodi di rilevamento DoS non riguardano l'analisi della richiesta una , ma delle correlazioni tra molte richieste . Non troverai un po 'nell'intestazione TCP che dice "questo è per un DoS, non per un normale utente umano". DoS, o non DoS, è una domanda definita su un grande insieme di richieste. Ogni singola richiesta è identica a una normale richiesta "non-DoS".

    
risposta data 09.04.2013 - 13:12
fonte
3

Ai vecchi tempi, ci fu un divertente attacco chiamato ping-of-death . Implica l'invio di un pacchetto ping maggiore di 65.535 byte che causerà l'arresto anomalo del sistema di destinazione. Questo attacco è stato corretto per un po 'di tempo.

Generalmente, un attacco denial of service si verifica quando un sistema o un'applicazione di destinazione riceve un pacchetto contenente dati che non si aspettava di ricevere e quindi non poteva gestire. L'attacco di morte è un esempio di questo. Questo tipo di attacco denial of service sta diventando sempre più raro.

Un altro tipo di attacco denial of service è l'attacco denial of service distribuito. Ciò comporta l'invio di enormi quantità di pacchetti normali a un sistema di destinazione nella speranza di utilizzare tutta la larghezza di banda disponibile, bloccando così il traffico legittimo. La maggior parte degli attacchi di negazione del servizio sono di questo tipo perché è incredibilmente semplice da eseguire e può essere facilmente ridimensionata per abbattere qualsiasi obiettivo. Vedi il recente Spamhaus ' attacco .

    
risposta data 09.04.2013 - 11:17
fonte
1

Quasi tutti gli attacchi DoS non utilizzano pacchetti di rete alternativi. Ciò è dovuto al fatto che gli attacchi DoS tramite l'alternanza di pacchetti di rete sono troppo specifici e quindi non sono ampiamente utilizzati. Negli attacchi SYN utilizza solo un indirizzo mittente falsificato.

La maggior parte dei DoS sfrutta l'applicazione di servizio, i pacchetti di rete sono gli stessi dei normali pacchetti. Questo perché il DoS sta tentando di paralizzare l'applicazione di servizi Internet inviando richieste lente di elaborazione.

    
risposta data 09.04.2013 - 11:35
fonte
1

In questi giorni, un sacco di attacchi DoS di livello 7, e ho notato che dico che il significato è 1 computer.

Quindi ti darò un esempio, la bella richiesta di GET incompleta di loris lenti. È possibile connettersi al server HTTP tramite TCP e quindi inviare una richiesta GET HTTP incompleta, causando il timeout della connessione del server perché l'idea è che si pensa di essere su una rete non sicura e non si interrompe per lunghi periodi di tempo, come 400 secondi.

Devi solo riempirli, o anche farli andare a 1 secondo al secondo, e il server Apache che non ha difesa è finito.

Leggi questo articolo per ulteriori informazioni .

Quindi per rispondere alla tua domanda: il pacchetto di connessione TCP non è diverso, ma ciò che invii può essere diverso e può fare una grande differenza, nota che il pacchetto di connessione è ancora estremamente importante perché è quello che ti connette al server. Semplicemente fai in modo che il server non interrompa la connessione o esegui qualcosa di così sfacciato

    
risposta data 20.01.2015 - 14:43
fonte

Leggi altre domande sui tag