🔍 CVE-2026-41691

6.5
CVSS Score
MEDIUM
2026-05-07
2026-06-17 10:47
✅ 완료

🇰🇷 한글 설명

i18nextify 라이브러리 3.0.5 미만 버전에서 lng 및 ns 값이 인코딩이나 검증 없이 URL 템플릿에 직접 삽입되는 취약점이 발견되었습니다. 공격자가 언어 코드 선택 과정을 조작할 경우 URL 구조를 변경하거나 경로 탐색(Path Traversal)을 수행할 수 있는 URL 인젝션 공격이 가능합니다.

💡 쉬운 설명

웹사이트의 언어 설정을 바꾸는 과정에서 악의적인 코드를 끼워 넣어 웹사이트가 엉뚱한 주소로 요청을 보내게 만드는 보안 약점입니다. 이를 통해 공격자는 서버의 내부 파일에 접근하거나 잘못된 경로로 연결을 유도할 수 있습니다.

🇺🇸 원문 (English)

Copilot said: i18nextify is a JavaScript library that adds i18nextify is a JavaScript library that adds website internationalization via a script tag, without source code changes. Versions prior to 3.0.5 interpolate the lng and ns values directly into the configured loadPath / addPath URL template without any encoding, validation, or path sanitisation. When an application exposes the language-code selection to user-controlled input (the default — i18next-browser-languagedetector reads ?lng= query params, cookies, localStorage, and request headers), an attacker can inject characters that change the structure of the outgoing request URL. This is a single URL-injection vulnerability. The attacker-controlled value is neutralised before it is used as part of an output URL string; the attack shape covers both path traversal and broader URL-structure injection — both are closed by the one interpolateUrl sanitisation fix. This issue has been fixed in version 3.0.5. If users cannot upgrade immediately, they can work around the issue by sanitising lng / ns before they reach i18next (strip .., /, \, ?, #, %, whitespace, and control characters; cap the length).

📍 영향받는 시스템

i18nextify versions prior to 3.0.5

⚔️ 공격 벡터

사용자 제어 가능한 입력값(Query Parameter, Cookie, LocalStorage 등)을 통한 URL 구조 주입 및 경로 탐색

🛡️ 대응 방법

i18nextify 라이브러리를 3.0.5 버전 이상으로 업데이트하거나, 입력값에서 특수문자(.., /, \, ?, #, %, 공백 등)를 제거하는 필터링을 적용하십시오.

🔧 검증 코드

출력된 결과에서 i18nextify의 버전을 확인하여 3.0.5 미만인지 체크합니다.

Shell / Script
npm list i18nextify | grep i18nextify

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Copilot