๐Ÿ” CVE Alert

CVE-2026-105437

HIGH 7.5

Heap-based Buffer Overflow in Git

CVSS Score
7.5
EPSS Score
0.0%
EPSS Percentile
0th

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 reads attributes from trees in the repository (for example through attr.tree or --attr-source), any user who can push branches and request that they be merged (for example by opening a pull or merge request) can trigger the overflow without anyone else doing anything, and the data they push is small because the oversized output only appears during the merge. The problem has been patched by computing the size as size_t and checking every addition for overflow, so Git stops with an error instead of overflowing. Servers that cannot upgrade right away can add * conflict-marker-size=7 to each repository's info/attributes as a workaround, which overrides any in-tree .gitattributes, or turn off server-side mergeability checks for untrusted repositories.

CWE CWE-122
Vendor git
Product git
Published Nov 10, 2026
Stay Ahead of the Next One

Get instant alerts for git git

Be the first to know when new high vulnerabilities affecting git git are published โ€” delivered to Slack, Telegram or Discord.

Get Free Alerts โ†’ Free ยท No credit card ยท 60 sec setup

CVSS v3 Breakdown

CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Affected Versions

Git / Git
0 < 2.49.1 2.50.0-rc0 < 2.50.2 2.51.0-rc0 < 2.51.3 2.52.0-rc0 < 2.52.1 2.53.0-rc0 < 2.53.1 2.54.0-rc0 < 2.54.1 2.55.0-rc0 < 2.55.1 2.56.0-rc0 < 2.56.1

References

NVD โ†— CVE.org โ†— EPSS Data โ†—
gitlab.com: https://gitlab.com/gitlab-org/git/-/work_items/814 gitlab.com: https://gitlab.com/gitlab-org/gitlab/-/work_items/632121 hackerone.com: https://hackerone.com/reports/4044249

Credits

Thanks [taise](https://hackerone.com/taise) for reporting this vulnerability through HackerOne