HomeBlockchainUn servizio di recupero di wallet password Bitcoin ed Ethereum 

Un servizio di recupero di wallet password Bitcoin ed Ethereum 

Benvenuti all’inferno mnemonico.

Il 19 dicembre 2020 Miguel Cuneta ha twittato:

“Aiutare un amico a recuperare il suo vecchio wallet blockchain dal 2013. Incrociando le dita per lui, perché i $50 vinti dal nostro UFC scommesse sono ora $3000+”.

Keychainx la soluzione per il wallet in venti parole

Miguel ha inviato a Keychainx 17 parole, un wallet.aes.json e un mucchio di suggerimenti, come il nome dei suoi amici, anno e mese in cui ha creato il portafoglio e alcune varianti della parola d’accesso.

Immediatamente abbiamo iniziato brute forcing la parola d’accesso utilizzando algoritmi personalizzati e i nostri server di cracking della parola d’accesso personalizzata. Oh quanto poco sapevamo di come si sarebbero evolute le cose nelle settimane successive!

Anche con i più semplici suggerimenti, il nostro algoritmo può trovare una parola d’accesso al wallet Bitcoin perfino con diversi errori, l’aggiunta di caratteri casuali in mezzo, rimuovendo i caratteri e mettendo prima o aggiungendo caratteri e parole casuali. Nella maggior parte dei casi questo funzionerà se i suggerimenti sono simili alla password finale. Avevamo buone speranze con il portafoglio stesso, che era un portafoglio blockchain.info V1 in cui era possibile provare quasi 300 milioni di parole d’accesso diverse al secondo. Su un grosso server GPU. E ne abbiamo molti…

Che la battaglia abbia inizio!

La battaglia degli algoritmi

Come il vecchio assedio di Gerusalemme, abbiamo provato con tutta la forza! Il nostro algoritmo ha provato tutte le combinazioni possibili fino a 13 caratteri senza fortuna.

È passata una settimana. Pensavamo ci fosse un altro modo.

Per fortuna Miguel ci ha mandato una sequenza di 17 parole chiamata seme mnemonico. Purtroppo, non è più supportato da blockchain.com.  Ora viene usata una 12° parola mnemonica da una lista di 2048 parole che è la tua chiave privata cifrata.

Il vecchio mnemonico era il tuo l’ID e la parola d’accesso criptata usando una varietà di parole. Le liste di parole però non sono state trovate da nessuna parte. Potrebbero essere qualcosa come 15 a 21 parole o più. Avevano tre diverse varianti di crittografia e usavano un’interazione diversa (a volte la password veniva crittografata usando l’algoritmo specifico). 

I semi mnemonici tradizionali usati con i portafogli Ledger, Trezor, Electrum o Bitcoin Core erano di 12 o 24 parole (con una tredicesima o venticinquesima parola chiamata passphrase).

Usando l’ingegneria inversa vecchio stile, abbiamo cercato vecchie istantanee di blockchain.info su archive.org e abbiamo trovato un’istantanea del 2014 che accettasse quelle parole.

Purtroppo, ci ha dato un codice di controllo sbagliato e non aveva una copia di tutte le librerie.

Wallet
Security Wallet

Liste di parole e password per codice di controllo

Archive.org è una grande risorsa per controllare vecchie variazioni o siti web defunti. Purtroppo, però non è un backup completo al 100%.

Utilizzando Google Chrome web developer tools, abbiamo guardato cosa ha fatto lo script java, poi abbiamo scoperto che stava usando un elenco di circa 50000 parole! Il mnemonico utilizzato oggi, con blockchain.com portafoglio di recupero semi utilizza solo 2048 parole diverse.

Abbiamo anche scoperto che hanno usato due diverse liste di parole per decifrare i loro portafogli nel 2014. Uno per calcolare il codice di controllo, l’altro per calcolare l’ID del portafoglio e la password. Quindi, quale uso diverso ha avuto la lunghezza del mnemonico? I semi con più parole sono stati per password più lunghe. 

Ma torniamo a Miguel e al suo amico. Le 17 parole ci hanno dato un codice di controllo sbagliato, così abbiamo deciso di dare un’occhiata alla pagina blockchain.com-s GITHUB dove memorizzano tutti i loro codici sorgenti.

Purtroppo, il codice per i portafogli V1 non era più disponibile, abbiamo dovuto cercare da qualche altra parte, conoscendo solo il nome della lista di parole più grande dall’archivio.org snapshot dal 2014.

Google potrebbe essere molto utile a volte. Abbiamo trovato un Github nascosto con il vecchio codice sorgente del portafoglio usando quella lista di parole più grande, solo che le 17 parole ci davano ancora un codice di controllo sbagliato.

Così abbiamo deciso di scrivere una brute forcer mnemonica usando la GPU. Un brute forcer per la mnemonica Trezor usando 2048 parole è stata una vera impresa da rompere. Qui abbiamo avuto bisogno di creare un brute forcer con 50000 variazioni di ogni parola.

Così abbiamo avuto 17 parole in cui ogni parola potrebbe avere 50000 combinazioni.

Poi 3 delle parole erano un codice di controllo da una lista di parole completamente diversa.

Invece di preoccuparci della quantità di combinazioni, abbiamo deciso di esaminare ciò che ogni gruppo di parole ci avrebbe dato, riuscendo a recuperare la parola Jesp e 1980, che faceva parte dei suggerimenti. Sapevamo di essere sulla strada giusta.

Un altro lotto di parole ci ha dato 0301 che era la data e  mese di compleanno presente nella lista suggerimenti.

Così abbiamo deciso di aggiungere casualmente parole dalla lista di 50000 parole in cui il gruppo di parole ci ha dato strani caratteri non inglesi (i suggerimenti erano tutti numeri o nomi di parole inglesi)

300 righe di codice più tardi…

Eliminato!

Siamo riusciti a trovare la giusta combinazione di parole, e si è scoperto che l’amico di Miguels aveva una parola mancante.

Ora abbiamo il codice di controllo corretto, utilizzando la combinazione di 18 parole, e siamo stati in grado di decifrare il wallet.aes.json con la parola d’accesso che il nostro strumento personalizzato ha trovato.

UFC scommessa vinta, Bitcoin dal 2014 recuperato!

Grazie a Keychainx PRO, la nostra divisione aziendale ha individuato il Tweet e contattato Miguel da parte nostra.

LEZIONE IMPARATA.

Anche se molti sostengono che non ci sono 15 o 17 o 19 o 21 parole mnemoniche, e non sono più possibili da utilizzare o decifrare, abbiamo dimostrato che si sbagliano. Ci sono diversi numeri mnemonici dispari utilizzati nei primi portafogli blockchain.info ed è possibile recuperarli.

RELATED ARTICLES

MOST POPULARS

GoldBrick