Description
Dulwich from 0.22.5 before 1.2.8 contains a path traversal vulnerability in stash.py pop() that allows attackers to write arbitrary files outside the worktree through intermediate directory symlinks. Attackers can craft a malicious repository whose popped stash writes a payload into .git/hooks/post-checkout, achieving code execution on the next checkout.
Published: 2026-10-21
Score: 7.3 High
EPSS: < 1% Very Low
KEV: No
Impact: Remote Code Execution via Git Hook Injection
Action: Patch Immediately
AI Analysis

Impact

The vulnerability in Dulwich's stash.py pop() allows an attacker to construct a malicious repository that, when the stash is popped, writes files outside the normal working tree by following intermediate symlinks. This path traversal can be used to place arbitrary content such as a malicious post‑checkout hook, which executes code whenever a checkout occurs in that repository. The flaw directly undermines the confidentiality and integrity of the system where the repository is used, potentially allowing code execution on the next checkout operation.

Affected Systems

Versions of Dulwich from 0.22.5 up to but not including 1.2.8 are affected. The vulnerability applies to installations managed by the Jelmer Dulwich project. Upgrading to Dulwich 1.2.8 or later removes the flaw.

Risk and Exploitability

The CVSS score of 7.3 indicates moderate to high severity, and the EPSS score is reported as < 1%, meaning zero‑day exploitation probability is very low at present. The vulnerability is not listed in the CISA KEV catalog, which suggests it has not yet been widely exploited. Attackers who can supply a malicious repository with a stash containing symlinks that traverse outside the repository can utilise this weakness via the stash pop operation. Successful exploitation would allow an attacker to write a Git hook and achieve code execution in the environment where the repository is used.

Generated by OpenCVE AI on October 22, 2026 at 15:14 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update Dulwich to version 1.2.8 or later, which removes the path traversal in stash.pop()
  • If an update is not possible, restrict or disable the stash pop feature to prevent processing of malicious stashes
  • Validate and sanitize repository contents before executing stash operations, ensuring no file paths lead outside the intended working directory

Generated by OpenCVE AI on October 22, 2026 at 15:14 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 28 Oct 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Thu, 22 Oct 2026 14:15:00 +0000

Type Values Removed Values Added
First Time appeared Jelmer
Jelmer dulwich
Vendors & Products Jelmer
Jelmer dulwich

Thu, 22 Oct 2026 12:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-59
References
Metrics threat_severity

None

threat_severity

Important


Wed, 21 Oct 2026 00:45:00 +0000

Type Values Removed Values Added
Description Dulwich from 0.22.5 before 1.2.8 contains a path traversal vulnerability in stash.py pop() that allows attackers to write arbitrary files outside the worktree through intermediate directory symlinks. Attackers can craft a malicious repository whose popped stash writes a payload into .git/hooks/post-checkout, achieving code execution on the next checkout.
Title Dulwich 0.22.5 before 1.2.8 Path Traversal via Stash Pop Symlinks
First Time appeared Dulwich Project
Dulwich Project dulwich
Weaknesses CWE-22
CPEs cpe:2.3:a:dulwich_project:dulwich:*:*:*:*:*:*:*:*
Vendors & Products Dulwich Project
Dulwich Project dulwich
References
Metrics cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 7.3, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Dulwich Project Dulwich
Jelmer Dulwich
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-10-27T21:54:10.359Z

Reserved: 2026-10-20T21:46:55.741Z

Link: CVE-2026-114098

cve-icon Vulnrichment

Updated: 2026-10-27T21:54:04.759Z

cve-icon NVD

Status : Deferred

Published: 2026-10-21T01:17:35.263

Modified: 2026-10-27T22:17:25.090

Link: CVE-2026-114098

cve-icon Redhat

Severity : Important

Publid Date: 2026-10-21T00:37:01Z

Links: CVE-2026-114098 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T15:15:07Z

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

  • CWE-59

    Improper Link Resolution Before File Access ('Link Following')