Ultime Notizie

Ethereum: Trovati 34.200 smart contracts vulnerabili agli attacchi

0 Commenti

Una scansione di quasi un milione di smart contracts sulla blockchain di Ethereum ha identificato 34.200 contratti vulnerabili. Questi contratti possono essere attaccati per rubare ETH, e persino congelare o cancellare beni sui quali gli aggressori non dovrebbero avere alcuna influenza.
In questo articolo verranno forniti ulteriori dettagli a riguardo dell’importanza di ciò e delle probabili conseguenze di quanto scoperto per mezzo di questa ricerca.

smart contracts

Cosa sono i smart contracts?

Prima di fornire i vari dettagli meglio assicurarsi che tutti i lettori sappiano esattamente di cosa stiamo parlando.
I smart contracts sono un insieme di operazioni scritte in codice (programmate) che vengono eseguite automaticamente quando qualcuno invia un input al contratto. Ecco un esempio di base di come può apparire un contratto intelligente:

Si consideri uno smart contract Ethereum che viene utilizzato per mettere all’asta un oggetto digitale. Il contratto ha una variabile che conta il numero di offerte fatte sull’oggetto in questione. Il proprietario potrebbe voler prolungare il tempo a disposizione per le offerte per l’oggetto. Così come potrebbe impostare una condizione contrattuale per via della quale prima di consentire la vendita dell’oggetto al miglior offerente dev’essere superato un determinato numero di offerte. Una volta soddisfatta questa condizione, lo smart contract avvia automaticamente una transazione ETH con il vincitore dell’asta e rilascia un ordine di vendita per l’oggetto.

Gli smart contract sono uno dei motivi (secondo molti il motivo principale) per cui la blockchain Ethereum e la sua criptovaluta, ETH, sono così popolari. Gli smart contract sono ciò che alimenta la maggior parte delle odierne ICO. Ma non solo, infatti questi gestiscono anche diversi altri servizi e strumenti basati su Ethereum.

Il problema

Gli smart contract sono proprio come qualsiasi altro pezzo di codice. In base a quanto sono programmati bene possono contenere vulnerabilità e bug che possono essere sfruttati. Un hacker ha sfruttato uno di questi bug nell’estate del 2016 per rubare oltre 50 milioni di dollari di Ether all’organizzazione TheDAO. L’intervento da parte dell’Ethereum Foundation per consentire il recupero dei fondi è stato il motivo della hard fork di Ethereum Classic (ETC).

Questo bug ha spinto i ricercatori della National University of Singapore (NUS) ad iniziare a cercare bug in altri smart contracts. Nel 2016, i ricercatori hanno creato uno strumento chiamato Oyente. Lo strumento in questione serve ad eseguire scansioni di smart contract sulla blockchain di Ethereum alla ricerca di vulnerabilità. Inizialmente Oyente è stato utilizzato per analizzare solo 19.366 smart contracts, di questi 8.833 si sono rivelati vulnerabili.
Quella ricerca non ha ricevuto molta attenzione da parte dei media in quel momento. L’avvertimento da parte del team di ricerca riguardo al modo in cui la maggior parte dei contratti intelligenti sono stati scritti è stato perlopiù ignorato.

Ma la situazione è cambiata

Il team di ricerca ha richiesto attenzione verso la scansione dei smart contracts sulla blockchain di Ethereum vulnerabili lo scorso autunno. Momento in cui, ancora una volta, qualcuno ha sfruttato una vulnerabilità contenuta in uno smart contract per boccare i fondi degli utenti Ethereum.

Questo incidente è accaduto lo scorso novembre quando un utente di GitHub chiamato Devops199, intenzionalmente o meno, ha bloccato oltre $285 milioni di dollari in ETH all’interno dei portafogli di Parity per mezzo di un bug che ha scoperto.

Oltre a portare a proposte controverse per modifiche del protocollo della blockchain Ethereum, questo incidente ha spinto i ricercatori a creare un nuovo strumento per l analisi dei contratti intelligenti. Lo strumento, chiamato Maian, è in grado di eseguire una scansione più approfonditaa, notare più tipi di vulnerabilità ed è anche specializzato nella scansione su larga scala.

Il team di cinque persone ha utilizzato Maian per analizzare 970.898 smart contracts Ethereum. Seguono i risultati, elencati nella tabella sottostante:

smart contracts vulnerabilities
La prima colonna porta il numero di contratti segnalati. La seconda colonna riporta il numero dei contratti dei quali non è disponibile il codice sorgente. La terza colonna, invece, contiene i contratti nei quali la vulnerabilità è stata confermata per mezzo di analisi manuale. L’ultima colonna mostra la percentuale di contratti realmente vulnerabili rispetto quelli sospettati.

