L'exploit di Splash svuota il pool ADA/OADA di Cardano

Splash afferma che un difetto nel suo validatore StableSwap ha consentito a un attaccante di rimuovere circa 2.43 milioni di ADA e 1.99 milioni di OADA. Optim Finance ha messo in pausa il suo protocollo dopo la scomparsa della liquidità di OADA.

By SongMarketCap

Updated:

Cardano News - L'exploit di Splash svuota il pool ADA/OADA di Cardano

Splash Protocol ha pubblicato un rapporto tecnico che spiega come un attaccante ha svuotato il pool StableSwap ADA/OADA il 13 settembre.

Successivamente Optim Finance ha messo in pausa il suo protocollo, ha rimosso la liquidità residua sotto il suo controllo e ha avvertito gli utenti che OADA non poteva più essere riconvertito in ADA tramite il suo percorso normale.

Splash ha dichiarato che nessun altro tipo di pool è stato interessato. L'incidente si è verificato all'interno dell'infrastruttura di smart contract a livello di applicazione e non ha compromesso la rete Cardano in sé.

Come è stato sfruttato il validatore StableSwap

La vulnerabilità si trovava nel validatore stableFnPoolT2t di Splash, che alimentava il pool StableSwap a due asset ADA/OADA.

Il validatore calcolava le riserve negoziabili sottraendo le commissioni di protocollo accumulate dal saldo totale del pool. Tuttavia, non verificava che le riserve risultanti rimanessero positive. Inoltre non prevedeva un limite superiore sufficiente agli aumenti delle commissioni di protocollo e non imponeva la direzione di swap prevista, in cui un asset entra nel pool mentre un altro esce.

L'attaccante ha sfruttato quei controlli mancanti in due transazioni.

Nella prima transazione, eseguita alle 00:47:36 UTC, l'attaccante ha depositato 9,870 ADA e una quantità minima di OADA. Quasi l'intero deposito di ADA è stato registrato come commissioni di protocollo, lasciando aggiunto alla riserva negoziabile di ADA del pool solo un lovelace.

Quarantacinque secondi dopo, una seconda transazione ha spinto la riserva negoziabile di ADA calcolata sotto zero. Poiché l'invariante di StableSwap è stata valutata utilizzando una riserva negativa, il validatore ha accettato una transazione che ha rimosso sia ADA sia OADA dal pool.

L'offerta di token LP è rimasta invariata, senza token LP coniati o bruciati durante l'exploit.

Splash ha affermato che una delle due protezioni aggiuntive avrebbe fermato l'attacco: richiedere che le riserve negoziabili restassero positive oppure imporre un limite superiore alle variazioni delle commissioni di protocollo accumulate.

Il rapporto afferma inoltre che il ramo di swap eseguito corrispondeva al codice precedentemente sottoposto ad audit. L'audit del 2024 non ha identificato i controlli mancanti sulle commissioni di protocollo, sulla positività delle riserve e sulla direzione dello swap utilizzati nell'attacco.

Perché il pool era cruciale per OADA

OADA è un asset sintetico ancorato ad ADA sviluppato da Optim Finance. Gli utenti possono coniare OADA depositando ADA, ma il sistema non fornisce un meccanismo diretto per riscattare OADA di nuovo in ADA.

Invece, gli utenti normalmente escono tramite il pool StableSwap ADA/OADA su Splash. Il pool supportava anche l'Algorithmic Market Operation di Optim, che gestiva la liquidità per mantenere OADA vicino al suo ancoraggio ad ADA.

Il rapporto ufficiale sull'incidente attribuisce l'exploit al validatore di Splash. Non identifica una vulnerabilità nell'AMO di Optim né descrive l'episodio come un hack dei contratti di Optim.

Lo svuotamento del pool di Splash ha rimosso la principale via di uscita di OADA e il mercato utilizzato per sostenere il suo ancoraggio.

L'attaccante ha poi venduto l'OADA rimosso attraverso un pool Minswap V2 OADA/FLDT. Lo swap ha prodotto circa 563,073 FLDT, che sono stati successivamente convertiti in circa 115,323 ADA.

Optim ha riferito che l'attaccante ha svuotato anche la liquidità di OADA su altre sedi di trading. Tali protocolli non sono stati compromessi attraverso lo stesso difetto del validatore. I loro mercati sono stati colpiti dopo che il pool principale di Splash era già stato svuotato.

Cosa succede adesso

Optim ha dichiarato che il suo protocollo è stato messo in pausa e che tutta la liquidità disponibile è stata rimossa. Ha invitato chiunque fornisse liquidità per OADA o per il token di governance di Optim O a ritirarla immediatamente e ha avvertito gli utenti di non creare nuove posizioni di liquidità in OADA.

Optim non ha chiarito se la pausa riguardi ogni prodotto e modulo oppure solo le operazioni connesse a OADA.

Splash ha contrassegnato il codice StableSwap interessato come vulnerabile e sta tracciando i fondi inviati a indirizzi collegati a sistemi di deposito degli exchange. Il team ha detto di pianificare di contattare KuCoin e Gate.io con le informazioni sulle transazioni.

Splash ha anche invitato l'attaccante a restituire i fondi tramite una potenziale risoluzione white hat che preveda una ricompensa e nessuna ulteriore escalation.

Non è stato pubblicamente confermato alcun ritorno di fondi. Né Splash né Optim hanno annunciato un programma di rimborso, una tempistica di recupero o il rilascio di un validatore corretto.