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-33067 — Modelo Nuclei para detetar CVE-2026-33017, uma vulnerabilidade de execução remota de código não autenticada no Langflow ≤ 1.8.2. Realiza pré-verificações não destrutivas para distinguir builds vulneráveis de corrigidas através da análise de respostas HTTP. | Kitploit
Ferramentas/GitHubGitHub/lopseg/cve-2026-33067
ReconhecimentoScanners de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoRed Teaming
GitHublopseg/cve-2026-33067

cve-2026-33067

Modelo Nuclei para detetar CVE-2026-33017, uma vulnerabilidade de execução remota de código não autenticada no Langflow ≤ 1.8.2. Realiza pré-verificações não destrutivas para distinguir builds vulneráveis de corrigidas através da análise de respostas HTTP.

Ver Repositório
2há 4 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 — Template Nuclei para RCE não autenticado no Langflow

Severity CVSS CWE

Template Nuclei que detecta CVE-2026-33017 — uma vulnerabilidade de execução remota de código não autenticada no Langflow ≤ 1.8.2 acessível através do endpoint público de construção de fluxo:

root@kitploit:~
POST /api/v1/build_public_tmp/{flow_id}/flow

O manipulador vulnerável aceita um grafo de fluxo data controlado pelo atacante e passa data.nodes[].data.node.template.code.value diretamente para exec() do Python durante a construção do grafo, sem sandboxing. A correção (≥ 1.9.0) remove o parâmetro data da assinatura do manipulador, então uma versão corrigida rejeita a mesma requisição na camada de validação do FastAPI com HTTP 422.


Como o template decide

O template é não destrutivo. Ele envia um payload inerte contra um ID de fluxo zero-UUID, portanto não pode alcançar exec() mesmo em um host vulnerável. Ele distingue o manipulador vulnerável do corrigido apenas pela assinatura da resposta HTTP.

EtapaRequisiçãoO que informa
1GET /api/v1/version

Roteamento para a etapa 2:

Uma confirmação real de RCE ainda requer (a) um UUID de fluxo PÚBLICO real no alvo e (b) um callback fora de banda (DNS/HTTP). Essa etapa não está incluída aqui de propósito — este template é a pré-verificação segura que decide se vale a pena executar um exploit ativo.


Uso

Host único:

root@kitploit:~
nuclei -t CVE-2026-33017.yaml -u https://target.example.com

Escaneamento em lote a partir de uma lista:

root@kitploit:~
nuclei -t CVE-2026-33017.yaml -l targets.txt -rl 20 -c 10

Com saída de depuração (veja as requisições/respostas brutas):

root@kitploit:~
nuclei -t CVE-2026-33017.yaml -u https://target.example.com -debug-req -debug-resp

Valide o template localmente antes de executá-lo:

root@kitploit:~
nuclei -validate -t CVE-2026-33017.yaml

Exemplo de saída

Alvo vulnerável:

root@kitploit:~
[CVE-2026-33017] [http] [critical] https://target.example.com [vulnerable-flow-not-found] ["1.8.2","base"]

Alvo corrigido — nenhum achado emitido (resposta 422 não corresponde a nenhuma regra).


Encontrando candidatos

Consultas comuns de descoberta para hosts Langflow (use apenas contra ativos que você está autorizado a testar):

  • Shodan: http.title:"Langflow"
  • FOFA: app="Langflow"
  • Google: intitle:"Langflow" inurl:"/flows"

Detalhes da vulnerabilidade

  • CVE: CVE-2026-33017
  • CWE: CWE-94 (Controle Inadequado da Geração de Código)
  • CVSS 3.1: 9.3 — AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Afetado: Langflow ≤ 1.8.2
  • Corrigido em: Langflow ≥ 1.9.0
  • Vetor: Rede, não autenticado, sem interação do usuário
  • Impacto: Execução remota de código como o usuário do processo Langflow

Causa raiz (resumida)

Em builds vulneráveis, o manipulador público é declarado aproximadamente como:

root@kitploit:~
@router.post("/build_public_tmp/{flow_id}/flow")
async def build_public_flow(flow_id: UUID, data: FlowDataRequest | None = None, ...):
    ...
    await verify_public_flow_and_get_user(flow_id, ...)
    ...
    # data.nodes[].data.node.template.code.value reaches exec() in the
    # Component build path

data é controlado pelo atacante. O manipulador corrigido remove o parâmetro completamente e força data=None, por isso uma requisição que inclui um campo data no corpo é rejeitada com 422 em builds corrigidos.


Remediação

  1. Atualize o Langflow para ≥ 1.9.0.
  2. Se não puder atualizar imediatamente, bloqueie /api/v1/build_public_tmp/ no proxy reverso.
  3. Defina LANGFLOW_AUTO_LOGIN=False, configure credenciais de superusuário e rotacione LANGFLOW_SECRET_KEY.
  4. Audite fluxos existentes — fluxos access_type=PUBLIC são aqueles que um atacante visaria na URL.

Referências

  • Aviso do GitHub: https://github.com/advisories/GHSA-vwmf-pq79-vjvx
  • Artigo da SonicWall: https://www.sonicwall.com/pt-br/blog/langflow-ai-code-injection-to-rce-flaw
  • Código fonte do manipulador corrigido: https://github.com/langflow-ai/langflow/blob/main/src/backend/base/langflow/api/v1/chat.py

Legal e divulgação

Este template é publicado apenas para segurança defensiva e testes autorizados. Executá-lo contra sistemas que você não possui ou para os quais não tem permissão explícita por escrito para testar é ilegal na maioria das jurisdições e viola os termos de serviço da plataforma.

Ao usar este template, você concorda que:

  • Você apenas escaneará ativos que possui ou está explicitamente autorizado a testar (escopo de bug bounty, contrato de pentest assinado, inventário de ativos interno).
  • O autor não é responsável pelo uso indevido.
  • O template é fornecido como está, sem garantia.

Autor

lopseg — https://github.com/lopseg

Pull requests e issues são bem-vindos.

Licença

MIT

Baixar ferramenta
Confirma que o alvo é Langflow e extrai a versão da build.
2POST /api/v1/build_public_tmp/00000000-0000-0000-0000-000000000000/flow com um corpo contendo o campo data e um template.code.value inerteDecisão de roteamento abaixo.
StatusCorpo contémVeredito
404flow / publicVULNERÁVEL — manipulador aceitou data, a busca falhou porque o UUID é falso.
200job_id / build / taskVULNERÁVEL — manipulador aceitou data e entrou no caminho de construção.
5xxexec / Component / tracebackVULNERÁVEL — manipulador alcançou o caminho de código exec antes de falhar.
422Field required / extra / dataCORRIGIDO — a assinatura do manipulador não aceita mais data.