TECHTARGET

Blockchain security: guida completa per un utilizzo della blockchain senza rischi

Nonostante la sua reputazione, la blockchain è soggetta a molte vulnerabilità che accumunano l’ecosistema dei software. Gli esperti aiutano a chiarire punti di forza e di debolezza intrinseci alla blockchain security

Pubblicato il 23 Nov 2023

Blockchain security cover

Blockchain security non così scontata e nemmeno così garantita. È vero che un registro distribuito, che non fa affidamento su un’autorità centrale fidata, è resistente alle manomissioni delle transazioni, utilizzando la crittografia per garantire che i suoi record non vengano alterati o distrutti. Ma da qui a pensare che tutta la tecnologia blockchain sia ben protetta è un errore. La blockchain, infatti, è basata sul software e per questo è soggetta a molte vulnerabilità comuni al mondo della programmazione. Gli esperti stilano una lista di punti di attenzione da tenere a mente, a partire dal contesto tecnologico e dalle dinamiche di funzionamento della blockchain.

Blockchain security: prima è bene liberarsi dai pregiudizi

Partiamo dalle premesse di contesto. Sebbene le blockchain non siano un concetto completamente nuovo (ormai sono presenti da quasi tre lustri) il fatto che siano sempre più diffuse e accettate, con molte persone e organizzazioni che utilizzano le blockchain con sempre nuove modalità di utilizzo, non significa che la tecnologia sia più sicura di altre tecnologie informatiche. Purtroppo, all’aumentare della popolarità delle blockchain, cresce anche l’interesse del cybercrime. Soprattutto considerando come la tecnologia include tutto l’ecosistema delle criptovalute e transazioni finanziarie, ma anche degli smart contract e di altre transazioni digitali importanti per il business.

L’attività principale dei pirati informaticia è proprio quella di prendere di mira la blockchain security per identificare le sue vulnerabilità. Il che significa che se la blockchain security non viene gestita e ben presidiata il rischio di furti e interruzioni può avere un impatto estremamente negativo sulle persone e sul business.

Blockchain security come fare

Blockchain security: come funziona

Per capire quali sono le vulnerabilità, bisogna comprendere come funziona la blockchain. Come già accennato, questa tecnologia crea un registro distribuito di transazioni che utilizza la crittografia per salvaguardare la sua integrità. In una blockchain, i dati di una transazione vengono raggruppati in un blocco che contiene altre transazioni, inserite con un sistema di codifica condiviso tra tutti i miner. I partecipanti alla blockchain eseguono complesse operazioni crittografiche (chiamate mining), spesso competendo per essere i primi a risolvere il problema. Il risultato è un hash crittografico per il nuovo blocco che tiene conto dell’hash crittografico del blocco precedente.

Successivamente, il blocco contenente il nuovo hash viene fornito ai partecipanti della rete blockchain. I partecipanti verificano il blocco eseguendo calcoli su di esso. Se è valido, lo aggiungono alla loro copia della blockchain. Una volta che la maggior parte dei partecipanti concorda che il blocco è valido, il blocco viene aggiunto in tutta la rete blockchain. Per inciso, esistono numerosi modelli di consenso per le blockchain, e ognuno ha punti di forza e debolezze che lo rendono più adatto a determinate situazioni.

Un modello di consenso comune è chiamato proof-of-work. I partecipanti, risolvendo problemi complessi che richiedono una considerevole potenza di calcolo, generano la soluzione corretta al problema ed è questa la prova che un partecipante ha fatto uno sforzo e si è guadagnato il diritto di rilasciare il nuovo blocco di cui non sono consentiti ulteriori cambiamenti. Questo approccio evita di avere un’autorità centrale che deve essere fidata nel mezzo delle transazioni ed evita anche di avere un punto singolo di fallimento per la blockchain. Utilizzare l’hash del blocco precedente durante il calcolo del nuovo blocco significa che qualsiasi tentativo di modificare o eliminare un blocco è facilmente rilevabile da tutti i partecipanti alla blockchain. Il che dovrebbe rendere le blockchain quasi impossibili da manomettere. Con dei “se” e con dei “ma”.

Quanto è sicura la tecnologia blockchain?

Come spiegano gli esperti della sicurezza, le blockchain sono fondamentalmente basate su codici software e, proprio per questo, sono soggette alle stesse vulnerabilità che colpiscono altri software durante il loro ciclo di vita. Ad esempio, possono esserci differenze anche molto significative nella forza degli algoritmi crittografici e nelle lunghezze delle chiavi, così come nelle loro implementazioni. Ecco perché una gestione efficace delle chiavi crittografiche è una componente fondamentale della blockchain security.

