Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
cve-2025-55182-scanner — Passive vulnerability scanner for CVE-2025-55182 and CVE-2025-66478, detecting unauthenticated RCE in React Server Components via framework fingerprinting, version analysis, and RSC endpoint probing. | Kitploit
Tools/GitHubGitHub/xkillbit/cve-2025-55182-scanner
Vulnerability ScannersExploitationWeb Application ExploitationInformation GatheringWeb SecurityPenetration Testing
GitHubxkillbit/cve-2025-55182-scanner

cve-2025-55182-scanner

Passive vulnerability scanner for CVE-2025-55182 and CVE-2025-66478, detecting unauthenticated RCE in React Server Components via framework fingerprinting, version analysis, and RSC endpoint probing.

View Repository
429 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2025-55182 / CVE-2025-66478 Vulnerability Scanner

React Server Components Flight Protocol Remote Code Execution Detection Tool

CVSS Score Disclosure Date License


Executive Summary

This scanner identifies systems potentially vulnerable to CVE-2025-55182 (React) and CVE-2025-66478 (Next.js), critical unauthenticated remote code execution vulnerabilities in the React Server Components (RSC) "Flight" protocol.

Key Risk Factors:

  • CVSS 10.0 - Maximum severity
  • Unauthenticated - No login required
  • Remote - Exploitable over the network
  • Default configurations affected
  • Near 100% exploitation reliability reported

