GitHacker is a tool that restores Git repositories from exposed .git directories. In 1.1.7 and earlier, add_head_file_tasks parses an attacker-controlled ref path from .git/HEAD and joins unvalidated path segments onto temp_dst/.git/logs/, allowing a malicious server to make GitHacker read an arbitrary local file when a victim runs the tool against the server's URL. add_hashes_parsed then scans the file for 40-character hexadecimal substrings and requests each match through .git/objects using the first two characters and remaining characters as path components, creating an attacker-observable existence oracle and disclosing matching hexadecimal fragments. Complete file contents are not returned, and the add_folder and add_task write path in shipped version 1.1.7 does not permit an escape. This issue is fixed in repository version 1.1.9.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-22",
"CWE-23"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/50xxx/CVE-2026-50024.json",
"unresolved_ranges": [
{
"extracted_events": [
{
"range": [
{
"fixed": "1.1.8"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
}
]
},
{
"extracted_events": [
{
"range": [
{
"last_affected": "1.1.7"
}
],
"source": "DESCRIPTION"
}
]
}
]
}{
"extracted_events": [
{
"range": [
{
"fixed": "16fcd81a9c3dfdf39713fde360d4e8bc3acf99e7"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "5f2a8ba4d451c6a1a465893507fbc42535a9d8c8"
}
],
"source": "REFERENCES_COMMIT"
}
]
}