VPN-ul nu ți-a scurs IP-ul vechi: o valoare memorată a făcut asta
Un serviciu poate raporta vechea ta adresă publică în timp ce noua conexiune folosește ieșirea VPN. Separă antetul sursă al pachetului de o valoare pe care aplicația a păstrat-o.
Să vezi vechea ta adresă publică în raportul unui serviciu după ce VPN-ul pornește nu este, în sine, dovadă a unei scurgeri. Conexiunea activă poate folosi ieșirea tunelului în timp ce aplicația trimite o valoare pe care a învățat-o înainte ca tunelul să existe. Sunt două dovezi diferite, și doar una descrie pachetul actual. Cealaltă este o valoare care a supraviețuit reconectării pentru că nimic de pe calea rețelei nu o deține.
Cele două explicații din spatele unei adrese
Secvența pe care o imaginează oamenii este un pachet care părăsește interfața fizică în timp ce VPN-ul este presupus activ. Secvența care explică adesea raportul este mai scurtă și mai plictisitoare: o aplicație a învățat o adresă mai devreme și încă o ține. Așezarea evenimentelor în ordine le separă pe cele două.
Address learned before the tunnel: P1
Tunnel up: the next request exits at P2
Application reuses its retained P1 in a message body
Receiver logs source P2 and submitted value P1
Nimic din acea ordine nu cere o conexiune activă de la prima adresă. Valoarea memorată călătorește în interiorul mesajului, în timp ce antetul poartă ieșirea pe care a ales-o ruta actuală. Un serviciu care înregistrează ambele câmpuri le va arăta alături și va părea contradictoriu.
Aceasta este o explicație posibilă, nu o acuzație la adresa unui anumit client. Reputația nu este dovadă: un cod pe care îl poți citi, un brand în care ai încredere sau o altă ieșire nu spun nimic despre ce a păstrat sau a trimis un program.
Memoria aplicației supraviețuiește reconectării
Conectarea unui VPN schimbă ruta pe care o ia o conexiune nouă. Lasă starea aplicației în pace și nu poate retrage informații pe care un serviciu la distanță le-a stocat deja. Un program poate trimite un identificator de cont, o locație salvată, un nume de dispozitiv sau altă valoare obținută mai devreme, iar criptarea protejează acea încărcătură în tranzit fără a elimina nimic din ea. Reconectarea este un eveniment de rețea; valoarea păstrată este un eveniment al aplicației.
Distincția contează pentru că cele două trăiesc în locuri diferite. Starea aplicației aparține programului și supraviețuiește repornirilor, în timp ce ruta aparține sistemului de operare și este reconstruită la fiecare conectare. Curățarea uneia nu are efect asupra celeilalte.
Un serviciu poate păstra și o valoare pe care i-ai dat-o acum câteva luni, iar în acest caz nicio schimbare locală nu o va elimina. Aceasta este păstrare, și se află complet în afara tunelului.
Citește mai întâi antetul sursă, apoi încărcătura
Începe prin a stabili unde a apărut adresa. Jurnalul de conexiuni al unui server descrie sursa activă, în timp ce un câmp de mesaj, un profil de cont sau un afișaj de diagnostic local pot descrie o valoare trimisă sau stocată mult mai devreme. Acele observații răspund la întrebări diferite.
Compară și momentele. Dacă adresa veche apare într-un câmp anterior conexiunii VPN, explicația prin încărcătură este mai puternică. Dacă serverul înregistrează o conexiune directă de la adresa veche în timp ce tunelul este activ, este o chestiune de rutare și necesită altă investigație. Sortarea tipurilor de observații mai întâi împiedică o adresă să fie întinsă până la a deveni dovada a trei evenimente.
Ține-le separate în notițe: sursa conexiunii, câmpul mesajului, afișajul contului, diagnosticul local. O adresă scrisă în patru locuri rămâne o adresă.
Păstrarea este o etapă diferită de transport
Îndrumările de confidențialitate din RFC 6973 tratează colectarea, utilizarea, divulgarea și păstrarea ca etape distincte și avertizează că identificatorii reutilizați fac corelarea ușoară. O cale de rețea nouă schimbă etapa de transport și nimic altceva. Înregistrările pe care destinatarul le are deja nu sunt atinse, la fel ca orice profil care a stocat valoarea la intrare. De aceea o reconectare poate părea un eșec în timp ce transportul se comportă corect.
Niciun filtru de pachete nu poate șterge o valoare din înregistrările unui destinatar, iar reconectarea nu va curăța istoricul stocat al fiecărui program. Acestea sunt probleme ale proprietarului datelor, nu ale tunelului, și au nevoie de un alt tip de soluție. Întreabă serviciul ce păstrează și cât timp înainte de a cere rețelei să ascundă asta.
Ce să verifici înainte de a da vina pe tunel
Revizuiește colectarea documentată a aplicației și controalele contului, și decide ce câmpuri poate trimite, cât timp le păstrează serviciul și dacă contul le poate șterge sau corecta. Apoi rulează testul care separă explicațiile: un cont nou sau un profil de aplicație curat. Dacă valoarea veche dispare, au fost implicate păstrarea sau starea din cache. Dacă supraviețuiește unui profil curat, examinează câmpul real al cererii înainte de a concluziona că VPN-ul a eșuat.
Dacă există într-adevăr o conexiune directă, trateaz-o ca pe o constatare despre calea rețelei. Investighează rutarea, tunelul divizat și politica clientului în termenii lor proprii, și nu amesteca acel rezultat cu o valoare de încărcătură care pur și simplu a supraviețuit reconectării. Cele două defecțiuni arată la fel într-o captură de ecran și se comportă complet diferit într-o captură de trafic.