CWE data temporarily unavailableCWE data is currently experiencing intermittent outages, which may cause incomplete section loading on CVE pages. We are actively working on a fix.

CVE-2026-103754

Description

A flaw was found in ansible-runner. The unstream_dir() function, which receives and extracts a streamed zip archive on the worker side of the ansible-runner transmit/worker protocol, re-creates symbolic links from archive content without validating the link target and applies chmod() and utime() to an unsanitized filesystem path derived from the archive member name. A crafted archive processed by a worker that consumes attacker-influenced input can create files, create symbolic links, or change permissions outside the intended target directory, which can be leveraged toward code execution.

Statement

A moderate severity flaw was found in ansible-runner, affecting the automation-controller component of Red Hat Ansible Automation Platform. The unstream_dir() function, used on the worker side of the ansible-runner transmit/worker protocol, extracts a streamed zip archive while re-creating symbolic links from the archive content without validating their targets, and applies chmod()/utime() to an unsanitized filesystem path derived from the archive member names. A crafted archive processed by a worker that consumes attacker-influenced input can therefore create files, create symbolic links, or change permissions outside the intended target directory, which can be leveraged toward code execution. In the standard Ansible Automation Platform deployment the transmit stream is produced by the trusted controller and the controller-to-executor path is authenticated, so there the issue is primarily a defense-in-depth hardening concern; deployments that feed untrusted input into ansible-runner's worker path are directly exposed. Red Hat and the upstream CVE record both rate this flaw as moderate impact (CVSS 3.1 score 5.9), so there is no difference from the upstream severity assessment. A fix is deferred for the affected Ansible Automation Platform streams because exploitation requires attacker-influenced input to reach the worker's extraction path, which the standard trusted controller-to-executor topology prevents; the residual risk is limited to deployments that pass untrusted input into ansible-runner's worker path until a fix is applied. The ansible_automation_platform-2.4 stream is out of support scope and will not receive an update for this issue.

Mitigation

Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base, or stability. The upstream ansible-runner project has a fix available via the referenced pull request; upgrading to a release that includes the upstream fix is the recommended resolution. As an additional measure, ensuring that only the trusted automation-controller produces the transmit stream consumed by ansible-runner workers (the standard authenticated Ansible Automation Platform topology) limits exposure to this flaw.

Common Vulnerability Scoring System (CVSS) Score Details

Info alert:Important note

CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).

The following CVSS metrics and score provided are preliminary and subject to review.

CVSS v3 Score Breakdown

Red HatNVDcve.org
Base Score5.9N/A5.9
Attack VectorNetworkN/ANetwork
Attack ComplexityHighN/AHigh
Privileges RequiredLowN/ALow
User InteractionNoneN/ANone
ScopeUnchangedN/AUnchanged
ConfidentialityNoneN/ANone
Integrity ImpactHighN/AHigh
Availability ImpactLowN/ALow

Vector

Red Hat: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:L

cve.org: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:L

Acknowledgements

Red Hat would like to thank Liqiang Ji (SQUARE Research Group, Institute of Software, Chinese Academy of Sciences (ISCAS)) for reporting this issue.

Frequently Asked Questions

Want to get errata notifications? Sign up here.