---
id: CVE-2026-50024
title: >-
  GitHacker is a tool that restores Git repositories from exposed .git
  directories
summary: >-
  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…
severity: medium
cvss: 5.3
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N'
cwe:
  - CWE-22
  - CWE-23
vendor: WangYihang
product: GitHacker
affected:
  - GitHacker < 1.1.8
patched:
  - githacker 1.1.8
published: '2026-09-15'
updated: '2026-09-16'
sourceUpdated: '2026-09-16T16:17:08.120'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-50024'
references:
  - url: >-
      https://github.com/WangYihang/GitHacker/commit/16fcd81a9c3dfdf39713fde360d4e8bc3acf99e7
    label: security-advisories@github.com
  - url: >-
      https://github.com/WangYihang/GitHacker/commit/5f2a8ba4d451c6a1a465893507fbc42535a9d8c8
    label: security-advisories@github.com
  - url: 'https://github.com/WangYihang/GitHacker/pull/65'
    label: security-advisories@github.com
  - url: >-
      https://github.com/WangYihang/GitHacker/security/advisories/GHSA-hr3m-4qwq-3mgc
    label: security-advisories@github.com
  - url: 'https://github.com/WangYihang/GitHacker/commit/5f2a8ba'
  - url: 'https://github.com/WangYihang/GitHacker'
  - url: 'https://pypi.org/project/githacker'
  - url: 'https://github.com/advisories/GHSA-hr3m-4qwq-3mgc'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-50024'
tags:
  - nvd
  - cve.org
  - osv
  - pip
  - ghsa
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-09-16T15:48:04.770569Z'
aliases:
  - GHSA-hr3m-4qwq-3mgc
  - PYSEC-2026-3835
ecosystem: pip
ingestedAt: '2026-09-09T18:17:58.314Z'
epss: 0.00451
epssPercentile: 0.36583
---

## Overview

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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-50024)

Affected packages:

- `githacker < 1.1.8`

Patched in:

- `githacker 1.1.8`

Source: https://osv.dev/vulnerability/GHSA-hr3m-4qwq-3mgc
