Attacco Flash Loan Stravolge la Governance di X100, Procurandosi 4,85 Milioni di Dollari
Punti chiave
- •Gli attaccanti hanno preso in prestito circa 1,94 milioni di USDT tramite un flash loan su Aave, acquistato 38.200 token X e li hanno messi in staking tramite due contratti appena distribuiti per conquistare due dei tre seggi del Senato di governance di X100 all'interno di una singola transazione.
- •Poiché i contratti di governance di X100 consentivano ai senatori appena registrati di votare ed eseguire proposte nella stessa transazione, l'attaccante ha drenato gli asset del tesoro e della liquidità senza alcun timelock o periodo di attesa.
- •I proventi iniziali di circa 4,75 milioni di dollari sono stati convertiti in circa 2.022 ETH tramite UniswapX, con 1.600 ETH successivamente distribuiti tra quattro wallet appena creati da 400 ETH ciascuno.
- •Il token X è crollato oltre il 96% secondo i dati di CoinGecko, sebbene l'estrema scarsità di liquidità residua renda il prezzo visualizzato una misura inaffidabile del valore di mercato realizzabile.
- •Al momento della valutazione di Blockaid del 24 ottobre, circa 12,2 milioni di X rimanevano nel contratto Freezer, e non era stato divulgato alcun recupero dei fondi, rimediazione dei contratti o accordo di compensazione.

