Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privilege Hub user
-
DeliveryPublish collection with javascript-scheme doc link
-
ExploitVictim opens collection documentation page
-
ExecutionVictim clicks crafted link
-
ImpactScript executes in Hub UI origin
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated user with permission to publish/upload a collection to Automation Hub, whose collection documentation contains a link using a script-executing URL scheme (such as javascript:) - the renderer does not restrict the URL protocol/scheme. Exploitation further requires a second authenticated user to open the affected collection's documentation page AND actively click/activate the malicious link (not merely view it). Limiting factors: both publish access and victim interaction are needed, the issue is stored (not reflected), and it is confined to deployments running the unified AAP UI Hub documentation renderer on the 2.6 or 2.7 release branches. |
| Impact | This is a moderate-severity stored XSS (CWE-79) with a CVSS 3.1 base score of 5.4 (AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N). The signals are internally consistent and point to a genuine but constrained risk rather than an urgent emergency. The vector requires some privileges (PR:L - an authenticated user able to publish/upload a collection) and victim interaction (UI:R - a second authenticated user must view and activate the malicious link), which meaningfully limits mass exploitation. The scope change (S:C) and low confidentiality/integrity impact reflect script executing in the Hub UI origin against another user's session, capable of session/credential theft or limited action-on-behalf, but not direct system compromise. No EPSS score, KEV listing, or public POC was provided in the input, so there is no public exploit identified at time of analysis and no evidence of active exploitation - this is a defense-in-depth fix rather than a drop-everything patch. No signals are conflicting; the main caveat is that affected-version precision and any fix version are not available from the two Red Hat references provided (the Bugzilla and the Red Hat CVE page), so patch status must be verified directly with Red Hat. |
| Exploit ScenarioDerived | A low-privileged but authenticated AAP user publishes an Ansible collection to the Hub whose documentation embeds a link using a script-executing URL scheme (e.g. javascript:). When an administrator or other authenticated user browses that collection's documentation page and clicks the crafted link, attacker-controlled script executes in the Hub UI origin under the victim's session. No public exploit code was identified in the provided data, so exploitation would currently require an attacker to craft the malicious collection themselves. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Stored cross-site scripting in the Ansible Automation Platform unified UI lets an authenticated user who can publish or upload a collection to Automation Hub embed a link using a script-executing URL scheme (for example javascript:) in that collection's documentation; the Hub documentation renderer (formatPartURL in frontend/hub DocumentationParsers.tsx) writes the URL into a link without validating its protocol, so the script executes in the Hub UI origin when a second authenticated user opens the collection documentation page and clicks the link. Red Hat scores it CVSS 3.1 5.4 (AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N) - low confidentiality and integrity impact with a scope change, since the injected script runs with the privileges of the Hub origin rather than staying inside the published content. The flaw ships in the AAP 2.6 and 2.7 release branches only; no public exploit code and no confirmed active exploitation (CISA KEV) were identified at time of analysis, and exploitation requires both a malicious publisher and a victim who actively activates the crafted link.
RemediationAI
No vendor-released patch or fixed version is identified at time of analysis - the provided references (https://access.redhat.com/security/cve/CVE-2026-109131 and https://bugzilla.redhat.com/show_bug.cgi?id=2549510) contain no errata or exact fix version, so monitor both for an AAP 2.6/2.7 update and plan to upgrade the platform as soon as an erratum is published. Until then, apply specific compensating controls: restrict collection publish/upload rights in Automation Hub to a small, vetted set of trusted namespaces and roles, accepting that this slows community contribution and requires administrative overhead to maintain an allowlist; review or moderate collection documentation before it is published, which catches malicious javascript: links but relies on manual review and does not scale; and treat inbound collection content from untrusted sources as hostile by importing it only in non-production Hub instances. Because the payload only fires when a victim clicks the link, user-side mitigations are meaningful: instruct Hub users not to click links embedded in collection documentation, and note that content-security-policy headers that forbid inline and javascript: URLs would block execution in most browsers - but only if the deployment can enforce a CSP without breaking the UI, which may require testing since the unified UI loads substantial script content. If the Hub documentation renderer cannot be patched or protected, disabling or restricting access to the collection documentation pages for non-administrators removes the attack surface at the cost of losing documentation visibility. Track the upstream ansible-ui fix for formatPartURL (scheme allowlisting to http/https) as an indicator that a downstream AAP patch is imminent.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The affected code is the Hub collection module documentation renderer in the unified Ansible Automation Platform UI, which is built from the upstream ansible-ui project (frontend/hub). The helper formatPartURL in DocumentationParsers.tsx converts a documentation URL fragment into an anchor tag but does not restrict the URL protocol/scheme, so any scheme the browser treats as script-executing (javascript:, and in some contexts data:) is emitted as a live href. This is a classic CWE-79 improper-neutralization-of-input-during-web-page-generation defect, in its stored variant: the payload is persisted as collection documentation and re-rendered to every subsequent viewer rather than reflected in a single response. React normally escapes output, but attribute-based sink handling in the parser does not gate the scheme, so the escaping does not prevent execution. Because the script runs in the same origin as the Hub UI, the CVSS vector carries S:C (scope changed), meaning the injected code can act on the Hub session context beyond the vulnerable rendering component, though the assessed impacts are limited to C:L/I:L/A:N. The CPE entries identify the affected platform as Red Hat Ansible Automation Platform 2 across its version stream, with the defect specifically present in the 2.6 and 2.7 release branches that include the unified UI Hub documentation renderer.
Know when Red Hat Ansible Automation Platform 2 gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Authenticated publish access gives PR:L and victim link activation gives UI:R; script runs in a different security scope (S:C) with limited C/I and no availability impact.
Primary rating from Vendor (redhat).
CVSS VectorNVD
DescriptionNVD
The Hub collection module documentation renderer in the unified Ansible Automation Platform UI (built from upstream ansible-ui, frontend/hub) renders a documentation URL part (formatPartURL in DocumentationParsers.tsx) as a link without restricting the URL protocol/scheme. A collection whose documentation contains a link using a script-executing URL scheme can therefore cause script to run in the same origin as the Hub UI when another authenticated user views and activates that link in the collection documentation page. This is a stored cross-site scripting issue in shipped Platform UI code (present in the AAP 2.6 and 2.7 release branches).
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Affected Products (CPE)NVD
Missing authorization checks in the Red Hat Ansible Automation Platform 2 automation-controller allow an authenticated o
Authenticated users who hold permission to create or modify a project within a single organization can execute arbitrary
Privilege escalation and remote code execution on managed hosts is possible in Red Hat Ansible Automation Platform 2 bec
Credential disclosure in Red Hat Ansible Automation Platform 2.5 and 2.6 allows any authenticated user to retrieve plain
Server-side request forgery in the Red Hat Ansible Automation Platform 2 Controller's HashiCorp Vault credential plugin
Privilege escalation in Red Hat Ansible Automation Platform 2 (built on the AWX upstream project) lets an authenticated
Arbitrary file write in pulpcore's FilesystemExport feature allows an authenticated administrator to escape the intended
Symlink-following file overwrite on the Ansible control node is possible in ansible-core when a user runs `ansible-galax
Stored cross-site scripting in the automation-controller component of Red Hat Ansible Automation Platform 2 lets an auth
An authenticated automation-controller administrator in Red Hat Ansible Automation Platform 2 can turn the administrator
Jinja2 template injection in Ansible Operator Plugins (CWE-1336) lets an authenticated Kubernetes user who can create or
Missing object-level authorization in the JobTemplate copy endpoint (CopyAPIView) of AWX and Red Hat Ansible Automation
EUVD-2026-102325
GHSA-f84v-gjx6-6gf8
NVD
CVE.org
EPSS
Exploit-DB