🔍 CVE-2026-40345

0.0
CVSS Score
UNKNOWN
2026-08-20
2026-10-18 20:10
✅ 완료

🇰🇷 한글 설명

deepmerge-ts 라이브러리 8.0.0 미만 버전에서 재귀적 병합 시 방문한 객체를 추적하지 못하는 취약점이 발견되었습니다. 공격자가 제어하는 순환 참조 객체를 병합할 경우, 무한 재귀로 인해 Node.js의 스택 오버플로(RangeError)가 발생하여 프로세스가 중단될 수 있습니다.

💡 쉬운 설명

객체를 합치는 과정에서 자기 자신을 계속 참조하는 복잡한 데이터를 만나면 프로그램이 길을 잃고 멈춰버리는 문제입니다. 이로 인해 서비스가 갑자기 종료되거나 계속 재시작되는 현상이 발생할 수 있습니다.

🇺🇸 원문 (English)

deepmerge-ts is a typescript library providing functionality to deep merging of javascript objects. Prior to 8.0.0, the deepmerge, deepmergeCustom, deepmergeInto, and deepmergeIntoCustom APIs do not track visited objects or object pairs when recursively merging records. When two input values contain self-references at the same property path, the merge logic repeatedly revisits the same pair until Node.js raises RangeError: Maximum call stack size exceeded. Applications that merge attacker-controlled recursive object graphs can synchronously crash the affected process or cause repeated worker restarts. Plain JSON input alone cannot create the recursive graph required to trigger the issue. This issue is fixed in version 8.0.0.

📍 영향받는 시스템

deepmerge-ts version < 8.0.0

⚔️ 공격 벡터

공격자가 조작한 순환 참조 구조를 가진 객체 그래프를 병합 API에 입력하여 서비스 거부(DoS) 유도

🛡️ 대응 방법

deepmerge-ts 라이브러리를 8.0.0 버전 이상으로 업데이트

🔧 검증 코드

출력된 버전 번호가 8.0.0 미만인지 확인

Shell / Script
npm list deepmerge-ts 2>/dev/null | grep deepmerge-ts

💻 영향받는 소프트웨어

Node.js