---
id: CVE-2026-68939
title: Pyenv provides simple Python version management
summary: >-
  Pyenv provides simple Python version management. Prior to 2.8.0,
  is_version_safe() in libexec/pyenv-version-file-read accepts shell glob
  metacharacters in .python-version values, and unquoted PYENV_VERSION expansion
  in libexec/pyenv-vers…
severity: none
cwe:
  - CWE-78
  - CWE-88
  - CWE-155
published: '2026-08-18'
updated: '2026-09-18'
sourceUpdated: '2026-09-18T20:05:53.723'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-68939'
references:
  - url: >-
      https://github.com/pyenv/pyenv/commit/95df7dbc7b34595b47c9b922de198547effda819
    label: security-advisories@github.com
  - url: 'https://github.com/pyenv/pyenv/releases/tag/v2.8.0'
    label: security-advisories@github.com
  - url: 'https://github.com/pyenv/pyenv/security/advisories/GHSA-g478-f579-9vp9'
    label: security-advisories@github.com
  - url: 'https://github.com/pyenv/pyenv/security/advisories/GHSA-g478-f579-9vp9'
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
tags:
  - nvd
epss: 0.00173
epssPercentile: 0.05943
ingestedAt: '2026-09-18T20:51:25.629Z'
---

## Overview

Pyenv provides simple Python version management. Prior to 2.8.0, is_version_safe() in libexec/pyenv-version-file-read accepts shell glob metacharacters in .python-version values, and unquoted PYENV_VERSION expansion in libexec/pyenv-version-name, libexec/pyenv-which, libexec/pyenv-prefix, libexec/pyenv-local, libexec/pyenv-global, libexec/pyenv-version, and libexec/pyenv-versions pathname-expands the value against the current directory, allowing a matching attacker-controlled file to silently select a different installed interpreter or version. This issue is fixed in version 2.8.0.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
