Vulnerabilitățile din Git, care permit rescrierea fișierelor sau executarea propriului cod

Au fost publicate versiuni corective ale sistemului distribuit de gestionare a codului sursă Git 2.40.1, 2.39.3, 2.38.5, 2.37.7, 2.36.6, 2.35.8, 2.34.8, 2.33.8, 2.32.7, 2.31.8 și 2.30.9, care rezolvă cinci vulnerabilități. Poți urmări lansările de actualizări pentru pachete în distribuțiile Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Ca măsuri de precauție împotriva vulnerabilităților, se recomandă evitarea utilizării comenzii „git apply —reject” când lucrezi cu patch-uri externe nesigure și verificarea conținutului $GIT_DIR/config înainte de a rula comenzile „git submodule deinit”, „git config —rename-section” și „git config —remove-section” când lucrezi cu repozitorii nesigure.

Vulnerabilitatea CVE-2023-29007 permite înlocuirea setărilor în fișierul de configurație $GIT_DIR/config, care pot fi utilizate pentru a executa cod în sistem prin specificarea căilor către fișierele executabile în directivele core.pager, core.editor și core.sshCommand. Vulnerabilitatea este cauzată de o eroare logică, care permite ca valori foarte lungi ale configurației să fie procesate ca început de secțiune nouă în timpul operațiunilor de redenumire sau eliminare a secțiunii din fișierul de configurație. În practică, substituirea valorilor vulnerabile se poate realiza prin specificarea de URL-uri foarte lungi ale submodulelor, care sunt salvate în fișierul $GIT_DIR/config în timpul inițializării. Aceste URL-uri pot fi interpretate ca noi setări atunci când se încearcă eliminarea lor prin „git submodule deinit”.

Vulnerabilitatea CVE-2023-25652 permite suprascrierea conținutului fișierelor din afara arborelui de lucru atunci când este procesată comanda „git apply —reject” cu patch-uri special concepute. Atunci când se încearcă executarea unui patch malițios cu comanda „git apply”, care încearcă să scrie într-un fișier printr-un link simbolic, operațiunea va fi refuzată. În Git 2.39.1, protecția împotriva manipulării prin link-uri simbolice a fost îmbunătățită prin blocarea patch-urilor care creează link-uri simbolice și încearcă să scrie prin acestea. Esența vulnerabilității discutate este că Git nu a considerat că utilizatorul poate rula comanda „git apply —reject” pentru a scrie părțile respinse ale patch-ului ca fișiere cu extensia „.rej” și atacatorul poate folosi această oportunitate pentru a scrie conținut în orice director, în limitele permisiunilor actuale.

În plus, au fost remediate trei vulnerabilități care se manifestă doar pe platforma Windows: CVE-2023-29012 (căutarea executabilului doskey.exe în directorul de lucru al repository-ului atunci când se execută comanda „Git CMD”, ceea ce permite executarea codului personal în sistemul utilizatorului), CVE-2023-25815 (depășirea buffer-ului în timpul procesării fișierelor de localizare special concepute în gettext) și CVE-2023-29011 (posibilitatea înlocuirii fișierului connect.exe când se lucrează prin SOCKS5).

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