Glossário

O que é RCE (execução remota de código) — por que é a pior classe de falha

RCE permite rodar código no seu servidor pela rede, levando à tomada de controle. Como difere de XSS e SQLi e as defesas: patches e privilégio mínimo.

Publicado 2026-06-07 Atualizado 2026-10-06 7 min de leitura
Nesta página

"Um RCE com CVSS 10.0" é uma das frases mais graves nas notícias sobre vulnerabilidades. Veja por que o RCE é a "pior classe" e como difere de outras falhas, do zero.

Como difere de outras falhas

A maioria das vulnerabilidades tem impacto limitado. O RCE roda comandos no próprio servidor, então é uma ordem de magnitude pior.

VulnerabilidadeOnde o código rodaDano principalSeveridade típica
XSSo navegadorroubo de sessão, desfiguraçãomédia–alta
SQLio banco de dadosler/alterar dadosalta
RCEo próprio servidortomada de controle, propagação a outros sistemas, tudo o que o processo puder fazerpior (classe 10.0)

Por que é a pior classe

Um invasor rodando comandos no seu servidor significa que qualquer coisa que aquele processo possa fazer, ele pode fazer.

RCE alcançado (execução de código arbitrário)

↓ o que isso permite
ler o .env e roubar segredos
alcançar o banco para exfiltrar/alterar
um ponto de apoio para alcançar outros serviços
↓ até onde se espalha =
os "privilégios" do processo (então o privilégio mínimo funciona)
Até onde o dano se espalha é definido pelos privilégios do processo em execução. Privilégio mínimo e isolamento o limitam.

Até onde o dano se espalha é definido pelos "privilégios daquele processo". É exatamente por isso que conteinerização, privilégio mínimo e isolamento (limitar até onde o dano se espalha) funcionam. Rode como root e o invasor pode controlar o servidor inteiro; rode sem privilégios e isolado e você o contém.

A maioria dos RCEs vem de vulnerabilidades publicadas, não das suas próprias falhas

O RCE muitas vezes vem não de uma falha que você escreveu, mas de uma vulnerabilidade conhecida em um framework ou biblioteca que você usa. Muitos incidentes marcantes foram RCEs.

O que você pode fazer para se defender

1

Não negligencie CVEs publicados (a maior defesa)

Monitore CVEs com máquinas (Dependabot / osv-scanner) e atualize para as versões corrigidas rapidamente. A maioria dos RCEs vem de deixar vulnerabilidades conhecidas sem patch.

2

Julgue pela versão em execução

Meça o risco pela versão realmente em execução, não pelo piso do manifesto. Confiar no texto avalia mal o perigo.

3

Limite o dano

Rode como um usuário sem privilégios; isole contêineres e redes. Contenha o dano se você for atingido.

4

Não passe entrada direto para a execução

Nunca alimente entrada externa diretamente em comandos de shell, desserialização ou avaliação de templates. O básico de não criar um RCE você mesmo.

As principais causas que levam a um RCE

RCE é o nome do resultado; as causas se dividem em vários tipos. O "CWE Top 25" da MITRE (as 25 fraquezas de software mais perigosas), publicado em dezembro de 2025, inclui muitas fraquezas que levam a RCE.

Causa (CWE)O que éCWE Top 25 (2025)
Injeção de comandos do SO (CWE-78)Entrada externa é misturada a um comando de shell e roda como comando9º
Injeção de código (CWE-94)Entrada externa é avaliada e executada como código do programa10º
Upload de arquivo perigoso (CWE-434)Um arquivo executável é colocado no servidor e executado lá (→ vulnerabilidades de upload de arquivos, em inglês)12º
Desserialização insegura (CWE-502)Código roda ao restaurar dados recebidos de fora (→ desserialização insegura, em inglês)15º
Corrupção de memória (CWE-787 e outras)Software escrito em C/C++ escreve fora dos limites da memória e tem sua execução sequestrada5º (escrita fora dos limites)

As quatro primeiras são as que você tem mais chance de criar no seu próprio app. A corrupção de memória aparece sobretudo em sistemas operacionais, dispositivos de rede e bibliotecas, onde a defesa do usuário é atualizar.

