← 블로그로 돌아가기

ClientRects 핑거프린트란? 멀티 계정 환경 일관성 점검 가이드

핵심 요약: 감지 페이지의 ClientRects는 웹 페이지 요소의 레이아웃 박스, 즉 소수점이 붙은 너비·높이·좌표 집합을 읽습니다. 두 환경의 판독값이 맞지 않는다면 원인은 대개 폰트 렌더링, 화면 배율, 시스템 차이에 있습니다. 이 항목은 환경 일관성의 일부이며 단독으로 비활성화할 수 없고, 지문 설정의 모드 선택과 실측으로 대응합니다.

"일관성 자가 점검을 지문 단계까지 진행했는데, 두 환경의 ClientRects 판독값이 다릅니다." 혹은 반대로 감지 페이지에서 이 항목이 노란색으로 표시되어 문제인지 판단이 서지 않는 경우도 있습니다. 이런 질문의 공통점은, 파라미터 이름은 익숙하지만 무엇을 측정하는지, 바꾸면 무엇에 영향을 주는지 확신이 없다는 점입니다.

이 글은 문제 해결 순서에 따라 네 가지에 답합니다. 이 판독값이 무엇인지, 두 환경이 어긋나는 이유, 환경 일관성에서의 의미, 그리고 MostMate 안티탐지 브라우저에서 설정하고 검증하는 방법입니다. MostMate는 계정마다 서로 격리된 브라우저 환경을 준비하며, ClientRects는 지문 설정의 한 항목입니다.

ClientRects 핑거프린트의 정체

한 문장으로 말하면, ClientRects 핑거프린트는 페이지 요소의 정밀한 박스 좌표를 읽습니다. getBoundingClientRect()를 호출하면 요소의 너비, 높이, 뷰포트 기준 위치를 얻을 수 있으며, MDN 문서는 이를 "요소의 크기와 뷰포트 기준 상대 위치를 반환"하는 메서드로 정의합니다. 줄바꿈되는 인라인 요소는 getClientRects()로 읽으며, 줄마다 하나의 사각형이 나옵니다.

핵심은 수치의 형태입니다. 좌표는 정수가 아니라 147.359375처럼 소수점 아래 자릿수가 긴 부동소수점 수입니다. 웹사이트는 어떤 권한도 필요로 하지 않습니다. 스크립트가 페이지에 숨은 요소를 만들고 고정 텍스트를 넣은 뒤 사각형을 읽어오기만 하면 서명이 완성되고, 이 과정은 정상적인 레이아웃 계산에 섞여 있습니다.

운영자가 주목해야 할 이유는 세 가지입니다. 비활성화할 수 없다는 점, 레이아웃 계산은 웹페이지가 정상 동작하는 기반이기 때문입니다. 세션 간에 안정적이라는 점, 같은 기기의 판독값은 거의 변하지 않습니다. 그리고 폰트나 화면 파라미터처럼 환경 선언의 일부라는 점, 리스크 관리는 이를 교차 검증에 사용합니다.

ClientRects 핑거프린트로 읽은 요소 박스 좌표

두 환경의 판독값이 어긋나는 이유

한 줄의 텍스트 폭은 전체 조판 파이프라인이 결정합니다:

  • 텍스트 조판 엔진: Windows, macOS, Linux마다 따로 존재하며, 같은 폰트와 같은 문자열이라도 계산되는 자간이 다릅니다.
  • 화면 배율: 고해상도 디스플레이와 시스템 배율이 반올림 단위를 바꾸고, 소수 자릿수도 따라 바뀝니다.
  • 폰트 폴백: 페이지가 요청한 폰트가 없으면 대체 폰트로 바뀌고, 너비도 함께 변합니다.
  • 브라우저 엔진과 페이지 확대·축소: 엔진마다 줄바꿈 알고리즘이 다르고, 페이지 배율은 레이아웃 파이프라인에 직접 들어옵니다.

이 차이들은 모두 크지 않아 숫자 하나만으로는 아무것도 설명하지 못합니다. 조합하면 "이 기기가 어떤 시스템과 어떤 렌더링 스택으로 돌아가는지"를 기술할 수 있습니다. 폰트 핑거프린트와 가까운 친척이기도 합니다. 폰트 열거는 명단을 직접 묻고, ClientRects는 렌더링 결과를 측정하며, 둘은 서로를 뒷받침합니다. 기기 단위·창 단위의 크기 파라미터는 화면 해상도 글에서 다루었고, ClientRects는 그보다 깊은 요소 단위 신호입니다.

