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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-55182-scanner — CVE-2025-55182(React Server Components RCE)를 위한 비간섭적 표면 스캐너. React 19 및 Next.js 애플리케이션에서 노출된 RSC 엔드포인트를 탐지합니다. | Kitploit
도구/GitHubGitHub/fatguru/cve-2025-55182-scanner
Vulnerability ScannersExploitationWeb Application ExploitationWAF BypassWeb SecurityPenetration TestingRed Teaming
GitHubfatguru/cve-2025-55182-scanner

CVE-2025-55182-scanner

CVE-2025-55182(React Server Components RCE)를 위한 비간섭적 표면 스캐너. React 19 및 Next.js 애플리케이션에서 노출된 RSC 엔드포인트를 탐지합니다.

저장소 보기
1121739개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

React Server Components 표면 노출 스캐너

(CVE-2025-55182)

CVE-2025-55182(React Server Components RCE)를 위한 특화된 비침습적 표면 탐지기입니다.


⚠️ 중요 기술적 맥락

스캔 전에 읽으십시오:

CVE-2025-55182는 치명적인 RCE 취약점(CVSS 10.0)이지만, Next.js 프로덕션 환경에서의 실제 악용은 조건부입니다.

  1. 화이트리스트 장벽: Next.js는 serverManifest를 사용하여 허용된 모듈을 화이트리스트에 등록합니다. RSC를 통해 child_process와 같은 위험한 모듈을 직접 로드하려는 시도는 매니페스트에 없기 때문에 종종 실패합니다.
  2. 공격 체인: 강화된 대상에서 RCE를 달성하기 위해 공격자는 이 취약점을 프로토타입 폴루션 프리미티브와 연결하여 메모리의 serverManifest를 덮어쓰고 화이트리스트를 우회해야 하는 경우가 많습니다.
  3. Webpack 난독화: 프로덕션 빌드에서는 모듈 ID가 난독화됩니다(예: "vm" 대신 742). 이름을 추측하는 경직된 익스플로잇은 실패합니다(미탐, False Negatives).

이 도구는 표면 탐지기입니다. RSC 프로토콜이 노출되어 활성 상태인지 식별합니다. 노출된 엔드포인트를 찾는 것은 프로토타입 폴루션 체인이 시도될 수 있는 공격 표면을 식별하기 위한 전제 조건 단계입니다.


🛡️ 왜 이 표면 탐지기를 사용해야 하나요?

  • 대부분의 공개 PoC 및 스캐너는 다음과 같은 네 가지 일반적인 함정에 빠지기 때문에 프로덕션 환경에서 미탐(False Negatives)을 초래합니다:

  • 익스플로잇 경직성: 화이트리스트에 의해 차단되는 특정 가젯(예: vm 또는 child_process)을 실행하려 하거나, 난독화된 Webpack 빌드에서 실패하는 하드코딩된 ID(예: "id":"vm")에 의존합니다.

  • 루트 리다이렉트: Next.js에서 POST /을 요청하면 종종 307/308 리다이렉트(예: /login)가 발생하여 서버가 처리하기 전에 POST 본문이 유실되거나 GET으로 변환됩니다.

  • 전송 형식 불일치: 많은 스캐너가 페이로드를 text/plain 또는 원시 JSON으로 전송합니다. 엄격한 Next.js Server Actions는 종종 multipart/form-data 캡슐화를 요구합니다. 형식이 잘못되면 취약한 파서를 트리거하지 않은 채 서버가 404/200을 반환합니다.

  • WAF 인식 부재: 일반적인 도구는 403 Forbidden을 보고 포기합니다. 전역 IP 차단과 특정 규칙 필터를 구분하지 못하여 인코딩이나 패딩 기법으로 WAF를 우회할 기회를 놓칩니다.

이 스캐너는 세 가지 문제를 모두 해결합니다:

✅ 스마트 경로 탐색: 무작위로 존재하지 않는 경로(예: /x7z9q2)를 자동으로 탐색하여 루트 리다이렉트(307/308)를 우회하고 Next.js App Router가 요청 컨텍스트를 처리하도록 강제합니다.

✅ 엄격한 전송(Multipart): 일반 텍스트 대신 multipart/form-data 캡슐화를 사용합니다. 이로 인해 404를 반환하는 엄격한 Server Action 엔드포인트에서의 미탐(False Negatives)이 해결됩니다.

