
React/Next.js React4Shell RCE CVE-2025-55182 проверщик
Комплексное средство обнаружения уязвимости CVE-2025-55182 в React/Next.js приложениях с использованием нескольких методов детектирования.
ТОЛЬКО ДЛЯ АВТОРИЗОВАННОГО ТЕСТИРОВАНИЯ БЕЗОПАСНОСТИ И ИССЛЕДОВАНИЙ
Этот инструмент предназначен для:
Несанкционированный доступ к компьютерным системам незаконен. Всегда получайте письменное разрешение перед тестированием.
Данный детектор комплексно проверяет, является ли целевое приложение уязвимым к CVE-2025-55182, используя несколько методов:
Инструмент тестирует цепочки гаджетов Node.js с безвредными операциями:
1+1)echo test)path)/dev/null)Операции тестирования:
echo test, 1+1)/dev/null)НЕ делает:
Этот инструмент использует uv для управления зависимостями и выполнения.
Установка не требуется! Просто клонируйте и запустите:
git clone <repository-url>
cd CVE-2025-55182/poc
uv run check http://target.com:3000
При первом запуске инструмент автоматически установит зависимости.
uv run check <target_url>
# Проверить цель с настройками по умолчанию (тестирует конечную точку /formaction)
uv run check http://localhost:3002
# Указать пользовательскую конечную точку
uv run check http://localhost:3002 --endpoint /api/formaction
# Проверить несколько целей из файла
uv run check --file targets.txt
# Сохранить уязвимые хосты в файл
uv run check --file targets.txt -o vulnerable.txt
# Увеличить таймаут для медленных соединений
uv run check http://localhost:3002 --timeout 15
# Отключить проверку SSL (для самоподписанных сертификатов)
uv run check http://localhost:3002 --no-ssl-verify
# Тихий режим (минимальный вывод)
uv run check http://localhost:3002 --quiet
usage: uv run check [-h] [-f FILE] [-e ENDPOINT] [-t TIMEOUT]
[--no-ssl-verify] [-q] [-o OUTPUT] [target]
positional arguments:
target Целевой URL (например, http://target.com:3000)
optional arguments:
-h, --help Показать справку и выйти
-f, --file FILE Файл, содержащий целевые URL (по одному на строку)
-e, --endpoint Путь к конечной точке API (по умолчанию: /formaction)
-t, --timeout Таймаут запроса в секундах (по умолчанию: 10)
--no-ssl-verify Отключить проверку SSL-сертификата
-q, --quiet Тихий режим (минимальный вывод)
-o, --output OUTPUT Файл для записи уязвимых хостов
0 - Цель НЕ уязвима1 - Цель уязвима130 - Прервано пользователем (Ctrl+C)# uv run check http://localhost:3002
======================================================================
CVE-2025-55182 Vulnerability Detector - Enhanced Edition
Multiple Detection Techniques | Comprehensive Coverage
======================================================================
[*] Testing http://localhost:3002/formaction
[*] Testing all detection techniques...
→ Gadget: fs#constructor: ✓ VULNERABLE
→ Gadget: vm#runInThisContext: ✓ VULNERABLE
→ Gadget: child_process#execSync: ✓ VULNERABLE
→ Gadget: module#_load: ✓ VULNERABLE
→ Gadget: fs#readFileSync: ✓ VULNERABLE
→ Gadget: util#promisify: ✗ Not vulnerable
→ Safe Side-Channel Detection: ✗ Not vulnerable
→ RCE PoC (Unix/Linux): ✗ Not vulnerable
→ RCE PoC (Windows): ✗ Not vulnerable
→ RCE with WAF Bypass (Unix/Linux): ✗ Not vulnerable
→ RCE with WAF Bypass (Windows): ✗ Not vulnerable
→ Advanced WAF Bypass (Unix/Linux): ✗ Not vulnerable
======================================================================
DETECTION RESULTS
======================================================================
Target: http://localhost:3002
Endpoint: /formaction
Techniques Tested: Multiple
Successful Techniques: 5 techniques detected vulnerability
Status: ⚠️ VULNERABLE
The target appears to be vulnerable to CVE-2025-55182.
Techniques that detected vulnerability:
-> Gadget: fs#constructor
-> Gadget: vm#runInThisContext
-> Gadget: child_process#execSync
-> Gadget: module#_load
-> Gadget: fs#readFileSync
Recommendation: Apply security patches immediately.
======================================================================
# uv run check http://localhost:8000
======================================================================
CVE-2025-55182 Vulnerability Detector - Enhanced Edition
Multiple Detection Techniques | Comprehensive Coverage
======================================================================
[*] Testing http://localhost:8000/formaction
[*] Testing all detection techniques...
→ Gadget: fs#constructor: ✗ Not vulnerable
→ Gadget: vm#runInThisContext: ✗ Not vulnerable
→ Gadget: child_process#execSync: ✗ Not vulnerable
→ Gadget: module#_load: ✗ Not vulnerable
→ Gadget: fs#readFileSync: ✗ Not vulnerable
→ Gadget: util#promisify: ✗ Not vulnerable
→ Safe Side-Channel Detection: ✗ Not vulnerable
→ RCE PoC (Unix/Linux): ✗ Not vulnerable
→ RCE PoC (Windows): ✗ Not vulnerable
→ RCE with WAF Bypass (Unix/Linux): ✗ Not vulnerable
→ RCE with WAF Bypass (Windows): ✗ Not vulnerable
→ Advanced WAF Bypass (Unix/Linux): ✗ Not vulnerable
======================================================================
DETECTION RESULTS
======================================================================
Target: http://localhost:8000
Endpoint: /formaction
Techniques Tested: Multiple
Status: ✓ NOT VULNERABLE
The target does not appear to be vulnerable to CVE-2025-55182.
All detection techniques failed to confirm vulnerability.
======================================================================
Скрипт позволяет тестировать несколько хостов одновременно.
# Создайте файл с целевыми URL (по одному на строку)
echo "http://localhost:3002" > targets.txt
echo "http://localhost:8000" >> targets.txt
# Запустите пакетное сканирование
uv run check --file targets.txt -o vulnerable.txt
Вывод:
======================================================================
CVE-2025-55182 Vulnerability Detector - Enhanced Edition
Multiple Detection Techniques | Comprehensive Coverage
======================================================================
[*] Loaded 2 target(s) from file
[*] Testing target 1/2
[*] Testing http://localhost:3002/formaction
[*] Testing all detection techniques...
→ Gadget: fs#constructor: ✓ VULNERABLE
→ Gadget: vm#runInThisContext: ✓ VULNERABLE
[... additional techniques ...]
======================================================================
DETECTION RESULTS
======================================================================
Target: http://localhost:3002
Endpoint: /formaction
Techniques Tested: Multiple
Successful Techniques: 5 techniques detected vulnerability
Status: ⚠️ VULNERABLE
[... details ...]
======================================================================
[*] Testing target 2/2
[*] Testing http://localhost:8000/formaction
[*] Testing all detection techniques...
→ Gadget: fs#constructor: ✗ Not vulnerable
[... all techniques fail ...]
----------------------------------------------------------------------
Target: http://localhost:8000
Endpoint: /formaction
Techniques Tested: Multiple
Status: ✓ NOT VULNERABLE
----------------------------------------------------------------------
======================================================================
SUMMARY
======================================================================
Total targets tested: 2
Vulnerable: 1
Not vulnerable: 1
======================================================================
[+] Wrote 1 vulnerable host(s) to vulnerable.txt
Эти методы проверяют, доступны ли конкретные модули и функции Node.js через уязвимость. Все используют безопасные, неразрушающие операции:
1+1echo testpath/dev/null (безопасный системный файл)echo $((41*271))41*271Различные среды могут блокировать одни подходы, но допускать другие:
child_process, но разрешают модуль vmCVE-2025-55182 — это уязвимость, затрагивающая некоторые приложения React/Next.js, использующие серверные действия (Server Actions). Уязвимость позволяет злоумышленникам выполнять произвольный код на сервере через небезопасную десериализацию данных, контролируемых пользователем.
$ACTION_*Если вы обнаружили уязвимости с помощью этого инструмента:
По вопросам, проблемам или улучшениям обращайтесь к основной документации проекта.
Данный инструмент предоставляется только для образовательных целей и авторизованного тестирования безопасности.
Помните: с большой силой приходит большая ответственность. Используйте этот инструмент этично и законно.