이 판독값이 환경 일관성에서 하는 역할

가장 큰 가치는 교차 검증에 있습니다. 환경 선언에 맞아떨어지는 실측 기준점을 제공하는 것입니다. 환경은 Windows를 표방하고 흔한 폰트 목록을 내걸었는데, 실측한 텍스트 폭은 다른 시스템의 반올림 방식을 보여줍니다. 두 신호가 충돌합니다. 리스크 관리는 원리를 이해할 필요 없이 모순만 발견하면 됩니다.

구성의 일관성이 단일 파라미터의 희귀성보다 점검할 가치가 큽니다. 두 환경이 동일 인물로 판정될지 확인할 때는 사각형 판독값을 지문 패널이 선언한 운영체제와 폰트 목록과 나란히 비교해야 합니다. 4개 항목 자가 점검의 논리도 선언과 실측을 일치시키는 것입니다.

자주 간과되는 용도가 하나 더 있습니다. 배율 감지입니다. 사각형의 반올림 방식에서 현재 페이지 배율과 시스템 배율 설정을 역산할 수 있고, 이 정보는 기기가 선언한 화면 파라미터와도 상호 확인 가능한 신호 묶음입니다. 환경 간 배율 동작 차이가 클 때는 판독값 차이가 정상이므로, 결론을 내리기 전에 배율 상태부터 확인하세요.

MostMate에서 설정하는 방법

MostMate의 지문 설정 폼에서 ClientRects는 독립 항목을 차지하며, 옆에는 Canvas, AudioContext, SpeechVoices, WebGL 이미지가 있습니다. 모드는 두 가지뿐입니다. Real 모드는 이 머신의 실제 조판을 그대로 반환하고, Noise 모드는 노이즈를 더는 모드입니다.

상황에 따라 고릅니다. 다음 두 조건을 모두 충족하면 Real을 고를 수 있습니다. 이 PC의 구성이 대상층의 주류 구성과 일치하는 경우, 예컨대 흔한 Windows에 기본 폰트 조합인 경우입니다. 그리고 업무 페이지가 높은 조판 정밀도를 요구해 레이아웃 수치 변경을 허용하지 않는 경우입니다. Real 모드의 대가는 이 머신의 실제 렌더링 특성이 그대로 노출된다는 점이며, 희귀 폰트를 대량으로 설치한 PC라면 식별성도 그만큼 올라갑니다.

여러 환경이 같은 PC를 공유한다면 Noise를 고릅니다. 각 환경의 판독값이 더는 같은 로컬 머신을 가리키지 않게 되는 것이 주요 용도입니다. 대가로 하나의 제약을 받아들여야 합니다. 사각형 값들 사이에는 산술 관계가 있습니다. 외곽 박스 좌표는 내부 텍스트의 사각형과 맞아야 하고, 같은 문자열의 폭은 비례 관계를 유지해야 합니다. 노이즈가 일부 판독값에만 얹히면 이 관계가 깨지며, 오히려 더 눈에 띄는 모순 신호를 만듭니다. 따라서 모드를 고른 뒤에는 반드시 실측해야 하며, 기본 설정으로 끝냈다고 안심해서는 안 됩니다.

Noise 모드로 전환하면 지문 미리보기 패널의 ClientRects 항목이 여섯 자리 코드가 붙은 값으로 바뀝니다. 코드는 노이즈 구성의 식별자일 뿐이며, 실제 노출되는 해시는 환경을 열어 감지 페이지를 한 번 실행해야 확인할 수 있습니다.

MostMate 지문 설정에서 ClientRects 파라미터의 위치

설정 후 검증 방법

검증은 2단계입니다. 수치가 예상대로 바뀌는지, 바뀐 뒤 정합성이 유지되는지를 봅니다.

1단계: 두 환경의 판독값 비교. 환경을 두 개 만들어 하나는 Real, 하나는 Noise를 선택하고, 각각 BrowserLeaks의 Client Rects 감지 페이지를 엽니다. 같은 머신에서 Real 환경의 사각형 값은 일치해야 합니다. Noise 환경은 Real과 달라야 하고, 두 Noise 환경 사이에도 차이가 있어야 합니다. 기록할 때는 소수점 셋째 자리부터 주목하세요. 차이는 대개 여기서부터 시작됩니다. 환경별 판독값을 기록해 두면 그 환경의 기준선이 됩니다.

