#nextjs#react#react server components#react2shell#cve-2025-55182#javascript#typescript#segurança#appsec#devsecops#nodejs#inteligência artificial#ia#cloud#fullstack

React2Shell, Next.js e React Server Components: a vulnerabilidade que inaugura a era dos exploits acelerados por IA

Como a CVE-2025-55182 expôs um novo modelo de risco em apps fullstack e o impacto da IA na criação e exploração de vulnerabilidades

Anderson LimaSenior Software Engineer & Content Creator
December 7, 2025
6 min read
13 views
React2Shell, Next.js e React Server Components: a vulnerabilidade que inaugura a era dos exploits acelerados por IA

React2Shell, Next.js e React Server Components: A Vulnerabilidade que Inaugura a Era dos Exploits Acelerados por IA

[!URGENT] Leitura Obrigatória para Produção: Se você tem qualquer aplicação em Next.js 15/16 ou React 19 usando React Server Components (RSC) em produção, leia este documento antes do próximo deploy.

Nos últimos dias foi divulgada uma vulnerabilidade crítica — CVE-2025-55182, apelidada de React2Shell — que permite execução remota de código (RCE) não autenticada em servidores que usam React Server Components e frameworks como Next.js.

[!CAUTION] Situação Atual: Exploit público já existe, ataques reais já começaram e parte desses PoCs foram claramente gerados com ajuda de IA.


1. O que é a vulnerabilidade React2Shell (CVE-2025-55182)?

Em 3 de dezembro de 2025, o time do React publicou o post "Critical Security Vulnerability in React Server Components", divulgando um bug com CVSS 10.0 (nota máxima) em React Server Components.

O Bug

  • Afeta o protocolo Flight usado por React Server Components.
  • Permite que um atacante envie um HTTP request especialmente construído para um endpoint de Server Functions / RSC.
  • Ao explorar a forma como o payload é desserializado de forma insegura, consegue executar código arbitrário no servidor.

Versões Afetadas

A vulnerabilidade está presente nas versões 19.0, 19.1.0, 19.1.1 e 19.2.0 dos pacotes:

  • react-server-dom-webpack
  • react-server-dom-parcel
  • react-server-dom-turbopack

Correções (Fixes)

Os fixes foram lançados em:

  • 19.0.1
  • 19.1.2
  • 19.2.1

[!WARNING] Se seu app usa React 19 + RSC e está em uma dessas versões vulneráveis, você está diretamente na linha de fogo.


2. E onde entra o Next.js nisso?

O Next.js implementa React Server Components via App Router — e por isso herdou o problema. A vulnerabilidade foi rastreada como CVE-2025-66478 no ecossistema Next.js (depois marcada como duplicada de CVE-2025-55182).

Apps Vulneráveis

De acordo com o advisory oficial do Next.js, estão vulneráveis apps que usam App Router + RSC nas versões:

  • Next.js 15.x
  • Next.js 16.x
  • Next.js 14.3.0-canary.77 e canaries posteriores

Apps NÃO Afetados

  • Next.js 13.x
  • Next.js 14.x estável
  • Apps usando apenas Pages Router
  • Edge Runtime

Versões Corrigidas

As versões corrigidas incluem (entre outras):

  • next@15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7
  • next@16.0.7
  • Canaries corrigidos: 15.6.0-canary.58, 16.1.0-canary.12

[!NOTE] O próprio React e a Wiz destacam que até um app padrão criado com create-next-app, sem nenhuma lógica extra, pode ser explorado em configurações vulneráveis.


3. Como o ataque funciona

Resumo Técnico: A falha é classificada como insecure deserialization / server-side prototype pollution no contexto do protocolo Flight.

  1. Um atacante envia um payload que "polui" o prototype de objetos no servidor.
  2. Isso faz com que chamadas internas acabem executando funções perigosas, como child_process.execSync().

Capacidades Demonstradas em PoCs

Em PoCs divulgados, o exploit consegue:

  • Escrever arquivos no /tmp.
  • Ler .env e outras credenciais sensíveis.
  • Rodar comandos como id, whoami, curl, wget, baixar scripts externos, instalar cryptominers, etc.

[!DANGER] A Datadog demonstra um PoC capaz de comprometer até um Next.js "em branco" (gerado por create-next-app) com um único request HTTP customizado.


4. A situação real: exploits já estão rodando em produção

Isso não é mais uma vulnerabilidade "teórica".

  • Wiz: Registrou que 39% dos ambientes de cloud analisados têm instâncias vulneráveis de React/Next.js, e 44% possuem apps Next.js expostos publicamente.
  • Exploração Ativa: Wiz, Datadog, AWS, Google Cloud confirmar exploração ativa (mineradores, roubo de credenciais, C2).
  • Atores de Ameaça: A AWS reportou que grupos como Earth Lamia e Jackpot Panda começaram a explorar a falha horas depois da divulgação.