Prodigal – Smart contracts che, quando attaccati, inviano fondi per la conservazione sicura all’indirizzo Ethereum sbagliato (dell’attaccante o meno).
Suicidal – Smart contracts che possono essere terminati da chi non dovrebbe poterlo fare e non solo dal proprietario (il bug di Carità Devops199 rientra in questa categoria).
Greedy – Smart contracts che possono essere bloccati da qualcun altro portando alla congelazione dei fondi per sempre (Parity Devops199 bug rientra anche in questa categoria).

I risultati

I risultati mostrano che il 3,5% dei contratti sottoposti a scansione sono affetti da una importante vulnerabilità che può consentire agli aggressori a rubare fondi o semplicemente a congelare l’ETH degli utenti.

Proprio come nel 2016, il team di ricerca sta ora mettendo in guardia gli utenti sui pericoli del riporre un po’ troppa fiducia nei smart contracts e sollecita gli utenti a utilizzare software di analisi dei smart contracts per rilevare i difetti prima di inviare i loro fondi ad un contratto.

A differenza di quanto avvenuto nel 2016, quando il codice sorgente di Oyente è stato rilasciato, i ricercatori non hanno ancora pubblicato il codice sorgente di Maian. Questo per via del timore che i blackhat hacker potrebbero utilizzare Maian per cercare contratti vulnerabili e rubare o bloccare i fondi ETH. Tuttavia, se siete alla ricerca di uno strumento per la scansione di smart contract Ethereum, c’è anche Mythril, estraneo al lavoro del team NUS su Maian e Oyente. Maggiori informazioni sul lavoro del team NUS sono disponibili in questo documento di ricerca (in lingua inglese).

Conclusione

Il settore delle criptovalute è un campo di battaglia nuovo e incredibilmente attivo dal punto di vista della sicurezza informatica. A dimostrarlo sono esempi come quello di BitGrail. Ad aumentare il senso di “Far West” di questo ambiente sono anche alcuni provvedimenti di certi exchange (ma questa non affatto è una critica). Soluzioni quali exchange decentralizzati, Plasma Cash e simili sono in arrivo.
Altro fenomeno preoccupante che sta dilagando è quello del cryptojacking per mezzo di script nel browser of virus, come quello recentemente respinto dalla Microsoft.
Ma è troppo ottimistico credere che la sicurezza diverrà mai totale, quindi non resta che informarsi per evitare di diventare vulnerabili.

Ethereum: Trovati 34.200 smart contracts vulnerabili agli attacchi
Rate this post

Lascia una recensione

avatar
  Subscribe  
Notificami

Informativa sul rischio: investire in valute digitali, azioni e altri valori mobiliari, materie prime, valute e altri prodotti di investimento derivati (ad es. contratti per differenza, “CFD”) è speculativo e comporta un elevato livello di rischio. Ogni investimento è unico e comporta rischi unici.

I CFD e altri derivati sono strumenti complessi e comportano un elevato rischio di perdita del denaro in tempi brevi a causa della leva. Valuta se comprendi come funzionano gli investimenti e se puoi sostenere l’elevato rischio di perdere denaro.

I prezzi delle criptovalute possono oscillare ampiamente e, pertanto, tali strumenti non sono adatti a tutti gli investitori. Il trading di criptovalute non è supervisionato da alcun quadro legislativo UE. La performance passata non garantisce risultati futuri. Qualunque storico di trading presentato interessa un periodo inferiore a 5 anni, salvo ove diversamente indicato, e potrebbe non essere sufficiente per prendere decisioni di investimento. Il tuo capitale è a rischio.

Facendo trading su azioni, il capitale è a rischio.

La performance passata non è indicativa di risultati futuri. Lo storico di trading presentato interessa un periodo inferiore a 5 anni, salvo ove diversamente indicato, e potrebbe non essere sufficiente per prendere decisioni di investimento. I prezzi possono oscillare al ribasso, così come al rialzo, anche notevolmente e si potrebbe essere esposti a variazioni dei tassi di cambio. È possibile perdere tutto o parte dell’importo investito. Gli investimenti non sono adatti a chiunque; assicurati di aver compreso appieno i rischi e gli aspetti legali che tale attività comporta. In caso di incertezza, richiedi una consulenza legale, fiscale e/o contabile indipendente. Questo sito non fornisce consulenza finanziaria, legale, fiscale o contabile. Alcuni link sono affiliati. Per maggiori informazioni, leggi l’Informativa integrale sul rischio e il disclaimer.