✅ WAF 차등 분석: 전역 차단([BLOCKED])과 특정 규칙 필터링([FILTERED])을 구분합니다. 백엔드가 프로토콜을 허용하지만 페이로드를 차단하는 경우, 스캐너는 이를 고가치 대상으로 식별합니다.

✅ 자동 우회 모드: [FILTERED] 대상에 대해 자동으로 회피 기법(유니코드 이스케이프, 공백 변형, 잡음 패딩)을 시도하는 선택적 --bypass 엔진을 포함합니다.

✅ 강화된 탐지: X-Powered-By 헤더를 제거하는 엔터프라이즈 서버에서 "조용한 크래시"([SUSPICIOUS])를 포착하고, Assetnote 303 See Other 리다이렉트 핑거프린트를 식별합니다.

✅ 능동 핑거프린팅: 특수 페이로드(["$1:aa:aa"])를 사용하여 React 19 RSC의 고유한 "Digest" 오류를 트리거함으로써 완전한 RCE 없이도 파서가 활성 상태임을 확인합니다.


🚀 설치

  1. 저장소를 클론합니다:

    root@kitploit:~
    git clone https://github.com/fatguru/CVE-2025-55182-scanner.git
    cd CVE-2025-55182-scanner
    
    
  2. 의존성을 설치합니다 (가상 환경 사용을 권장합니다):

    root@kitploit:~
    pip install -r requirements.txt
    

💻 사용법

기본 스캔

단일 URL을 확인합니다. 참고: Next.js App Router 엔드포인트는 경로별로 다르므로 루트 도메인만이 아니라 정확한 애플리케이션 경로(예: /dashboard, /login)를 지정해야 합니다.

root@kitploit:~
python3 cve_2025_55182_scanner.py -u http://localhost:3000/dashboard

대량 스캔

파일에서 URL 목록을 스캔합니다(한 줄에 하나의 URL). 특정 경로를 놓치지 않기 위해 권장되는 전략입니다.

root@kitploit:~
python3 cve_2025_55182_scanner.py -l targets.txt -o results.csv

비보안 모드 (신규)

SSL/TLS 인증서 오류를 무시합니다(IP 기반 스캔, 로컬 랩, 자체 서명 인증서에 유용).

