Vulnerabilità Web3 Ping of Death: come proteggere la tua rete da attacchi
Vulnerabilità del protocollo NEAR
Il protocollo NEAR ha recentemente rivelato una vulnerabilità significativa nel suo sistema di networking peer-to-peer, che avrebbe potuto compromettere l’intero funzionamento della rete. Secondo un rapporto di Zellic, una società di sicurezza blockchain, la falla presente nei nodi validatori del protocollo NEAR consentiva a un potenziale attaccante di avviare una crisi sistemica, interrompendo la comunicazione tra i nodi e provocando il crash di tutti i nodi sulla rete. Fortunatamente, il problema è stato risolto attraverso un aggiornamento nel mese di gennaio, prima che potesse essere sfruttato da eventuali malintenzionati.
Zellic ha definito il problema come un “Web3 Ping of Death”, a causa della sua capacità di fermare la rete in un istante. La vulnerabilità è stata identificata durante un’analisi del protocollo di networking peer-to-peer di NEAR, utilizzato dai nodi validatori per comunicare tra loro. Questo protocollo include un meccanismo di “handshake” per stabilire connessioni sicure tra i nodi, approfondendo la protezione contro nodi malevoli. Per collegarsi, un nodo remoto invia un messaggio di handshake, ricevendo successivamente una conferma dal nodo locale.
La verifica dell’identità del nodo remoto richiede la presentazione di una chiave pubblica e la firma di un messaggio che ne dimostri la proprietà. Questo processo è fondamentale per garantire sicurezza nella rete, ma la ricerca di Zellic ha rivelato un grave problema all’interno della funzione di verifica della firma. I nodi accettavano due tipi di firme: una basata sul Digital Signature Algorithm utilizzato con le curve Ed25519, che era verificabile in modo sicuro, e un’altra basata sulla curva SECP256K1, che poteva provocare un “panic” e far crashare il nodo. Gli esperti si sono dunque interrogati su come una falla così critica sia sfuggita a controlli precedenti.
La vulnerabilità ha accesso a una potenziale exploit che avrebbe potuto avere conseguenze disastrose per la rete NEAR. Tuttavia, grazie alla prontezza del team di sicurezza e alla successiva patch, il protocollo è stato tutelato in tempo utile, proteggendo così l’integrità della rete e dei suoi utenti.
Scoperta della vulnerabilità
La vulnerabilità nel protocollo NEAR è stata scoperta durante una dettagliata analisi condotta da Zellic, una nota azienda di sicurezza blockchain. Il team di esperti stava esaminando il sistema di networking peer-to-peer, cruciale per il funzionamento efficiente dei nodi validatori. La scoperta di questa vulnerabilità ha sollevato interrogativi sulla sicurezza del protocollo e sulla sua resilienza a eventuali attacchi informatici.
Nella fase di indagine, gli studiosi hanno notato che la funzione di verifica delle firme consentiva il riconoscimento di due tipologie distinte di firme crittografiche. La prima, basata sull’algoritmo Ed25519, si è rivelata sicura e verificabile, ma la seconda, che utilizzava la curva SECP256K1, presentava gravi problematiche. Sulla base di un’analisi approfondita, è emerso che ogni tentativo di verificare una firma SECP256K1 avrebbe portato a un “panic” del nodo, causando il suo immediato arresto.
I ricercatori hanno sviluppato una versione modificata del software NEAR per dimostrare la validità della vulnerabilità. In questo ambiente controllato, hanno attivato due nodi su un testnet privato: uno operante con il software ufficiale e un altro con una patch malevola, che permetteva la generazione di chiavi SECP256K1. Quando il nodo legittimo tentava di operare normalmente, il nodo aberrante riusciva sistematicamente a provocarne il crash, evidenziando così l’estrema gravità del problema.
Un ulteriore elemento di preoccupazione riguardava il fatto che il software originale di NEAR non permetteva la creazione di chiavi di tipo SECP256K1. Così facendo, si evitava accidentalmente qualsiasi fermo della rete attraverso l’uso di queste chiavi, ma nonostante ciò, un attaccante astuto avrebbe potuto modificare il software per abilitarne la generazione. Tale scenario avrebbe potuto portare a un attacco di largo respiro, eludendo le difese in atto e potenzialmente paralizzando l’intera rete NEAR in un colpo solo.
Il team di Zellic ha comunicato la scoperta al gruppo di NEAR nel mese di dicembre, utilizzando il programma di bug bounty di HackenProof per garantire una divulgazione sicura. Grazie a questo approccio professionale, la rete è riuscita a rimanere operativa fino alla realizzazione di una patch a gennaio, senza che nessun attaccante potesse approfittare della vulnerabilità scoperta. Questa tempistica ha rappresentato un colpo di fortuna, evitando una potenziale crisi per la comunità crypto e attestando l’importanza di pratiche di sicurezza efficaci nel settore blockchain.
Dettagli tecnici della vulnerabilità
La vulnerabilità individuata nel protocollo NEAR si concentra sulla funzione di verifica delle firme, che ha manifestato due problematiche distinte all’interno del codice. In primo luogo, la funzionalità di verifica delle firme basate su SECP256K1 è strutturalmente difettosa: essa chiama la funzione “expect”, la quale richiede che la risposta sia di massimo 32 byte. Tuttavia, la risposta generata da questa funzione raramente rispetta questa lunghezza, il che determina il crash del nodo ogni qualvolta si tenti di validare una firma SECP256K1. Questo comportamento critico dimostra quanto fosse fragile il sistema di verifica, poiché consentiva l’accesso a un potenziale attacco mirato all’intera rete.
La seconda vulnerabilità rintracciata si manifesta nel fatto che, se l’ultimo byte della firma non si colloca nell’intervallo da zero a tre, il processo di verifica genera un errore all’interno della funzione “from_i32()”. Tale errore, a sua volta, provoca un’inattività nella successiva chiamata alla funzione “unwrap()”, culminando così nel crash del nodo stesso. Anche in questo caso, un attaccante potrebbe sfruttare tale vulnerabilità progettando intenzionalmente firme maligne che sfruttano questa debolezza, amplificando ulteriormente i rischi per il protocollo.
Le implicazioni di questi difetti nella funzione di verifica sono piuttosto gravi, poiché avrebbero potuto consentire a un nodo malevolo di causare il collasso di un nodo legittimo con facilità, disabilitando le comunicazioni all’interno della rete. I ricercatori hanno evidenziato il fatto che il software di NEAR attuale non presenta alcun percorso di codice che consenta a un nodo di generare chiavi SECP256K1. Pertanto, fino al momento della scoperta, non vi era stata alcuna possibilità che una chiave maligna potesse causare un arresto imprevisto della rete, sebbene non si potesse escludere la possibilità di modifiche al codice per consentire la generazione di tali chiavi da parte di un attaccante.
Durante le verifiche, i ricercatori hanno creato una versione del software di NEAR con un’efficace patch malevola, configurando un ambiente di test dove un nodo legittimo e uno compromesso operavano in parallelo. Questa simulazione ha confermato che la vulnerabilità era concreta e riproducibile, a dimostrazione di quanto fosse critica la situazione prima dell’intervento del team di sicurezza. Un altro aspetto di rilevanza era la rapidità con la quale la questione era stata elevata al team di sviluppo di NEAR, sottolineando la necessità di un monitoraggio continuo e rigoroso per prevenire simili problematiche in futuro.
Risposta da parte del team NEAR
In seguito alla scoperta della vulnerabilità, il team NEAR ha risposto prontamente per mitigare i rischi potenziali per la rete. Zellic, l’azienda di sicurezza che ha identificato il problema, ha comunicato le proprie scoperte al team di sviluppo di NEAR attraverso il programma di bug bounty di HackenProof. Questa strategia ha consentito una divulgazione sicura e responsabile, garantendo che le vulnerabilità venissero affrontate senza destare allerta nel pubblico o fra potenziali malintenzionati.
Dopo aver ricevuto la segnalazione, il team di NEAR ha immediatamente avviato una serie di analisi per comprendere appieno la portata della vulnerabilità. Il rilascio di un fix è stato prioritario, con l’obiettivo di implementare una patch efficace. Entro gennaio, il team era riuscito a sviluppare e distribuire un’aggiornamento, eliminando così la falla identificata. Come riconoscimento del lavoro svolto da Zellic, il team di NEAR ha anche offerto un premio di 150.000 dollari per la segnalazione della vulnerabilità, evidenziando l’importanza della collaborazione tra la comunità della sicurezza e gli sviluppatori blockchain.
La rapidità della loro risposta è stata cruciale. Infatti, durante il periodo tra la scoperta e la patch, nessun attaccante ha sfruttato il problema, consentendo così alla rete di rimanere funzionante e operativa. Questo ha messo in luce non solo la serietà del protocollo di NEAR riguardo alla sicurezza, ma anche la necessità di adottare misure preventive nell’ecosistema blockchain, dove i rischi di sicurezza sono una costante. Il team ha quindi proceduto a testare il nuovo codice, assicurandosi che ogni parte del sistema fosse ora in grado di gestire le firme in modo sicuro, escludendo ogni possibilità di crash associato al tipo di vulnerabilità precedentemente riscontrato.
Inoltre, NEAR ha dichiarato che, a seguito di questa incidente, sarà messa in atto una revisione dei protocolli di sicurezza esistenti. L’impegno a migliorare la sicurezza del proprio sistema è diventato ancora più evidente, con l’intenzione di attuare misure che prevengano simili esploit nel futuro. Il periodo di transizione, sebbene delicato, ha dimostrato la resilienza del team di NEAR e il loro impegno verso una tecnologia blockchain sicura e robusta.
Questa esperienza rappresenta non solo un successo per il team di NEAR ma anche una lezione per altre piattaforme nel settore. Gli sviluppatori di blockchain devono essere costantemente vigilanti e pronti a contribuire con miglioramenti e aggiornamenti tempestivi, specialmente in un panorama in continua evoluzione come quello della blockchain, dove la sicurezza è di vitale importanza per la fiducia degli utenti e il funzionamento della rete.
Confronto con altri incidenti nella blockchain
Il settore delle blockchain ha conosciuto vari incidenti che dimostrano come vulnerabilità tecniche possano condurre a gravi interruzioni del servizio e a perdite economiche significative. Un esempio particolarmente noto è l’interruzione della rete Arbitrum, avvenuta a dicembre, quando il sistema si è bloccato per oltre 78 minuti, impedendo agli utenti di effettuare qualsiasi transazione. Questo arresto è stato attribuito a un sovraccarico di minting di iscrizioni, un fatto che ha rivelato come Arbitrum fosse impreparata a gestire un picco di attività, evidenziando la necessità di infrastrutture resistenti e ben progettate.
Analogamente, nel gennaio dello stesso anno, circa il 50% dei nodi di Cardano ha subito un’interruzione a causa di un “anomalia” nel sistema, causando un rallentamento nella produzione di blocchi e un aumento dei tempi di conferma delle transazioni. Anche se l’intera rete non è crollata, l’evento ha messo in risalto vulnerabilità interne che potrebbero compromettere l’affidabilità di una piattaforma di blockchain.
Solana ha avuto la sua parte di problemi, inclusa un’interruzione a febbraio in cui la rete non è riuscita a produrre blocchi per oltre 25 minuti. Tale evento è stato solo l’ultimo di una serie di crash che ha suscitato forti critiche da parte degli utenti, minando la fiducia nel protocollo e nella sua capacità di gestire carichi di lavoro complessi.
Queste situazioni mettono in evidenza il contesto in cui si inserisce la vulnerabilità del protocollo NEAR. La tempestiva scoperta e risoluzione della falla di sicurezza ha messo in luce l’importanza di un monitoraggio continuo e di pratiche di sviluppo software robuste. Mentre NEAR ha avuto la fortuna di correggere il proprio errore prima che avesse conseguenze devastanti, altre piattaforme hanno sperimentato risultati più disastrosi a causa di incidenti simili.
In un ecosistema in rapido sviluppo come quello delle criptovalute, è essenziale che i progetti investano continuamente in sicurezza e resilienza, poiché la minaccia di attacchi malevoli o anche semplici malfunzionamenti può portare a una perdita di fiducia da parte degli utenti e, di conseguenza, a un impatto negativo sul valore della criptovaluta. La storia recente del settore illustra chiaramente come, nonostante le promesse e le innovazioni offerte dalle blockchain, la sicurezza rimanga una delle sfide più cruciali da affrontare.
Le difficoltà affrontate da altre reti evidenziano l’importanza della prontezza nella risposta a vulnerabilità e incidenti. L’impegno del team NEAR per affrontare e correggere tempestivamente questa falla ha non solo salvaguardato la rete, ma ha anche posto un precedente significativo su come le altre blockchain dovrebbero gestire le minacce alla sicurezza, promuovendo una cultura di sicurezza proattiva nel settore.