Alerta Crítico TeamCity JetBrains
Uma vulnerabilidade crítica de desserialização de dados não confiáveis, identificada como CVE-2026-63077, foi revelada no JetBrains TeamCity On-Premises. Esta falha permite que atacantes não autenticados executem comandos arbitrários no sistema operacional, representando um risco significativo para as organizações que utilizam esta plataforma de CI/CD. A JetBrains publicou um aviso de segurança em 27 de julho de 2026, com atualizações subsequentes após relatos de exploração ativa.
A Cybersecurity and Infrastructure Security Agency (CISA) dos EUA adicionou a CVE-2026-63077 ao seu Catálogo de Vulnerabilidades Exploradas Conhecidas (KEV) em 5 de agosto de 2026, sublinhando a gravidade e a necessidade urgente de correção. A exploração desta vulnerabilidade permite que um atacante não autenticado com acesso HTTP(S) ao servidor TeamCity ignore as verificações de autenticação e execute comandos arbitrários do sistema operacional com os privilégios do processo do servidor TeamCity. Isso pode levar ao comprometimento total dos dados do TeamCity, configurações, credenciais armazenadas e, potencialmente, a integridade dos artefatos de build e pipelines de CI/CD.
Entendendo a Vulnerabilidade
A causa raiz da CVE-2026-63077 está na forma como o TeamCity, através da biblioteca XStream, lida com a desserialização de objetos Java. A biblioteca XStream é usada para converter grafos de objetos em XML e reconstruí-los a partir de XML. Em versões vulneráveis do TeamCity, a configuração de segurança do XStream não limpa as permissões padrão existentes antes de aplicar as permissões específicas do TeamCity. Isso significa que tipos de classes amplos, como Map e Throwable, permanecem permitidos por padrão, mesmo quando o TeamCity tenta aplicar uma allowlist mais restritiva. Essas permissões amplas expõem callbacks de construção e reconstrução de objetos suficientes para que um atacante construa uma cadeia de gadgets, levando à execução de código.
A vulnerabilidade é explorada através do protocolo de polling do agente TeamCity. Um atacante pode registrar um agente falso e, em seguida, enviar XML malicioso para o endpoint de comando de erro (/app/agents/v1/commands/error). A validação da sessão do agente ocorre antes do manipulador vulnerável ser alcançado, mas a falha de desserialização acontece dentro do processamento do comando de erro, contornando a autenticação.
Impacto e Mitigação Urgente
O impacto de uma exploração bem-sucedida é severo. Um atacante pode obter controle sobre o servidor TeamCity, exfiltrar informações sensíveis, modificar o estado do servidor e comprometer a integridade de todo o processo de desenvolvimento e entrega de software. Dada a natureza do TeamCity como uma ferramenta central em pipelines de CI/CD, uma violação pode ter consequências em cascata em toda a infraestrutura de desenvolvimento de uma organização.
Recomendações Essenciais
| Ação Recomendada | Detalhes | Prioridade |
|---|---|---|
| Atualização de Servidor | Atualize para as versões 2025.11.7 ou 2026.1.3 do TeamCity On-Premises. | IMEDIATA |
| Plugin de Patch de Segurança | Se a atualização não for possível, instale o plugin de patch de segurança para TeamCity 2017.1+. | ALTA |
| Restrição de Acesso à Rede | Limite o acesso à rede dos servidores TeamCity a redes confiáveis. | ALTA |
| Privilégios Mínimos | Execute o servidor TeamCity com os privilégios mínimos de sistema operacional necessários. | ALTA |
| Segregação de Hosts | Execute o servidor TeamCity em hosts dedicados, separados dos agentes de build. | BOA PRÁTICA |
Para aqueles que não podem atualizar imediatamente, a JetBrains oferece um plugin de patch de segurança que pode ser instalado manualmente ou automaticamente (para TeamCity 2024.03 e mais recentes). É fundamental aplicar esta correção o mais rápido possível para proteger os ambientes de desenvolvimento contra esta ameaça ativa. Para mais informações sobre vulnerabilidades anteriores no JetBrains, consulte nosso artigo sobre plugins falsos que roubam chaves de IA de desenvolvedores e as três falhas críticas que entraram no KEV, incluindo o N-able N-central.