Dulwich is a pure-Python implementation of the Git file formats and protocols. Versions starting with 0.10.0 and prior to 1.2.5 have an arbitrary file write leading to remote code execution when cloning or checking out a malicious Git repository on Windows. Dulwich's path-element validator accepted tree entries whose filenames contained bytes that Windows interprets as structural path syntax. Contributing configuration bugs made matters worse. The core.protectNTFS and core.protectHFS settings were looked up under a wrong option name and so user-set values were silently ignored, and core.protectNTFS only defaulted to true on Windows (Git upstream has defaulted it to true everywhere since CVE-2019-1353). Both have been corrected. Anyone who clones, fetches, or checks out an untrusted repository with Dulwich on Windows - either through the Dulwich CLI, porcelain.clone, or any downstream tool built on Dulwich - is impacted. POSIX clones are not directly exploitable (on POSIX \ is a literal filename byte), but a POSIX user can unknowingly propagate a malicious tree to Windows consumers via push or re-publication. This issue is fixed in Dulwich 1.2.5. Users should upgrade to 1.2.5 or later. There is no effective pre-patch workaround. On affected versions the core.protectNTFS configuration key was silently ignored, so setting it to true does not mitigate the issue. Users who cannot upgrade should avoid cloning, fetching, or checking out untrusted repositories with Dulwich on Windows. After upgrading the NTFS validator is on by default on every platform, so no additional configuration is required.
CVE-2026-42305
This high-severity CVE scores 8.8 under the CNA's CVSS (NVD's own analysis pending). EPSS exploit probability: 0.6%, top 54% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- High severity, but no confirmed exploitation yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 8.8
- EG Score
- 8.8(medium)
- EPSS
- 46.3%
- KEV
- Not listed
Published
May 28, 2026
Last Modified
June 12, 2026
Advisory Details (4)
Auto-updated Jun 11, 2026Arbitrary file write via NTFS-hostile tree entries on Windows · Advisory · jelmer/dulwich · GitHub
https://github.com/jelmer/dulwich/security/advisories/GHSA-897w-fcg9-f6xjdulwich 1.2.5
Patch available: jelmer/dulwich dulwich-1.2.5
https://github.com/jelmer/dulwich/releases/tag/dulwich-1.2.5commit 57efc4aa1581 (jelmer/dulwich)
Patch available: jelmer/dulwich dulwich-1.2.5 (contains commit 57efc4aa1581)
https://github.com/jelmer/dulwich/commit/57efc4aa1581e038915a0fd79365be53b150f4a9commit 49eb56e51aad (jelmer/dulwich)
Patch available: jelmer/dulwich dulwich-1.2.5 (contains commit 49eb56e51aad)
https://github.com/jelmer/dulwich/commit/49eb56e51aad637fc23d54bf2a08cb42739b8290Vendor Advisories for CVE-2026-42305(1)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
Affected Packages
(1 across 1 ecosystem)
PyPI(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| dulwich | 0.10.0 ... 1.2.4 (133 versions) | 1.2.5 | — |
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 10× in last 7d / 57× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-07-16 02:25 UTCEG score recompute
- 2026-07-15 16:57 UTCEPSS rescore
- 2026-07-15 02:00 UTCEPSS rescore
- 2026-07-14 17:35 UTCEG score recompute
- 2026-07-13 22:30 UTCEPSS rescore
- 2026-07-13 06:13 UTCEPSS rescore
- 2026-07-12 05:46 UTCEPSS rescore
- 2026-07-11 18:33 UTCEG score recompute
- 2026-07-11 08:27 UTCEPSS rescore
- 2026-07-09 19:10 UTCEPSS rescore
- 2026-07-08 17:35 UTCEG score recompute
- 2026-07-08 15:15 UTCEPSS rescore
- 2026-07-07 13:46 UTCEPSS rescore
- 2026-07-06 16:27 UTCEPSS rescore
- 2026-07-06 16:27 UTCEPSS rescore
- 2026-07-06 02:23 UTCEPSS rescore
- 2026-07-06 02:23 UTCEPSS rescore
- 2026-07-05 02:30 UTCEPSS rescore
- 2026-07-04 06:31 UTCEPSS rescore
- 2026-07-02 21:40 UTCEG score recompute
- 2026-07-02 05:00 UTCEG score recompute
- 2026-07-01 15:06 UTCEPSS rescore
- 2026-07-01 14:59 UTCEG score recompute
- 2026-07-01 01:54 UTCEG score recompute
- 2026-06-30 23:22 UTCEPSS rescore
Show 67 moreShow fewer
- 2026-06-30 02:29 UTCEG score recompute
- 2026-06-29 14:06 UTCEPSS rescore
- 2026-06-29 13:24 UTCEG score recompute
- 2026-06-28 20:47 UTCEG score recompute
- 2026-06-28 14:07 UTCEPSS rescore
- 2026-06-28 07:40 UTCEG score recompute
- 2026-06-28 04:56 UTCEPSS rescore
- 2026-06-27 18:35 UTCEG score recompute
- 2026-06-27 05:30 UTCEG score recompute
- 2026-06-27 03:08 UTCEPSS rescore
- 2026-06-26 16:25 UTCEG score recompute
- 2026-06-25 20:18 UTCEG score recompute
- 2026-06-25 13:49 UTCEPSS rescore
- 2026-06-25 13:49 UTCEPSS rescore
- 2026-06-25 07:13 UTCEG score recompute
- 2026-06-24 15:46 UTCEG score recompute
- 2026-06-24 14:05 UTCEPSS rescore
- 2026-06-23 21:33 UTCEPSS rescore
- 2026-06-22 14:25 UTCEPSS rescore
- 2026-06-22 14:25 UTCEPSS rescore
- 2026-06-21 14:56 UTCEPSS rescore
- 2026-06-21 14:56 UTCEPSS rescore
- 2026-06-21 01:59 UTCEPSS rescore
- 2026-06-19 19:25 UTCEPSS rescore
- 2026-06-18 22:50 UTCEG score recompute
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-18 01:43 UTCEG score recompute
- 2026-06-17 17:53 UTCEPSS rescore
- 2026-06-17 12:36 UTCEG score recompute
- 2026-06-16 23:31 UTCEG score recompute
- 2026-06-16 17:52 UTCEPSS rescore
- 2026-06-16 10:26 UTCEG score recompute
- 2026-06-15 21:21 UTCEG score recompute
- 2026-06-15 17:49 UTCEPSS rescore
- 2026-06-15 07:42 UTCEG score recompute
- 2026-06-14 18:34 UTCEG score recompute
- 2026-06-14 05:29 UTCEG score recompute
- 2026-06-13 23:00 UTCEPSS rescore
- 2026-06-13 16:24 UTCEG score recompute
- 2026-06-13 03:12 UTCEG score recompute
- 2026-06-12 23:12 UTCEPSS rescore
- 2026-06-12 23:12 UTCEPSS rescore
- 2026-06-12 14:06 UTCEG score recompute
- 2026-06-12 01:02 UTCEG score recompute
- 2026-06-11 14:00 UTCEPSS rescore
- 2026-06-11 11:58 UTCEG score recompute
- 2026-06-10 22:53 UTCEG score recompute
- 2026-06-10 09:48 UTCEG score recompute
- 2026-06-09 20:43 UTCEG score recompute
- 2026-06-09 07:37 UTCEG score recompute
- 2026-06-08 18:31 UTCEG score recompute
- 2026-06-08 02:55 UTCEG score recompute
- 2026-06-07 13:51 UTCEG score recompute
- 2026-06-07 00:47 UTCEG score recompute
- 2026-06-06 11:42 UTCEG score recompute
- 2026-06-05 22:38 UTCEG score recompute
- 2026-06-05 09:33 UTCEG score recompute
- 2026-06-04 20:28 UTCEG score recompute
- 2026-06-04 07:23 UTCEG score recompute
- 2026-06-03 18:18 UTCEG score recompute
- 2026-06-03 05:13 UTCEG score recompute
- 2026-06-02 16:08 UTCEG score recompute
- 2026-06-02 03:03 UTCEG score recompute
- 2026-06-01 13:58 UTCEG score recompute
- 2026-06-01 00:53 UTCEG score recompute
- 2026-05-28 23:06 UTCEG score recompute
Related CVEs(same CWE)
Frequently asked(5)
What is CVE-2026-42305?
When was CVE-2026-42305 disclosed?
Is CVE-2026-42305 actively exploited?
What is the CVSS score of CVE-2026-42305?
How do I remediate CVE-2026-42305?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-42305
Is Your Infrastructure Affected by CVE-2026-42305?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.