Un replay attack, a volte chiamato anche playback attack, è un attacco informatico in cui l’esecutore intercetta e in seguito ripete una trasmissione di dati valida all’interno di un network. A causa della validità dei dati originali (che in genere provengono da un utente autorizzato) i protocolli di sicurezza del network considerano l’attacco come una normale trasmissione di dati. Dato che i messaggi originali vengono intercettati e ri-trasmessi alla lettera, gli hacker che si servono di replay attack non devono necessariamente decifrarli.
Cosa può fare un Hacker con un Replay Attack?
Nonostante gli evidenti pericoli a loro associati, ci sono dei limiti a ciò che un hacker può ottenere attraverso replay attack da soli. L’autore non può modificare i dati della trasmissione intercettata senza che il network la respinga, limitando l’efficacia dell’attacco alla ripetizione di azioni passate. Questi attacchi sono anche relativamente facili da contrastare. Una difesa elementare come aggiungere un timestamp alla trasmissione di dati è sufficiente per prevenire tentativi di replay semplici. I server possono anche identificare messaggi ripetuti e limitarli a un certo numero di ripetizioni per ridurre il numero di tentativi che un hacker può fare attraverso il replay di messaggi in rapida successione.
Perché i Replay Attack hanno Importanza nel Mondo delle Criptovalute
Quando si verificano questi hard fork, diventa teoricamente possibile per gli hacker impiegare replay attack contro i registri blockchain. Una transazione elaborata su un registro da una persona il cui wallet risulta valido prima dell’hard fork risulterà valido anche sulla nuova versione. Di conseguenza, una persona che ha ricevuto un certo numero di unità di criptovaluta da qualcun’altro attraverso un registro potrebbe passare all’altro registro, replicare la transazione e trasferire illecitamente un numero di unità identico al proprio conto una seconda volta. Dato che gli wallet non fanno parte della storia condivisa dei registri, quelli creati dopo l’esecuzione di un hard fork non sono vulnerabili a questi attacchi.
Come si Proteggono le Blockchain da Questi Attacchi?
Sebbene la vulnerabilità ai replay attack dei registri blockchain dopo un fork sia un problema serio, gran parte degli hard fork include protocolli di sicurezza progettati specificatamente per prevenire il successo di tali attacchi. Le misure efficaci contro replay attack sulle blockchain si suddividono in due categorie, conosciute come strong replay protection e opt-in replay protection. Nel caso della strong replay protection, un indicatore speciale viene aggiunto al nuovo registro dopo l’hard fork per garantire che le transazioni eseguite non siano valide nel registro tradizionale, e viceversa. Questo tipo di protezione è stato implementato quando Bitcoin Cash si è separato da Bitcoin.
Una volta implementata, la strong replay protection viene eseguita automaticamente non appena avviene l’hard fork. Tuttavia, la opt-in replay protection richiede agli utenti di effettuare manualmente modifiche alle proprie transazioni per garantire che non possano essere ripetute. La opt-in protection può essere utile quando l’hard fork è inteso come un aggiornamento del registro di una criptovaluta, invece di una divisione totale.
Oltre a queste soluzioni che interessano l’intero registro, gli utenti individuali possono anche prendere altri provvedimenti per non cadere vittima di replay attack. Uno di questi metodi è bloccare il trasferimento di monete fino a quando il registro non ha raggiunto un certo numero di blocchi, prevenendo quindi a qualsiasi replay attack che coinvolge queste monete di venire verificato dal network. E’ opportuno notare, però, che non tutti gli wallet o registri offrono questa funzione.
Conclusione
I replay attack rappresentano una minaccia concreta per la sicurezza di un network. A differenza di molti altri tipi di attacchi, i replay attack non si basano sulla decrittazione di dati, fattore che li rende un vettore efficace per gli hacker che devono affrontare protocolli crittografici sempre più sicuri. A causa degli hard fork usati per aggiornarli o separarli, i registri blockchain sono particolarmente vulnerabili a questo tipo di attacco informatico. Tuttavia, esistono soluzioni valide e ragionevolmente efficaci nella protezione dei sistemi blockchain. In particolare, l’utilizzo di strong replay protection può garantire che gli attaccanti non riescano a replicare transazioni dopo l’esecuzione dell’hard fork.z