Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-66478-Exploit-PoC — Node.js를 사용한 CVE-2025-66478 개념 증명 익스플로잇 데모 | Kitploit
도구/GitHubGitHub/zhixiangyao/cve-2025-66478-exploit-poc
Dynamic Analysis (Sandboxing)Vulnerability AnalysisCode AnalysisExploitationWeb Application ExploitationLearning & EducationPayload Development
GitHubzhixiangyao/cve-2025-66478-exploit-poc

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-66478-Exploit-PoC

Node.js를 사용한 CVE-2025-66478 개념 증명 익스플로잇 데모

저장소 보기
18개월 전아직 검토되지 않음

CVE-2025-66478 익스플로잇 PoC

이 저장소는 Next.js CVE-2025-66478 취약점을 재현하고 연구하기 위한 개념 증명(PoC) 코드를 포함합니다. 취약한 Next.js 애플리케이션과 취약점 테스트를 위한 Node.js 익스플로잇 스크립트가 포함되어 있습니다.

English · 中文

CVE-2025-66478이란?

Next.js Server Actions 처리 중에 발생하는 원격 코드 실행(RCE) 취약점입니다.

핵심 사항:

  • 근본 원인: RSC(React Server Components) Flight 프로토콜의 안전하지 않은 역직렬화
  • 공격 벡터: __proto__ 속성을 통한 프로토타입 오염

취약점 요약

항목설명
CVE IDCVE-2025-66478
유형원격 코드 실행(RCE)
근본 원인RSC Flight 프로토콜의 안전하지 않은 역직렬화
심각도(CVSS)10.0 (치명적)
영향서버에서의 임의 시스템 명령 실행

공격 메커니즘 (기술적 세부 사항)

  1. 페이로드 전달: 공격자는 React Flight 직렬화 형식을 사용하여 __proto__와 같은 속성을 주입하는 페이로드를 제작합니다.
  2. 안전하지 않은 역직렬화 및 오염: 서버가 적절한 검증 없이 페이로드를 역직렬화하여 Object.prototype이 오염됩니다.
  3. Thenable 악용 체인: 오염으로 인해 모든 객체에 then 속성이 주입됩니다. Next.js 로직이 이러한 객체를 잘못 식별하여 **Promise(Thenable)**로 간주합니다.
  4. RCE 실행: 서버가 이 "가짜 Promise"를 await하려고 하면, then 메서드에 주입된 악성 JavaScript 코드가 실행됩니다(예: child_process.execSync).
root@kitploit:~
sequenceDiagram
    participant Attacker as Attacker
    participant Server as Next.js Server

    Attacker->>Server: POST / (JSON with "__proto__": {"then": ...})
    Note right of Server: JSON parsing pollutes Object.prototype

    Server->>Server: Application logic encounters an object

    rect rgb(200, 150, 150)
    Note right of Server: "Thenable" check exploitation chain
    Server->>Server: Check: typeof obj.then === 'function'?
    Server-->>Server: Yes (due to pollution)
    end

    Server->>Server: Await/execute malicious .then()
    Note right of Server: Malicious JS code runs (RCE)

    Server-->>Attacker: Response (Action redirect / Error message)

따라서 서버가 이 조작된 Promise를 처리할 때 공격자가 주입한 JavaScript 코드를 실행하여 시스템 명령 실행으로 이어질 수 있습니다. 포함된 main.mjs는 이 공격 시나리오를 재현하기 위한 예제 코드입니다.

영향을 받는 버전

이 취약점은 App Router를 사용하는 Next.js 애플리케이션에 영향을 미칩니다.

  • 영향을 받는 버전:
    • Next.js 15.x
    • Next.js 16.x
    • Next.js 14.3.0-canary.77 이후 (카나리 릴리스)
  • 영향을 받지 않는 버전:
    • Next.js 13.x
    • Next.js 14.x 안정화 버전
    • Pages Router만 사용하는 애플리케이션
    • Edge Runtime

패치된 버전:

  • 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7
  • 16.0.7
  • 15.6.0-canary.58 (PPR 사용자용)

참고 자료

  • Next.js 보안 권고
  • NVD - CVE-2025-66478
  • Python - CVE-2025-66478
  • CVE-2025-55182

파일 구조

  • app/page.tsx: 취약한 애플리케이션의 샘플 코드.
  • exploit.mjs: Node.js로 작성된 익스플로잇 실행 스크립트.

전제 조건

  • Node.js: v24 이상 권장.

1. Next.js 애플리케이션 실행

root@kitploit:~
# You can also use yarn or npm.
pnpm install
pnpm dev

브라우저에서 http://localhost:3000에 접속할 수 있는지 확인하십시오.

2. 익스플로잇 스크립트 실행

root@kitploit:~
pnpm exploit

기본적으로 로컬 주소(http://localhost:3000)를 대상으로 합니다. 다른 주소를 테스트하려면 --url 옵션을 사용하십시오:

root@kitploit:~
pnpm exploit --url http://target-ip:3000

면책 조항

이 코드는 보안 연구 및 교육 목적으로만 제공됩니다. 사전 허가 없이 이 도구를 시스템이나 네트워크에 사용하는 것은 불법이며, 사용자는 그러한 사용으로 인해 발생하는 모든 문제에 대해 전적인 책임을 집니다.

도구 다운로드