{"id":"CVE-2026-63476","title":"isomorphic-git: Unbounded memory allocation from attacker-controlled delta target size (DoS)","summary":"isomorphic-git is a pure JavaScript implementation of Git for Node.js and browsers. Prior to 1.38.6, isomorphic-git reads a server-controlled targetSize while applying a packfile delta in src/utils/applyDelta.js and passes it without a b…","severity":"medium","cvss":4.3,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L","cvssSource":"cna","cwe":["CWE-400","CWE-789"],"vendor":"isomorphic-git","product":"isomorphic-git","affected":["isomorphic-git < 1.38.6"],"published":"2026-11-03","updated":"2026-11-03","sourceUpdated":"2026-11-03T19:44:06.908Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-63476","references":[{"url":"https://github.com/isomorphic-git/isomorphic-git/security/advisories/GHSA-9x82-4j54-863h","label":"https://github.com/isomorphic-git/isomorphic-git/security/advisories/GHSA-9x82-4j54-863h"},{"url":"https://github.com/isomorphic-git/isomorphic-git/pull/2370","label":"https://github.com/isomorphic-git/isomorphic-git/pull/2370"},{"url":"https://github.com/isomorphic-git/isomorphic-git/commit/823843d1cd19182df79bc907c767f5bcecb39a0b","label":"https://github.com/isomorphic-git/isomorphic-git/commit/823843d1cd19182df79bc907c767f5bcecb39a0b"},{"url":"https://github.com/isomorphic-git/isomorphic-git/releases/tag/v1.38.6","label":"https://github.com/isomorphic-git/isomorphic-git/releases/tag/v1.38.6"}],"tags":["cve.org"],"epss":0.00285,"epssPercentile":0.21184,"ingestedAt":"2026-11-05T20:33:06.403Z","slug":"CVE-2026-63476","body":"## Overview\n\nisomorphic-git is a pure JavaScript implementation of Git for Node.js and browsers. Prior to 1.38.6, isomorphic-git reads a server-controlled targetSize while applying a packfile delta in src/utils/applyDelta.js and passes it without a bound to Buffer.alloc(targetSize). A malicious or man-in-the-middle-controlled remote can send one delta header that causes git.clone() or git.fetch() to allocate approximately 2 GB before validating the actual delta output. GitPackIndex.fromPack swallows the later size-mismatch error, so a host with sufficient memory may retain the resource waste without a visible failure, while containers, serverless functions, and small virtual machines may terminate. Node.js heap limits do not mitigate the off-heap Buffer allocation. This issue is fixed in version 1.38.6.\n\n## Affected\n\n- `isomorphic-git < 1.38.6`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"sunlit","depthScore":24,"depthScoreParts":{"impact":23.7,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}