🔍 CVE-2026-29074

7.5
CVSS Score
HIGH
2026-03-06
2026-09-10 13:18
✅ 완료

🇰🇷 한글 설명

SVG 최적화 라이브러리인 SVGO의 특정 버전에서 XML 엔티티 확장 및 재귀에 대한 방어 기제가 부족한 취약점이 발견되었습니다. 이로 인해 매우 작은 크기의 XML 파일로도 애플리케이션을 중단시키거나 Node.js 프로세스의 메모리 부족(Heap out of memory)을 유발하여 시스템을 충돌시킬 수 있습니다.

💡 쉬운 설명

악의적으로 조작된 작은 이미지 파일을 업로드하면 서버의 메모리를 순식간에 모두 사용하여 컴퓨터가 멈추거나 꺼질 수 있는 문제입니다. 마치 작은 종이 한 장을 계속해서 복사하게 만들어 복사기를 고장 내는 것과 비슷합니다.

🇺🇸 원문 (English)

SVGO, short for SVG Optimizer, is a Node.js library and command-line application for optimizing SVG files. From version 2.1.0 to before version 2.8.1, from version 3.0.0 to before version 3.3.3, and before version 4.0.1, SVGO accepts XML with custom entities, without guards against entity expansion or recursion. This can result in a small XML file (811 bytes) stalling the application and even crashing the Node.js process with JavaScript heap out of memory. This issue has been patched in versions 2.8.1, 3.3.3, and 4.0.1.

📍 영향받는 시스템

SVGO versions 2.1.0-2.8.0, 3.0.0-3.3.2, and < 4.0.1

⚔️ 공격 벡터

엔티티 확장(Entity Expansion)을 이용한 XML 파일 업로드 또는 처리

🛡️ 대응 방법

SVGO를 버전 2.8.1, 3.3.3 또는 4.0.1 이상으로 업데이트하십시오.

🔧 검증 코드

출력된 svgo의 버전이 취약한 범위(2.1.0~2.8.0, 3.0.0~3.3.2, 4.0.0 이하)에 해당하는지 확인하십시오.

Shell / Script
npm list svgo

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js