Reflection attack: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m WPCleaner v1.36 - Disambigua corretto un collegamento - TCP |
Nessun oggetto della modifica |
||
(7 versioni intermedie di 6 utenti non mostrate) | |||
Riga 1:
{{nota disambigua|l'attacco di tipo "denial of service"|Distributed Reflection Denial of Service}}
Il '''reflection attack''' è un tipo di [[attacco informatico]] volto a colpire sistemi di [[autenticazione]] di tipo ''[[challenge-response]]'', che usano lo stesso [[protocollo di comunicazione]] in entrambe le direzioni (ovvero, ciascuna parte utilizza lo stesso protocollo per autenticarsi con l'altra parte). L'idea alla base di questo tipo di attacco è di imbrogliare la vittima chiedendogli una soluzione (''response'') alla sua stessa sfida (''challenge'').<ref>{{cita libro|titolo=Computer Networks|autore=[[Andrew S. Tanenbaum]]|edizione=4|isbn=0-13-038488-7|pagine=787-790|anno=2002|lingua=en}}</ref>
== Attacco ==
In linea di massima, l'attacco è condotto come segue:
# L'attaccante inizia la connessione con la vittima.
# La vittima chiede all'attaccante di autenticarsi, inviandogli una sfida (''challenge'').
# L'attaccante inizia una seconda connessione con la vittima chiedendogli di identificarsi tramite la stessa ''challenge''.
# La vittima risponde alla sfida con la risposta corretta.
# L'attaccante invia il ''response'' corretto nella prima connessione.
Se il protocollo di autenticazione non è progettato attentamente, la vittima che riceve la risposta la accetterà in quanto corretta e lascerà all'attaccante un canale di connessione autenticato (mentre il secondo canale verrà abbandonato).
== Contromisure ==
La contromisura più comune a questo tipo di attacco è la seguente: la vittima inserisce il suo codice di identificazione nel ''response'' alla ''challenge''. In questo modo, se a sua volta riceve un ''response'' contenente il suo ID, può semplicemente scartarlo.<ref>{{cita libro|url=https://www.cl.cam.ac.uk/~rja14/book.html|titolo=Security Engineering: A Guide to Building Dependable Distributed Systems|autore=[[Ross J. Anderson]]|lingua=en|ISBN=0-471-38922-6|pagine=20–22|anno=2001|edizione=1}}</ref>
# Alice inizia la connessione con Bob
# Bob sfida Alice inviandogli un ''[[nonce]]''. <math>B \rightarrow A: N</math>
# Alice risponde inviando il suo identificatore e il ''nonce'' crittati usando la chiave comune <math>K_{ab}</math>. <math>A \rightarrow B: \{A, N\}K_{ab}</math>
# Bob decifra il messaggi, controllando che provenga da Alice e non da lui stesso assicurandosi che contenga l'identificatore <math>A</math> e non <math>B</math>. Se il ''nonce'' è quello inviato da lui, accetta il messaggio.
Un'altra possibile soluzione è usare protocolli (o chiavi crittografiche) differenti per le due direzioni di autenticazione.
== Note ==
<references/>
== Voci correlate ==
* [[
* [[Denial of service]]
* [[Replay attack]]
{{Portale|
[[Categoria:Tecniche di attacco informatico]]
▲[[Categoria:Sicurezza in rete]]
|