Back to feed
20Track

Heap-based Buffer Overflow in Git

Git · CVE-2026-105437
1 news outlets0 CERTs and agencies0 research labs

Assessment: Track

SSVC decision points: exploitation none, automatable no, technical impact total, deployment low.

What is it?

Affected versions of Git have a heap buffer overflow in the three-way merge code (xdiff), which an attacker can trigger through a repository they control. When Git merges a file, it first adds up the size of the merged output, allocates a buffer of that size, and then writes the output into it. That total was kept in a 32-bit signed integer. The conflict-marker-size attribute, which can be set from a committed .gitattributes file, accepts any positive integer, and the markers are written several times for every conflict. A small file with a huge marker size and many separate conflicts can therefore push the total past 4 GiB, so the integer wraps to a small value and Git writes attacker-controlled merge output past the end of a buffer that is too small. At minimum this crashes Git, and because the overflow is large and its contents are largely attacker-controlled, worse heap corruption is possible. Any command that does a textual three-way merge can trigger it, such as git-merge(1), git-rebase(1), git-cherry-pick(1), and git-merge-tree(1). The latter is most likely a target for Git forges, which might use git-merge-tree(1) on the server-side to check mergeability. When the server

Evidence

Official warnings1National CERTs, government cyber security agencies and the vendor’s own advisories
Other news1

Exploitation

  • Exploit code published (not verified by us)
  • Exploited in the wild (confirmed by a source)
  • Listed as known exploited (CISA KEV)
CVSS
7.5
EPSS
–
First seen
9 h ago
Status
confirmed

All Git vulnerabilities