Vulnerabilitats a Git que us permeten sobreescriure fitxers o executar el vostre propi codi

Versions correctives del sistema de control de font distribuït 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 s'han publicat .XNUMX, en el qual s'han eliminat cinc vulnerabilitats. Podeu fer un seguiment del llançament de les actualitzacions de paquets a les distribucions a les pàgines de Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Com a solucions alternatives per protegir-se de les vulnerabilitats, es recomana evitar executar l'ordre "git apply --reject" quan es treballa amb pedaços externs no provats i comprovar el contingut de $GIT_DIR/config abans d'executar el "git submòdul deinit", "git". config --rename-section" i "git config --remove-section" quan es treballa amb repositoris no fiables.

La vulnerabilitat CVE-2023-29007 permet la substitució de la configuració al fitxer de configuració $GIT_DIR/config, que es pot utilitzar per executar codi al sistema especificant camins als fitxers executables a les directives core.pager, core.editor i core.sshCommand. . La vulnerabilitat es deu a un error de lògica que podria fer que els valors de configuració molt llargs es tractin com l'inici d'una nova secció quan es realitzen operacions de canvi de nom o eliminació d'una secció d'un fitxer de configuració. A la pràctica, la substitució de valors que exploten la vulnerabilitat es pot aconseguir especificant URL molt llargs de submòduls, que es guarden al fitxer $GIT_DIR/config durant la inicialització. Aquests URL es poden interpretar com una configuració nova quan s'intenta eliminar-los mitjançant "git submodule deinit".

La vulnerabilitat CVE-2023-25652 permet sobreescriure el contingut dels fitxers fora de l'arbre de treball quan es processen pedaços dissenyats especialment amb l'ordre "git apply –reject". Si intenteu executar un pedaç maliciós amb l'ordre "git apply" que intenta escriure en un fitxer mitjançant un enllaç simbòlic, l'operació serà rebutjada. A Git 2.39.1, la protecció contra la manipulació d'enllaços simbòlics s'ha ampliat per bloquejar els pedaços que creen enllaços simbòlics i intenten escriure'ls. L'essència de la vulnerabilitat en qüestió és que Git no va tenir en compte que l'usuari pot executar l'ordre "git apply -reject" per escriure parts rebutjades del pedaç com a fitxers amb l'extensió ".rej", i l'atacant pot utilitzar aquesta característica per escriure el contingut en un directori arbitrari, sempre que els drets d'accés actuals ho permetin.

A més, s'han corregit tres vulnerabilitats que només apareixen a la plataforma Windows: CVE-2023-29012 (cerqueu l'executable doskey.exe al directori de treball del repositori en executar l'ordre “Git CMD”, que permet organitzar el execució del vostre codi al sistema de l'usuari), CVE-2023 -25815 (desbordament de memòria intermèdia quan es processen fitxers de localització amb format especial a gettext) i CVE-2023-29011 (possibilitat de falsificar el fitxer connect.exe quan es treballa amb SOCKS5).

Font: opennet.ru

Afegeix comentari