root@kitploit:~
python3 cve_2025_55182_scanner.py -u [https://192.168.1.50](https://192.168.1.50) -k

사용자 정의 헤더로 스캔 (WAF 우회 / 인증)

v2.1의 새로운 기능: 애플리케이션이 인증 또는 특정 헤더를 요구하는 WAF 뒤에 있는 경우 --header 플래그를 사용하여 세션 쿠키나 토큰을 전달합니다.

root@kitploit:~
python3 cve_2025_55182_scanner.py -u https://target.com --header "Cookie: session=123" --header "Authorization: Bearer xyz"

옵션

플래그설명
-u, --url단일 대상 URL (예: http://target.com/dashboard).
-l, --list스캔할 URL 목록이 포함된 파일 (한 줄에 하나).
--bypass(신규 v2.5) WAF 우회 모드를 활성화합니다. 대상이 [FILTERED]로 감지되면 변형 기법(유니코드, 패딩, 공백)을 자동으로 시도합니다.
--header사용자 정의 헤더를 추가합니다 (예: Cookie: session=xyz, Authorization: Bearer...). 여러 번 사용할 수 있습니다.
-o, --output결과를 텍스트 파일에 저장합니다.
-k, --insecureTLS 인증서 검증을 비활성화합니다 (SSL 경고 억제).
-t, --threads대량 스캔을 위한 동시 스레드 수 (기본값: 10).
--timeout요청 시간 초과(초) (멀티파트 페이로드를 수용하도록 기본값: 10초).
--verbose디버그 모드를 활성화합니다. 상세 탐색 단계, WAF 차단 상태 및 우회 시도를 표시합니다.

📊 결과 해석 (v2.5)

[EXPOSED] | 🔴 (빨강) | 취약

서버가 페이로드를 처리하고 React 19 digest 오류 또는 Action Redirect(303)를 반환했습니다. 노출된 표면에 대한 신뢰도가 높습니다.

[BYPASSED] | 🟠 (주황) | WAF 우회됨

성공! 스캐너가 처음에는 필터를 감지했지만, 변형 기법(예: 패딩/유니코드)을 사용하여 이를 성공적으로 우회하고 취약점을 트리거했습니다.

[SUSPICIOUS] | 🟡 (노랑) | 경고

서버가 페이로드를 파싱하는 동안 크래시(500)가 발생했습니다. X-Powered-By 헤더를 제거하는 강화된 대상에서도 직렬화 로직이 노출되었음을 나타냅니다.

[FILTERED] | 🔵 (파랑) | WAF 규칙 감지됨

서버가 RSC 트래픽을 허용하지만(정상 페이로드는 통과), 특정 WAF 규칙이 익스플로잇 페이로드를 차단했습니다. 대상은 WAF 뒤에서 활성 상태입니다. 우회를 시도하려면 --bypass를 사용하십시오.

[INFO] | 🔵 (청록) | 프로토콜 감지됨

서버가 RSC(text/x-component)를 사용하지만 페이로드를 정상적으로 처리했습니다. 패치되었거나 표준 동작일 가능성이 높습니다.

[BLOCKED] | 🟣 (마젠타) | 전역 WAF 차단

정상적인 핸드셰이크를 포함한 모든 것이 차단되었습니다(403/406). WAF가 프로토콜 전체 또는 사용자의 IP를 차단하고 있습니다.

[SAFE] | 🟢 (초록) | 안전

서버가 404/200을 반환했지만 모든 탐색 경로에서 RSC 헤더/멀티파트 본문을 무시했습니다.

🛠️ Nuclei 템플릿 (https://github.com/projectdiscovery/nuclei)

이 탐지 로직을 기반으로 한 Nuclei 템플릿이 이 저장소에 포함되어 있습니다: cve-2025-55182-detection.yaml.

root@kitploit:~
nuclei -t cve-2025-55182-detection.yaml -l targets.txt

v2.5 변경 내역 (주요 업데이트)

  • WAF 우회 모드: 대상이 [FILTERED]로 감지되면 새로운 --bypass 플래그가 회피 기법(공백, 유니코드, 대형 패딩)을 자동화합니다.
  • Multipart 지원: 텍스트 페이로드에 404를 반환하는 대상의 미탐(False Negatives)을 수정하기 위해 페이로드 전송을 multipart/form-data로 전환했습니다.
  • 스마트 분석:
    • [FILTERED]: WAF가 RSC 트래픽은 허용하면서 익스플로잇 페이로드만 구체적으로 차단하는 경우를 식별합니다(고가치 대상).
    • [SUSPICIOUS]: 이제 X-Powered-By 헤더를 숨기는 강화된 서버에서의 크래시를 포착합니다.
    • [EXPOSED]: 일부 취약한 구현에서 사용되는 303 See Other 리다이렉트 탐지를 추가했습니다.

v2.2 변경 내역 (중요 업데이트)

  • 미탐 수정(Multipart): 페이로드 전송을 text/plain에서 multipart/form-data로 전환했습니다. Server Actions에 대해 폼 데이터를 엄격히 요구하고 이전에 404를 반환했던 대상의 미탐(False Negatives)을 해결합니다.
  • 리다이렉트 탐지: HTTP 303 See Other 및 x-action-redirect 헤더를 포착하도록 로직이 업데이트되었습니다. 이는 스캐너가 리다이렉트를 자동으로 따라갈 때 종종 숨겨지는 RSC 처리의 강력한 지표입니다.

v2.1 업데이트

  • False Positive 수정: 'Info'(RSC 프로토콜 감지됨, 패치되었을 가능성 높음)와 'Suspicious'(서버 크래시/500)를 분리하도록 로직이 업데이트되어 React 19.x 패치 버전과의 문제를 해결했습니다.
  • WAF 탐지: WAF가 공격 시그니처를 차단할 때 스캐너가 이제 [BLOCKED] 상태(HTTP 403/406)를 명시적으로 식별하고 보고합니다.
  • 헤더 전략: 사용자 정의 트래픽 식별, Authorization 또는 WAF 허용 목록을 위한 선택적 --header 인자를 추가했습니다.
  • UX 개선: ASCII 배너 수정, SSL 경고 억제(-k) 추가, 견고한 색상 처리.

⚖️ 면책 조항

이 도구는 보안 연구원과 관리자가 자신의 시스템에서 노출된 공격 표면을 식별하도록 돕기 위한 것입니다. 저자는 이 도구의 오용에 대해 책임을 지지 않습니다. 명시적인 테스트 허가가 없는 시스템에는 사용하지 마십시오.

참고 자료:

root@kitploit:~
- https://nvd.nist.gov/vuln/detail/CVE-2025-55182
- https://www.wiz.io/blog/critical-vulnerability-in-react-cve-2025-55182
도구 다운로드