Description
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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| pyenv | pyenv | < 2.8.0 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | pyenv | No fix yet | — |
| Debian 13 | pyenv | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | pyenv | No fix yet | — |
| Ubuntu 26.04 LTS | pyenv | No fix yet | — |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | pyenv | 2.8.4-1.1 | openSUSE-SU-2026:11613-1 |
| openSUSE Leap 16.0 | pyenv | 2.4.14-bp160.2.1 | openSUSE-SU-2026:21664-1 |
Advisories 2
- openSUSE-SU-2026:21664-1 Security update for pyenv SUSE / openSUSE Security Updates · Aug 27, 2026
- openSUSE-SU-2026:11613-1 pyenv-2.8.4-1.1 on GA media SUSE / openSUSE Security Updates · Aug 27, 2026