Recuperarea unui portofel pare o sarcină de tastare a unui text și este în realitate o sarcină de păstrare a cheilor. Fraza pe care o tastați nu este o parolă verificată de un server; este intrarea unei funcții de derivare care reconstruiește aceleași chei private pe care portofelul le avea înainte de a se pierde. Orice poate citi în acel moment apăsările de taste, clipboardul sau memoria procesului le poate reconstrui la fel. Prin urmare, pregătirea înseamnă să decideți unde are voie secretul să existe, înainte ca el să existe.

Urmărește fraza de la mediu până la cheia derivată

O mnemonica în stil BIP-39 este normalizată, întinsă cu PBKDF2-HMAC-SHA512 folosind o frază de acces opțională ca sare și transformată într-o sămânță din care portofelul derivă chei. De aici decurg direct două consecințe. În primul rând, fraza este o autoritate durabilă, nu o acreditare de sesiune, așa că nu există resetare pe partea serverului dacă scapă. În al doilea rând, fraza de acces opțională participă la derivare și de aceea o restaurare care pare să producă un portofel gol înseamnă de obicei că s-a introdus o frază de acces greșită, nu o frază greșită.

Fiecare pas după normalizare are loc în interiorul procesului în care ați tastat. Aceasta este partea pe care majoritatea ghidurilor de recuperare o omit: suprafața de expunere este calea de intrare și memoria acelui proces, nu rețeaua dintre dumneavoastră și un site.

Care proces este legitim depinde de portofel. Un dispozitiv hardware are propria interfață de recuperare pe dispozitiv; un portofel software are un ecran de restaurare documentat într-o versiune verificată. Niciunul nu este un chat de suport și niciunul nu este o pagină care oferă să verifice o frază în locul dumneavoastră.

Un sistem invitat moștenește încrederea gazdei sale

O mașină virtuală pare un computer separat și nu este o graniță de încredere independentă. Ghidul NIST privind virtualizarea completă descrie dependența direct: securitatea invitatului depinde de gazdă și de hipervizorul de sub ea, iar resursele partajate precum clipboardul sau integrarea folderelor lărgesc canalul dintre ele. Instalarea unui invitat pe o mașină de care deja vă îndoiți nu creează o cale de intrare nouă.

ControlWhat it addressesWhat it leaves exposed
Verified wallet buildRunning the code the publisher actually signedEverything the running process can read once it starts
Live-boot environment, no persistent diskSecrets left in swap, caches or a saved sessionThe firmware, the keyboard and the display path
Full-disk encryption on the hostRecovery material at rest after shutdownThe same material while the machine is unlocked
Tunnel to a trusted exitWho can observe traffic in transitLocal processes, screen capture and input hooks

Scurgerile practice urmează aceeași linie. Un clipboard partajat transportă tot ce ați copiat. Instantaneele și fișierele de stare suspendată pot captura memorie care conține fraza. Suplimentele pentru invitat cu acces la sistemul de fișiere al gazdei îi dau invitatului o vedere a căilor gazdei și gazdei o vedere a căilor invitatului. Niciuna dintre acestea nu este un atac exotic; sunt funcții care fac mașina virtuală comodă.

Concluzia onestă este mai îngustă decât „o mașină virtuală nu este sigură”. O mașină virtuală poate fi containerul potrivit pentru lucru când gazda este mașina în care aveți încredere și ați eliminat funcțiile de partajare. Nu poate salva o gazdă în care nu aveți încredere.

Ce acoperă de fapt un tunel criptat

Un VPN protejează pachetele dintre două capete. Nu are nicio părere despre cine citește ecranul la oricare capăt și nu împiedică un proces local să observe ce tastați într-o fereastră. Așadar, un tunel este relevant când preocuparea este calea și irelevant când preocuparea este gazda.

Această distincție contează pentru că ambele se vând împreună. „Conexiune criptată” descrie tranzitul; „dispozitiv de încredere” descrie capătul. O procedură de recuperare are nevoie de un răspuns separat pentru ambele, iar doar unul dintre ele poate fi oferit de un serviciu de rețea.

Verificarea a ceea ce ați descărcat aparține aceleiași familii de întrebări despre capăt. O verificare de hash și o verificare de semnătură stabilesc că arhiva corespunde cu ceea ce a publicat editorul; nu spun nimic despre mașina care o va rula.

sha256sum -c SHA256SUMS.txt
gpg --verify SHA256SUMS.txt.sig SHA256SUMS.txt

Pregătiți mediul înainte ca materialul să apară

Ordinea contează mai mult decât uneltele. Decideți gazda, eliminați funcțiile de partajare, deconectați ce nu trebuie conectat și abia apoi scoateți înregistrarea de recuperare din spațiul ei de stocare. A face asta în ordine inversă înseamnă că secretul este deja în memorie în timp ce încă decideți unde ar trebui să ajungă.

Apoi țineți secretul în fluxul pe care producătorul portofelului îl documentează. Introduceți-l în interfața de restaurare proprie portofelului, în rețeaua pe care portofelul o așteaptă, și aprobați doar operațiunile pe care le puteți verifica pe ecranul de încredere pe care portofelul îl oferă. O casetă de dialog familiară de pe desktop nu este dovada că dispozitivul va autoriza ceea ce afirmă caseta.

Dacă bănuiți o expunere, opriți introducerea de material pe acel sistem și mutați-vă într-un mediu în care puteți avea încredere independent. Închiderea mașinii virtuale, schimbarea unei parole VPN sau reinstalarea aplicației portofelului nu rotesc autoritatea portofelului; doar mutarea activelor într-un portofel nou cu chei generate din nou face asta. Țineți fraza brută în afara oricărei conversații de suport în timp ce obțineți pașii specifici portofelului, pentru că niciun proces de suport legitim nu are nevoie de ea. Acea singură regulă previne mai multe pierderi decât orice listă de întărire.

Articole similare