Sono stati pubblicati aggiornamenti correttivi per i rilasci del sistema di gestione distribuito dei codici sorgente Git 2.38.1, 2.30.6, 2.31.5, 2.32.4, 2.33.5, 2.34.5, 2.35.5, 2.36.3 e 2.37.4, che risolvono due vulnerabilità che si manifestano durante l'uso del comando «git clone» in modalità «—recurse-submodules» con repository non verificati e durante l'uso della modalità interattiva di «git shell». È possibile tenere traccia degli aggiornamenti dei pacchetti nelle distribuzioni sulle pagine di Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.
- CVE-2022-39253 — la vulnerabilità consente a un attaccante, che controlla il contenuto del repository clonato, di accedere a dati riservati nel sistema dell'utente, attraverso la creazione di collegamenti simbolici ai file di interesse all'interno della directory $GIT_DIR/objects del repository clonato. Il problema si manifesta solo durante il cloning locale (in modalità «—local», utilizzata quando i dati di origine e di destinazione del cloning si trovano nella stessa partizione) o durante il cloning di un repository maligno impacchettato come sottogruppo in un altro repository (ad esempio, durante l'inclusione ricorsiva dei sottogruppi tramite il comando «git clone —recurse-submodules»).
La vulnerabilità è causata dal fatto che in modalità di clonazione «—local», git trasferisce il contenuto di $GIT_DIR/objects nella cartella di destinazione (creando collegamenti fisici o copie dei file), eseguendo la dereferenziazione dei collegamenti simbolici (cioè alla fine nella cartella di destinazione vengono copiati non i collegamenti simbolici, ma direttamente i file a cui puntano i collegamenti). Per bloccare l'emergere della vulnerabilità nelle nuove versioni di git, è vietato clonare repository in modalità «—local» contenenti collegamenti simbolici nella cartella $GIT_DIR/objects. Inoltre, il valore predefinito del parametro protocol.file.allow è stato modificato in «user», rendendo le operazioni di clonazione utilizzando il protocollo file:// non sicure.
- CVE-2022-39260 — un overflow intero nella funzione split_cmdline(), utilizzata nel comando «git shell». Il problema può essere sfruttato per attaccare gli utenti che utilizzano «git shell» come shell durante il login e hanno attivato la modalità interattiva (è stato creato il file $HOME/git-shell-commands). Sfruttare la vulnerabilità può portare all'esecuzione di codice arbitrario nel sistema passando un comando appositamente formattato, di dimensioni superiori a 2 GB.
Fonte: opennet.ru
