CVE-2026-97209 json
Insecure temporary file in mix deps.partition lets a local user execute code in another user's dependency build
published 13d ago modified 12d ago also EUVD-2026-113759 , GHSA-96q6-xhwp-fc8q
Unreviewed: the maintainers' own advisory
Published by the maintainers on their GitHub repository elixir-lang/elixir. GitHub has not reviewed it into the GitHub Advisory Database, so the affected packages and versions are the maintainers' word. Read the full advisory on GitHub.
- cvss
- 5.4
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.1%
- EPSS 0.1% chance of exploitation in 30 days, percentile 1%
- public exploits
- 0
- none known
Summary
Insecure Temporary File vulnerability in Mix deps.partition in Elixir allows a local user to execute code as another user via a swapped partition config file. Partitioned dependency compilation passes the project configuration to each partition VM through a file in a fixed-name directory under the shared system temporary directory, and the partition trusts what it reads back. Another local user on the same host can exploit this during a mix deps.compile run that uses partitioned compilation.
Mix.Tasks.Deps.Partition.server/4 in lib/mix/lib/mix/tasks/deps.partition.ex creates the directory with File.mkdir_p/1, which accepts an existing directory without checking its owner, so a user who created it first can replace the file before client/0 reads it.
This issue affects mix: from 1.20.0-rc.4 before 1.20.5.
Patch / fix
- elixir-lang elixir 1.20.5
Is CVE-2026-97209 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-97209 updated cvss 7.0
elixir: elixir: Arbitrary code execution via insecure temporary file handling in Mix
-
Red Hat All currently supported Red Hat productsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 12d ago
Exploit prediction
0.12% chance of exploitation in the next 30 days, higher than 1% of all scored CVEs (FIRST EPSS, 2026-11-11).
Exploits and checks
- github.com https://github.com/elixir-lang/elixir/security/advisories/GHSA-96q6-xhwp-fc8q referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 5.4 | CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N |
| CNA | 4.0 | 5.4 | CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected products
- elixir-lang elixir
Classification
- Weakness
-
- CWE-377 DEPRECATED: Insecure Temporary File
References
-
github.com
/elixir-lang/elixir/commit/7f3d95b60c28ae3026a5c1bf943166391245bfd1
related
-
github.com
/elixir-lang/elixir/commit/55eb91220a1de14dc5aa27029d1f45b0f5832b2d
patch
-
github.com
/elixir-lang/elixir/commit/9adbe955c8664f4be77d879dd38c003dd39fa777
patch
-
github.com
/elixir-lang/elixir/security/advisories/GHSA-96q6-xhwp-fc8q
vendor-advisory, related, exploit, advisory
-
cna.erlef.org
/cves/CVE-2026-97209.html
related
-
osv.dev
/vulnerability/EEF-CVE-2026-97209
related
Sources
- CVE List CVE-2026-97209
- NVD CVE-2026-97209
- Maintainer advisory GHSA-96q6-xhwp-fc8q
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of elixir-lang/elixir published their own advisory on GitHub. Reviewed sources take precedence over it.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.