Table of Contents

  1. Vulnerability Overview
  2. How the Scanner Works
  3. Installation
  4. Usage
  5. Understanding Results
  6. Confidence Levels
  • Limitations
  • Recommendations
  • References

  • Vulnerability Overview

    What is CVE-2025-55182?

    A critical insecure deserialization vulnerability in React's Server Components implementation. The RSC "Flight" protocol fails to properly validate the structure and types of incoming payloads, allowing attackers to inject malicious data that influences server-side execution.

    Affected Components

    PackageVulnerable VersionsPatched Versions
    react-server-dom-webpack19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1
    react-server-dom-parcel19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1
    react-server-dom-turbopack19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1
    Next.js14.3.0-canary.77+, 15.x, 16.0.0-16.0.615.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7

    Affected Frameworks

    • Next.js (App Router)
    • React Router (RSC preview)
    • Vite RSC plugin
    • Parcel RSC plugin
    • RedwoodJS (RedwoodSDK)
    • Waku

    Attack Vector

    root@kitploit:~
    Attacker → Crafted HTTP POST → RSC Endpoint → Deserialization → RCE
    

    The attack requires only a specially crafted HTTP request to any Server Function endpoint. No authentication is needed, and default configurations are vulnerable.


    How the Scanner Works

    Detection Methodology

    The scanner uses passive fingerprinting and protocol probing to identify potentially vulnerable systems. It does NOT attempt exploitation.

    root@kitploit:~
    ┌─────────────────────────────────────────────────────────────────┐
    │                     DETECTION PIPELINE                          │
    ├─────────────────────────────────────────────────────────────────┤
    │                                                                 │
    │  1. Framework Detection                                         │
    │     ├── HTTP Headers (X-Powered-By: Next.js)                   │
    │     ├── Page Source (__NEXT_DATA__, react artifacts)           │
    │     └── Build Manifests                                         │
    │                                                                 │
    │  2. Version Fingerprinting                                      │
    │     ├── Embedded version strings in JS bundles                 │
    │     ├── Package version patterns                                │
    │     └── Build manifest analysis                                 │
    │                                                                 │
    │  3. RSC Endpoint Discovery                                      │
    │     ├── Send RSC headers (RSC: 1, Accept: text/x-component)    │
    │     ├── Analyze response Content-Type                          │
    │     └── Detect Flight protocol markers in response             │
    │                                                                 │
    │  4. Server Actions Probing                                      │
    │     ├── POST request with minimal Flight payload               │
    │     ├── Check for deserialization processing                   │
    │     └── Identify action endpoints                              │
    │                                                                 │
    │  5. Vulnerability Assessment                                    │
    │     ├── Correlate version with known vulnerable ranges         │
    │     ├── Weight RSC endpoint presence                           │
    │     └── Generate confidence-scored verdict                     │
    │                                                                 │
    └─────────────────────────────────────────────────────────────────┘
    

    Technical Detection Methods

    1. Framework Detection

    IndicatorDetection MethodConfidence
    X-Powered-By: Next.jsHTTP header inspectionHigh
    __NEXT_DATA__ script tagHTML source parsingHigh
    /_next/ asset pathsHTML source parsingMedium
    React hydration markersHTML source parsingMedium

    2. RSC Protocol Detection

    The Flight protocol uses a specific wire format:

    root@kitploit:~
    0:["$","div",null,{"children":"Hello"}]
    1:["$","$L1",null,{}]
    2:{"name":"ServerComponent"}
    

    The scanner looks for:

    • text/x-component Content-Type
    • Chunk format: {number}:{payload}
    • Reference markers: $, $L, $F, $@, $undefined

    3. Version Fingerprinting

    Searches for version patterns in:

    • JavaScript bundles (/_next/static/chunks/)
    • Build manifests
    • Inline scripts
    • Package references ([email protected])

    Installation

    Requirements

    • Python 3.8+
    • requests library

    Setup

    root@kitploit:~
    # Clone or download the scanner files
    # Install dependencies
    pip install -r requirements.txt
    
    # Verify installation
    python3 cve-2025-55182-scanner.py --help
    

    Usage

    Basic Scan

    root@kitploit:~
    # Single target
    python3 cve-2025-55182-scanner.py -t https://example.com
    
    # With verbose output
    python3 cve-2025-55182-scanner.py -t https://example.com -v
    

    Batch Scanning

    root@kitploit:~
    # Create targets file (one URL per line)
    echo "https://app1.example.com" > targets.txt
    echo "https://app2.example.com" >> targets.txt
    
    # Scan all targets
    python3 cve-2025-55182-scanner.py -f targets.txt -o results.json
    

    Advanced Options

    root@kitploit:~
    python3 cve-2025-55182-scanner.py -t https://example.com \
        --timeout 15 \
        --threads 10 \
        --user-agent "SecurityAudit/1.0" \
        -v \
        -o scan_results.json
    

    Command Line Options

    OptionDescriptionDefault
    -t, --targetSingle target URL-
    -f, --fileFile with target list-
    -o, --outputJSON output file-
    -v, --verboseShow detailed evidenceFalse
    --timeoutRequest timeout (seconds)10
    --threadsConcurrent threads5
    --verify-sslVerify SSL certificatesFalse
    --user-agentCustom User-AgentMozilla/5.0...
    --no-bannerSuppress bannerFalse

    Using the RSC Analyzer Module

    For deeper protocol analysis:

    root@kitploit:~
    python3 rsc_analyzer.py https://example.com 2>/dev/null
    

    This provides detailed Flight protocol analysis and component enumeration.


    Understanding Results

    Status Categories

    StatusMeaningAction Required
    🔴 VULNERABLEConfirmed vulnerable version detectedImmediate patching
    🔴 LIKELY_VULNERABLEReact 19.x with RSC, version in vulnerable rangeUrgent patching
    🟡 POTENTIALLY_VULNERABLERSC endpoints found, version unknownInvestigate & patch
    🟢 NOT_VULNERABLEPatched version confirmedMonitor for updates
    🔵 UNKNOWNCould not determine statusManual verification needed
    ⚪ ERRORScan failedRetry or manual check

    Sample Output

    root@kitploit:~
    ======================================================================
    Target: https://app.example.com
    Status: VULNERABLE
    Framework: Next.js
    Version: 19.1.0
    RSC Endpoints: /, /_next/data
    
    Evidence:
      - X-Powered-By header: Next.js
      - React version detected: 19.1.0
      - RSC Flight response at / (Content-Type: text/x-component)
      - Flight protocol markers detected at /
    
    Recommendations:
      → CRITICAL: Immediate patching required!
      → Upgrade React to 19.0.1, 19.1.2, or 19.2.1
      → Upgrade Next.js to latest patched version (15.0.5+, 16.0.7)
      → Enable WAF rules to block malicious RSC payloads
      → Monitor for anomalous POST requests to RSC endpoints
    ======================================================================
    

    JSON Output Format

    root@kitploit:~
    {
      "target": "https://app.example.com",
      "status": "VULNERABLE",
      "framework": "Next.js",
      "version": "19.1.0",
      "rsc_endpoints": ["/", "/_next/data"],
      "evidence": [
        "X-Powered-By header: Next.js",
        "React version detected: 19.1.0",
        "RSC Flight response at / (Content-Type: text/x-component)"
      ],
      "recommendations": [
        "CRITICAL: Immediate patching required!",
        "Upgrade React to 19.0.1, 19.1.2, or 19.2.1"
      ]
    }
    

    Confidence Levels

    How Much Should You Trust the Results?

    Result TypeConfidenceExplanation
    VULNERABLE with versionHIGH (90%+)Version string matched known vulnerable version
    VULNERABLE via headerHIGH (85%+)X-Powered-By exposed vulnerable version
    LIKELY_VULNERABLEMEDIUM-HIGH (70-85%)React 19.x detected, RSC active, version not explicitly patched
    POTENTIALLY_VULNERABLEMEDIUM (50-70%)RSC endpoints respond, but version unknown
    NOT_VULNERABLEHIGH (85%+)Patched version explicitly detected
    UNKNOWNLOW (<50%)Insufficient information gathered

    Factors That Increase Confidence

    ✅ Explicit version string found in bundles
    ✅ X-Powered-By header exposes version
    ✅ Multiple RSC indicators present
    ✅ Flight protocol response confirmed
    ✅ Server accepts RSC POST requests

    Factors That Decrease Confidence

    ❌ No version information exposed
    ❌ WAF/CDN masking responses
    ❌ Custom framework implementation
    ❌ Heavy caching preventing probes
    ❌ Rate limiting blocking detection

    False Positive Scenarios

    ScenarioWhy It HappensMitigation
    Old version string cachedCDN/build cacheCheck multiple endpoints
    RSC disabled post-updateConfig change without rebuildVerify build date
    Non-standard RSC implementationCustom frameworkManual verification

    False Negative Scenarios

    ScenarioWhy It HappensMitigation
    Version stripped from bundlesProduction optimizationCheck build manifests
    WAF blocking probesSecurity controlsTest from allowed IP
    RSC on non-standard pathsCustom routingExpand path wordlist
    SPA without SSR indicatorsClient-only renderingCheck API endpoints

    Limitations

    What This Scanner Cannot Do

    1. Confirm Exploitability - The scanner detects indicators, not actual exploitation
    2. Detect All RSC Endpoints - Custom routing may hide endpoints
    3. Bypass WAF/CDN - Aggressive filtering may block probes
    4. Analyze Minified Code - Heavy obfuscation limits version detection
    5. Assess Internal Apps - Requires network access to target

    Environmental Factors

    FactorImpact on Detection
    Cloudflare/WAFMay block probes, mask headers
    CDN CachingMay serve stale version info
    Load BalancersMay route to different app versions
    Kubernetes/ContainersEach pod may differ
    Feature FlagsRSC may be conditionally enabled

    Recommended Validation Steps

    For critical findings, always validate with:

    1. Package.json Review - Check actual installed versions
    2. Build Artifact Inspection - Examine production bundles
    3. Dependency Audit - npm audit or yarn audit
    4. Manual Endpoint Testing - Confirm RSC behavior

    Recommendations

    If VULNERABLE or LIKELY_VULNERABLE

    Immediate Actions (0-24 hours):

    1. Patch immediately

      root@kitploit:~
      npm install [email protected] [email protected]
      npm install [email protected]  # or latest patched
      
    2. Enable WAF rules - Cloudflare, Akamai, and AWS WAF have deployed protective rules

    3. Monitor logs for suspicious POST requests to RSC endpoints

    Short-term Actions (24-72 hours):

    1. Review access logs for exploitation attempts
    2. Implement rate limiting on RSC endpoints
    3. Consider authentication on server actions if possible

    If POTENTIALLY_VULNERABLE

    1. Manually verify React/Next.js versions in package.json
    2. Check if RSC is actually enabled in configuration
    3. Apply patches as precautionary measure
    4. Schedule full security assessment

    If UNKNOWN

    1. Verify target is accessible
    2. Check for WAF/CDN interference
    3. Attempt manual fingerprinting
    4. Review application documentation

    Integration with Assessment Workflows

    For PE Portfolio Assessments

    root@kitploit:~
    # Batch scan all company assets
    cat domains.txt | while read domain; do
        python3 cve-2025-55182-scanner.py -t "$domain" -o "results_${domain//\//_}.json"
    done
    
    # Aggregate results
    jq -s '[.[] | select(.status == "VULNERABLE" or .status == "LIKELY_VULNERABLE")]' results_*.json > critical_findings.json
    

    CI/CD Integration

    root@kitploit:~
    # GitHub Actions example
    - name: CVE-2025-55182 Check
      run: |
        python3 cve-2025-55182-scanner.py -t ${{ env.APP_URL }} -o results.json
        if grep -q '"status": "VULNERABLE"' results.json; then
          echo "::error::Critical vulnerability detected!"
          exit 1
        fi
    

    References

    Official Advisories

    • React Security Advisory
    • Vercel Security Notice
    • NVD - CVE-2025-55182

    Technical Analysis

    • Wiz Research Blog
    • Snyk Advisory
    • Akamai Analysis

    Vendor Resources

    • Cloudflare WAF Rules - Automatic protection deployed
    • Akamai Rapid Rules - Rule 3000976

    Changelog

    VersionDateChanges
    1.0.02025-12-03Initial release

    Disclaimer

    This tool is provided for authorized security testing only. Only use against systems you own or have explicit written permission to test. The authors assume no liability for misuse or damage caused by this tool.

    Download Tool