O vulnerabilitate în Git care permite execuția codului la clonarea dintr-un depozit Git malițios

Au fost publicate actualizările corective pentru sistemul distribuit de control al versiunilor Git 2.56.1, 2.55.1, 2.54.1, 2.53.1, 2.52.1, 2.51.3 și 2.50.2, în care au fost remediate 6 vulnerabilități. Cea mai periculoasă vulnerabilitate (CVE-2026-111760) permite execuția de cod prin utilizarea comenzii „git clone” în modul „—recurse-submodules” cu repozitorii controlate de atacator.

Problema este cauzată de faptul că lungimea înregistrării cu numele din index este calculată folosind un tip de integer pe 32 de biți. Atunci când se transmite un nume foarte lung de tipul „.git/…”, apare o depășire a capacității și atacatorul poate determina calcularea unei lungimi egale cu 4 octeți. Ca rezultat, la verificarea valorii se folosesc datele reale, iar în efectuarea operației versiunea trunchiată „.git”, ceea ce permite atacatorului să înlocuiască fișierul „.git” din submodul cu un link simbolic care indică un director cu setările și hook-urile.

Alte vulnerabilități:

  • CVE-2026-113408 — depășirea limitelor directorului refs/ prin transmiterea ca ramură HEAD a unui link simbolic cu valoarea „refs/heads/../../..../TARGET” la clonarea unui repozitoriu gol prin protocolul Git v2. La executarea ulterioară a „git commit” se va crea un fișier TARGET în rădăcina repozitoriului, care poate fi folosit pentru a suprascrie fișiere în repozitoriu și pentru a organiza execuția de cod.
  • CVE-2026-114467 — depășirea stivei în timpul eliminării semnăturilor GPG, ceea ce poate provoca executarea de cod arbitrar. Problema este cauzată de faptul că funcția remove_signature() stochează pozițiile semnăturilor într-un array fix, calculat pentru un maximum de două semnături. Când se transmite un tag cu trei sau mai multe semnături, datele sunt salvate în afara array-ului.
  • CVE-2026-114469 — la verificarea restricțiilor privind dimensiunea patch-urilor binare s-au luat în considerare datele înainte de decomprimarea acestora, ceea ce a dus la citirea conținutului dintr-o zonă din afara limitelor buffer-ului.
  • CVE-2026-105437 — coruperea memoriei la executarea unor operațiuni mari de fuziune din cauza acumulării dimensiunii rezultatului într-un câmp de tip int. În configurația GitLab, vulnerabilitatea poate fi exploatată pentru execuția de cod (problema este blocată în GitLab 19.5.4).
  • CVE-2026-114466 — suprascrierea fișierelor arbitrare în FS prin comanda „git fast-import” din cauza remedierii incomplete a vulnerabilității CVE-2019-1348.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster