Un studiu publicat la IMC 2024 a transformat detectarea într-un experiment online reproductibil: în loc să creadă ce declară browserul despre sine, a numărat proprietățile obiectelor interne și le-a comparat cu versiunea declarată. Metoda este mai instructivă decât concluzia.
Există multe afirmații despre posibilitatea de a detecta amprentele de browser, iar cele mai multe se opresc la concluzie. În loc să discutăm cine câștigă sau pierde, este mai util să vedem cum au transformat cercetătorii problema într-un experiment reproductibil și ce indicatori au folosit pentru evaluare.
Un studiu publicat la ACM Internet Measurement Conference (IMC) 2024, intitulat Browser Polygraph, a fost realizat de cercetători de la Arizona State University, Boston University și Amazon; DOI-ul este 10.1145/3646547.3688455. În loc să folosească date simulate într-un laborator, sistemul a fost implementat timp de 4,5 luni în mediul real de producție al unei mari companii financiare și a acoperit 205.000 de sesiuni ale unor utilizatori reali. Au fost testate zece soluții comune de mascarea mediului, iar traficul normal al utilizatorilor a servit drept grup de control.
Cum a fost construit experimentul
Trei decizii de proiectare au făcut posibilă aplicarea detectării asupra întregului trafic fără a afecta activitatea companiei.
Caracteristicile trebuiau să fie ieftin de colectat. Detectorul citește doar un set fix de proprietăți, iar costul unei rulări este de ordinul milisecundelor și al KB. Astfel, poate fi aplicat întregului trafic fără eșantionare și fără un efect perceptibil pentru utilizator.
Caracteristicile trebuiau să fie stabile. Nu au fost alese parametre pe care utilizatorul îi poate schimba, ci structuri interne stabilite chiar de browser. Fiecare versiune de browser vine cu un motor JavaScript diferit, iar între versiuni există mici diferențe în numărul de API-uri și în numărul de proprietăți atașate fiecărui obiect. Studiul a folosit ca referință intervalul Chrome 110–Chrome 114: sistemul a numărat proprietățile a 28 de obiecte cheie și a comparat rezultatul cu versiunea declarată de browser. Dacă nu se potrivesc, declarația și comportamentul real nu provin din aceeași bază tehnică.
Etichetele trebuiau să fie de încredere. Fiecare mediu testat a fost conectat la același trafic de producție și evaluat după aceleași reguli, iar grupul de control a constat în comportamentul normal al utilizatorilor reali. Prin urmare, rezultatul nu spune subiectiv dacă ceva „pare real”, ci dacă acel trafic poate fi diferențiat în aceleași condiții.
Indicatori pentru a evalua dacă simularea este reală
Măsurătorile folosite în studiu pot fi grupate în patru categorii.
- Consistență: versiunea declarată de browser se potrivește cu structura obiectelor sale interne? Acesta este indicatorul central și cel mai greu de falsificat, deoarece modificarea unui șir de text nu schimbă automat numărul de obiecte și proprietăți din motor.
- Rata de detectare: studiul a efectuat teste detaliate pe patru dintre soluții, cu rate de detectare între 67% și 84%.
- Abaterea față de dispozitive reale: în aceleași reguli de decizie, browserele normale au avut un scor de risc 0, în timp ce soluțiile testate au avut medii între 8,85 și 11,66. Scorul exprimă distanța față de distribuția reală, nu o impresie subiectivă de asemănare.
- Diferențiabilitate: poate fi separat traficul testat de traficul normal? O categorie care nu poate fi separată nu prezintă, prin această metodă, un decalaj de comportament față de browserele reale.
Dintre cei patru indicatori, primul este cauza, iar ceilalți trei sunt consecințe.
Unde se diferențiază cele patru categorii de rezultate
Studiul a împărțit soluțiile testate în patru categorii în funcție de implementarea de bază.
În prima categorie, caracteristicile de nivel scăzut nu corespund niciunei versiuni cunoscute de browser real, ceea ce înseamnă că nu există un motor corespunzător. O simplă scanare scoate imediat la iveală nepotrivirea.
În a doua categorie, mediul conține caracteristici reale de amprentă, dar la schimbarea identității se modifică doar declarația de la suprafață, în timp ce motorul de bază rămâne același. Acesta a fost cel mai frecvent model din studiu. Ca analogie, pe cartea de vizită apare o versiune nouă, dar accentul rămâne vechi. Problema nu este cât de bine este reglat fiecare parametru, ci ruptura dintre declarație și comportament; de aici provine o mare parte din detectare.
În a treia categorie, motorul de bază se schimbă odată cu identitatea. Dacă mediul declară o anumită versiune, rulează motorul corespunzător acelei versiuni, astfel încât consistența se păstrează, iar detectorul nu a putut diferenția traficul. Lucrarea menționează și că identificarea acestei categorii ar necesita metode de detectare mai complexe.
A patra categorie nu modifică browserul. Un browser real rulează într-o mașină virtuală, după care este încărcată configurația țintă. Deoarece browserul este cu adevărat real, detectorul nu îl poate diferenția, însă costul operațional este mare și soluția este dificil de scalat.
Diferența dintre cele patru categorii nu ține de numărul de parametri, ci de faptul că declarația și comportamentul provin sau nu din aceeași bază.
Recomandări practice pentru alegerea unei soluții de mediu
Accentul detectării s-a mutat de la citirea declarațiilor la validarea comportamentului, astfel că parametrii de suprafață modificabili oferă tot mai puțin avantaj. Pentru o evaluare practică:
- Întrebați despre stratul de bază, nu despre lista de parametri. Când se schimbă versiunea declarată, se schimbă și stratul intern? Amprentele sunt generate automat ca combinații reale sau sunt asamblate manual dintr-un set de valori?
- Comparați mediile între ele. Dacă mai multe medii returnează caracteristici de nivel scăzut foarte asemănătoare, izolarea nu este completă.
- Mai întâi consistență, apoi diferențiere. Cu cât sunt ajustate mai multe caracteristici intern contradictorii, cu atât crește suprafața de expunere.
- Trecerea unei pagini generale de detectare nu înseamnă că o platformă va accepta mediul. Verificarea finală trebuie făcută tot cu o cantitate mică de trafic real.
Problema centrală a izolării mediilor este ca fiecare mediu să fie autonom și coerent intern. Acesta este lucrul pe care PurpleMark urmărește să îl rezolve. Detectarea și tehnicile anti-detectare trebuie folosite în limitele aplicabile de conformitate; valoarea reală a studiului este că oferă o bază verificabilă pentru evaluare, nu un clasament al produselor bune și rele.


