User-Agent 파서
User-Agent 문자열을 브라우저·OS·기기로 분해
User-Agent 문자열을 입력하면 실시간으로 분석됩니다.
User-Agent 파서란?
User-Agent 파서는 브라우저가 서버에 보내는 UA(User-Agent) 문자열을 정규식으로 분석해 브라우저 이름·버전, 렌더링 엔진, 운영체제·버전, 기기 유형, 봇(크롤러) 여부를 표로 보여주는 도구입니다. 페이지에 들어오면 현재 브라우저의 UA가 자동으로 채워집니다.
각 항목 설명
- 브라우저: Chrome, Edge, Firefox, Safari, Samsung Internet, Opera 등과 버전 번호입니다.
- 렌더링 엔진: 페이지를 그리는 엔진으로 Blink(Chrome·Edge·Opera 계열), Gecko(Firefox), WebKit(Safari) 등입니다.
- 운영체제: Windows, macOS, iOS, Android, Linux 등과 확인 가능한 경우 버전입니다.
- 기기 유형: UA 문자열의 키워드로 추정한 데스크톱·모바일·태블릿 구분입니다.
- 봇 여부: bot, crawl, spider 등 크롤러 관련 키워드 포함 여부로 판단합니다.
개인정보·처리 방식
모든 분석은 브라우저 내 정규식 처리만으로 이루어집니다. 입력한 User-Agent 문자열은 서버로 전송되거나 저장되지 않습니다.
UA 문자열의 역사: 왜 다들 'Mozilla/5.0'으로 시작할까
대부분의 브라우저 UA는 여전히 Mozilla/5.0으로 시작합니다. 이는 1990년대 브라우저 전쟁의 흔적입니다. 당시 웹사이트들이 "Mozilla"(넷스케이프)를 지원 브라우저로 확인하는 방식으로 콘텐츠를 분기했는데, 마이크로소프트 인터넷 익스플로러가 같은 콘텐츠를 받기 위해 자신의 UA에도 Mozilla/4.0 (compatible; MSIE ...)처럼 호환 표기를 끼워 넣었습니다. 이후 등장한 사파리·크롬 등도 서로의 UA를 흉내 내며 AppleWebKit·like Gecko·Safari/537.36 같은 다른 엔진의 이름표를 함께 붙이는 관행이 굳어져, 오늘날의 UA 문자열은 실제 엔진과 무관한 레거시 토큰이 뒤섞인 상태로 남아 있습니다.
UA 파싱이 깨지기 쉬운 이유와 Client Hints로의 전환
바로 이 역사적 누적 때문에 UA 정규식 파싱은 쉽게 깨집니다. 예를 들어 크롬 UA에는 Chrome/ 토큰과 함께 항상 Safari/537.36 토큰이 들어 있어, "Safari 포함 여부"만으로 판별하면 크롬을 사파리로 오인합니다. 이 도구도 코드에서 Edge → Opera → Samsung Internet → Firefox → Chrome → Safari 순으로 더 구체적인 토큰을 먼저 검사하는 순서에 의존합니다(예: Edge는 Chrome 토큰도 함께 갖고 있어 먼저 걸러내지 않으면 Chrome으로 오분류됩니다). 이런 취약성 때문에 구글은 UA 문자열 대신 User-Agent Client Hints(navigator.userAgentData, Sec-CH-UA 헤더)로 점진적으로 전환을 유도하고 있습니다. Client Hints는 브랜드·플랫폼 정보를 정규식 추측이 아닌 구조화된 값으로 제공하지만, 2026년 현재도 Firefox·Safari는 지원하지 않아 이 도구는 두 방식을 함께 보여줍니다.