Immagine illustrativa generata con AI
Allarme TeamCity: esecuzione codice remota senza credenziali mette a rischio le pipeline CI/CD
Una grave vulnerabilità in TeamCity consente l'esecuzione di codice remoto senza credenziali, mettendo a rischio le pipeline CI/CD. Ecco come risolverla.
Testo generato da intelligenza artificiale, pubblicato senza revisione umana. Trasparenza IA
Introduzione
Il 28 luglio 2026 JetBrains ha divulgato e corretto una vulnerabilità critica (CVE-2026-63077) che interessa TeamCity On-Premises, il popolare server di integrazione continua e delivery. Con un punteggio CVSS di 9.8, la falla consente a un attaccante remoto privo di credenziali di eseguire comandi arbitrari sul sistema ospitante, semplicemente raggiungendo via HTTP(S) la console di amministrazione. Al momento della pubblicazione non sono stati osservati exploit attivi in rete, ma la gravità dell’impatto richiede un intervento immediato da parte dei team DevOps e della sicurezza.
Analisi tecnica
La vulnerabilità risiede nel meccanismo di polling che gli agenti di build utilizzano per comunicare con il server TeamCity. L’endpoint coinvolto, esposto di default sulla stessa interfaccia web della console, non richiede autenticazione per elaborare determinate richieste. Un attaccante può inviare un payload malevolo costruito ad arte, sfruttando una insufficiente validazione dei dati in ingresso, per ottenere l’esecuzione di comandi a livello di sistema operativo con i privilegi del processo TeamCity.
Sebbene JetBrains non abbia diffuso dettagli tecnici completi per evitare la creazione di exploit funzionanti, il pattern ricorda le classiche vulnerabilità da deserializzazione insicura o injection di comandi nei protocolli interni. Poiché il vettore di attacco è accessibile senza alcuna autenticazione (su HTTP o HTTPS), la barriera per un aggressore è estremamente bassa: è sufficiente la connettività di rete verso la porta della console (tipicamente 8111 o 443) per compromettere l’intero server.
Impatto
Un’exploitation andata a buon fine concede a un malintenzionato il controllo totale del server TeamCity e del sistema operativo sottostante. Le conseguenze possono includere:
- Accesso completo a repository di codice sorgente, file di configurazione, credenziali archiviate (token, chiavi API, password) e segreti aziendali.
- Manomissione delle pipeline CI/CD, con possibilità di iniettare codice maligno direttamente negli artefatti di build e nei processi di deploy.
- Movimento laterale verso altri sistemi collegati, come ambienti di staging e produzione, registri di container o server di automazione.
- Furto di proprietà intellettuale e alterazione dell’integrità del software rilasciato ai clienti.
Dato che TeamCity è spesso collocato in segmenti di rete con elevati privilegi, la compromissione può innescare un effetto domino sull’intera infrastruttura DevOps.
Mitigazione
JetBrains ha reso disponibili due percorsi di correzione:
Aggiornamento immediato
Installare le versioni 2025.11.7 o 2026.1.3 di TeamCity, che risolvono la vulnerabilità a monte. Questa è la strada raccomandata per ottenere la protezione più completa.Plugin di sicurezza per ambienti legacy
Per chi non può procedere subito all’upgrade (ad esempio a causa di dipendenze o finestre di manutenzione), è stato rilasciato un patch plugin compatibile con tutte le versioni a partire dalla 2017.1. Il plugin ripara esclusivamente CVE-2026-63077 senza introdurre altre modifiche.Contromisure di rete e configurazione
- Limitare l’accesso alla console TeamCity alle sole reti fidate, ad esempio tramite firewall, VPN o reverse proxy con autenticazione aggiuntiva.
- Isolare il server TeamCity dai build agent e da altre componenti, applicando segmentazione di rete.
- Eseguire il processo con un account a privilegi minimi, su host dedicati e senza accessi amministrativi non necessari.
Queste misure riducono la superficie d’attacco ma non sostituiscono l’applicazione della patch.
FAQ
1. Quali versioni di TeamCity sono a rischio?
Tutte le versioni di TeamCity On-Premises precedenti alle release 2025.11.7 e 2026.1.3 sono vulnerabili. Le istanze Cloud sono già state aggiornate da JetBrains.
2. La vulnerabilità richiede credenziali per essere sfruttata?
No. È una falla pre-autenticazione: un attaccante può agire da remoto attraverso la porta HTTP(S) della console senza possedere alcuna credenziale valida. Ciò la rende particolarmente pericolosa per i server esposti su Internet.
3. Posso proteggermi senza installare subito l’aggiornamento?
Sì, JetBrains fornisce un security patch plugin per TeamCity 2017.1 e successivi. Tuttavia, la soluzione definitiva rimane l’upgrade alle versioni corrette. Nell’attesa, è fondamentale applicare restrizioni di rete e il principio del minimo privilegio.
Fonti
Questo articolo è una rielaborazione originale basata sulle fonti seguenti.
