GitLab, falla con punteggio 10 nelle regex della CI/CD ora sfruttata: aggiornate subito

La CVE-2026-97229 di GitLab, corretta il 12 ottobre 2026 con punteggio massimo CVSS 10,0, è entrata il 29 ottobre nel catalogo CISA delle vulnerabilità sfruttate. Un utente non autenticato può eseguire codice sul server GitLab inserendo un’espressione regolare costruita ad arte in una configurazione CI/CD. Secondo Shadowserver, citata da BleepingComputer, il 1° novembre erano ancora oltre 1.000 le istanze esposte su Internet senza patch.

In breve

  • Chi è colpito: GitLab CE ed EE self-managed dalla 19.2 alla 19.2.7, dalla 19.3 alla 19.3.4, dalla 19.4 alla 19.4.1; GitLab.com e Dedicated sono già aggiornati.
  • Gravità: CVSS v3.1 10,0, esecuzione di codice senza autenticazione.
  • Sfruttata: sì, catalogo CISA KEV dal 29 ottobre 2026; tentativi documentati contro Alpine Linux.
  • Cosa fare: passare a 19.4.2, 19.3.5 o 19.2.8 o successive; chi usa immagini personalizzate deve aggiornare anche Ruby.

Dove sta il bug: nel motore regex di Ruby

La falla è un overflow intero nel compilatore di espressioni regolari usato dalla CI/CD. Il codice difettoso però non è di GitLab: sta in Onigmo, il motore regex di Ruby. GitLab ha corretto la propria release applicando patch al Ruby che distribuisce nei pacchetti ufficiali; il progetto Ruby ha pubblicato il 23 ottobre le versioni 4.0.9, 3.4.12 e 3.3.13, che contengono le correzioni anche per altre tre CVE assegnate da GitLab (CVE-2026-89078, CVE-2026-93577 e CVE-2026-110264, quest’ultima corretta in GitLab 19.5.1).

La differenza conta. Alpine Linux, scrive BleepingComputer, ha subito tentativi di sfruttamento il 20 e 21 ottobre con otto crash dei processi, quattro parzialmente riusciti: aveva installato una 19.3.6 che risultava aggiornata, ma la sua immagine container personalizzata non includeva il Ruby corretto. Non trovando prove certe ma nemmeno potendo escludere l’esecuzione di codice, il progetto ha ricostruito da zero il server GitLab e reimpostato tutte le password.

RamoVersioni colpiteVersione corretta
19.419.4.0 – 19.4.119.4.2
19.319.3.0 – 19.3.419.3.5
19.219.2.0 – 19.2.719.2.8
Ruby (runtime)versioni precedenti4.0.9, 3.4.12, 3.3.13

La release del 12 ottobre corregge 24 CVE in tutto. GitLab ha pubblicato sei regole di rilevamento per le istanze self-managed, tra cui i crash dei worker Onigmo e le regex ostili inviate al linter della CI.

Non solo GitLab

CISA avverte che anche altri prodotti possono essere colpiti dallo stesso problema di Onigmo. Il progetto Ruby è esplicito: il rischio esiste per qualunque applicazione che compila regex a partire da testo controllato da un attaccante, con Regexp.new, Regexp.union, Regexp.compile o interpolando l’input in un letterale. Né Regexp.timeout né un limite alla lunghezza del pattern proteggono, perché alcuni di questi bug si attivano con pattern brevi.

Cosa fare subito

  1. Verificate la versione di GitLab e quella del Ruby incluso (servono i privilegi di amministratore sul server).
  2. Aggiornate a 19.4.2, 19.3.5, 19.2.8 o a una release successiva del vostro ramo con il gestore pacchetti (gitlab-ee o gitlab-ce, secondo l’edizione).
  3. Se usate un’immagine container o un’installazione da sorgente fatta in casa, verificate che il Ruby sia 4.0.9, 3.4.12, 3.3.13 o successivo: il numero di versione di GitLab non basta.
  4. Cercate nei log crash dei worker e richieste anomale al linter CI dal 12 ottobre in poi. In caso di dubbio, fate come Alpine: ricostruzione, rotazione di password, token, segreti CI/CD e credenziali delle integrazioni.
  5. Gli sviluppatori Ruby devono aggiornare il runtime e smettere di compilare regex da input utente.
sudo gitlab-rake gitlab:env:info
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
/opt/gitlab/embedded/bin/ruby -v
sudo apt-get update && sudo apt-get install gitlab-ee

Verifica: il file VERSION deve riportare 19.4.2, 19.3.5, 19.2.8 o una versione successiva; nelle immagini non ufficiali controllate che ruby -v mostri una release corretta.

La nostra lettura

Poco più di due settimane tra patch e sfruttamento confermato, e ancora oltre mille server esposti: per uno strumento che custodisce codice sorgente e segreti delle pipeline è un dato pesante. Il caso Alpine è la lezione utile: aggiornare GitLab senza aggiornare il Ruby su cui gira può lasciare il buco aperto. Altre allerte in https://hardwarfare.it/category/sicurezza-informatica/vulnerabilita-patch/; chi gestisce server Linux trova le novità del kernel in https://hardwarfare.it/ai-software/linux/linux-7-3-kernel-novita/.

Fonti

Immagine di copertina: Gitlab-founders.jpg di GitLab, licenza CC BY-SA 4.0, via Wikimedia Commons; elaborazione grafica HardWarfare.

Articolo redatto con il supporto di strumenti di intelligenza artificiale e verificato dalla redazione. Come usiamo l'AI · Come lavoriamo

Redazione HardWarfare
Redazione HardWarfarehttps://hardwarfare.it/chi-siamo/
La redazione di HardWarfare segue hardware PC, gaming, smartphone, sicurezza informatica e mercato tech. Ogni articolo parte da fonti primarie linkate in calce, viene verificato da un revisore diverso da chi lo scrive e si aggiorna quando i fatti cambiano. Scriveteci da Contatti per segnalazioni e correzioni.

Da non perdere

Articoli correlati

LASCIA UN COMMENTO

Scrivi il tuo commento!
Inserisci il tuo nome