
**CVE-2025-55182** 및 **CVE-2025-66478**을 탐지하는 고급 취약점 스캐너 - React Server Components(RSC)를 사용하는 Next.js 애플리케이션에서 발생하는 심각한 원격 코드 실행(RCE) 취약점입니다.
Next.js 애플리케이션의 주요 RCE 취약점을 탐지하는 강력하고 사용하기 쉬운 스캐너
CVE-2025-55182 및 CVE-2025-66478 - Next.js 애플리케이션의 React Server Components(RSC)를 사용하는 주요 원격 코드 실행(RCE) 취약점을 탐지하는 고급 취약점 스캐너입니다.
이 향상된 도구는 Assetnote Security Team의 뛰어난 연구를 기반으로 하여 탐지, 사용 편의성, 포괄적인 보고 기능이 개선되었습니다.
test_urls.txt를 자동으로 찾습니다config.json을 통해 페이로드 및 탐지 패턴 사용자 정의이 취약점들은 React Server Components를 사용하는 Next.js 애플리케이션에 영향을 미치며, multipart form-data 요청의 부적절한 처리로 인해 발생합니다:
익스플로잇 메커니즘: 이 취약점은 RSC 프로토콜의 multipart 파싱을 악용하여 서버 측에서 실행되는 임의의 JavaScript 코드를 주입함으로써 공격자가 시스템 명령을 실행할 수 있게 합니다.
Windows:
setup.bat
Linux/macOS:
chmod +x setup.sh
./setup.sh
git clone https://github.com/yourusername/nextjs-rce-scanner.git
cd nextjs-rce-scanner
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/macOS
source venv/bin/activate
pip install -r requirements.txt
스캔을 시작하는 가장 간단한 방법:
Windows:
scan.bat
Linux/macOS:
./scan.sh
또는 직접:
python quick_scan.py
어떻게 작동하나요:
test_urls.txt가 있으면 자동으로 감지python quick_scan.py
# 프롬프트가 표시되면 1 입력
# URL 입력: https://target.com
같은 디렉터리에 test_urls.txt를 생성하세요:
https://example1.com
https://example2.com
https://example3.com
스캐너 실행:
python quick_scan.py
# test_urls.txt를 자동 감지하여 모든 URL 스캔
python nextjs_rce_scanner.py --url https://target.com --payload-type rce
옵션:
--url: 단일 대상 URL--file: URL 목록 파일 경로 (한 줄에 하나)--payload-type: 페이로드 변형 (rce, safe, waf_bypass, vercel_bypass, custom)--output: 보고서 파일 경로--format: 보고서 형식 (json, csv, html)--gui: 그래픽 인터페이스 실행--timeout: 요청 시간 초과 (초)--max-redirects: 최대 리디렉션 수--verbose: 자세한 출력예시:
python nextjs_rce_scanner.py --file targets.txt --format html --output scan_results.html --verbose
═══════════════════════════════════════════════════════════
🔍 Next.js RCE 스캐너 - 삼중 계층 탐지
═══════════════════════════════════════════════════════════
[*] 자동 감지 파일: test_urls.txt
[*] 파일에서 URL 로드 중...
[*] 5개 URL 로드됨
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[1/5] 스캔 중: https://example.com
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[✓] RCE 페이로드 테스트 → 안전
[✓] 안전 페이로드 테스트 → 안전
[✓] Vercel 우회 테스트 → 안전
상태: ✅ 안전 (0/3 페이로드에서 취약점 탐지됨)
응답: 405 (허용되지 않은 메서드)
JSON 보고서:
{
"scan_timestamp": "2025-01-15T10:30:00",
"total_targets": 5,
"vulnerable": 0,
"results": [...]
}
HTML 보고서: 전문적으로 서식이 지정된 보고서로, 색상 코드 결과, 스캔 통계 및 상세 결과를 포함합니다.
config.json을 통해 스캐너 동작을 사용자 정의하세요:
{
"scanner_settings": {
"timeout": 30,
"max_redirects": 5,
"verify_ssl": false
},
"payloads": {
"rce_commands": {
"unix_test": "echo $((41*271))",
"windows_test": "powershell -c \"41*271\""
}
},
"detection": {
"rce_patterns": [".*/login\\?a=11111.*"],
"safe_error_codes": [500]
},
"rate_limiting": {
"enabled": true,
"requests_per_second": 2
}
}
X-Action-Redirect 헤더 감지nextjs-rce-scanner/
├── nextjs_rce_scanner.py # Main scanner engine (full features)
├── quick_scan.py # Simple interactive wrapper
├── config.json # Configuration file
├── requirements.txt # Python dependencies
├── test_urls.txt # URL list for bulk scanning
├── setup.sh # Linux/Mac installation script
├── setup.bat # Windows installation script
├── scan.sh # Linux/Mac quick launcher
├── scan.bat # Windows quick launcher
├── README.md # This file
└── LICENSE # MIT License
알려진 취약 환경에서 테스트 (윤리적 테스트만 가능):
python quick_scan.py
프롬프트가 표시되면 테스트 URL을 입력하세요. 스캐너는 다음을 수행합니다:
교육 및 승인된 테스트 전용
이 도구는 보안 연구, 취약점 평가 및 승인된 침투 테스트를 위해 제공됩니다. 사용자는 다음을 준수해야 합니다:
저자는 이 도구의 오용이나 피해에 대해 어떠한 책임도 지지 않습니다.
이 소프트웨어를 사용함으로써 합법적이고 책임감 있는 방식으로 사용하는 것에 동의하는 것으로 간주됩니다.
MIT 라이선스 - 자세한 내용은 LICENSE 파일 참조
기여를 환영합니다! 다음 절차를 따라주세요:
git checkout -b feature/improvement)git commit -am 'Add new feature')git push origin feature/improvement)보안 문제나 질문이 있을 경우:
⭐ 이 도구가 도움이 되셨다면 별표를 눌러주세요! ⭐
보안 커뮤니티를 위해 ❤️로 제작되었습니다