Wat is de ClientRects fingerprint? Gids voor omgevingsconsistentie bij meerdere accounts
Kernconclusie: ClientRects leest op de testpagina de layout-boxes van pagina-elementen uit, dus een set breedtes, hoogtes en coördinaten met decimalen. Wanneer twee omgevingen andere waarden tonen, zit de oorzaak meestal in tekstrendering, schaling of systeemverschillen. Het hoort bij de omgevingsconsistentie, is niet afzonderlijk uit te schakelen, en de aanpak is een keuze in de fingerprint-instellingen plus een praktijktest.
„Mijn consistentiecheck kwam tot de fingerprintlaag en de ClientRects-waarden verschillen tussen twee omgevingen." Of andersom: de testpagina markeert dit punt geel en je weet niet of het een probleem is. Deze vragen hebben gemeen dat de parameternaam bekend klinkt, maar onduidelijk is wat hij meet en wat een wijziging teweegbrengt.
Dit artikel behandelt vier vragen in diagnosevolgorde: wat deze waarde is, waarom twee omgevingen uit elkaar lopen, wat hij zegt over de omgevingsconsistentie en hoe je hem in de anti-detect browser MostMate instelt en verifieert. MostMate geeft elk account een geïsoleerde browseromgeving en ClientRects is een onderdeel van de fingerprint-instellingen.
Wat is de ClientRects fingerprint precies
In één zin: de ClientRects fingerprint leest de exacte boxcoördinaten van pagina-elementen uit. Een aanroep van getBoundingClientRect() geeft de breedte, hoogte en positie van een element ten opzichte van de viewport, en de MDN-documentatie omschrijft het als het retourneren van de grootte van een element en zijn positie ten opzichte van de viewport. Voor inline-elementen die over meerdere regels lopen gebruik je getClientRects(), één rechthoek per regel.
De crux zit in de vorm van de getallen. Coördinaten zijn geen hele getallen. Het zijn drijvende-kommawaarden met veel decimalen, zoals 147.359375. De website heeft geen enkele toestemming nodig: een script maakt een verborgen element aan, vult het met vaste tekst, leest de rechthoek terug en bouwt er een handtekening mee, allemaal verstopt in de normale layoutberekening.
Wie meerdere accounts beheert heeft drie redenen om hierop te letten. Het is niet uit te schakelen, want layoutberekening is de basis van elke werkende pagina; het is stabiel over sessies, want op hetzelfde apparaat blijven de waarden vrijwel gelijk; en net als fonts en schermparameters hoort het bij de omgevingsverklaring die risicosystemen gebruiken voor kruiscontrole.

Waarom twee omgevingen andere waarden tonen
De tekstbreedte komt uit de opmaakketen. Elke stap laat sporen na:
- Tekstweergave-engine: Windows, macOS en Linux hebben elk een eigen engine; hetzelfde font met dezelfde tekens geeft andere spatieringen.
- Schaling: hoge resoluties en systeemschaling veranderen de afrondingsgranulariteit, en daarmee de decimalen.
- Font-fallback: ontbreekt het gevraagde font, dan springt de browser naar een reservefont en verandert de breedte.
- Browser-engine en paginazoom: verschillende kernels breken regels anders af, en paginazoom gaat rechtstreeks in de layout mee.
Deze verschillen zijn klein; één getal zegt niets. Samen beschrijven ze welk besturingssysteem en welke renderstack dit apparaat draait. Het is een naaste verwant van font-fingerprinting: fontenumeratie vraagt rechtstreeks naar de lijst, ClientRects meet het renderresultaat, dus beide signalen kunnen elkaar bevestigen. Apparaat- en vensterniveaus zijn beschreven in het artikel over schermresolutie; ClientRects is een signaal dat een niveau dieper zit, op elementniveau.
Welke rol speelt deze waarde in de omgevingsconsistentie
De grootste waarde zit in kruisverificatie: je vindt een meetbare referentie die bij de omgevingsverklaring past. De omgeving verklaart Windows met een set gangbare fonts, maar de gemeten tekstbreedte verraadt de afrondingsstijl van een ander systeem. De twee signalen botsen. Risicosystemen hoeven het principe niet te begrijpen; het volstaat dat ze de tegenstrijdigheid opmerken.
Consistente configuratie verdient meer controle dan de zeldzaamheid van één parameter. Bij de vraag of twee omgevingen als dezelfde persoon worden beoordeeld, zet je de rechthoekwaarden naast het besturingssysteem en de fontlijst uit het fingerprint-paneel; de logica van de zelfcontrole is verklaring en meting op één lijn brengen.
Er is nog een vaak over het hoofd geziene toepassing: zoomdetectie. Uit de afronding van rechthoeken is de huidige paginazoom en de systeemschaling af te leiden, en die informatie vormt weer een koppel signalen naast de verklaarde schermparameters. Lopen omgevingen sterk uiteen in zoomgedrag, dan zijn waardenverschillen normaal; stel eerst de zoomstatus vast voor je concludeert.
Hoe je het instelt in MostMate
In het formulier met fingerprint-instellingen van MostMate heeft ClientRects een eigen regel, naast Canvas, AudioContext, SpeechVoices en het WebGL-beeld. Er zijn slechts twee modi: de Real-modus geeft de echte opmaak van de lokale machine terug, de Noise-modus is de ruismodus.
Kies de modus per scenario. Real past als aan beide voorwaarden is voldaan: de configuratie van deze computer komt overeen met wat de doelgroep gangbaar gebruikt, bijvoorbeeld een gewoon Windows met standaardfonts, en de zakelijke pagina vraagt hoge zetprecisie en duldt geen gewijzigde layoutwaarden. De prijs van Real is dat de echte renderkenmerken van de machine volledig zichtbaar blijven; staan er veel zeldzame fonts op de computer, dan neemt de herkenbaarheid toe.
Delen meerdere omgevingen dezelfde computer, kies dan Noise. De waarden van de omgevingen wijzen niet meer naar één en dezelfde machine, en dat is de voornaamste use case. De prijs is één beperking. Tussen rechthoekwaarden bestaan rekenkundige verbanden. De coördinaten van de hele box moeten kloppen met de rechthoeken van de interne tekst, en gelijke teksten moeten evenredige breedtes hebben. Ruist het slechts op een deel van de waarden, dan breken die verbanden en ontstaat juist een opvallender tegenstrijdig signaal. Test daarom na elke moduskeuze, in plaats van te vertrouwen op de standaardconfiguratie.
Na de overstap naar de Noise-modus toont ClientRects in het fingerprint-voorbeeldpaneel een waarde met zescijferige code. De code is alleen een label van de ruisconfiguratie; de echt blootgestelde hash zie je pas als je de omgeving start en een testpagina bezoekt.

