Ricevi DeafLetter
Una selezione settimanale di segnali, vulnerabilità e guide. Gli avvisi critici restano facoltativi.
Puoi cancellarti in ogni momento. Privacy policy.
GitLab ha rilasciato il 10 settembre 2026 patch critiche per CVE-2026-85706, una vulnerabilità di path traversal con punteggio CVSS 10.0 che consente a utenti non autenticati di leggere file arbitrari dal filesystem del server tramite la repository commits API. La criticità massima si combina con una divisione netta di esposizione: GitLab.com è già protetto, mentre oltre la metà delle Fortune 100 che usano GitLab in modalità self-managed deve agire immediatamente, affrontando downtime obbligato per le migrazioni database sui deployment single-node.
- CVE-2026-85706 ha CVSS 10.0 con vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N, il massimo della scala: attacco remoto, nessun privilegio richiesto, impatto su confidenzialità e integrità su sistemi collegati
- La vulnerabilità risiede nella repository commits API di GitLab CE/EE ed è causata da mancata confinamento del percorso e assenza di enforcement dell'autenticazione, secondo l'advisory ufficiale
- Le versioni affette sono tutte le release CE/EE dalla 18.7 alla 19.1.7, dalla 19.2.0 alla 19.2.5, e dalla 19.3.0 alla 19.3.1; le patch sono disponibili in 19.3.2, 19.2.6 e 19.1.8
- Non esistono exploit attivi confermati né PoC pubblici, ma non esistono neanche workaround pratici: l'aggiornamento è l'unica mitigazione disponibile
Il meccanismo: come funziona il path traversal nella commits API
L'advisory ufficiale di GitLab descrive il difetto con precisione chirurgica: "an unauthenticated user could have read arbitrary files from the GitLab server due to improper path confinement and missing authentication enforcement in the repository commits API". Il vettore è la repository commits API, un endpoint che normalmente serve a recuperare informazioni storiche sui commit di un progetto. La mancata sanificazione dei percorsi consente di iniettare sequenze di path traversal che sfuggono alla directory prevista, accedendo al filesystem sottostante del server.
Il CVSS vector conferma la gravità strutturale: AV:N (accesso rete), AC:L (complessità bassa), PR:N (nessun privilegio richiesto), UI:N (nessuna interazione utente), S:C (scope cambiato, impatto su componenti oltre l'entità vulnerabile), C:H e I:H (impatto alto su confidenzialità e integrità), A:N (nessun impatto sulla disponibilità). La combinazione S:C con C:H e I:H indica che il danno si estende oltre il servizio GitLab stesso, potenzialmente interessando sistemi collegati attraverso file di configurazione o credenziali estratti.
Il ricercatore s3ntago ha scoperto il difetto e lo ha riportato tramite il programma bug bounty di GitLab su HackerOne, confermando il canale di responsible disclosure come percorso strutturato della supply chain di sicurezza del vendor.
La divisione cloud/on-premise: chi è davvero a rischio
GitLab ha chiarito immediatamente la mappa dell'esposizione. L'advisory ufficiale afferma: "GitLab.com is already running the patched version. GitLab Dedicated customers do not need to take action". Questa distinzione non è amministrativa ma architetturale: i clienti cloud managed sono protetti automaticamente, i gestori di istanze self-managed devono pianificare, testare ed eseguire l'aggiornamento manualmente.
La cifra di oltre 30 milioni di utenti registrati e oltre il 50% delle Fortune 100 come clienti, riportata da BleepingComputer, dà la scala del problema. Non tutti usano self-managed, ma chi lo fa gestisce tipicamente repository contenenti codice proprietario, configurazioni di pipeline CI/CD, e spesso file di sistema con token di accesso a servizi cloud, chiavi SSH, credenziali database. Il path traversal non autenticato rimuove ogni controllo di accesso su queste risorse.
Il rilascio del 10 settembre ha incluso 18 CVE totali, secondo SecurityOnline, ma CVE-2026-85706 emerge come unica con CVSS 10.0, isolandosi per impatto e urgenza anche all'interno di un batch già denso di correzioni.
L'assenza di workaround e il costo operativo dell'aggiornamento
SecurityOnline riporta esplicitamente che non esistono workaround pratici per questa vulnerabilità di path traversal. Questo vincolo rimuove ogni opzione di mitigazione temporanea: non è possibile restringere indirizzi IP, modificare regole WAF, o disabilitare funzionalità specifiche in attesa della patch senza compromettere l'operatività della piattaforma.
Il costo dell'aggiornamento, tuttavia, non è zero. CyberSecurityNews segnala che "the update includes database migrations, meaning single-node deployments will experience downtime until migrations complete". Per team che eseguono CI/CD su infrastructure critical con finestre di manutenzione strette, questo crea una tensione operativa immediata: il rischio di esposizione va bilanciato contro il rischio di interruzione dei pipeline di produzione.
Non emergono nella documentazione ufficiale indicazioni su configurazioni mitiganti alternative oltre alla restrizione di accesso alla rete, e il dossier non quantifica quante istanze self-managed siano effettivamente esposte su Internet rispetto a quelle isolate in reti aziendali.
"These versions contain important bug and security fixes, and we strongly recommend that all self-managed GitLab installations be upgraded to one of these versions immediately" — GitLab advisory ufficiale
Cosa fare adesso
- Verificare la versione corrente dell'istanza GitLab CE/EE: se rientra nelle range 18.7-19.1.7, 19.2.0-19.2.5, o 19.3.0-19.3.1, è necessario aggiornare rispettivamente a 19.1.8, 19.2.6 o 19.3.2
- Pianificare la finestra di manutenzione considerando le migrazioni database: i deployment single-node subiranno downtime fino al completamento delle migrazioni, secondo l'advisory e il reporting di CyberSecurityNews
- Confermare lo stato di GitLab.com o GitLab Dedicated per esclusione: questi servizi gestiti sono già patchati e non richiedono azione
- Monitorare l'eventuale pubblicazione di IoC o aggiornamenti al catalogo KEV di CISA, non ancora confermati al momento della stesura
Il dilemma del patching urgente in infrastruttura DevOps
La combinazione di CVSS 10.0, assenza di workaround e necessità di downtime crea uno scenario che mette a dura prova i processi di gestione del rischio nei team DevOps. L'assenza di exploit attivi confermati e di PoC pubblici offre un margine temporale, ma la natura non autenticata della vulnerabilità significa che il primo exploit funzionante, quando apparirà, sarà immediatamente sfruttabile su scala globale senza alcuna barriera all'ingresso.
La struttura della supply chain software amplifica la posta in gioco. GitLab non è un silo: è il nodo che ospita codice sorgente, orchestrà build, gestisce secret e distribuisce artefatti. Un accesso non autorizzato al filesystem del server non è un breach locale ma un potenziale punto di ingresso per la compromissione a cascata di intere pipeline di sviluppo. L'advisory non documenta impatti su integrità dei repository o modifica dei commit, ma la lettura arbitraria di file di configurazione può fornire le credenziali per muoversi lateralmente.
Non è chiaro se GitLab abbia pubblicato indicatori di compromissione per verificare eventuali accessi non autorizzati precedenti al patching, né se la scoperta da parte di s3ntago sia avvenuta su segnalazione proattiva o in seguito a rilevazione di attività sospetta. Questi limiti lasciano aperti interrogativi sulla profondità storica dell'esposizione che i team di sicurezza dovrebbero considerare nei loro assessment post-patch.
Il 10 settembre 2026 segna comunque un punto di non ritorno per gli amministratori di istanze self-managed: la vulnerabilità è ora documentata, le patch disponibili, e l'assenza di workaround rende l'aggiornamento l'unica risposta tecnicamente valida. Ciò che resta da negoziare non è se agire, ma come conciliare l'urgenza di sicurezza con la continuità operativa di infrastrutture che molte organizzazioni non possono fermare senza costi misurabili.
Fonti
- https://www.bleepingcomputer.com/news/security/gitlab-urges-users-to-patch-max-severity-path-traversal-flaw/
- https://securityonline.info/gitlab-vulnerabilities-cve-2026-85706-cvss-10/
- https://cybersecuritynews.com/gitlab-patches-critical-flaws/
- https://www.cryptika.com/gitlab-patches-critical-flaws-enabling-arbitrary-file-read-credential-theft-and-remote-code-execution/
- https://www.cve.org/CVERecord?id=CVE-2021-22175
- https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-3-2-released/#cve-2026-85706---path-traversal-issue-in-repository-commits-api-impacts-gitlab-ceee
- https://www.bleepingcomputer.com/
- https://www.bleepingcomputer.com/tutorials/
- https://www.bleepingcomputer.com/download/
Le informazioni sono state verificate sulle fonti citate e aggiornate al momento della pubblicazione.
Fonti
Ricevi DeafLetter
Una selezione settimanale di segnali, vulnerabilità e guide. Gli avvisi critici restano facoltativi.
Puoi cancellarti in ogni momento. Privacy policy.