본문으로 건너뛰기
yutils
예시

입력 (User-Agent 문자열)

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Safari/605.1.15

출력

Browser: Safari 17.0
Engine: WebKit 605.1.15
OS: macOS 10.15.7
Device: Mac (Desktop)

참고

user-agent 문자열은 거의 모든 브라우저가 `Mozilla/5.0` 으로 시작하는 역사적 농담. 90년대 호환성 trick 이 그대로 남았어요.

사용법 / 자주 묻는 질문

이런 경우 사용하세요

  • 서버 로그의 User-Agent 분석
  • 분석 도구(GA · Mixpanel) 의 알 수 없는 user-agent 풀이
  • 봇 vs 실 사용자 구분 — Googlebot · GPTBot 등 인식
  • 특정 디바이스(iPhone 16 Pro 등) 의 정확한 OS 버전 확인
  • Crawler 인지 헤드리스 브라우저인지 의심스러운 트래픽 검증

자주 묻는 질문

Q.왜 모든 브라우저가 Mozilla 로 시작하나요?
A.1994년 Netscape(Mozilla) 시대의 frame 미지원 브라우저 차단을 우회하려고 IE 가 자기 user-agent 에 `Mozilla` 를 박은 게 시작. 이후 모든 후속 브라우저가 호환성 위해 따라했고 지금도 유지.
Q.user-agent 를 신뢰해도 되나요?
A.아닙니다. 클라이언트가 자유롭게 변경 가능 — 보안·인증에 절대 의존 X. 통계·UI 분기 정도의 hint 로만 사용. Chrome 은 "User-Agent Client Hints" 로 점진 대체 중.
Q.Googlebot 인지 어떻게 확인하나요?
A.user-agent 에 `Googlebot` 이 있어도 위장 가능. 진짜 검증은 reverse DNS lookup — Google IP 가 `*.googlebot.com` 으로 해석되는지 확인이 표준.
재미있는 사실
  • 'Mozilla/5.0 (...) Gecko/... Firefox/...' 같은 복잡한 UA 문자열은 1993년 NCSA Mosaic 의 'Mozilla' 라는 별칭에서 시작된 30년짜리 카르고 컬트입니다. 모든 브라우저가 'Mozilla compatible' 인 척하면서 서로의 string 을 흉내냈고, 결국 IE·Chrome·Safari 모두 자기 UA 안에 'Mozilla/5.0' 을 박는 우스꽝스러운 결과로 굳었습니다.

    WebAIM — UA history
  • 충분히 디테일한 UA + 화면 해상도 + 타임존 + 폰트 조합이면 사용자를 거의 unique 하게 식별 가능합니다 (browser fingerprinting). Apple Safari 가 2021년부터 UA 를 'frozen' 상태로 박은 이유 — 개별 추적 회피.

    EFF — Browser fingerprinting
  • Chrome 86 (2020) 부터 UA-CH (User-Agent Client Hints) 가 도입됐습니다. 통합된 UA 문자열을 분해해 필요한 정보만 `Sec-CH-UA-Platform` 같은 별도 헤더로 받는 방식 — 오래된 카르고 컬트를 점진 대체 중입니다.

    MDN — Client Hints