N4darae/anti-mage
For detecting anti-detect browsers and spoofed profiles through runtime coherence analysis.
해결하는 문제
Anti-Mage는 브라우저가 자체적으로 보고한 데이터 내의 모순을 식별함으로써 '안티 탐지' 브라우저 및 봇 환경을 탐지합니다. 알려진 도구나 시그니처의 데이터베이스에 의존하지 않고, 브라우저의 다양한 표면(예: 화면 기하학, 폰트 목록, 하드웨어 기능 등)이 서로 일관되며, 주장하는 플랫폼과도 일치하는지 여부를 검토합니다.
작동 방식
이 프로젝트는 브라우저 측에서 23개의 독립적인 측정에서 34개의 측정값을 수집하는 컬렉터를 사용합니다. 다음 영역에서 불일치를 탐지합니다:
- 플랫폼 일관성: 주장된 플랫폼과 설치된 폰트, 하드웨어 디코더 간 비교.
- 실행 무결성: 네이티브 액세서가 수정되었는지, 또는 실행 스코프 간에 동작이 다를지 확인.
- uma 레이아웃 및 메트릭스: CSS 경로와 스크립트 경로에서 텍스트 메트릭스 및 뷰포트 기하학이 일치하는지 검증.
- 하드웨어 및 미디어: 보고된 그래픽 인터페이스 및 장치 이름이 실제 기능과 세대와 일치하는지 확인.
- 시간 및 네트워크 데이터: 타임존 오프셋 및 ICE 수집 상태 확인.
결과는 consistent, contradiction, instrumented, inconclusive, unverified로 분류됩니다. 의도된 모순은 자발적 수정보다 더 높은 가중치를 부여하여 최종 점수(0–90, 10단위)를 산출합니다. 점수가 0은 어떠한 불일치도 발견되지 않았음을 의미합니다.
대상 사용자
정적 시그니처 목록에 의존하지 않고, 봇이나 위조된 브라우저 프로필을 식별하기 위해 브라우저 환경의 일관성을 검증해야 하는 개발자 및 보안 연구자에게 적합합니다.
주요 특징
- 시그니처 없는 탐지: 알려진 도구의 데이터베이스를 사용하지 않으며, 브라우저 자체 보고서 내의 모순을 탐지합니다.
- 높은 정확도: 스톡 브라우저(Chrome, Firefox, Edge)는 항상 0점, 안티 탐지 브라우저는 항상 60점 이상을 기록합니다.
- 동적 탐사: 사전 계산된 답변을 방지하기 위해 임의로 생성된 폰트 이름과 날짜를 사용합니다.
- 순수한 평가 로직: 외부 종속성이 없는 순수 함수로 구성된 핵심 평가 엔진으로, Go 프로젝트에 쉽게 통합할 수 있습니다.
- 엄격한 검증: 참조 데이터는 관측된 시스템과 수동으로 검증된 경우에만 점수 산정에 사용됩니다.
관련
- Dispatch
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch