Chybný pokus o VPN: ktorá trieda prihlasovacích údajov prekročila hranicu?
Neúspešný pokus nemusel poslať nič, alebo mohol vydať heslo tomu, kto odpovedal. Pred rozhodnutím, čo zrušiť, roztrieďte artefakt.
Pripojili ste sa k nesprávnej VPN a klient ohlásil zlyhanie. Či to malo význam, závisí od toho, čo pred zlyhaním prešlo po linke, a samo slovo vám to nepovie. Niektoré handshaky nenesú vôbec žiadne tajomstvo, iné odovzdajú heslo každému, kto na adresu odpovedal. Predtým, než čokoľvek zrušíte, zistite, ktorý z tých dvoch prípadov nastal.
Zastavte sa a uchovajte dôkazy
Uchovajte klientsky log, vybraný profil, zadanú adresu a približný čas. Zapíšte ich niekam mimo klienta, pretože úprava profilu alebo preinštalovanie ničí záznam, ktorý budete potrebovať. Zastavte každý ďalší pokus, kým nebude koncový bod potvrdený cestou, ktorú ovládate.
Nikdy nezverejňujte neupravený profil ani log na verejnom fóre, keď sa pýtate, či bol pokus bezpečný. Tieto dokumenty často obsahujú cestu k súkromnému kľúču, interné meno hostiteľa alebo token, preto najprv redigujte a potom zdieľajte s administrátorom, ktorému koncový bod patrí.
Čo môže prekročiť hranicu
Väčšina zmätku vzniká z toho, že každé zlyhanie sa berie ako jeden druh udalosti. Na druhú stranu sa môžu dostať štyri rôzne veci: verejný certifikát, podpis dokazujúci použitie kľúča, heslo alebo jednorazový kód a súbor, ktorý ste si vybrali sami. Každá má svoj dôsledok a svoju opravu. Roztriedenie artefaktu je krok, ktorý rozhoduje o všetkom ďalšom.
Prípad s certifikátom je najmiernejší, pretože to, čo cestuje, je verejné už z princípu a jeho identifikačné polia sú už viditeľné každému, kto sa pripája. Podpis nad výzvou hovorí, že kľúč bol použitý, nie že bol odoslaný. Heslo je opačný prípad: kto ho dostane, môže ho vyskúšať inde, a služba postavená na overovaní hesiel je zamýšľaným príjemcom presne tejto hodnoty.
Dôkaz kľúča nie je nahranie kľúča
Moderný TLS drží tieto dve myšlienky zámerne oddelené. RFC 8446 opisuje správu CertificateVerify, v ktorej klient podpisuje výzvu súkromným kľúčom zodpovedajúcim jeho certifikátu. Podpis preukazuje držbu bez prenosu kľúča, a preto pokus overený certifikátom nie je automaticky kompromitáciou kľúča.
Toto upokojenie má hranicu, ktorú stojí za to pomenovať. Dôkaz ukazuje, že kľúč sa zúčastnil tej výmeny, a nehovorí nič o tom, čo už mohol prečítať lokálny program v stroji. Nehovorí ani to, ako ďaleko sa neznámy pokus skutočne dostal, preto je log stále dôležitejší než teória.
Heslá sa riadia úplne iným modelom dôvery. Koncentrátor nakonfigurovaný s externým overovateľom môže poslať predloženú hodnotu ďalej, takže jej prijatie je zamýšľaná funkcia a nesprávny cieľ je skutočné vystavenie, nie teoretické.
Rekonštruujte pokus z logu
Pokus rekonštruujú štyri fakty: adresa, s ktorou sa skutočne spojil, či bola overená identita servera, ktorá metóda autentifikácie bola zvolená a kde sa proces zastavil. Každý sa objavuje v klientskom logu a každý vylučuje iný príbeh. Chyba o trasách alebo priradenej adrese nehovorí nič o tom, čo už bolo po linke, pretože autentifikácia sa mohla dokončiť skôr, než zlyhalo nastavenie tunela.
Vytiahnite tie fakty z vlastného logu klienta, nie z pamäte. Úzky filter udrží výstup dosť krátky na redigovanie a zdieľanie:
grep -n -i -E 'verify|authentication|certificate|error|timeout' client.log | tail -30
Nenahrádzajte názov hostiteľa ničím z toho. Známe meno, aktuálna odpoveď DNS a upozornenie na certifikát, ktoré zobrazuje softvér, opisujú prítomnosť, nie skoršie spojenie. Ani výzva na heslo nie je dôkazom, že sa niečo odoslalo, pretože klient mohol zlyhať ešte pred jej odoslaním.
Rozhodnite a potom konajte
Rozhodnutie vyplýva z artefaktu, nie z toho, ako alarmujúco zlyhanie vyzeralo. Prečítajte si štyri riadky proti faktom, ktoré ste rekonštruovali:
| Decision | Evidence that puts you here | Evidence that rules it out |
|---|---|---|
| Change the password now | A password was submitted and a server reply arrived | The log stops before any submission |
| Review active sessions | A one-time code was accepted by the wrong endpoint | The code was never sent, or was rejected before use |
| Revoke and reissue | The file you selected contained key material, not just settings | The upload was a profile with no embedded key |
| No further action | The attempt ended before any authentication value was offered | You later find an earlier attempt you had forgotten |
Ak sa heslo dostalo k nežiaducej službe, zmeňte ho cez kanál správy účtu a skontrolujte, kde inde bolo použité znova. Expirovaný jednorazový kód túto cestu zatvára, ale relácia vytvorená s ním nie, preto požiadajte správcu identity o revíziu relácií. Ak bol súbor s kľúčom skutočne nahraný, postupujte podľa procesu odvolania vydávajúcej organizácie, namiesto čakania na dôkaz zneužitia.
Potom zapíšte obmedzený výsledok: čo bolo odoslané, čo zostáva neznáme a ktorý prihlasovací údaj vyžaduje akciu. Práve tento záznam si vyžiada neskoršia revízia a je užitočnejší než ktorýkoľvek z tých dvoch pohodlných záverov.