Tajność forward dla VPN: co może odblokować skradziony klucz
Tajność forward ogranicza to, co później skradziony klucz tożsamości ujawnia o nagranych sesjach. Nie chroni żywego tekstu jawnego na przejętym urządzeniu.
Nagraj dziś zaszyfrowany tunel, w przyszłym roku ukradnij długoterminowy klucz prywatny serwera i spróbuj odszyfrować nagranie. Tajność forward to właściwość, która mówi, że skradziony klucz sam nie wystarczy. To stwierdzenie o nagranych sesjach i konkretnych sekretach, a nie ogólna obietnica, że tunel był bezpieczny. Właśnie precyzyjne określenie zakresu czyni ten termin użytecznym.
Pytanie dotyczy nagrania, a nie żywej sesji
Klucz długoterminowy identyfikuje punkt końcowy i podpisuje uzgadnianie. Klucze sesji szyfrują rzeczywisty ruch, a w projekcie z tajnością forward są wyprowadzane ze świeżego materiału wymiany kluczy, który obie strony generują, a potem odrzucają. Atakujący mający tylko klucz długoterminowy nie może odtworzyć tych odrzuconych wartości. Atakujący mający żywy stan sesji nadal może, dlatego gwarancja dotyczy przeszłości, a nie teraźniejszości.
Twierdzenie jest warunkowe: obowiązuje tylko wtedy, gdy efemeryczne sekrety rzeczywiście zostały zniszczone, a protokół jest tym, o którym myślisz. Mieszane wdrożenie może je spełnić na jednym tunelu, a na innym zawieść.
Jeden sekret nie może odtworzyć pozostałych
Sprawdź wynegocjowany tryb, a nie stronę marketingową. Wynik uzgadniania podaje wymianę kluczy i wersję protokołu.
openssl s_client -connect vpn.example.com:443 -tls1_3 -brief
swanctl --list-sasPodsumowanie s_client pokazuje wersję TLS i grupę wymiany kluczy, a grupa efemeryczna jest widocznym znakiem uzgodnienia kluczy z tajnością forward. Lista swanctl pokazuje asocjacje IKE i CHILD wraz z ich timerami odnawiania kluczy, więc widać, czy wdrożenie odnawia klucze według harmonogramu. Statyczna wymiana kluczy RSA albo stary tryb zgodności traci tę właściwość niezależnie od nazwy szyfru. Zapisz tryb, który zaobserwowałeś, a nie ten, który reklamował dostawca.
Odnawianie kluczy nie jest automatycznie tajnością forward
Jak często tunel odnawia klucze, to osobne pytanie od tego, jak każdy klucz jest wyprowadzany. Projekt, który odtwarza klucze z sekretu długoterminowego, może odnawiać je co minutę i nadal oblewać test, ponieważ późniejsze przejęcie odtwarza je wszystkie. Odwrotnie, protokół z rzadkim odnawianiem nadal może mieć tajność forward, gdy każda wymiana jest niezależna. Czytaj wyprowadzanie, nie interwał, i nie myl krótkiego timera ponownego połączenia z gwarancją kryptograficzną.
Ta sama pomyłka pojawia się przy nazwach szyfrów: nowoczesny szyfr nic nie mówi o tym, jak dotarł jego klucz.
Co pozostaje widoczne po gwarancji
Tajność forward chroni tekst jawny nagranych sesji przed przyszłym przejęciem kluczy i nie robi nic przeciwko atakującemu, który czyta żywy ruch na przejętym punkcie końcowym. Nie usuwa z nagrania adresów docelowych, czasu ani wolumenu i nie ogranicza, jak długo operator przechowuje dzienniki połączeń. Nie czyni też przejętego klienta godnym zaufania, ponieważ atakujący już siedzi tam, gdzie treść istnieje jawnie.
Gdy dostawca twierdzi, że stosuje tajność forward, zapytaj, który sekret długoterminowy uznaje się za skradziony i które sekrety sesji pozostają niedostępne. Jeśli te dwa pytania mają jasne odpowiedzi, twierdzenie coś znaczy.