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.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/25xxx/CVE-2023-25652.json",
"cwe_ids": [
"CWE-22"
],
"cna_assigner": "GitHub_M"
}{
"source": [
"CPE_RANGE",
"CPE_STRING",
"REFERENCES"
],
"cpe": [
"cpe:2.3:a:git-scm:git:*:*:*:*:*:*:*:*",
"cpe:2.3:a:git-scm:git:2.40.0:*:*:*:*:*:*:*"
],
"extracted_events": [
{
"introduced": "0"
},
{
"fixed": "2.30.9"
},
{
"last_affected": "2.40.0"
},
{
"introduced": "2.31.0"
},
{
"fixed": "2.31.8"
},
{
"introduced": "2.32.0"
},
{
"fixed": "2.32.7"
},
{
"introduced": "2.33.0"
},
{
"fixed": "2.33.8"
},
{
"introduced": "2.34.0"
},
{
"fixed": "2.34.8"
},
{
"introduced": "2.35.0"
},
{
"fixed": "2.35.8"
},
{
"introduced": "2.36.0"
},
{
"fixed": "2.36.6"
},
{
"introduced": "2.37.0"
},
{
"fixed": "2.37.7"
},
{
"introduced": "2.38.0"
},
{
"fixed": "2.38.5"
},
{
"introduced": "2.39.0"
},
{
"fixed": "2.39.3"
}
]
}