5. Onde a IA entra na história

Este caso destaca uma tendência preocupante para segurança:

  1. PoCs gerados por IA: Logo após o anúncio, surgiram diversos PoCs no GitHub, alguns gerados por IA (funcionais ou não), servindo de base para forks.
  2. Ataques em "modo volume": Atores rodando centenas de payloads diferentes (muitos gerados por IA) em massa.
  3. Baixa barreira de entrada: IA permite gerar payloads alternativos e scripts de varredura rapidamente.
  4. Ciclo de feedback rapidíssimo: O atacante usa IA para ajustar payloads com base nos logs de erro em segundos.
  5. Defensores defasados: O lado ofensivo está mais rápido em adotar IA do que o defensivo.

6. "Estou usando Next.js / React 19. Estou vulnerável?"

6.1. Verifique versões de React Server Components

Execute no terminal:

npm ls react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack

Se aparecer alguma dessas versões, você está potencialmente vulnerável:

  • 19.0, 19.1.0, 19.1.1, 19.2.0

6.2. Verifique versão do Next.js

npm ls next react react-dom

Se o Next.js estiver em:

  • 14.3.0-canary.77 ou canaries posteriores
  • Qualquer 15.x
  • Qualquer 16.x
  • E usando App Router + RSC -> ** ALERTA VERMELHO **

6.3. Use auditoria automatizada

npm audit --audit-level=critical
# ou
npm audit report

7. O que fazer agora (Prioridades)

7.1. Patch Imediato

  1. Atualize React para react@19.2.1 (ou mais recente).
  2. Atualize Next.js para uma das versões corrigidas (next@15.0.5, 15.1.9, etc.).

Helper Oficial do Next.js:

npx fix-react2shell-next

7.2. Mitigação via WAF / Cloud

  • Google Cloud Armor: Regra cve-canary.
  • AWS WAF: Regras no AWSManagedRulesKnownBadInputsRuleSet (v1.24+).

[!IMPORTANT] WAF não substitui patch — é apenas mitigação temporária.

7.3. Hunting e Detecção em Logs

Busque por:

  • Headers: Next-Action, next-action, rsc-action-id.
  • Payloads contendo: "status":"resolved_model", __proto__, constructor, child_process.
  • Arquivos estranhos em /tmp ou execução de whoami, curl, etc. pelo processo Node.

7.4. Pós-Exploit (Em caso de suspeita)

  1. Isolar instâncias.
  2. Revogar e rotacionar TODAS as credenciais (.env, tokens, keys).
  3. Rebuild de imagens com versões corrigidas.

8. Tendência: Por que isso vai ficar mais comum?

A combinação de frameworks complexos + uso intensivo de server-side JS + IA cria o cenário perfeito:

  1. Complexidade crescente de frameworks full-stack.
  2. Descoberta de vulnerabilidades assistida por IA.
  3. Geração massiva de PoCs (bons e ruins).
  4. Ferramentas ofensivas "no-code".

9. Como usar IA a seu favor

  • Gerar scripts de hunting (KQL, SQL, Loki) a partir de advisories.
  • Revisar package.json e pnpm-lock.yaml.
  • Resumir advisories longos em runbooks.
  • Automatizar alertas de CVEs no CI.

10. Checklist Rápido para o Notion

  • Meu projeto usa React 19 com RSC?
  • Meu projeto usa Next.js 15.x / 16.x / 14.3.0-canary.77+ com App Router?
  • Executei npm ls react-server-dom-* e npm ls next?
  • Atualizei para react@19.2.1+ e next@15.0.5+?
  • (Opcional) Configurei regras de WAF para CVE-2025-55182?
  • Revisei logs buscando headers e payloads suspeitos?
  • Tenho um plano de resposta a incidentes?

11. Referências

  • React Team: "Critical Security Vulnerability in React Server Components"
  • NVD (NIST): CVE-2025-55182
  • Vercel / Next.js: "Security Advisory: CVE-2025-66478"
  • Wiz Research: "Critical Vulnerabilities in React and Next.js"
  • Datadog Security Labs: Análise técnica e PoCs
  • AWS Security Blog: Telemetria de exploração real

Anderson Lima

Senior Software Engineer & Content Creator

Anderson Lima é Senior Software Engineer com mais de 10 anos de experiência em front-end, mobile e back-end, atuando com React, Next.js, TypeScript, Node.js e arquitetura moderna em escala. Além do trabalho em grandes empresas de tecnologia, compartilha conteúdos sobre carreira, código, segurança e inteligência artificial para ajudar outros devs a construírem produtos melhores e acelerarem sua evolução profissional.