Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessServe crafted malicious Git repository
-
ExploitVictim service parses commit/tag objects
-
Execution_re_actor_epoch regex backtracks quadratically
-
ImpactCPU exhaustion and service denial
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V2 - Validation and Business Logic Regex complexity limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that a victim application using GitPython before 3.2.0 parse Git commit or tag objects originating from an attacker-controlled repository - specifically, the code path reaching parse_actor_and_date on author, committer, or tagger lines. The malicious trigger is a line padded with long space-filled sequences that lacks a valid epoch/timezone, driving the _re_actor_epoch regex into quadratic backtracking. The limiting factor is attacker control over repository content that the victim actually ingests: the risk is realized only where GitPython processes untrusted or remote repositories (e.g. CI pipelines, repo-hosting, mirroring, or analysis services), and is minimal where it operates solely on trusted local repositories. |
| Impact | This is a regular-expression denial-of-service (CWE-1333) flaw with a network attack vector and no authentication or user privileges required (CVSS 4.0 AV:N/AC:L/AT:N/PR:N/UI:N), but its impact is strictly availability (VA:H; VC:N/VI:N) - there is no confidentiality or integrity exposure, so despite the 8.7 'High' score this is CPU exhaustion only, not code execution or data compromise. The provided vector shows UI:N, yet exploitation realistically depends on a victim application fetching or parsing an attacker-served repository, so the true remoteness hinges on whether that parsing is automated (e.g. CI, hosting, mirroring services) versus a manual clone - verify against the actual deployment. No EPSS score, no CISA KEV listing, and no public POC were supplied, so there is no evidence of active exploitation or widespread weaponization; the signals point to a plausible but not-yet-prioritized DoS rather than an urgent threat. Treat as a service-availability hardening item: patch where GitPython processes untrusted repositories, deprioritize where it only touches trusted/local repos. |
| Exploit ScenarioDerived | An attacker publishes or serves a malicious Git repository containing commit or tag objects whose author/committer/tagger lines are padded with long runs of spaces and omit a valid epoch and timezone. When a victim service running GitPython before 3.2.0 clones or parses that repository and invokes parse_actor_and_date, the vulnerable _re_actor_epoch pattern triggers quadratic backtracking, pinning a CPU core and stalling the process. No public exploit code was identified at time of analysis, though the malicious input is trivial to craft from the description. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Regular expression denial of service in GitPython before 3.2.0 allows remote, unauthenticated attackers to exhaust CPU on applications that parse Git commit or tag objects taken from an attacker-controlled repository. The flaw is in the _re_actor_epoch pattern used by parse_actor_and_date on author, committer, and tagger lines, which slips into quadratic backtracking when those lines are padded with long space-filled sequences that lack a valid epoch or timezone. Impact is strictly availability (CVSS 4.0 VA:H with VC:N/VI:N) - there is no confidentiality or integrity exposure, so the 8.7 High score reflects CPU exhaustion only, not code execution or data compromise; no public exploit identified at time of analysis.
RemediationAI
Vendor-released patch: upgrade to GitPython 3.2.0 or later, which corrects the _re_actor_epoch pattern in parse_actor_and_date; confirm the installed version with 'pip show gitpython' or 'pip index versions gitpython' and pin the fixed release in your dependency lockfiles, since transitive dependencies commonly pull GitPython in. Details are in GHSA-m64x-33q8-m5h7 and the linked VulnCheck advisory. If an immediate upgrade is not possible, compensating controls include refusing to parse untrusted or remote repositories in the GitPython process itself and instead running object inspection in a short-lived subprocess wrapped with a hard timeout and CPU limit (ulimit -t, systemd CPUQuota, or a container CPU cap) so backtracking burns a bounded budget - the trade-off is that legitimate slow parses can be killed and must be retried or escalated. Pre-validating raw commit and tag headers before calling parse_actor_and_date, rejecting author/committer/tagger lines that exceed a modest length or that contain suspiciously long whitespace runs without a trailing numeric epoch/timezone, removes the trigger cheaply but requires a parsing shim upstream of the library and could reject malformed-but-benign history. Finally, avoid running repository ingestion with elevated privileges or on the same worker pool as latency-sensitive workloads, so a successful ReDoS degrades only a disposable parsing tier rather than a shared service.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
GitPython is a Python library that reads and manipulates Git repositories, including parsing raw commit and tag objects. Git encodes authorship metadata on lines of the form 'Name <email> <epoch> <timezone>'; the library's parse_actor_and_date routine extracts the trailing epoch and timezone using the compiled regular expression _re_actor_epoch. This regex is vulnerable to CWE-1333 (Inefficient Regular Expression Complexity): its quantifier structure creates ambiguous matching paths, so a crafted line containing a long run of spaces but no valid epoch or timezone forces the engine to explore a quadratic number of backtracking states rather than failing fast. Because the parser is invoked on author, committer, and tagger lines during ordinary object traversal, a single malformed line in a repository the victim processes is sufficient to consume disproportionate CPU time. The attack is purely a parsing-cost problem - no memory corruption, injection, or logic bypass is involved. No CPE strings were supplied in the source data, but the affected component is the PyPI package gitpython at versions before 3.2.0; the root cause class is inefficient regular expression complexity, the same family as the classic ReDoS patterns.
Know when Python gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Remotely supplied repository content with no auth triggers the regex (AV:N/AC:L/PR:N/UI:N); impact is CPU-exhaustion DoS only, so A:H with C:N/I:N and unchanged scope.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
Lifecycle Timeline
2DescriptionCVE.org
GitPython before 3.2.0 contains a regular expression denial of service vulnerability in the _re_actor_epoch pattern used by parse_actor_and_date on author, committer, and tagger lines. Attackers can serve repositories with commit or tag objects containing long space-filled lines lacking a valid epoch or timezone, causing quadratic backtracking and CPU exhaustion.
Technical POC Analysis
Evidence base: GitHub advisory GHSA-m64x-33q8-m5h7 ("Residual of GHSA-g5vv-9gxw-82hx"), including its inline PoC and unified diff.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t
BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser
pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi
The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python
BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.
Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301
In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse
Unauthenticated remote code execution affects Kestra OSS (the open-source event-driven orchestration platform) prior to
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne
EUVD-2026-101739
GHSA-f52j-wg44-2h83
NVD
CVE.org
EPSS
Exploit-DB