Exemplos reais: produtos alcançáveis de fora são o alvo

  • Dispositivos de rede: em julho de 2024, as agências americanas CISA e FBI publicaram um alerta pedindo aos fabricantes que eliminem a injeção de comandos do SO, depois que falhas desse tipo em dispositivos de borda de rede foram exploradas como RCE sem autenticação (→ defesa de dispositivos VPN, em inglês).
  • Ferramentas de IA: o Langflow, uma ferramenta para criar agentes de IA, tinha um RCE sem autenticação no recurso de validação de código (CVE-2026-0770), que foi incluído no KEV (→ CVE-2026-0770 explicado, em inglês).
  • CMS: uma falha de inclusão de arquivos no núcleo do WordPress (CVE-2026-87902) leva a RCE quando certas condições do servidor são atendidas (→ CVE-2026-87902 explicado, em inglês).

O que eles têm em comum é que os produtos ficam onde podem ser alcançados pela internet sem autenticação. O perigo de um RCE depende não só da falha em si, mas muito de ela ser alcançável de fora.

O que verificar quando você ouve "RCE com CVSS 10.0"

1

Você usa o produto?

Use a consulta de CVE / KEV para ver o produto e as versões afetados a partir do número do CVE, e compare com as versões realmente em execução no seu ambiente. Para dependências, o osv-scanner verifica tudo de uma vez.

2

Ele é alcançável de fora?

Verifique se o recurso afetado ou a tela de administração pode ser alcançado pela internet sem autenticação. Se puder, considere tirá-lo do ar até atualizar.

3

Está sendo explorado?

Se estiver no KEV da CISA, está sendo explorado na prática. Para ler as notas, veja priorizar com CVSS, EPSS e KEV.

4

Depois de atualizar, procure sinais de invasão

Se alguém entrou antes da atualização, continua lá depois dela. Procure arquivos desconhecidos, contas novas e tráfego de saída suspeito (C2).

Fontes (primárias)

  • MITRE, "2025 CWE Top 25 Most Dangerous Software Weaknesses" (dezembro de 2025) — cwe.mitre.org (em inglês; posições de CWE-78, 94, 434, 502 e 787)
  • CISA e FBI, "Secure by Design Alert: Eliminating OS Command Injection Vulnerabilities" (10 de julho de 2024) — cisa.gov (em inglês)
  • FIRST, "CVSS v3.1 Specification Document" — first.org (em inglês; como a gravidade é pontuada)
  • CISA, "Known Exploited Vulnerabilities Catalog" — cisa.gov (em inglês)

Leia a seguir

FAQ

QComo o RCE difere de falhas comuns como XSS?
A

XSS e parecidos em geral se comportam mal dentro do navegador do usuário; o RCE roda programas arbitrários no próprio servidor. Como ele pode alcançar os privilégios, os dados e outros serviços do servidor, costuma ser a classe mais severa.

QAté onde o dano do RCE se espalha?
A

Tão longe quanto os privilégios do processo que estava em execução quando foi atacado. Rode como root ou com amplos direitos e o dano é enorme; rode como um usuário sem privilégios com isolamento por contêiner e você consegue contê-lo. Por isso o privilégio mínimo e o isolamento importam.

QComo eu (um desenvolvedor) me defendo contra RCE?
A

Além de não escrever falhas de RCE você mesmo (não passe entrada direto para a execução), a maior defesa é não negligenciar RCEs publicados nos frameworks/bibliotecas que você usa. Monitoramento de CVE e atualizações rápidas são o cerne.

QO que significa 'um RCE com CVSS 10.0'?
A

Um RCE que recebeu a nota máxima no CVSS, a escala comum de 0.0 a 10.0 para a gravidade de vulnerabilidades. Um 10.0 em geral significa que a falha pode ser explorada pela rede, sem autenticação nem interação do usuário, com alto impacto em confidencialidade, integridade e disponibilidade, e com esse impacto indo além do componente vulnerável. Se um produto que você usa for afetado, vale atualizá-lo ou tirá-lo do ar antes de qualquer outro trabalho.

QQual é a diferença entre RCE e execução de código arbitrário (ACE)?
A

Execução de código arbitrário (ACE) significa que o invasor consegue rodar qualquer código que escolher. O RCE é o subconjunto que pode ser disparado remotamente, pela rede. Quando o ataque exige, por exemplo, convencer alguém a abrir um arquivo local, pode ser execução de código arbitrário sem ser chamado de RCE.

QO que devo fazer primeiro quando um RCE é anunciado?
A

Nesta ordem: (1) confirme se você realmente usa o produto e a versão afetados, (2) verifique se ele é alcançável pela internet, (3) atualize para a versão corrigida ou, se não puder, tire-o do ar ou aplique a medida de contorno, e (4) se ele estiver no KEV da CISA, a lista de vulnerabilidades com exploração confirmada, procure também sinais de invasão. Não pare na atualização; verifique se alguém entrou antes dela.