GHSA-xrvj-v92f-53gj · Severity: medium · Ecosystem: pip — Dulwich has unbounded memory allocation in receive-pack from crafted thin packs
Dulwich is a pure-Python implementation of the Git file formats and protocols. Starting in version 0.1.0 and prior to version 1.2.5, a client with push access could push a tiny crafted thin pack (~174 bytes) whose delta header declares a huge dest_size. When dulwich ingested it via add_thin_pack / apply_delta, it would allocate hundreds of MB of memory based on that attacker-controlled size, with no relationship to the actual bytes received. Operators running a Dulwich-based Git server that exposes git-receive-pack (i.e. accepts pushes) - for example via dulwich.server functionality, the HTTP smart server, or anything built on ReceivePackHandler - are impacted. The issue is patched in 1.2.5. add_thin_pack now accepts a max_input_size keyword (bytes; 0/None = unlimited, matching git's semantics), and ReceivePackHandler reads receive.maxInputSize from the repository config and passes it through. Wire reads are counted and a PackInputTooLarge exception is raised once the cap is exceeded - equivalent to git index-pack --max-input-size. Users should upgrade to Dulwich 1.2.5 or later and set receive.maxInputSize in their server's repository config to a sane bound for their environment. On unpatched versions, receive.maxInputSize has no effect, so it cannot be used as a workaround. Until upgrading, operators should restrict dulwich-receive-pack (push) access to trusted, authenticated clients only, or disable it entirely on servers that only need to serve fetches and/or run the server under an OS-level memory limit (e.g. ulimit, cgroups/MemoryMax, or a container memory limit) so a malicious push is killed rather than taking down the host.
Conclusion & alert: CVE-2026-47734 is rated Low Risk (26.4/100): CVSS Medium severity, with low exploitation likelihood (EPSS 0.03%). Mandatory action: Monitor for updates and reassess as exploit intelligence or EPSS changes.
Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.
EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).
| # | Date | Old EPSS score | New EPSS score | Delta (New - Old) |
|---|---|---|---|---|
| 1 | 2026-06-11 | — | 0.03% | — |
Full EPSS history (1 record total)
CVSS metrics for this CVE.
| Base score | Version | Severity | Vector | Exploitability | Impact | Score source |
|---|---|---|---|---|---|---|
| 5.7 | 3.1 | MEDIUM |
|
2.1 | 3.6 | [email protected] |
GHSA-xrvj-v92f-53gj · Severity: medium · Ecosystem: pip — Dulwich has unbounded memory allocation in receive-pack from crafted thin packs
| vendor | priority | summary | link |
|---|---|---|---|
debian
|
not yet assigned | CVE-2026-47734 not yet assigned priority: Debian including 1 source packages (dulwich), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): open 4, resolved 1. | https://security-tracker.debian.org/tracker/CVE-2026-47734 |
redhat
|
medium | — | https://access.redhat.com/security/cve/CVE-2026-47734 |
suse
|
medium | — | https://www.suse.com/security/cve/CVE-2026-47734/ |
ubuntu
|
medium | CVE-2026-47734 medium priority: Ubuntu including 1 source packages (dulwich), 7 status rows across 7 suites (bionic, focal, jammy, noble, questing, resolute, upstream): needs-triage 6, released 1. | https://ubuntu.com/security/CVE-2026-47734 |
| Vendor | Product | Version | Raw CPE |
|---|---|---|---|
| No affected products in dataset. | |||