Hoe je de configuratie verifieert
Verificatie in twee stappen: eerst de wijziging, dan de consistentie.
Stap 1: vergelijk de waarden van twee omgevingen. Maak twee omgevingen, één met Real en één met Noise, en open er de Client Rects-testpagina van BrowserLeaks. Op dezelfde machine moeten de rechthoekwaarden van de Real-omgeving gelijk zijn. De Noise-omgeving moet afwijken van Real, en twee Noise-omgevingen moeten ook onderling verschillen. Let bij het noteren vooral op het deel vanaf de derde decimaal; daar beginnen de verschillen doorgaans. Leg de waarden van elke omgeving vast als baseline.
Stap 2: controleer de consistentie. Alleen wijzigen is niet genoeg:
- Test nogmaals in een andere sessie: de waarden van één omgeving moeten stabiel blijven, en springende waarden zijn op zichzelf al afwijkend.
- Leg de resultaten naast het verklaarde besturingssysteem en de fontlijst van het fingerprint-paneel: de renderstijl moet passen, het ene signaal mag niet Windows zeggen en het andere macOS.
- Surf door een paar gangbare pagina's en controleer of de opmaak zichtbaar intact is, vooral bij formulieren, knoppen en afgebroken tekst.
Drie punten OK? Parameter klaar. Zo niet: eerst de modus controleren.
Veelgestelde vragen
Betekent een rode markering bij ClientRects op de testpagina altijd een omgevingsprobleem?
Niet per se. Bekijk eerst twee dingen: passen de verklaarde systemen en fonts bij de stijl van de waarden, en sluit de zoomstatus aan op de schermparameters. Zijn beide in orde, dan hoeft één rode markering geen kwaad te kunnen; alleen bij een duidelijke tegenstrijdigheid tussen renderstijl en verklaring is een bezoek aan de fingerprint-instellingen nodig.
Verandert de paginazoom de ClientRects fingerprint?
Ja. Zoom gaat rechtstreeks in de layout mee en de afronding van rechthoeken verschuift mee. Zoomen is echter normaal gedrag van elke gebruiker. Het risico ligt ergens anders: als de zoomstatus niet matcht met de verklaarde schermparameters. Het sessiestabiele deel blijft bepaald door de renderstack.
Kan ClientRects worden uitgeschakeld?
Nee. Layoutberekening is de basis van elke werkende pagina: opmaak, plaatsing van pop-ups en animaties hangen ervan af. Browsers bieden geen schakelaar. In de praktijk verlaagt men de precisie in plaats van de meting uit te schakelen; Tor Browser rondt bijvoorbeeld de meetwaarden af om herkenbare verschillen te verkleinen.
Waarom headless browsers zo vaak door elementafmetingen worden ontmaskerd?
De standaard-viewport van headless-omgevingen is erg voorspelbaar en de tekstrenderstack is eenzijdig. De gemeten rechthoeken komen vaak niet overeen met het apparaat dat de verklaarde UA suggereert. Risicosystemen kruischecken rect met andere verklaarde parameters, dus dit soort omgevingen valt snel op.
Tot slot
De rol van ClientRects in de consistentiecontrole is concreet: leg de omgevingsverklaring naast de gemeten opmaak en een tegenstrijdigheid is een signaal. Let bij een rode markering op de testpagina eerst op de verklaarde parameters en de zoomstatus, bevestig dat er een consistentieprobleem is, en pak het dan op in de fingerprint-instellingen.
MostMate bundelt ClientRects samen met de andere renderparameters in één formulier met fingerprint-instellingen, en de modi Real en Noise bepalen waar de waarden vandaan komen. Het volledige productoverzicht vind je op de website van MostMate. Zodra je omgevingen hebt aangemaakt, leg je met een dubbele omgevingsvergelijking de baseline van de waarden vast; dat is praktischer dan welke configuratietruc dan ook. Je kunt ook MostMate downloaden en het verschil tussen Real en Noise zelf meten in twee omgevingen.
MOSTMATE
Veilig meerdere accounts beheren, heel eenvoudig
Begin met je eerste account en bouw met MostMate aan veiligere, slimmere en efficiëntere multiaccountactiviteiten.
- Onafhankelijke profielen. Consistente identiteiten.
- AI-automatisering · Accountgezondheid · Teamwerk



