Pesquisadores em cibersegurança revelaram mais uma vulnerabilidade crítica no n8n, uma plataforma popular de automação de fluxos de trabalho.
A falha permite que um atacante remoto não autenticado assuma o controle total de instâncias vulneráveis do sistema.
Identificada como CVE-2026-21858, com severidade máxima (CVSS 10.0), a vulnerabilidade foi batizada de Ni8mare pelo laboratório Cyera Research Labs. O pesquisador Dor Attias é responsável pela descoberta, comunicada em 9 de novembro de 2025.
Segundo o alerta oficial do n8n, publicado hoje, o problema está relacionado à execução de determinados workflows baseados em formulários, que permite a um invasor não autenticado acessar arquivos no servidor onde a plataforma está hospedada.
Isso pode expor informações sensíveis e viabilizar comprometimentos adicionais, dependendo da configuração do ambiente e do uso dos fluxos.
Essa é a quarta falha crítica divulgada pelo n8n nas últimas duas semanas, após as seguintes vulnerabilidades:
-
CVE-2025-68613
(CVSS 9.9): falha no controle de recursos de código dinâmico, que permitia execução remota de código por usuários autenticados (corrigida nas versões 1.120.4, 1.121.1 e 1.122.0);
-
CVE-2025-68668
, apelidada de N8scape (CVSS 9.9): bypass na sandbox, permitindo que usuários autenticados com permissão para criar ou modificar workflows executassem comandos arbitrários no host (corrigida na versão 2.0.0);
- CVE-2026-21877 (CVSS 10.0): vulnerabilidade de upload irrestrito de arquivos perigosos, possibilitando execução de código não confiável e comprometimento total da instância (corrigida na versão 1.121.3).
Diferentemente dessas, a CVE-2026-21858 não exige credenciais e explora uma confusão no cabeçalho "Content-Type" para extrair segredos sensíveis, forjar acesso de administrador e executar comandos arbitrários no servidor.
A falha afeta todas as versões do n8n até a 1.65.0, inclusive, e foi corrigida na versão 1.121.0, lançada em 18 de novembro de 2025. As versões mais recentes da plataforma são 1.123.10, 2.1.5, 2.2.4 e 2.3.0.
Detalhes técnicos obtidos pela Cyera mostram que a raiz do problema está no mecanismo de webhook e na manipulação de arquivos do n8n. Os webhooks, usados para receber dados de aplicativos e serviços quando eventos específicos ocorrem, processam a requisição por meio da função “parseRequestBody()”.
Essa função identifica o conteúdo do cabeçalho “Content-Type” e decide qual parser utilizar:
- Para "multipart/form-data" (formulários com upload de arquivo), usa parseFormData(), conhecido como “file upload parser”;
- Para os demais tipos, utiliza parseBody(), o “regular body parser”.
O file upload parser emprega a função parse() do módulo Node.js chamado formidable para decodificar o formulário. O resultado é armazenado na variável global “req.body.files” e processado pelo webhook, que roda somente quando o cabeçalho é multipart/form-data. Já o regular body parser salva os dados extraídos em “req.body”.
A vulnerabilidade ocorre quando uma função que manipula arquivos é executada sem verificar se o content-type é multipart/form-data, permitindo que um invasor sobrescreva o objeto req.body.files.
Identificou-se essa falha na função que lida com submissão de formulários (“formWebhook()”), que chama a função “copyBinaryFile()” para trabalhar com req.body.files.
Como explica Dor Attias, “a questão é que essa função é chamada sem a checagem do content-type, então controlamos todo o objeto req.body.files.
Isso significa controlar o parâmetro filepath — em vez de copiar um arquivo enviado, podemos copiar qualquer arquivo local do sistema.”
O impacto disso é que qualquer nó após o nó de formulário receberá o conteúdo do arquivo local, em vez do arquivo legítimo enviado pelo usuário.
Um cenário prático de ataque seria um site com interface de chat para consulta de produtos, onde arquivos de especificação são carregados via workflow do tipo Form.
Um invasor pode explorar a falha para ler qualquer arquivo do n8n e evoluir o ataque, conforme os passos abaixo:
1. Ler o banco de dados SQLite em “/home/node/.n8n/database.sqlite” e carregar seu conteúdo na base do conhecimento;
2. Extrair, via chat, o ID, e-mail e senha hash do administrador;
3. Ler o arquivo de configuração “/home/node/.n8n/config” para obter a chave secreta de criptografia;
4. Forjar um cookie de sessão falso com as credenciais obtidas para obter acesso de administrador, pulando a autenticação;
5. Realizar execução remota de código criando um workflow com o nó “Execute Command”.
Segundo a Cyera, “o impacto de uma instância n8n comprometida é enorme. Não é só a perda de um sistema — é entregar aos invasores as chaves de tudo: credenciais de API, tokens OAuth, conexões de banco de dados, armazenamento em nuvem — tudo centralizado em um só lugar. O n8n torna-se um ponto único de falha e uma mina de ouro para cibercriminosos.”
Diante da gravidade, recomenda-se atualizar o n8n para a versão corrigida ou superior o quanto antes, evitar expor a plataforma diretamente na internet e exigir autenticação para todos os formulários.
Como medida temporária, sugere-se restringir ou desabilitar endpoints públicos de webhook e formulário.
Publicidade
A Solyd Hunter encontra, valida e entrega os melhores profissionais de Cibersegurança, Red Team, AppSec e Pentest para sua empresa com garantia e agilidade. Clique aqui e contrate com segurança. Saiba mais...