Glossario / Privacy e sicurezza
Attacco alla catena di fornitura
- Che cos'è un attacco alla catena di fornitura?
- Un attacco alla catena di fornitura ti raggiunge attraverso qualcosa di cui ti fidi già: l'aggiornamento del wallet che hai installato, la biblioteca software che contiene, o il dispositivo spedito da un rivenditore.
Non c'è un momento in cui commetti un errore, ed è questo che rende difficile difendersi da questa categoria. A novembre 2018 un pacchetto npm molto usato chiamato event-stream fu affidato a un manutentore volontario che aggiunse codice mirato esattamente a un wallet bitcoin, Copay, e in particolare alle frasi di recupero che davano il controllo su più di 100 bitcoin. Comprare direttamente e verificare ciò che installi sono le due abitudini che aiutano davvero.
Come funziona
Un attacco alla catena di fornitura inserisce codice o hardware ostile a monte della vittima, in un punto in cui la fiducia è già stata concessa.
La dipendenza. Il software moderno per wallet richiama centinaia di pacchetti di terze parti. Nel caso event-stream l'autore originale, stanco di mantenerlo, trasferì i diritti di pubblicazione a uno sconosciuto che si offrì volontario. Il nuovo manutentore aggiunse una dipendenza dall'aspetto innocuo, poi pubblicò una versione il cui payload si attivava solo all'interno delle build del wallet Copay di BitPay, decifrava la frase di recupero e la inviava altrove. Le versioni di Copay dalla 5.0.2 alla 5.1.0 furono distribuite con quella versione.
Il canale di distribuzione. Il 14 dicembre 2023 l'account npm di un ex dipendente di Ledger fu vittima di phishing e fu usato per pubblicare versioni malevole della biblioteca software Connect Kit di Ledger. Per diverse ore le applicazioni che la caricavano da una rete di distribuzione dei contenuti hanno servito agli utenti un drenatore di wallet che reindirizzava i trasferimenti. Circa 600.000 dollari furono sottratti a persone che avevano aperto un sito familiare e non avevano cliccato nulla di insolito.
L'hardware. Dispositivi contraffatti o con una frase di recupero già precaricata, venduti tramite annunci su marketplace e rivenditori terzi. Il segnale è semplice e assoluto: un wallet hardware autentico genera le parole di recupero sul dispositivo stesso, durante la configurazione, una sola volta. Qualunque cosa arrivi con le parole già stampate su una scheda, o con istruzioni per inserire una frase fornita nella confezione, è un kit per il furto con un buon imballaggio.
La build. Qui la difesa è la riproducibilità. Bitcoin Core usa Guix per build deterministiche e avviabili da zero dalla versione 22.0, a settembre 2021, così contributori indipendenti compilano la versione dal codice sorgente e firmano il risultato. Se le loro attestazioni coincidono, il binario sulla pagina di download è quello prodotto dal codice sorgente pubblicato, e una macchina di build compromessa non può nascondersi.
Dove lo vedi
Quattro punti di una normale configurazione bitcoin si trovano a valle della decisione di fiducia di qualcun altro.
Download del software. Scarica gli installer da una pagina a cui sei arrivato tu stesso, poi controlla la firma della versione, o almeno l'hash, con le chiavi di firma del progetto stesso. I progetti dei wallet pubblicano entrambi proprio perché questo passaggio sia possibile.
Estensioni del browser. Le estensioni si aggiornano in silenzio e cambiano proprietario in sordina, quindi una che tocca chiavi o indirizzi merita la stessa diffidenza che riserveresti a un eseguibile non firmato.
Acquisti di hardware. Compra dal negozio del produttore o da un rivenditore autorizzato indicato per nome, mai da un annuncio su un marketplace, da un'asta o da un venditore dell'usato. Le recensioni dei wallet hardware su questo sito collegano il negozio ufficiale di ogni dispositivo proprio per questa ragione.
Firmware e aggiornamenti. Aggiorna tramite l'app del produttore stesso, avviata da te, e mai da un link in un'email o da un popup che sostiene che il tuo dispositivo è a rischio.
Dietro tutti e quattro c'è il controllo che limita il danno quando uno di essi viene meno: conferma l'indirizzo di destinazione e l'importo sullo schermo del wallet hardware prima di approvare. Un computer compromesso può riscrivere qualunque cosa mostri, ma non può riscrivere ciò che ti mostra un dispositivo separato.
Attacco alla catena di fornitura vs malware degli appunti
Il malware degli appunti è un payload; un attacco alla catena di fornitura è una via di consegna, e i due vengono nominati come se fossero alternative. Il malware che sostituisce gli indirizzi di solito arriva perché qualcosa è stato scaricato dal posto sbagliato, quindi la normale cautela sulle fonti funziona contro di esso. Un attacco alla catena di fornitura arriva dentro qualcosa scaricato esattamente dal posto giusto, quindi la cautela sulle fonti non funziona. A sconfiggere entrambi è la stessa abitudine, ed è per questo che conta più che sapere da dove provenga un dato pezzo di codice: verifica l'indirizzo sul dispositivo che firma, non sullo schermo che ti ha chiesto di firmare.