Recuperarea tunelurilor WireGuard de pe un PC Windows mort
Profilurile sunt bloburi DPAPI legate de contul și de mașina care le-au creat. Copierea fișierului pe un PC nou vă lasă cu octeți pe care nicio cheie locală nu îi poate deschide.
Un laptop moare cu trei tuneluri WireGuard configurate, iar fișierele de configurare sunt încă pe disc. Copierea lor pe o mașină de înlocuire produce un serviciu care pornește și apoi refuză să se ridice. Fișierele sunt protejate cu o cheie care aparține contului și mașinii care le-au creat, așa că octeții călătoresc, dar capacitatea de a-i citi nu. Parcursul de mai jos merge de la găsirea fișierului la opțiunea care chiar recuperează serviciul.
Unde locuiește acum fișierul tunelului
Stocarea s-a mutat între versiuni. Instalările mai vechi țineau profilurile în datele locale de aplicații ale profilului de sistem, într-un folder WireGuard\Configurations, iar buildurile actuale folosesc un director de date în arborele fișierelor de program. Fiecare tunel este un singur fișier cu o extensie dublă care numește protecția:
Get-ChildItem "C:\Program Files\WireGuard\Data\Configurations"
Sufixul .dpapi nu este decor. Fișierul este un blob protejat, iar serviciul este proiectat să îl consume exact în această formă. Modul acceptat de a instala un tunel din el este un apel ridicat care indică blobul:
$blob = "C:\Program Files\WireGuard\Data\Configurations\hq.conf.dpapi"
wireguard.exe /installtunnelservice $blob
Acea comandă reușește doar în contextul care poate despacheta blobul. Instalează un serviciu; nu decriptează nimic pentru dumneavoastră.
De ce blobul nu se deschide în altă parte
Protecția își derivă cheia din acreditările de autentificare ale utilizatorului și, în funcție de domeniul ales, din mașină. Documentația Microsoft pentru apelul de protecție spune că valoarea implicită aparține utilizatorului și mașinii care au criptat-o, iar o opțiune pentru întreaga mașină schimbă cine o poate despacheta. În ambele cazuri cheia trăiește în materialul de acreditări al sistemului de operare, nu în fișier. Textul cifrat este portabil; cheia nu.
Preluarea proprietății folderului schimbă un ACL și nimic altceva. Montarea discului vechi într-o carcasă și copierea blobului pe un PC nou vă lasă cu text cifrat a cărui cheie nu a fost niciodată copiată. Eșecul este criptografic, iar nicio reinstalare a serviciului nu îl schimbă. Mașina nouă nu are nicio cheie principală pentru acel cont, iar vechiul depozit de chei nu călătorește cu fișierul.
Produsele care păstrează setările într-un fișier estompat fac contrastul clar. O configurație doar estompată devine lizibilă odată ce găsiți steagul care dezactivează estomparea; un blob protejat rămâne închis fără cheie. Confundarea celor două îi face pe oameni să caute un decodor care nu există.
Ce să încercați cât timp vechiul sistem încă pornește
Dacă instalarea încă pornește, exportați tunelurile din client în timp ce sunteți autentificat ca contul care le-a creat. Exportul produce fișiere de configurare obișnuite, și atunci o copie de siguranță devine portabilă.
Dacă discul este lizibil dar Windows nu pornește, fișierele protejate sunt efectiv pierdute. Instrumentele care promit să le recupereze fie rulează în contextul original, pe care nu îl mai aveți, fie vă cer să predați blobul și imaginea discului vechi, ceea ce este o decizie la care merită să vă opriți.
Notați ce aflați în ambele cazuri: numele tunelurilor, punctele finale și cheile publice. Numele și punctele finale vă permit să reconstruiți rapid, iar cheile publice permit celeilalte părți să identifice ce intrare trebuie eliminată.
Reconstruiți mai bine din partea celuilalt capăt
Pentru un capăt pe care îl controlați, generați o nouă pereche de chei și adăugați noua cheie publică la lista celuilalt capăt. Pentru un punct final corporate sau găzduit, rugați administratorul să emită o cheie nouă și să o elimine pe cea veche. Acea cerere este aceeași pe care ați face-o după un furt, pentru că un disc pierdut înseamnă că vechea cheie privată trebuie tratată ca expusă.
Apoi reconstruiți tunelul din valorile notate și confirmați handshake-ul înainte de a șterge orice altceva. Intrarea veche de la celălalt capăt ar trebui să dispară în aceeași modificare, astfel încât un disc furat să nu se poată reconecta mai târziu.
Lecția aparține politicii de backup, nu unui instrument de recuperare. O configurație WireGuard este o acreditare: cine deține cheia privată deține identitatea celuilalt capăt, și nu există o a doua parolă pe drum. Fie exportați configurația în mod deliberat și o păstrați cu celelalte secrete, fie acceptați că recuperarea înseamnă reemiterea cheilor, și notați care alegere se aplică fiecărui tunel.