BTCPay Server con una moneta Bitcoin e un portafoglio
Sicurezza / La storia

Furti su BTCPay: i vecchi server richiedono un ripristino oltre all’aggiornamento

Il rapporto del 2 novembre distingue la vecchia esposizione dalla versione installata oggi: per il recupero contano macchine pulite e nuove chiavi.

GeekRadarPubblicato 4 min di lettura

Chi utilizzava BTCPay Server 2.4.1 o una versione precedente al momento dell'allerta del 1° novembre deve prepararsi a ricostruire il server, anche se nel frattempo ha installato un aggiornamento. Nel rapporto sull'incidente pubblicato il 2 novembre, il progetto descrive furti da hot wallet Bitcoin e Litecoin e raccomanda una macchina pulita, un nuovo portafoglio e la sostituzione delle credenziali per le vecchie installazioni interessate.

Controllare il numero di versione visualizzato oggi non basta a ricostruire la storia della macchina. Una correzione può chiudere una via d'accesso, ma non dimostra che nessuno l'abbia percorsa in precedenza. Su un server di pagamento, questa distinzione riguarda anche le chiavi che permettono di spendere il denaro.

Conta la versione utilizzata prima dell'allerta

Gli sviluppatori identificano le versioni fino alla 2.4.1 come bersaglio degli attacchi esaminati. Non hanno osservato conseguenze di questi attacchi sui server che, al momento dell'avviso, utilizzavano già la 2.4.2 o una successiva. È il risultato dell'indagine in corso, non una garanzia generale contro ogni possibile compromissione.

La cronologia spiega perché le vecchie indicazioni vadano lette con attenzione. L'avviso di agosto riguardava una vulnerabilità corretta nella 2.4.2 e un attacco allora osservato contro le credenziali LND. Quella valutazione escludeva gli hot wallet on-chain di BTCPay. Il rapporto di novembre descrive un modo diverso di sfruttare la vulnerabilità già corretta: per decidere come intervenire occorre quindi seguire le istruzioni attuali, senza estendere al nuovo incidente le rassicurazioni più circoscritte di agosto.

La versione 2.4.7, pubblicata il 29 ottobre, contiene ulteriori interventi di sicurezza e affidabilità, anche sui permessi di pagamento, sull'accesso alle fatture e sull'autenticazione. Installare una versione supportata e aggiornata resta necessario; per una macchina già esposta è soltanto una parte del ripristino.

Dove sono le chiavi cambia il rischio

Un hot wallet conserva sul server il materiale necessario per autorizzare le transazioni. È una soluzione comoda per automatizzare le operazioni, ma una compromissione può così aprire anche l'accesso ai fondi. La documentazione dei portafogli BTCPay illustra alternative basate su hardware wallet o su portafogli compatibili con le transazioni Bitcoin parzialmente firmate.

In questi casi, preparare una transazione e autorizzarla sono operazioni separate. Il server può costruire i dati del pagamento senza possedere la chiave privata che completa la firma. Secondo il progetto, i portafogli con chiavi di spesa conservate fuori dal server non sono stati colpiti da questi furti. Resta però la raccomandazione di ricostruire le vecchie installazioni esposte: tenere al sicuro la chiave del portafoglio non mette automaticamente al riparo gli altri segreti presenti sulla macchina.

Anche un saldo apparentemente normale racconta soltanto una parte della situazione. Per un esercente la prima verifica riguarda comprensibilmente il denaro; per l'amministratore c'è anche da stabilire se le credenziali d'accesso siano rimaste sotto il proprio controllo. Le due verifiche rispondono a domande diverse.

Ripartire da un ambiente affidabile

Le indicazioni attuali prevedono di trasferire gli eventuali fondi rimasti nell'hot wallet verso un nuovo portafoglio, operando da un dispositivo affidabile; quindi di disconnettere il vecchio server conservando le prove utili e di installare una versione supportata su una nuova macchina virtuale. Anche le credenziali potenzialmente esposte vanno sostituite da un ambiente sicuro. Ripristinare integralmente la vecchia macchina trasferirebbe nella nuova anche i dubbi sulla sua integrità.

Per segnalare l'incidente servono la cronologia delle versioni e i riferimenti delle transazioni, mai seed o chiavi private. Il progetto avverte inoltre che il saldo degli indirizzi di destinazione segnalati non rappresenta una stima verificata delle perdite: il legame di tutte quelle transazioni con l'incidente non è stato ricostruito.

Per chi accetta pagamenti, il punto decisivo è chi può autorizzare una spesa. Se un hot wallet è indispensabile, limitarne il saldo alle esigenze operative riduce ciò che quel server può esporre. Il ripristino deve restituire un checkout funzionante e una risposta precisa su quali macchine, credenziali e chiavi siano autorizzate a gestirlo.