X100, un progetto DeFi basato su Ethereum, ha perso circa 4,85 milioni di dollari in USDT il 24 ottobre dopo che attaccanti hanno utilizzato flash loan per prendere il controllo del suo sistema di governance ed eseguire proposte ostili contro il tesoro e le riserve di liquidità del progetto.
Conquistando due dei tre seggi del Senato di governance di X100, gli attaccanti sono stati in grado di approvare ed eseguire transazioni senza attendere alcun ritardo di governance. L'attacco iniziale ha generato circa 4,75 milioni di dollari di proventi, e ulteriori prelievi hanno portato la perdita totale a 4,85 milioni di dollari.
La società di sicurezza blockchain Blockaid ha segnalato l'exploit in corso alle 14:49 UTC in un post su X, identificando multiple transazioni ostili mirate al contratto Freezer del protocollo. Un successivo aggiornamento della società ha individuato circa 550.000 token X aggiuntivi estratti da una posizione di liquidità su Uniswap, mentre circa 12,2 milioni di X rimanevano nel Freezer.
Il Flash Loan Assicura la Maggioranza nel Senato
Il primo attacco è iniziato alle 14:11 UTC, quando un wallet ha preso in prestito circa 1,94 milioni di USDT tramite un flash loan su Aave e ha utilizzato i fondi per acquistare 38.200 token X. L'attaccante ha suddiviso i token tra due contratti appena distribuiti, ognuno dei quali ha messo in staking poco più di 19.000 X nel sistema Freezer di X100. Questi depositi hanno spodestato i membri esistenti del Senato e hanno consegnato all'attaccante il controllo di due dei tre seggi dell'organo di governance.
Con la maggioranza richiesta assicurata, l'attaccante ha presentato ed eseguito immediatamente una proposta che dirigeva il tesoro a vendere 400.000 X in un nuovo pool di liquidità PancakeSwap V3. Poiché il pool manipolato conteneva solo una piccola quantità di USDT, l'attaccante ha acquisito i token del tesoro per circa 35,68 USDT prima di ritirare la liquidità.
L'attaccante ha quindi venduto circa 131.703 X attraverso un pool Uniswap V3 esistente, ricevendo circa 6,69 milioni di USDT. Dopo aver rimborsato il flash loan, la transazione ha fruttato circa 4,75 milioni di dollari.
L'exploit è stato possibile perché i contratti di governance di X100 consentivano ai senatori appena registrati di votare ed eseguire proposte all'interno della stessa transazione blockchain. I flash loan, che forniscono prestiti non collateralizzati che devono essere rimborsati entro una singola transazione, hanno dato all'attaccante il capitale temporaneo necessario per acquisire potere di voto. Il protocollo era privo di un periodo di attesa effettivo tra l'acquisizione dell'autorità di governance e l'esercizio del controllo sugli asset del tesoro. I timelock, che rimand l'esecuzione di una proposta a un blocco successivo, sono una salvaguardia ampiamente utilizzata nella governance DeFi proprio perché danno ai detentori di token il tempo di reagire — e di uscire — prima che le transazioni che muovono il tesoro abbiano effetto. L'incidente X100 mostra come, nei sistemi di governance ponderati sui token, il meccanismo di voto stesso può diventare la superficie di attacco anche quando i contratti del token e del tesoro di un protocollo non sono direttamente sfruttati.
I Proventi Convertiti in Ether
I proventi iniziali sono stati rapidamente convertiti in circa 2.022 ETH tramite UniswapX, con la criptovaluta risultante trasferita a un altro wallet Ethereum. Quell'indirizzo ha successivamente distribuito 1.600 ETH tra quattro wallet appena creati, ciascuno ricevente 400 ETH, mentre circa 423 ETH rimanevano all'indirizzo di consolidamento durante l'analisi iniziale delle transazioni.
Ulteriori attacchi alla governance sono seguiti al primo prelievo. Alle 14:35 UTC, una seconda transazione ha utilizzato una strategia di flash loan simile per conquistare seggi del Senato e rimuovere posizioni di liquidità Uniswap V3 controllate dal contratto Freezer, generando circa 96.382 USDT di proventi aggiuntivi. Una terza transazione alle 14:40 UTC ha utilizzato il percorso di governance compromesso per ritirare un'altra posizione di liquidità contenente circa 550.000 token X. Quei token sono stati estratti separatamente dal totale di 4,85 milioni di dollari in USDT.
Le transazioni provenivano da wallet mittenti diversi, e gli investigatori non hanno stabilito se fossero controllati da attaccanti separati o coordinati da un'unica parte.
Il Token Crolla Mentre la Vulnerabilità Resta Esposta
Il token di X100 ha subito un brusco calo dopo l'attacco, con i dati di trading, come riportati su CoinGecko, che indicano un calo superiore al 96% con la sparizione della liquidità dal suo principale pool di scambio. La percentuale citata va trattata con cautela, poiché la liquidità residua era estremamente esigua, rendendo il prezzo visualizzato del token una misura inaffidabile del valore di mercato realizzabile.
L'attacco è l'ultimo di una serie di recenti exploit di governance guidati da flash loan. Ad agosto, un attaccante ha ottenuto sufficiente autorità di governance su Term Finance per eseguire proposte ostili e drenare circa 8,5 milioni di dollari dai vault di prestito basati su Ethereum. Un attacco separato con flash loan a Shibarium il 5 settembre ha comportato anch'esso l'acquisizione temporanea di token legati alla governance, anche se quell'incidente mirava all'autorità dei validatori e agli asset del bridge piuttosto che all'esecuzione immediata di proposte sul tesoro. In questi episodi, l'autorità sugli asset del protocollo era legata a token acquisibili entro una singola transazione, lasciando quorum e soglie di approvazione come ultima linea di difesa.
Nel caso di X100, il requisito di approvazione a due terzi del Senato ha offerto poca protezione, poiché l'autorità di voto poteva essere acquisita ed esercitata immediatamente utilizzando capitale preso in prestito.
Nelle ore successive all'exploit, il progetto non aveva pubblicato un rapporto pubblico sull'incidente né confermato un piano di recupero, e Blockaid ha continuato ad avvisare di un'esposizioneiva dopo aver identificato la terza transazione. Circa 12,2 milioni di X rimanevano nel contratto Freezer al momento della valutazione della società del 24 ottobre. Non era stato divulgato alcun recupero confermato dei fondi prelevati, rimediazione dei contratti o accordo di compensazione. Se i token ancora detenuti nel contratto Freezer verranno spostati, e se il progetto porterà avanti una post-mortem o modifiche alla governance, restavano le principali questioni aperte dopo la valutazione di Blockaid del 24 ottobre.