PatchSiren

PatchSiren cyber security CVE debrief

CVE-2026-114097 jelmer CVE debrief

Dulwich's `filter_branch.py` `CommitFilter._apply_index_filter()` is vulnerable to symlink directory traversal. When processing commit history, materialized tree entries (including symlinks) persist in the working directory between commits, allowing a symlink from an ancestor commit to redirect file writes from a descendant commit to arbitrary filesystem locations.

Vendor
jelmer
Product
dulwich
CVSS
HIGH 7.3
CISA KEV
Not listed in stored evidence
Original CVE published
2026-10-02
Original CVE updated
2026-10-21
Advisory published
2026-10-02
Advisory updated
2026-10-21

Who should care

Defenders responsible for managing and processing Git repositories using dulwich should assess exposure and prioritize verification and updates to prevent potential symlink attacks.

Why it matters

The Dulwich vulnerability allows an attacker to craft a malicious repository where running `filter_branch` with an index filter writes attacker-controlled content to arbitrary filesystem locations.

  • Verify and update dulwich versions to prevent symlink attacks
  • Review and update repository processing scripts to handle recursive processing securely
  • Implement additional monitoring and logging to detect potential symlink attacks

Technical summary

The `_apply_index_filter()` function in `dulwich/filter_branch.py` materializes all tree entries to the current working directory, but only cleans up the temporary index file, not the filesystem files written to CWD. This allows symlinks from ancestor commits to persist and affect processing of descendant commits. The vulnerability allows an attacker to craft a malicious repository where running `filter_branch` with an index filter writes attacker-controlled content to arbitrary filesystem locations. Defenders should prioritize verifying and updating dulwich versions, especially in environments where repositories are processed recursively, to prevent potential symlink attacks.

Defensive priority

Defenders should prioritize verifying and updating dulwich versions, especially in environments where repositories are processed recursively, to prevent potential symlink attacks.

Recommended defensive actions

  • Verify dulwich version and update to 1.2.8 or later
  • Review and update repository processing scripts to handle recursive processing securely
  • Implement additional monitoring and logging to detect potential symlink attacks
  • Track exceptions and retest remediated assets
  • Check relevant monitoring, detection, and logs for exposed assets that need extra review
  • Review compensating controls for exposed systems while remediation is scheduled and verified
  • Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up

Evidence notes

The vulnerability is caused by the `_apply_index_filter()` function in `dulwich/filter_branch.py` not properly cleaning up materialized tree entries, allowing symlinks to persist and affect processing of descendant commits.

Sources and references

Verified primary and authoritative sources

  • CVE-2026-114097 CVE Program record

    Publisher, destination, and source semantics verified

    URL: https://www.cve.org/CVERecord?id=CVE-2026-114097

    CVE Program - Official CVE Program record with source-provided CVE metadata.

  • CVE-2026-114097 NVD vulnerability detail

    Publisher, destination, and source semantics verified

    URL: https://nvd.nist.gov/vuln/detail/CVE-2026-114097

    NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.

Supplemental references

Methodology and review provenance

AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.