2단계: 정합성 확인. 수치가 바뀌는 것만으로는 부족하고, 이후 정합성까지 확인해야 합니다:

  • 세션을 바꿔 다시 측정하세요. 같은 환경의 값은 안정적이어야 하고, 오르락내리락하는 판독값 자체가 이상 신호입니다.
  • 지문 패널이 선언한 운영체제와 폰트 목록과 대조하세요. 렌더링 스타일이 맞아야 하며, 한 신호는 Windows, 다른 신호는 macOS를 가리켜서는 안 됩니다.
  • 자주 쓰는 페이지를 몇 개 평소처럼 열어보고 눈에 보이는 레이아웃 깨짐이 없는지 확인하세요. 특히 폼, 버튼, 줄바꿈 텍스트입니다.

세 단계를 모두 통과하면 설정 완료입니다. 통과하지 못하면 모드 설정부터 다시 확인하세요.

자주 묻는 질문

감지 페이지에서 ClientRects가 빨간색으로 표시되면 반드시 환경에 문제가 있나요?

반드시 그렇지는 않습니다. 먼저 두 가지를 보세요. 환경이 선언한 시스템과 폰트가 판독 스타일과 맞는지, 배율 상태가 화면 파라미터와 일치하는지입니다. 두 곳 모두 정상이면 단일 항목의 빨간 표시를 긴장할 필요가 없습니다. 판독 스타일이 선언과 명백히 충돌할 때에만 지문 설정에서 모드를 점검하면 됩니다.

브라우저 배율을 바꾸면 ClientRects 핑거프린트도 바뀌나요?

바뀝니다. 배율은 레이아웃 파이프라인에 직접 들어오고 사각형의 반올림도 따라 변합니다. 다만 배율 조정은 모든 사용자가 하는 정상적인 행동입니다. 위험은 다른 곳에 있습니다. 배율 상태가 환경이 선언한 화면 파라미터와 맞지 않는 것입니다. 세션 간 안정적인 부분은 여전히 렌더링 스택이 결정합니다.

ClientRects를 비활성화할 수 있나요?

할 수 없습니다. 레이아웃 계산은 웹페이지가 정상 동작하는 기반이며 조판, 팝업 위치 지정, 애니메이션이 모두 이에 의존합니다. 브라우저에는 끄는 스위치가 없습니다. 업계의 접근은 비활성화가 아니라 정밀도를 낮추는 것이며, Tor 브라우저는 측정값을 반올림해 식별 가능한 차이를 줄입니다.

헤드리스 브라우저는 왜 요소 크기에서 쉽게 드러날까요?

헤드리스 환경의 기본 뷰포트는 매우 고정적이고 텍스트 렌더링 스택도 단일합니다. 측정된 사각형이 선언한 UA가 주장하는 기기와 자주 맞지 않습니다. 리스크 관리는 rect를 다른 선언 파라미터와 교차 검증하므로 이런 환경은 쉽게 걸러집니다.

맺음말

일관성 점검에서 ClientRects의 역할은 구체적입니다. 환경 선언과 실측 조판을 나란히 놓고 비교하면 모순이 곧 신호입니다. 감지 페이지가 빨간색으로 표시되면 먼저 선언 파라미터와 배율 상태를 대조하고, 일관성 공백으로 확인된 뒤 지문 설정에서 처리하세요.

MostMate는 ClientRects를 다른 렌더링 파라미터와 함께 하나의 지문 설정 폼에 담고, Real과 Noise 두 모드로 판독값의 출처를 제어합니다. 제품 기능의 전모는 MostMate 공식 사이트에서 확인할 수 있습니다. 환경을 만든 뒤 두 환경 비교로 판독값 기준선을 기록해 두는 것이 어떤 설정 팁보다 확실합니다. MostMate 다운로드에서 Real과 Noise의 차이를 직접 측정해 볼 수도 있습니다.

MOSTMATE

안전한 다중 계정 관리, 더 간편하게

첫 계정부터 MostMate와 함께 더 안전하고 스마트하며 효율적인 다중 계정 운영을 시작하세요.

  • 독립적인 프로필. 일관된 식별 정보.
  • AI 자동화 · 계정 건전성 · 팀 운영
MostMate 다운로드