Path escape via symlinks in ansible-core collection installs
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and Red Hat.
Summary
The ansible-galaxy collection install command in ansible-core checks archive member paths lexically, not by resolving symbolic links, and skips containment checks on symlink directories (CWE-59). A crafted tarball can chain symlink entries so a later file is written outside the destination. An attacker who gets a victim to install a malicious collection can overwrite arbitrary files and run code on the control node. This bypasses the fix for CVE-2020-10691.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
Description from the CNA
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Red Hat | Migration Toolkit for Applications 8 | — | — | Not affected | CNA |
| Red Hat | Migration Toolkit for Virtualization | — | — | Not affected | CNA |
| Red Hat | OpenShift Service Mesh 3 | — | — | Not affected | CNA |
| Red Hat | Red Hat Advanced Cluster Management for Kubernetes 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Advanced Cluster Management for Kubernetes 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | Not affected | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform Ansible Core 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform Ansible Core 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform Ansible Core 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Ansible Automation Platform Ansible Core 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Certification Program for Red Hat Enterprise Linux 9 | — | — | Not affected | CNA |
| Red Hat | Red Hat Discovery 2 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Enterprise Linux 10 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Enterprise Linux 8 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Enterprise Linux 9 | — | — | No fix listed | CNA |
| Red Hat | Red Hat OpenShift Container Platform 4 | — | — | No fix listed | CNA |
| Red Hat | Red Hat OpenShift Container Platform 5 | — | — | No fix listed | CNA |
| Red Hat | Red Hat OpenStack Platform 17.1 | — | — | No fix listed | CNA |
| Red Hat | Red Hat OpenStack Platform 18.0 | — | — | Not affected | CNA |
| Red Hat | Red Hat Satellite 6 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Update Infrastructure 5 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Update Infrastructure 5 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Update Infrastructure 5 | — | — | No fix listed | CNA |
| Red Hat | Red Hat Update Infrastructure 5 | — | — | No fix listed | CNA |
| Red Hat | Self-service automation portal 2 | — | — | No fix listed | CNA |
- Migration Toolkit for Applications 8 VendorRed Hat Affected — Fixed in — Not affected CNA
- Migration Toolkit for Virtualization VendorRed Hat Affected — Fixed in — Not affected CNA
- OpenShift Service Mesh 3 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Advanced Cluster Management for Kubernetes 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Advanced Cluster Management for Kubernetes 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform Ansible Core 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform Ansible Core 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform Ansible Core 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Ansible Automation Platform Ansible Core 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Certification Program for Red Hat Enterprise Linux 9 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Discovery 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Enterprise Linux 10 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Enterprise Linux 8 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Enterprise Linux 9 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat OpenShift Container Platform 4 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat OpenShift Container Platform 5 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat OpenStack Platform 17.1 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat OpenStack Platform 18.0 VendorRed Hat Affected — Fixed in — Not affected CNA
- Red Hat Satellite 6 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Update Infrastructure 5 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Update Infrastructure 5 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Update Infrastructure 5 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Red Hat Update Infrastructure 5 VendorRed Hat Affected — Fixed in — No fix listed CNA
- Self-service automation portal 2 VendorRed Hat Affected — Fixed in — No fix listed CNA
CPE names CNA · 18
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:/a:redhat:migration_toolkit_applications:8 | 8 | — | Red Hat |
| cpe:/a:redhat:migration_toolkit_virtualization:2 | 2 | — | Red Hat |
| cpe:/a:redhat:service_mesh:3 | 3 | — | Red Hat |
| cpe:/a:redhat:acm:2 | 2 | — | Red Hat |
| cpe:/a:redhat:ansible_automation_platform:2 | 2 | — | Red Hat |
| cpe:/a:redhat:ansible_core:2 | 2 | — | Red Hat |
| cpe:/a:redhat:certifications:9 | 9 | — | Red Hat |
| cpe:/a:redhat:discovery:2::el8 | 2 | — | Red Hat |
| cpe:/a:redhat:enterprise_linux:10 | 10 | — | Red Hat |
| cpe:/a:redhat:enterprise_linux:8 | 8 | — | Red Hat |
- cpe:/a:redhat:migration_toolkit_applications:8 Versions 8 — ·Red Hat
- cpe:/a:redhat:migration_toolkit_virtualization:2 Versions 2 — ·Red Hat
- cpe:/a:redhat:service_mesh:3 Versions 3 — ·Red Hat
- cpe:/a:redhat:acm:2 Versions 2 — ·Red Hat
- cpe:/a:redhat:ansible_automation_platform:2 Versions 2 — ·Red Hat
- cpe:/a:redhat:ansible_core:2 Versions 2 — ·Red Hat
- cpe:/a:redhat:certifications:9 Versions 9 — ·Red Hat
- cpe:/a:redhat:discovery:2::el8 Versions 2 — ·Red Hat
- cpe:/a:redhat:enterprise_linux:10 Versions 10 — ·Red Hat
- cpe:/a:redhat:enterprise_linux:8 Versions 8 — ·Red Hat
Show 8 more CPE
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:/a:redhat:enterprise_linux:9 | 9 | — | Red Hat |
| cpe:/a:redhat:openshift:4 | 4 | — | Red Hat |
| cpe:/a:redhat:openshift:5 | 5 | — | Red Hat |
| cpe:/a:redhat:openstack:17.1 | 17.1 | — | Red Hat |
| cpe:/a:redhat:openstack:18.0 | 18.0 | — | Red Hat |
| cpe:/a:redhat:satellite:6 | 6 | — | Red Hat |
| cpe:/a:redhat:rhui:5::el9 | 5 | — | Red Hat |
| cpe:/a:redhat:ansible_portal:2 | 2 | — | Red Hat |
- cpe:/a:redhat:enterprise_linux:9 Versions 9 — ·Red Hat
- cpe:/a:redhat:openshift:4 Versions 4 — ·Red Hat
- cpe:/a:redhat:openshift:5 Versions 5 — ·Red Hat
- cpe:/a:redhat:openstack:17.1 Versions 17.1 — ·Red Hat
- cpe:/a:redhat:openstack:18.0 Versions 18.0 — ·Red Hat
- cpe:/a:redhat:satellite:6 Versions 6 — ·Red Hat
- cpe:/a:redhat:rhui:5::el9 Versions 5 — ·Red Hat
- cpe:/a:redhat:ansible_portal:2 Versions 2 — ·Red Hat
Remediation
No fixed version is listed for ansible-core. Red Hat gives no fix plan (none_available) for Red Hat Ansible Automation Platform 2, Red Hat Enterprise Linux 8, 9 and 10, and other affected Red Hat products.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Advanced Cluster Management for Kubernetes 2 | Affected | No fix yet: Fix deferred |
| Red Hat Ansible Automation Platform 2 | Affected | No fix yet |
| Red Hat Ansible Automation Platform Ansible Core 2 | Affected | No fix yet |
| Red Hat Discovery 2 | Affected | No fix yet: Fix deferred |
| Red Hat Enterprise Linux 10 | Affected | No fix yet: Fix deferred |
| Red Hat Enterprise Linux 8 | Affected | No fix yet: Fix deferred |
| Red Hat Enterprise Linux 9 | Affected | No fix yet: Fix deferred |
| Red Hat OpenShift Container Platform 4 | Affected | No fix yet: Fix deferred |
| Red Hat OpenShift Container Platform 5 | Affected | No fix yet: Fix deferred |
| Red Hat OpenStack Platform 17.1 | Affected | No fix yet: Fix deferred |
| Red Hat Satellite 6 | Affected | No fix yet: Fix deferred |
| Red Hat Update Infrastructure 5 | Affected | No fix yet: Fix deferred |
| Self-service automation portal 2 | Affected | No fix yet |
Not affected: 6 products
- Migration Toolkit for Applications 8
- Migration Toolkit for Virtualization
- OpenShift Service Mesh 3
- Red Hat Ansible Automation Platform 2
- Red Hat Certification Program for Red Hat Enterprise Linux 9
- Red Hat OpenStack Platform 18.0
Timeline
- 2026-10-09 Threatist record created from CVE-2026-89091
- 2026-10-10 CISA SSVC decision points changed
- 2026-10-10 Priority changed: MEDIUM → LOW
- 2026-10-10 Priority changed: LOW → MEDIUM
- 2026-11-02 Affected versions changed · CNA
- 2026-11-03 Affected versions changed · Red Hat
References
More Red Hat vulnerabilities
- TI-2019-15875 Protection mechanism failure in Jenkins Pipeline: Groovy Plugin KEVCVSS 3.1CRITICAL 9.9
- TI-2019-15874 Protection mechanism failure in Jenkins Script Security Plugin KEVCVSS 3.1CRITICAL 9.9
- TI-2019-08259 Underflow in PHP-FPM can lead to RCE KEVCVSS 3.1CRITICAL 9.8
- TI-2019-05363 Code injection in Elastic Kibana KEVCVSS 3.1CRITICAL 10.0
- TI-2019-03949 Out-of-bounds write in ESXi and Horizon DaaS KEVCVSS 3.1CRITICAL 9.8
- TI-2018-16080 A code execution vulnerability exists in the Stapler web framework used by Jenkins 2.153… KEVCVSS 3.1CRITICAL 9.8
Sources
- CVE-2026-89091 · CVE Program
- CVE-2026-89091 · NVD
- FIRST EPSS
- CVE-2026-89091 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences