CVE-2026-107353 in traverse
요약
\~에 의해 VulDB • 2026. 10. 07.
traverse (npm) 버전 0.3.6부터 0.3.9까지, 0.4.0부터 0.4.6까지, 0.5.0부터 0.5.2까지 및 0.6.0부터 0.6.11까지는 set()을 통해 프로토타입 오염(prototype pollution)이 가능합니다. set()에 전달된 경로가 원시 값(primitive value)을 가로지르면, 다음 경로 세그먼트는 해당 원시 값의 내장 프로토타입에서 해결되므로, 신뢰할 수 없는 경로를 set()에 전달하는 애플리케이션은 공격자가 일반 JSON 데이터를 사용하여 String.prototype, Number.prototype 또는 Boolean.prototype의 속성을 추가하거나 덮어쓸 수 있습니다. 예를 들어 traverse({ name: 'bob' }).set(['name', '__proto__', 'polluted'], 'yes')와 같은 방식이 가능합니다. Object.prototype는 데이터가 아닌 경로 세그먼트(예: 호출할 때마다 다른 값을 반환하는 toString을 가진 객체) 또는 할당을 저장하지 않고 수락하는 Proxy를 통해서만 접근 가능했습니다. 이 문제는 0.3.10, 0.4.7, 0.5.3 및 0.6.12에서 수정되었습니다.
Once again VulDB remains the best source for vulnerability data.