Jedan redak „posljednje rukovanje, prije dvije minute“ izgleda kao dokaz neprekidne aktivnosti, a slabiji je od toga. Označava posljednju završenu razmjenu ključeva za jednog partnera, koja se događa po fiksnom tajmeru obnove ključeva dok saobraćaj teče i prestaje kad partner utihne. Da li to vrijeme povezuje osobu s bilo čim zavisi od identifikatora sačuvanih uz njega i od satova oba sistema. Evo kako se zapis ponaša u dva najčešća sklopa i gdje njegovo čitanje ide naopako.

Dva zapisa, dva različita značenja

WireGuard drži jednu vremensku oznaku rukovanja po partneru, zamijenjenu pri svakoj obnovi ključeva, plus brojače bajtova u svakom smjeru. OpenVPN obično bilježi početak sesije, prekid veze i sve što doda podešena detaljnost, što jedinicu zapisa čini sesijom, a ne razmjenom ključeva.

Ta razlika odlučuje šta znači odsustvo:

QuestionWireGuard handshakeOpenVPN session log
Did the peer send recently?Strong hint within the rekey windowNot answered by start time alone
Did the peer stop?Weak, because idle peers also stop rekeyingOnly if a disconnect was written
What was visited?NothingNothing

Zašto rukovanje nije neprekidno korištenje

WireGuard obnavlja ključeve otprilike svake dvije minute dok ima podataka za zaštitu, a partner koji miruje jednostavno stane. Zato zastarjelo rukovanje može značiti da laptop spava, da je korisnik prestao raditi ili da je mreža odbacila pakete koji bi pokrenuli sljedeću razmjenu. Vremenska oznaka je donja granica aktivnosti, a ne pratilac pažnje.

Obrnuta greška je jednako laka. Stalni keepalive saobraćaj drži tunel toplim na uređaju koji miruje, pa se skorašnje rukovanje može pojaviti na mašini koju niko nije dotakao sat vremena. Brojači bajtova ovdje pomažu jer razlikuju partnera koji šalje stvarne podatke od onoga koji razmjenjuje samo keepalive, i kažu koji je smjer nosio obim. Ništa od toga ne otkriva odredište, stranicu ili upit.

Identifikatori putuju s vremenskom oznakom

Vrijeme bez računa, javnog ključa ili izvorišne adrese je siroče. Spojite oznaku s identitetom partnera i zapažanje postaje povezivo: javni ključ ostaje kroz promjene adresa, dok izvorišnu adresu može dijeliti mnogo pretplatnika iza operatorovog prevođenja adresa.

Ta asimetrija je ono što većina rasprava o privatnosti promašuje. Adresa izgleda anonimno jer je dijeljena, a ključ izgleda tehnički jer je dug, ali stabilni identifikator je ključ. Zadržavanje jednog polja i odbacivanje drugog mijenja rizik korelacije bez promjene prividne preciznosti.

Sama korelacija je dokumentovana briga. Spajanje vremena veze s događajem prijave kod provajdera, sa zahtjevom podršci ili s evidencijom plaćanja može povezati identitet s aktivnošću čak i kada nijedno odredište nikada nije zapisano, zbog čega je uparivanje važnije od formatiranja.

Korelacija među sistemima traži brigu o satovima

Dva sistema koja izvještavaju o istom trenutku rijetko se slažu do sekunde. Jedan može primijeniti pomak vremenske zone u svom izlazu, drugi može raditi na satu koji kasni nekoliko sekundi, a virtuelna mašina može odlutati nakon obustave.

Prije nego zaključite da su se dva događaja desila zajedno, pretvorite oba u istu zonu i provjerite pomak u sirovom zapisu, a ne u prikazu. Ako je razmak koji mjerite manji od vjerovatnog odstupanja, nemate nikakav redoslijed.

Praktično pravilo je zadržati preciznost koju zadatak otklanjanja problema traži i ništa više. Broj sesija na sat odgovara na pitanje dostupnosti bez čuvanja historije po računu, a agregat se može čuvati mnogo duže od sirovih redova iz kojih je nastao.

Čitajte zapis komandama, ne maštom

Ispišite polja o kojima ćete zaključivati, u jedinicama koje alat čuva, a ne u onima koje prikazuje kontrolna tabla.

Ova dva reda pokazuju starost rukovanja i brojače bajtova za svakog WireGuard partnera, a zatim istu vrstu materijala iz OpenVPN datoteke stanja:

wg show all latest-handshakes
wg show wg0 transfer
cat /run/openvpn/server.status

Uporedite starost s intervalom obnove ključeva prije zaključka i čitajte brojače zajedno s njom. Partner sa skorašnjim rukovanjem i gotovo nikakvim prenosom razmjenjuje keepalive, dok je partner sa zastarjelim rukovanjem i velikim brojačima bio zauzet dok nije stao. Nijedan red ne kaže šta je urađeno, i reći to otvoreno tačnije je od impliciranja da oznaka dokazuje posjetu.

Povezani članci