L'hacker che ha rubato 165 ETH (32.000 dollari) da SpankChain ha accettato di restituire i loro guadagni illeciti. Il Ethereum - piattaforma di intrattenimento per adulti ha confermato questo in una serie di tweet oggi.
https://twitter.com/SpankChain/status/1050533900001243136
Qui, in pieno, è il suo post medio sulla violazione della sicurezza: «Alle 18:00 PST Sabato, un aggressore sconosciuto prosciugato 165.38 ETH (~ $38.000) dal nostro contratto intelligente canale di pagamento che ha anche portato a $4.000 valore di BOOTY sul contratto diventando immobilizzato. Del rubato/immobilizzato ETH/BOOTY, 34.99 ETH (~ $8.000) e 1271.88 BOOY appartiene agli utenti (~ $9.300 in totale), e il resto apparteneva a SpankChain.
Purtroppo, mentre eravamo nel mezzo di investigare altri bug smart contract, non ci siamo resi conto che l'hack era avvenuto fino alle 7:00 pm PST domenica, a quel punto abbiamo preso Spank.Live offline per evitare che eventuali fondi aggiuntivi vengano depositati nello smart contract canali di pagamento.
La nostra priorità immediata è stata quella di fornire rimborsi completi a tutti gli utenti che hanno perso fondi. Stiamo preparando un volo ETH per coprire tutti i $9.300 di ETH e BOOTY che appartenevano agli utenti. I fondi verranno inviati direttamente agli account SpankPay degli utenti e saranno disponibili non appena riavvieremo Spank.Live.
Il nostro piano è quello di tenere giù il camsite nei prossimi 2-3 giorni (ma forse di più) mentre noi:
Quando riavvieremo Spank.Live, tutti gli spettatori e gli esecutori avranno il 100% del valore totale in BOOTY+ETH che avevano nel loro SpankPay airdropped ai loro attuali indirizzi SpankPay, quindi gli utenti non hanno bisogno di fare nulla.
Il sito continuerà a funzionare esattamente come era prima con una sola eccezione - a causa del 4.000 BOOY attualmente immobilizzato, ridurremo temporaneamente il limite BOOTY per ogni spettatore a 10 BOOTY. Ciò significa che gli spettatori saranno in grado di dare solo 10 BOOTY alla volta, e dopo aver speso tutti e 10 BOOY, ricaricheranno automaticamente il loro 10 BOOY con qualsiasi ETH extra che hanno depositato, fino a esaurire completamente il loro saldo ETH.
Nei prossimi giorni la nostra squadra sta preparando un'indagine approfondita sull'attacco.
Ecco cosa sappiamo finora:
In breve, l'attacco capitalizzò un bug di «rientranza», proprio come quello sfruttato nel DAO. L'utente malintenzionato ha creato un contratto malevolo mascherato da token ERC20, in cui la funzione «transfer» ha richiamato più volte nel contratto del canale di pagamento, prosciugando alcuni ETH ogni volta.
Il contratto malevolo chiamò CreateChannel per configurare il canale, quindi chiamò LCopentimeout ripetutamente tramite reentrancy. Il LCopentimeout consente agli utenti di uscire rapidamente dai canali di pagamento che non sono ancora stati raggiunti dalla controparte.
Il LCopentimeout trasferisce all'utente il saldo di deposito ETH iniziale e il saldo di deposito token, entrambi inizialmente impostati nella funzione CreateChannel. Criticamente, la funzione LCopentimeout elimina solo i dati del canale sulla catena (che azzera i saldi di canale) dopo la funzione di trasferimento token. Ciò consente alla funzione di trasferimento del contratto malintenzionato di chiamare LcoPentimeout in un ciclo, ogni volta che invia all'utente malintenzionato ETH equivalente al proprio bilanciamento del canale.
Contratto di canale di pagamento: https://etherscan.io/address/0xf91546835f756da0c10cfa0cda95b15577b84aa7#code
Indirizzo dell'aggressore: https://etherscan.io/address/0xcf267ea3f1ebae3c29fea0a3253f94f3122c2199
Txs interni (rientranze) dall'account dell'utente malintenzionato: https://etherscan.io/address/0xcf267ea3f1ebae3c29fea0a3253f94f3122c2199#internaltx
Contratto dannoso dell'aggressore: https://etherscan.io/address/0xc5918a927c4fb83fe99e30d6f66707f4b396900e
Txs interni (reentranze) dal contratto malintenzionato dell'utente malintenzionato: https://etherscan.io/address/0xc5918a927c4fb83fe99e30d6f66707f4b396900e#internaltx
E' stata una nostra decisione di rinunciare a un controllo di sicurezza per il contratto del canale di pagamento. Abbiamo fatto condurre a Zeppelin un audit che è costato $17.000 per la libreria dei canali di pagamento unidirezionali precedenti. Lo consideravamo piuttosto costoso, dato che il maggior numero di fondi mai detenuti da quel contratto ha mai raggiunto solo 17.000 dollari in totale.
Per questo molto più sofisticato contratto di canale di pagamento non custodiale siamo stati quotati $30.000 - $50.000 per gli audit di sicurezza, ma tenendo conto sia del valore di percezione che del costo opportunità del tempo speso a reagire all'hack, ne sarebbe valsa la pena. Ciò è dovuto al nostro processo di sviluppo agile, al fatto che il sito è in fase beta e alla rapidità con cui abbiamo ripetuto e ridistribuito i contratti (di cui stiamo spingendo ogni 2-3 settimane). Questo ha identificato un problema nel nostro processo di sviluppo e distribuzione e apporteremo le modifiche appropriate per garantire che non si ripeta, pur continuando a innovare al ritmo con cui tutti hanno familiarità.
Man mano che andiamo avanti e cresceremo, intensificheremo le nostre pratiche di sicurezza e ci assicureremo di ottenere più audit interni per qualsiasi codice smart contract che pubblichiamo, così come almeno un audit esterno professionale.»
Las Vegas, US, 1st November 2024, Chainwire
From digital art to real-estate assets, NFTs have become a significant attraction for investors who…
Singapore, Singapore, 21st October 2024, Chainwire
HO CHI MINH, Vietnam, 17th October 2024, Chainwire
London, UK, 16th October 2024, Chainwire
Sinagpore, Singapore, 16th October 2024, Chainwire