Sono stati pubblicati aggiornamenti correttivi per il sistema di gestione del codice sorgente distribuito Git 2.56.1, 2.55.1, 2.54.1, 2.53.1, 2.52.1, 2.51.3 e 2.50.2, in cui sono state risolte 6 vulnerabilità. La vulnerabilità più critica (CVE-2026-111760) consente l'esecuzione di codice tramite il comando "git clone" in modalità "--recurse-submodules" con repository controllati dall'attaccante.
Il problema è causato dal fatto che la lunghezza del nome di registrazione nell'indice è calcolata utilizzando un tipo intero a 32 bit. Quando viene fornito un nome molto lungo del tipo ".git/...." si verifica un overflow e l'attaccante può ottenere una lunghezza calcolata pari a 4 byte. Di conseguenza, durante la verifica del valore vengono utilizzati i dati effettivi, mentre durante l'operazione viene utilizzata una versione troncata di ".git", permettendo all'attaccante di sostituire il file ".git" nel sottomodulo con un collegamento simbolico che punta a una directory con impostazioni e hook.
Altre vulnerabilità:
- CVE-2026-113408 — fuoriuscita dal limite della directory refs/ attraverso la trasmissione di un link simbolico come branch HEAD con valore "refs/heads/../../..../TARGET" durante il clonaggio di un repository vuoto tramite il protocollo Git v2. Durante l'operazione successiva di "git commit" verrà creato un file TARGET nella radice del repository, utilizzabile per sovrascrivere file nel repository e organizzare l'esecuzione di codice.
- CVE-2026-114467 — overflow dello stack durante la rimozione delle firme GPG, che potenzialmente può portare all'esecuzione di codice arbitrario. Il problema è causato dal fatto che la funzione remove_signature() memorizza le posizioni delle firme in un array fisso, calcolato per un massimo di due firme. Quando viene fornito un tag con tre o più firme, i dati vengono salvati al di fuori dell'array.
- CVE-2026-114469 — durante la verifica dei vincoli sulla dimensione dei patch binari, venivano considerati i dati prima della decompressione, il che portava alla lettura di contenuti al di fuori dei limiti del buffer.
- CVE-2026-105437 — danneggiamento della memoria durante l'esecuzione di grandi operazioni di fusione a causa dell'accumulo della dimensione del risultato in un campo di tipo int. Nella configurazione di GitLab, la vulnerabilità può essere sfruttata per eseguire codice (il problema è bloccato in GitLab 19.5.4).
- CVE-2026-114466 — sovrascrittura di file arbitrari nel filesystem tramite il comando "git fast-import" a causa di un'incompleta mitigazione della vulnerabilità CVE-2019-1348.
Fonte: opennet.ru
