Kaj dejansko ščiti geslo na zasebnem ključu VPN
Zaklene datoteko na disku, ne delujočega tunela ali prijave v vaš račun. Izvedite, kaj poziv pokriva, česa ne, in kaj storiti, če se razkrije.
Poziv, ki se pojavi ob zagonu odjemalca VPN, je lahko napačno razumljen. Ni geslo računa VPN, ni geslo predora, in z njegovim vnosom ni dokazano, da je povezava varna. Odklene eno shranjeno predstavitev zasebnega ključa, da lahko odjemalec prebere material ključa in ga uporabi za preverjanje pristnosti. Vse, kar se zgodi po tem, je drugo vprašanje.
V praksi se odgovor zlomi na robovih: ljudje domnevajo, da geslo ščiti delujoči predor, ali da njegova sprememba prekliče kopijo ključa, ki je že uhajala. Obe domnevi odpovedujeta, in to tako, da poverilnica ostane izpostavljena, medtem ko operater misli, da je zadeva rešena.
En pogovorno okno, več različnih skrivnosti
Geslo zasebnega ključa dešifrira datoteko. Geslo računa vas preveri pri storitvi. Geslo za uvoz PKCS#12 dešifrira paket, ki vsebuje ključ in njegovo potrdilo, in morda ni isti niz kot geslo samega ključa. Ti pozivi so lahko videti skoraj enaki, in ugibanje, katera skrivnost kam sodi, je pot, po kateri ključi končajo prilepljeni v napačno polje.
Šifriranje samega predora je četrta stvar. Podatkovni kanal uporablja sejne ključe, dogovorjene med rokovanjem; geslo zasebnega ključa nima nobene vloge pri zaščiti posameznih paketov. Če lahko kdo prebere datoteko ključa, lahko poskuša geslo uganiti brez povezave, če pa lahko bere pakete, je geslo nepomembno.
Kaj pokriva šifriranje na disku
Šifriran ključ PEM ima dve obliki, glava pa vam pove, katero imate. Sodobna oblika PKCS#8 se začne z -----BEGIN ENCRYPTED PRIVATE KEY-----; starejša oblika PEM, še vedno pogosta v starejših nastavitvah OpenVPN, se začne z -----BEGIN RSA PRIVATE KEY----- in nosi Proc-Type: 4,ENCRYPTED ter vrstico DEK-Info takoj pod njo. Datoteka hrani zasebni ključ šifriran s ključem, izpeljanim iz vašega gesla, običajno prek KDF na osnovi gesla z navedenim številom ponovitev ali delovnim faktorjem. Dokumentacija OpenSSL pkey pokriva oblike in možnosti gesla, ki veljajo pri branju.
Sledita dve posledici. Šibko geslo je mogoče napasti brez povezave s hitrostjo, ki jo KDF dovoljuje, zato so dovoljenja datoteke in dostop do varnostnih kopij še vedno pomembni, tudi ko je datoteka šifrirana. In napadalec, ki dobi samo datoteko brez gesla, mora ugibati; tisti, ki dobi datoteko in geslo, ima ključ, natanko tako, kot da nikoli ne bi bil šifriran.
head -3 vpn.key
openssl pkey -in vpn.key -noout -pubout
openssl pkcs12 -in bundle.p12 -info -noout
head -3 prikaže glavo in v starejši datoteki vrstici Proc-Type in DEK-Info, ki dokazujeta šifriranje; ena vrstica sama po sebi ni dokaz v nobeno smer. Vrstica pkey zahteva geslo in natisne samo javno polovico, kar dokazuje, da datoteka in geslo delujeta brez razkritja zasebnega ključa. Za to preverjanje ne uporabljajte -text: natisne zasebne komponente, privateExponent, prime1, prime2 in ostalo, in tega izpisa ni dovoljeno nikamor prilepiti, ne v zahtevek, ne v klepet, ne v dnevnik. Ukaz PKCS#12 vam pove tudi, ali ima paket ločeno geslo MAC ali šifriranja, kar je vredno vedeti, preden ga predate sodelavcu.
Česa ne ščiti več, ko je ključ naložen
Odklepanje je za ta proces enosmerni dogodek. Odjemalec zahteva ključ od KDF, dešifrira datoteko in hrani zasebni ključ v pomnilniku, dokler ga potrebuje. Od tega trenutka geslo ne ščiti ničesar pri delujoči seji: ne pomnilnika procesa, ne jedrne izpisne kopije, ne seje za odpravljanje napak, povezane z odjemalcem, ne varnostne kopije stroja, narejene med uporabo ključa.
To je ista meja kot pri ključu SSH z geslom ali odklenjeni shrambi upravitelja gesel. Poveča stroške kraje datoteke v mirovanju in ne naredi nič proti zlonamerni programski opremi, ki teče kot vaš uporabnik, pooblaščeni aplikaciji, ki od odjemalca zahteva podpis, ali skrbniku, ki lahko bere pomnilnik. Obravnavajte jo kot eno plast, ne kot kontrolo, ki naredi ključ varnega za pustiti naokoli.
Zakaj se poziv vedno znova vrača
Odjemalec, ki ob vsakem ponovnem povezovanju znova vpraša, ni nujno pokvarjen. Nekateri odjemalci geslo shranijo v predpomnilnik za sejo, drugi v ključavnico OS, nekatere pa je mogoče usmeriti na pomočnika, ki ga priskrbi, zato je vedenje odvisno od odjemalca in njegove konfiguracije, ne od datoteke ključa.
Če je ponavljajoči se poziv resnična pritožba, preglejte možnosti predpomnjenja in preverjanja pristnosti odjemalca, preden odstranite šifriranje s ključa. Odstranitev gesla spremeni zaščiteno datoteko v ključ v odprtem besedilu, ponovno povezovanje pa postane tiho na račun edine kontrole v mirovanju, ki ste jo imeli. Boljši odgovor je običajno podprta shramba poverilnic z enakimi dovoljenji datoteke, ki bi jih tako ali tako uporabili.
Izguba in razkritje nista isto popravilo
Izgubljenega gesla ni mogoče obnoviti iz potrdila. Potrdilo je javni material, ki povezuje ime s ključem; ne vsebuje poti nazaj do zasebnega ključa in nobene namige o geslu. Praktične možnosti so pooblaščena varnostna kopija ključa ali nova identiteta, izdana po običajnem postopku operaterja. Kdor ponuja 'obnovitev' gesla, ponuja njegovo ugibanje.
Razkritje zahteva drugačen odziv. Ponovno šifriranje istega ključa z novim geslom pusti material ključa nespremenjen, zato kopija, ki je bila že odkljenjena drugje, še vedno deluje. Popravilo je preklic ali zamenjava poverilnice: izdajte nov ključ in potrdilo, ju razdelite in upokojite starega pri partnerju. Dokler se to ne zgodi, je spreminjanje gesla datoteke gospodinjsko opravilo, ne zadrževanje. Staro datoteko hranite zunaj varnostnih kopij šele po potrditvi, da nova identiteta deluje, in zabeležite, katera serijska številka ali odtis jo je nadomestil.