
Laboratório Docker isolado e scanner estático para CVE-2025-55182, com builds do Next.js vulneráveis/corrigidas e validação de PoC da desserialização do RSC Flight.
Aviso Legal: Este repositório e seus artefatos de PoC são criados estritamente para fins educacionais, de pesquisa e demonstração de segurança defensiva em um ambiente de laboratório isolado. Testes não autorizados contra sistemas externos são estritamente proibidos.
Este repositório fornece um ambiente Docker reproduzível de dois contêineres, projetado para analisar, explorar e validar mitigações para a vulnerabilidade de desserialização do Protocolo Flight dos React Server Components (RSC) (popularmente referida como React2Shell / CVE-2025-55182). O laboratório demonstra o impacto pós-exploração em uma build não corrigida do Next.js e comprova a eficácia da mitigação em uma build corrigida.
http://127.0.0.1:3001 (contêiner react2shell-vulnerable)http://127.0.0.1:3002 (contêiner react2shell-patched)internal: true).127.0.0.1 (localhost) para impedir acessibilidade externa pela LAN.DUMMY_SECRET=LAB_VULNERABLE_SECRET_DO_NOT_USE_12345) são utilizadas para testes de exfiltração, eliminando a exposição de dados sensíveis.24.0.0+, Compose v2.20.0+)3.8+ — Somente biblioteca padrão para automação base)Clone o repositório e verifique seu ambiente local:
git clone https://github.com/PhanHoangKhang/React2Shell.git
Navegue até o diretório lab/ e inicialize os dois contêineres de build dupla:
cd lab
docker-compose up -d --build
cd ..
Execute o scanner de detecção em ambos os laboratórios:
python src/react2shell_scanner.py lab/patched
python src/react2shell_scanner.py lab/vulnerable
cd lab
docker-compose stop
cd ..
Para executar os testes de validação da exploração e verificar os artefatos de exfiltração, consulte o guia detalhado passo a passo do PoC:
👉 Ver Guia de PoC e Validação de Vulnerabilidade (poc_reference.md)
package-lock.json (formato v3). O scanner estático prioriza a análise da árvore de dependências resolvida dentro de packages["node_modules/next"] para detecção precisa.< 15.0.3 (incluindo builds 15.0.0-rc) como vulneráveis à desserialização do Protocolo Flight do RSC.| Serviço Alvo | Framework / Pacote | Versão Instalada | Formato do Lockfile |
|---|
Alvo Vulnerável (:3001) | Next.js | 15.0.0-rc.1 | package-lock.json (Versão 3 do Lockfile) |
| React / React-DOM | 19.0.0-rc-65a56d0e-20241020 | Lançamento do Registro NPM | |
Alvo Corrigido (:3002) | Next.js | 15.0.3 (Estável) | package-lock.json (Versão 3 do Lockfile) |
| React / React-DOM | 19.0.0 (Estável) | Lançamento do Registro NPM |