A un livello generale, i tipi di blockchain si basano sui loro modelli di controllo degli accessi:

  • Blockchain pubblica (anche chiamata blockchain senza permessi): non ha restrizioni su chi può accedervi o pubblicare nuovi blocchi. I partecipanti alla blockchain possono essere anonimi.
  • Blockchain privata (nota anche come blockchain con permessi): limita chi può pubblicare nuovi blocchi. Potrebbe anche limitare chi può accedere alla blockchain. Ogni utente della blockchain deve essere identificato e autenticato. Una tale blockchain può essere controllata da un gruppo (una blockchain consortile) o da un individuo.
  • Blockchain ibrida: si riferisce alla presenza di blockchain pubbliche e private che sono interoperabili, formando essenzialmente una blockchain di blockchain.
  • Blockchain consorziata: si tratta di un gruppo di più istituti finanziari in cui ogni istituto finanziario ha la propria blockchain privata. In questa blockchain, un insieme preselezionato di nodi può controllare il processo di consenso. Sebbene ciascuna organizzazione gestisca il proprio nodo o blockchain, i dati all’interno sono accessibili, condivisi e distribuiti dalle organizzazioni all’interno del consorzio. In tal modo, è possibile sviluppare soluzioni inter-organizzative e inter-tecnologiche per migliorare i flussi di lavoro, la responsabilità e la trasparenza esistenti, affrontando così i problemi e le sfide incontrate dalle singole blockchain.

Poiché le blockchain pubbliche sono intrinsecamente accessibili a tutti e non eseguono alcuna autenticazione degli utenti, sono molto più facili da attaccare e compromettere rispetto alle blockchain private.

Blockchain security

Blockchain security: le minacce più comuni

Le blockchain pubbliche si basano sul raggiungimento di un consenso tra i partecipanti. Dal momento che le blockchain pubbliche permettono a chiunque di partecipare, gli attaccanti hanno molte strade per interrompere il consenso. Una minaccia comune, chiamata attacco sybil, coinvolge un attaccante che aggiunge molti partecipanti falsi a una rete blockchain. Ciò può dare all’attaccante il controllo della maggior parte dei partecipanti, permettendogli di creare transazioni false e farle validare dai partecipanti falsi. Una minaccia simile, chiamata “attacco del 51%”, coinvolge un attaccante o un gruppo di attaccanti che si uniscono per formare un pool di mining che effettua più del 50% del mining per una blockchain. Un’altra minaccia specifica è il double spending, che si verifica quando qualcuno cerca di spendere la stessa criptovaluta in due posti contemporaneamente.

Ma esistono molte altre minacce che generalmente colpiscono tutti i software:

  • Attacchi di routing, in cui un attaccante altera le configurazioni di routing in modo da poter intercettare il traffico di rete della blockchain non crittografato e accedervi o modificarlo.
  • Attacchi di phishing, in cui un attaccante utilizza metodi di ingegneria sociale per rubare le credenziali dei partecipanti alla blockchain, come chiavi private e frasi di accesso.
  • Attacchi di denial-of-service, tipicamente l’invio di un enorme numero di richieste a una blockchain, può bloccare il funzionamento del servizio, rendendolo irraggiungibile agli stessi miner.

Linee guida per garantire la sicurezza delle reti blockchain

I contratti intelligenti, che sono applicazioni blockchain che eseguono transazioni e altri processi secondo un insieme di regole definite nel loro codice di programmazione, presentano vulnerabilità specifiche da proteggere. Gli esperti stilano le cinque linee guida che garantiscono la blockchain security:

  1. Identificare la blockchain appropriata

Assicurarsi che una blockchain sia appropriata per le transazioni che deve registrare. Se i record contengono informazioni personali o altre informazioni sensibili, una blockchain potrebbe involontariamente esporle e causare una violazione dei dati. Un’altra considerazione è se le transazioni sono veramente definitive una volta effettuate o se sia necessaria una flessibilità nel modificare o eliminare transazioni precedenti.

  1. Verificare policy e compliance

Ricordare che le blockchain sono soggette a tutte le leggi, regolamenti e altri requisiti in materia di sicurezza informatica e privacy che devono essere rispettati esattamente come per qualsiasi altro software durante il suo ciclo di vita.

  1. Gestire le identità

La gestione delle identità è importante. Anche nelle reti blockchain pubbliche, i partecipanti devono comunque sapere di comunicare con la rete legittima. Per le reti blockchain private, la gestione degli accessi è fondamentale per impedire agli attaccanti di ottenere un accesso non autorizzato alla rete.

  1. Definire l’assessment corretto

Effettuare regolari valutazioni del rischio e audit della tecnologia blockchain e dei processi correlati, come la gestione delle chiavi, e determinare come gestire le vulnerabilità o altre debolezze identificate e mappate.

  1. Pianificare modalità di risposta agli incidenti

Blockchain security significa anche prepararsi, sempre e comunque, al peggio. Molte cose possono andare storte: che si tratti di una nuova vulnerabilità critica nel codice della blockchain, del furto di una chiave privata, di miner compromessi. Potrebbero anche sorgere dispute tra i partecipanti, quindi essere pronti a risolverle per evitare che la blockchain venga interrotta. Per questo è importante anticipare i rischi ed essere pronti ad attuare processi di risposta e ripristino adeguati.

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 4