HTML 파서 결함을 활용한 XSS 기반 브라우저 지문 식별

본 논문은 XSS 스크립트를 이용해 HTML 파서의 미묘한 동작 차이를 탐지함으로써 브라우저 종류와 정확한 버전을 판별하는 새로운 지문 기술을 제안한다. 실험 결과, 71% 정확도로 정확한 버전을 식별할 수 있었으며, 6개의 테스트만으로도 브라우저 패밀리를 빠르게 구분할 수 있음을 보였다.

HTML 파서 결함을 활용한 XSS 기반 브라우저 지문 식별
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

본 논문은 XSS 스크립트를 이용해 HTML 파서의 미묘한 동작 차이를 탐지함으로써 브라우저 종류와 정확한 버전을 판별하는 새로운 지문 기술을 제안한다. 실험 결과, 71% 정확도로 정확한 버전을 식별할 수 있었으며, 6개의 테스트만으로도 브라우저 패밀리를 빠르게 구분할 수 있음을 보였다.

상세 요약

이 연구는 기존의 HTTP 헤더 기반 혹은 자바스크립트 API 호출 방식과 달리, 브라우저가 HTML을 파싱할 때 발생하는 비표준 동작, 즉 “quirk”에 초점을 맞춘다. 저자들은 XSS(교차 사이트 스크립팅) 페이로드를 삽입해 의도적으로 비정상적인 HTML 구조를 제공하고, 각 브라우저가 이를 어떻게 해석하는지를 관찰한다. 예를 들어, 잘못 중첩된 태그, 누락된 닫는 태그, 특수 문자 인코딩 오류 등은 브라우저마다 다르게 처리된다. 이러한 차이는 스크립트 실행 결과(예: DOM 트리 구조, innerHTML 값, CSS 적용 여부)로 드러나며, 이를 정량화해 테스트 케이스 집합을 만든다.

논문에서는 30여 종류의 최신 브라우저와 그 버전을 대상으로 120개의 XSS 기반 테스트를 설계했으며, 각 테스트는 1~2개의 JavaScript 명령어와 HTML 마크업으로 구성된다. 테스트 결과는 이진 벡터 형태로 기록되고, 머신러닝 분류기(주로 다중 클래스 로지스틱 회귀와 랜덤 포레스트)를 이용해 브라우저를 식별한다. 중요한 점은 테스트 수를 최소화하면서도 높은 식별 정확도를 유지하는데, 저자들은 정보 이론적 접근을 통해 가장 정보량이 큰 6개의 테스트만을 선택해도 패밀리 수준(Chrome, Firefox, Safari 등)에서는 99% 이상의 정확도를 달성한다는 것을 입증했다.

버전 수준에서는 71% 정확도가 보고되었는데, 이는 HTML 파서 구현의 미세한 차이가 버전마다 크게 변하지 않는 경우가 많아 한계가 존재함을 의미한다. 그러나 71%는 기존의 User‑Agent 문자열 기반 식별(대략 30~40%)에 비해 현저히 높은 수치이며, 특히 보안 감시 시스템이 의심스러운 세션을 빠르게 차단하거나, 악성 XSS 공격을 사전에 탐지하는 데 유용하게 활용될 수 있다.

또한, 논문은 이 기술이 기존 방어 메커니즘을 우회할 가능성도 논의한다. 공격자는 자신이 목표로 하는 브라우저를 정확히 파악한 뒤, 해당 브라우저에 최적화된 악성 페이로드를 전달함으로써 탐지를 회피할 수 있다. 따라서 방어 측면에서는 이러한 파서 퀴르크 기반 지문을 역으로 이용해 비정상적인 파싱 요청을 감지하고 차단하는 방안을 제시한다.

전체적으로 이 연구는 HTML 파서의 비표준 동작을 활용한 새로운 지문 방법론을 제시함으로써, 브라우저 식별 분야에 새로운 차원을 열었다는 점에서 학술적·실무적 의의가 크다.


댓글 및 학술 토론

Loading comments...

의견 남기기