CVE-2026-93993: Mistral Vibe: RCE via git hooks run before trust check
HIGHPoC AVAILABLECISA: ATTENDMistral Vibe, a CLI coding agent, runs git hooks during worktree creation before it validates repository trust, so a malicious repo with a crafted post-checkout hook executes arbitrary shell commands as the user who launched Vibe. The CVSS is 8.8 and the bug is trivial to trigger once a developer opens an untrusted repository. A public PoC exists and CISA SSVC says ATTEND, but EPSS is low (0.77%, top 46%) and the CVE is not in KEV, so we have no evidence of active exploitation yet. Blast radius is moderate: the package has 462 downstream dependents and 9 other CVEs, which points to a recurring security debt. Upgrade to mistral-vibe 2.25.5 or later, and until then do not point Vibe at untrusted repositories on workstations that hold cloud, SSH or API credentials.
What is the risk?
High. The attack is network-reachable (a repo clone), low complexity, needs no privileges and one user action (opening or cloning a repo in Vibe). Impact is full compromise of confidentiality, integrity and availability for the user context. A public PoC lowers the skill barrier, while the low EPSS and absence from KEV limit near-term likelihood. Developer workstations typically hold source code, cloud credentials, SSH keys and LLM API keys, which raises the real-world impact above the base score.
How does the attack unfold?
What systems are affected?
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| Mistral AI | pip | — | No patch |
Do you use Mistral AI? You're affected.
How severe is it?
What is the attack surface?
What should I do?
1 step1) Upgrade mistral-vibe to 2.25.5 or later (pip install -U mistral-vibe) and verify the installed version across developer fleets and CI images. 2) Until patched, avoid running Vibe on untrusted or unreviewed repositories; inspect .git/hooks and any hook configuration (core.hooksPath) before use. 3) Run agent tooling in isolated containers or VMs with no long-lived credentials. 4) Detection: monitor for shell processes spawned by the vibe process or git post-checkout executions, unexpected outbound connections from developer endpoints, and new or modified hook files in cloned repos. 5) Inventory pip packages via SBOM or EDR to find affected versions. 6) Rotate credentials on any machine that opened an untrusted repo with a vulnerable version.
What does CISA's SSVC say?
Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-93993?
Mistral Vibe, a CLI coding agent, runs git hooks during worktree creation before it validates repository trust, so a malicious repo with a crafted post-checkout hook executes arbitrary shell commands as the user who launched Vibe. The CVSS is 8.8 and the bug is trivial to trigger once a developer opens an untrusted repository. A public PoC exists and CISA SSVC says ATTEND, but EPSS is low (0.77%, top 46%) and the CVE is not in KEV, so we have no evidence of active exploitation yet. Blast radius is moderate: the package has 462 downstream dependents and 9 other CVEs, which points to a recurring security debt. Upgrade to mistral-vibe 2.25.5 or later, and until then do not point Vibe at untrusted repositories on workstations that hold cloud, SSH or API credentials.
Is CVE-2026-93993 actively exploited?
Proof-of-concept exploit code is publicly available for CVE-2026-93993, increasing the risk of exploitation.
How to fix CVE-2026-93993?
1) Upgrade mistral-vibe to 2.25.5 or later (pip install -U mistral-vibe) and verify the installed version across developer fleets and CI images. 2) Until patched, avoid running Vibe on untrusted or unreviewed repositories; inspect .git/hooks and any hook configuration (core.hooksPath) before use. 3) Run agent tooling in isolated containers or VMs with no long-lived credentials. 4) Detection: monitor for shell processes spawned by the vibe process or git post-checkout executions, unexpected outbound connections from developer endpoints, and new or modified hook files in cloned repos. 5) Inventory pip packages via SBOM or EDR to find affected versions. 6) Rotate credentials on any machine that opened an untrusted repo with a vulnerable version.
What systems are affected by CVE-2026-93993?
This vulnerability affects the following AI/ML architecture patterns: agent frameworks, AI coding assistants, developer workstations, CI/CD pipelines.
What is the CVSS score for CVE-2026-93993?
CVE-2026-93993 has a CVSS v3.1 base score of 8.8 (HIGH). The EPSS exploitation probability is 0.77%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0010.001AI SoftwareAML.T0011User ExecutionAML.T0050Command and Scripting InterpreterAML.T0112.000Local AI AgentCompliance Controls Affected
What are the technical details?
Original Advisory
Mistral Vibe before 2.25.5 contains a remote code execution vulnerability in the worktree creation process that executes git hooks before trust validation. Attackers can supply a repository with a crafted post-checkout hook that executes arbitrary shell commands with the privileges of the user running Vibe.
Exploitation Scenario
An attacker publishes or contributes a repository, or a pull request branch, containing a crafted post-checkout hook that downloads and runs a reverse shell or credential stealer. A developer asks Mistral Vibe to work on that repo; Vibe creates a git worktree, which fires the hook before any trust validation. The payload runs as the developer, harvests SSH keys, cloud tokens and LLM API keys, and the attacker then uses them to push malicious commits or access cloud resources.
Weaknesses (CWE)
CWE-829 — Inclusion of Functionality from Untrusted Control Sphere: The product imports, requires, or includes executable functionality (such as a library) from a source that is outside of the intended control sphere.
- [Architecture and Design] Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid [REF-1482].
- [Architecture and Design] When the set of acceptable objects, such as filenames or URLs, is limited or known, create a mapping from a set of fixed input values (such as numeric IDs) to the actual filenames or URLs, and reject all other inputs. For example, ID 1 could map to "inbox.txt" and ID 2 could map to "profile.txt". Features such as the ESAPI AccessReferenceMap [REF-45] provide this capability.
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:HReferences
- github.com/mistralai/mistral-vibeproduct
- github.com/mistralai/mistral-vibe/blob/19b5b74faa78d0816b8d4d4c7d7543fc3520678c/vibe/core/git/repo.pytechnical-description
- github.com/mistralai/mistral-vibe/commit/c069ffa1e12fb5f2487b489217c40ab97721d553patch
- github.com/mistralai/mistral-vibe/issues/996issue-tracking
- github.com/mistralai/mistral-vibe/releases/tag/v2.25.5release-notes
- vulncheck.com/advisories/mistral-vibe-before-2.25.5-remote-code-execution-via-git-post-checkoutthird-party-advisory
Timeline
Related Vulnerabilities
GHSA-wx9m-wx4f-4cmg9.6mistralai 2.4.6: supply chain dropper executes on import
Same package: mistralaiCVE-2026-1094288.8Mistral Vibe: bash parsing bypass allows hidden commands
Same package: mistralaiCVE-2026-1094298.8Mistral Vibe: bash gate bypass allows silent RCE
Same package: mistralaiCVE-2026-676238.8Mistral Vibe: RCE via malicious git fsmonitor hook
Same package: mistralaiCVE-2026-1168438.8Mistral Vibe: RCE via git filter drivers in worktree
Same package: mistralai