CVE-2026-4800
lodash가 _.template imports 키 이름을 통해 Code Injection에 취약함
- 게시됨
- 2026. 3. 31.
- 업데이트됨
- 2026. 9. 14.
- CNA 할당 중
- openjs
- 증거 관찰됨
- 2026. 8. 25.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H낮음 · 다음 30일
- 백분위수
- 85.5%
- 모델 날짜
- 2026. 9. 21.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
영향: CVE-2021-23337(https://github.com/advisories/GHSA-35jh-r3h4-6jhm)에 대한 수정은 `_.template`의 variable 옵션에 대한 검증을 추가했지만, `options.imports` 키 이름에는 동일한 검증을 적용하지 않았습니다. 두 경로 모두 동일한 `Function()` 생성자 싱크로 흘러갑니다. 애플리케이션이 신뢰할 수 없는 입력을 `options.imports` 키 이름으로 전달하면, 공격자는 템플릿 컴파일 시점에 임의 코드를 실행하는 기본 매개변수 표현식을 주입할 수 있습니다. 또한 `_.template`은 `assignInWith`를 사용하여 imports를 병합하는데, 이는 `for..in`을 통해 상속된 속성을 열거합니다. `Object.prototype`이 다른 경로로 오염된 경우, 오염된 키가 imports 객체에 복사되어 `Function()`에 전달됩니다. 패치: 사용자는 버전 4.18.0으로 업그레이드해야 합니다. 해결 방법: `options.imports`의 키 이름으로 신뢰할 수 없는 입력을 전달하지 마십시오. 개발자가 제어하는 정적 키 이름만 사용하십시오.
소스
1개념 증명(PoC)으로, 프로토타입 오염을 통한 lodash 템플릿의 원격 코드 실행을 시연하며, 공격 흐름과 악용 기법에 대한 상세 분석을 포함합니다.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.