
CVE-2025-23061 - Mongoose 명령 주입
Mongoose < 8.9.5에서 populate() 함수의 match 옵션에 영향을 미치는 명령어 삽입 취약점에 대한 개념 증명입니다.
CVE ID: CVE-2025-23061
심각도: CRITICAL (CVSS 9.0)
영향을 받는 패키지: mongoose
취약한 버전:
= 7.0.0 < 7.8.4
= 8.0.0 < 8.9.5
이 취약점은 CVE-2024-53900의 불완전한 수정으로 인해 발생합니다. 직접적인 $where 삽입은 차단되지만, 공격자는 $and, 등의 논리 연산자 내에 연산자를 중첩하여 이 보호를 우회할 수 있습니다.
$or$where취약한 코드 경로:
populate() match 매개변수를 통해 입력을 제공합니다.$where를 소독하지 않습니다.# 종속성 설치
npm install
# 선택 사항: 특정 MongoDB URI 사용
export MONGODB_URI="mongodb://localhost:27017/mongoose_cve_poc"
npm start
서버가 http://localhost:3000에서 시작됩니다.
다른 터미널에서:
node exploit.js
이 PoC는 교육 목적으로만 제공됩니다. 허가 없이 컴퓨터 시스템에 접근하는 것은 불법입니다. 소유권이 있거나 명시적인 테스트 허가를 받은 시스템에서만 사용하십시오.