🔍 CVE-2026-48125

5.3
CVSS Score
MEDIUM
2026-07-14
2026-10-24 21:10
✅ 완료

🇰🇷 한글 설명

UAParser.js는 user-agent 데이터로부터 브라우저, 운영체제, CPU, 기기를 탐지하는 JavaScript 라이브러리입니다. 2.0.1부터 2.0.10 버전까지 Client Hints API 사용 시 정규식 서비스 거부(ReDoS) 취약점이 존재하며, 조작된 Sec-CH-UA-Model 헤더로 과도한 CPU 시간을 유발할 수 있습니다. 해당 문제는 2.0.10 버전에서 수정되었습니다.

💡 쉬운 설명

웹 서버가 사용자 기기 정보를 읽을 때 쓰는 라이브러리의 결함으로, 공격자가 특수하게 만든 요청을 보내면 서버가 매우 느려질 수 있습니다. 라이브러리를 최신 버전으로 업데이트하면 해결됩니다.

🇺🇸 원문 (English)

UAParser.js is a JavaScript library to detect browsers, operating systems, CPUs, and devices from user-agent data. From 2.0.1 until 2.0.10, a regular expression denial-of-service vulnerability exists when using the Client Hints API. By sending a crafted Sec-CH-UA-Model header to an application that calls UAParser(headers).withClientHints(), an attacker can cause excessive CPU time due to catastrophic backtracking in the device regex because Client Hints values are copied without the UA_MAX_LENGTH limit used for User-Agent values. This issue is fixed in version 2.0.10.

📍 영향받는 시스템

UAParser.js 2.0.1 이상 2.0.10 미만을 사용하며 UAParser(headers).withClientHints()를 호출하는 Node.js/JavaScript 애플리케이션

⚔️ 공격 벡터

조작된 Sec-CH-UA-Model HTTP 헤더를 전송하여 기기 정규식에서 파국적 백트래킹을 유발해 CPU 자원을 고갈시킴

🛡️ 대응 방법

uaparser.js를 2.0.10 이상으로 업데이트 (npm update ua-parser-js 또는 npm install ua-parser-js@^2.0.10)

🔧 검증 코드

출력된 버전이 2.0.10 이상이면 안전하며, 2.0.1~2.0.9이면 취약하므로 업데이트가 필요합니다.

Shell / Script
npm ls ua-parser-js 2>/dev/null | grep -E 'ua-parser-js@'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

💻 영향받는 소프트웨어

Oracle Java SE