← volver
CVE-2023-25652

"git apply --reject" partially-controlled arbitrary file write

CVSS 7.5 HIGHEPSS 52.2%CWE-22
En resumen

El comando `git apply --reject` de Git puede ser engañado para escribir archivos fuera de la carpeta del proyecto, potencialmente sobrescribiendo archivos importantes del sistema. Esto ocurre al procesar parches maliciosos, permitiendo que atacantes dañen o comprometan sistemas.

Detalle técnico

Una vulnerabilidad de traversal de ruta (CWE-22) en Git en versiones anteriores a 2.30.9 hasta 2.40.1 permite que un atacante sobrescriba archivos arbitrarios fuera del directorio de trabajo del repositorio mediante parches especialmente elaborados proporcionados a `git apply --reject`. La vulnerabilidad se desencadena durante la generación del archivo de rechazo; la explotación requiere que la víctima aplique un parche de fuente no confiable utilizando la bandera `--reject`.

Resumen generado y traducido por IA a partir de la descripción oficial.
Git is a revision control system. Prior to versions 2.30.9, 2.31.8, 2.32.7, 2.33.8, 2.34.8, 2.35.8, 2.36.6, 2.37.7, 2.38.5, 2.39.3, and 2.40.1, by feeding specially crafted input to `git apply --reject`, a path outside the working tree can be overwritten with partially controlled contents (corresponding to the rejected hunk(s) from the given patch). A fix is available in versions 2.30.9, 2.31.8, 2.32.7, 2.33.8, 2.34.8, 2.35.8, 2.36.6, 2.37.7, 2.38.5, 2.39.3, and 2.40.1. As a workaround, avoid using `git apply` with `--reject` when applying patches from an untrusted source. Use `git apply --stat` to inspect a patch before applying; avoid applying one that create a conflict where a link corresponding to the `*.rej` file exists.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Productos afectados
git · git

¿Quieres saber si tu infraestructura está expuesta a esto?

Hablar con TrueHacking →