
CVE-2025-55183 스캐너
CVE-2025-55183 - Next.js React Server Components (RSC) 소스 코드 노출 취약점을 탐지하는 보안 스캐너입니다.
이 스캐너는 Next.js React Server Components (RSC)의 소스 코드 노출을 탐지합니다. 취약한 서버 함수에 악의적인 HTTP 요청을 보내면 인수가 문자열화될 때 안전하지 않게 해당 서버 함수의 소스 코드를 반환할 수 있습니다.
pip install -r requirements.txt
또는 수동 설치:
pip install requests urllib3 tqdm
# 단일 URL 스캔
python3 scanner.py https://example.com
# 호스트 목록 파일에서 스캔
python3 scanner.py hosts.txt
호스트당 한 줄씩 텍스트 파일을 만듭니다. 스캐너는 첫 번째 열에서 호스트 이름을 추출합니다(탭 또는 공백으로 구분된 입력 지원):
example.com 192.0.2.1 Cloudflare
subdomain.example.com 192.0.2.2 Cloudflare
https://app.example.com
#로 시작하는 줄은 주석으로 처리되어 무시됩니다.
위치 인수:
input 대상 URL 또는 호스트 목록이 포함된 파일
선택적 인수:
-h, --help 도움말 메시지 표시 후 종료
-t TIMEOUT, --timeout TIMEOUT
요청 시간 초과(초 단위, 기본값: 10)
-o OUTPUT, --output OUTPUT
결과 출력 파일
--format {text,json,csv}
출력 형식 (기본값: text)
--threads THREADS 동시 스레드 수 (기본값: 1)
--delay DELAY 요청 간 지연 시간(초 단위, 기본값: 0.5)
--rate-limit RATE_LIMIT
호스트당 초당 요청 수 (0으로 비활성화, 기본값: 10.0)
--retries RETRIES 실패한 요청에 대한 재시도 횟수 (기본값: 3)
-v, --verbose 상세 수준 증가 (-v, -vv, -vvv)
-q, --quiet 중요하지 않은 출력 숨기기
# 10개의 동시 스레드로 스캔
python3 scanner.py hosts.txt --threads 10
# JSON 형식으로 결과 출력
python3 scanner.py hosts.txt --format json -o results.json
# CSV 형식으로 결과 출력
python3 scanner.py hosts.txt --format csv -o results.csv
# 요청 간 지연 및 속도 제한 설정
python3 scanner.py hosts.txt --delay 1.0 --rate-limit 5.0
# 디버깅을 위한 상세 출력 활성화
python3 scanner.py hosts.txt -vv
# 중요하지 않은 출력 숨기기
python3 scanner.py hosts.txt --quiet -o results.json
스캔 요약 및 상세 결과가 포함된 사람이 읽을 수 있는 텍스트 출력:
============================================================
스캔 요약
============================================================
스캔한 총 호스트 수: 5
취약한 호스트: 2
안전한 호스트: 3
============================================================
[!] https://example.com - 취약
3개의 유출된 소스 코드 발견
[+] https://example2.com - 취약하지 않음
전체 스캔 세부 정보가 포함된 구조화된 JSON 출력:
{
"summary": {
"total_hosts": 5,
"vulnerable_hosts": 2,
"safe_hosts": 3
},
"results": [
{
"url": "https://example.com",
"vulnerable": true,
"chunk_paths": ["/_next/static/chunks/..."],
"action_ids": ["abc123..."],
"leaked_sources": [...]
}
]
}
스프레드시트로 쉽게 가져올 수 있는 쉼표로 구분된 값:
URL,Vulnerable,Chunks Found,Action IDs Found,Leaked Sources Count,Error
https://example.com,Yes,5,3,2,
https://example2.com,No,0,0,0,
스캐너는 세 단계 프로세스를 수행합니다:
/_next/static/chunks/ 참조에서 JavaScript 청크 파일 경로를 추출합니다.$F1 페이로드가 포함된 악의적인 요청을 보내 소스 코드 노출을 트리거합니다.0: 취약한 호스트 없음1: 하나 이상의 취약한 호스트 발견연결 오류가 발생하는 경우:
--timeout 30-vv로 자세한 오류 메시지 확인대상이 요청을 차단하는 경우:
--delay 2.0--rate-limit 2.0--threads 1가져오기 오류가 발생하는 경우:
pip install -r requirements.txt
참고: tqdm은 선택 사항입니다. 스캐너는 tqdm 없이도 작동하지만 진행 표시줄이 표시되지 않습니다.
이 도구는 교육 및 승인된 보안 테스트 목적으로만 제공됩니다.
이 도구는 보안 연구 및 승인된 침투 테스트를 위해 설계되었습니다. 귀하가 소유하거나 테스트할 권한이 없는 시스템에 대한 무단 사용은 불법이며 비윤리적입니다. 저자는 이 도구의 오용에 대해 책임을 지지 않습니다.