
CVE-2025-55182 및 CVE-2025-66478 Next.js RSC RCE 탐지 도구
CVE-2025-55182 및 CVE-2025-66478 (원격 코드 실행)을 탐지하는 고정밀 명령줄 취약점 스캐너입니다. Next.js 애플리케이션에서 React Server Components(RSC)를 사용하는 환경을 대상으로 합니다.
이 치명적인 취약점들은 React Server Components를 사용하는 Next.js 애플리케이션에 영향을 미치며, 조작된 multipart POST 요청을 통해 인증되지 않은 원격 코드 실행을 가능하게 합니다.
영향을 받는 버전:
기술적 세부사항: Assetnote Research
스캐너는 결정론적 수학 연산(41*271 = 11111)을 실행하는 RCE PoC(Proof of Concept) 페이로드가 포함된 조작된 multipart POST 요청을 전송합니다. 취약한 호스트는 X-Action-Redirect 응답 헤더에 형태로 결과를 반환합니다.
/login?a=11111| 모드 | 설명 | 사용 사례 |
|---|---|---|
| RCE PoC (기본값) | 대상에서 무해한 수학 연산 실행 | 빠른 취약점 확인 |
| Safe Check | 오류 응답을 통한 부채널 탐지 | 코드 실행을 원하지 않을 때 |
# 저장소 클론
git clone https://github.com/YOUR_USERNAME/react2shell-scanner.git
cd react2shell-scanner
# 의존성 설치
pip install -r requirements.txt
# 단일 대상 스캔
python scanner.py -u https://example.com
# 파일에서 여러 대상 스캔
python scanner.py -l hosts.txt
# 멀티스레드 스캔 (JSON 출력)
python scanner.py -l hosts.txt -t 20 -o results.json
# 사용자 정의 헤더 사용
python scanner.py -u https://example.com -H "Authorization: Bearer token" -H "Cookie: session=abc"
# 안전 탐지 모드 (코드 실행 없음)
python scanner.py -u https://example.com --safe-check
# Windows 대상 스캔
python scanner.py -u https://example.com --windows
# WAF 우회 모드
python scanner.py -u https://example.com --waf-bypass
# Vercel 전용 WAF 우회
python scanner.py -u https://example.com --vercel-waf-bypass
# 옵션 결합
python scanner.py -l hosts.txt -t 50 --waf-bypass --windows -o results.json
| 옵션 | 설명 |
|---|---|
-u, --url | 확인할 단일 URL |
-l, --list | 호스트 목록 파일 (한 줄에 하나씩) |
-t, --threads | 동시 스레드 수 (기본값: 10) |
--timeout | 요청 제한 시간(초) (기본값: 10) |
-o, --output | 결과 출력 파일 (JSON 형식) |
--all-results | 취약 호스트뿐만 아니라 모든 결과 저장 |
-v, --verbose | 출력에 응답 본문 포함 |
-q, --quiet | 취약 호스트만 출력 |
--no-color | 터미널 출력 색상 비활성화 |
-k, --insecure | SSL 인증서 검증 비활성화 |
-H, --header | 사용자 정의 헤더 (여러 번 사용 가능) |
--safe-check | RCE PoC 대신 안전한 부채널 탐지 사용 |
--windows | Unix 셸 대신 Windows PowerShell 페이로드 사용 |
--waf-bypass | WAF 콘텐츠 검사를 우회하기 위해 정크 데이터 추가 |
--waf-bypass-size | 정크 데이터 크기(KB) (기본값: 128) |
--vercel-waf-bypass | Vercel WAF 우회 페이로드 변종 사용 |
╔═══════════════════════════════════════════════════════════════╗
║ react2shell-scanner ║
║ CVE-2025-55182 & CVE-2025-66478 Detection Tool ║
╚═══════════════════════════════════════════════════════════════╝
┌─────────────────────────────────────────────────────────────┐
│ SCAN CONFIGURATION │
├─────────────────────────────────────────────────────────────┤
│ Targets: 5 │
│ Threads: 10 │
│ Detection Mode: RCE PoC │
│ Payload Type: Unix (Shell) │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ TARGET: https://example.com │
├─────────────────────────────────────────────────────────────┤
│ Status: 🟢 SAFE │
│ HTTP Status: 200 │
│ Response Time: 245.32ms │
│ Server: Vercel │
└─────────────────────────────────────────────────────────────┘
═════════════════════════════════════════════════════════════════
SCAN SUMMARY
═════════════════════════════════════════════════════════════════
Total Targets: 5
Vulnerable: 0
Safe: 5
Total Scan Time: 2.34s
═════════════════════════════════════════════════════════════════
-o results.json을 사용하면 결과가 JSON 형식으로 저장됩니다.
[
{
"url": "https://vulnerable-site.com",
"vulnerable": true,
"message": "RCE confirmed: X-Action-Redirect = /login?a=11111",
"status_code": 200,
"response_time": 342.15,
"server": "Next.js",
"payload_type": "rce-poc (Unix)",
"x_action_redirect": "/login?a=11111"
}
]
이 도구는 공인된 보안 테스트 목적으로만 사용해야 합니다. 명시적 허가를 받은 시스템에 대해서만 스캐너를 사용하십시오. 무단 컴퓨터 시스템 접근은 불법입니다.
저자는 이 도구의 오용이나 피해에 대해 책임을 지지 않습니다.
MIT 라이선스 – 자세한 내용은 LICENSE 파일을 참조하세요.
기여를 환영합니다! Pull Request를 자유롭게 제출해 주세요.
git checkout -b feature/AmazingFeature).git commit -m 'Add some AmazingFeature').git push origin feature/AmazingFeature).