CVE-2026-89091
Description
A flaw was found in ansible-core. When installing a collection with `ansible-galaxy collection install`, the archive extractor validates member paths using lexical path normalisation (os.path.abspath) instead of resolving symbolic links (os.path.realpath), and it performs no containment check on symlink-typed directory members before creating them. A crafted collection tarball can chain symlink directory entries so that a subsequent file member is written outside the intended destination directory. This allows an attacker who can get a victim to install a malicious collection to overwrite arbitrary files with the privileges of the user running ansible-galaxy, leading to code execution on the control node. This is a bypass of the fix for CVE-2020-10691.
How to fix
Sources list no fixed version or patch link for this vulnerability.
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| Red Hat Red Hat Advanced Cluster Management for Kubernetes 2 | No range specified | — |
| Red Hat Red Hat Ansible Automation Platform 2 | No range specified | — |
| Red Hat Red Hat Ansible Automation Platform Ansible Core 2 | No range specified | — |
| discovery 2 | No range specified | — |
| Red Hat Red Hat Enterprise Linux 10 | No range specified | — |
| Red Hat Red Hat Enterprise Linux 8 | No range specified | — |
| Red Hat Red Hat Enterprise Linux 9 | No range specified | — |
| Red Hat Red Hat OpenShift Container Platform 4 | No range specified | — |
| Red Hat Red Hat OpenShift Container Platform 5 | No range specified | — |
| Red Hat Red Hat OpenStack Platform 17.1 | No range specified | — |
| Red Hat Red Hat Satellite 6 | No range specified | — |
| rhui 5 | No range specified | — |
| Red Hat Self-service automation portal 2 | No range specified | — |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.