CVE-2026-84470 Overview
A missing authorization flaw affects the Ansible Automation Platform's automation-controller component (AWX). The Bulk Job Launch API endpoint POST /api/v2/bulk/job_launch/ validates requested instance_groups with only a read-level permission check. The standard single-job launch path requires use-level permission on the same field. A principal holding read permission on an instance group, combined with execute permission on a job template, can bypass execution-placement isolation. The built-in read-only System Auditor role satisfies the read requirement. This weakness maps to CWE-862: Missing Authorization.
Critical Impact
Authenticated users with read-only permissions on instance groups can launch jobs on execution nodes they are not authorized to use, breaking tenant and workload isolation.
Affected Products
- Red Hat Ansible Automation Platform
- Automation Controller (AWX)
- Bulk Job Launch API (/api/v2/bulk/job_launch/)
Discovery Timeline
- 2026-09-01 - CVE-2026-84470 published to NVD
- 2026-09-01 - Last updated in NVD database
Technical Details for CVE-2026-84470
Vulnerability Analysis
Ansible Automation Controller enforces two distinct permission levels on instance groups. The read permission allows visibility into an instance group's configuration. The use permission authorizes a principal to schedule and execute jobs on that group's execution nodes. Single-job launches through POST /api/v2/job_templates/{id}/launch/ correctly verify use on the instance_groups field before accepting the request.
The Bulk Job Launch API introduced in the automation-controller performs the same field validation, but downgrades the check to read. An authenticated principal with execute on a job template and read on a restricted instance group can submit a bulk payload naming that group. The controller accepts the request and dispatches the jobs onto execution nodes that the caller is not authorized to use.
Root Cause
The flaw is an authorization inconsistency between two code paths that operate on the same resource field. The single-job serializer applies a use-level object permission check on referenced instance groups. The bulk serializer applies only a read-level check. The controller therefore trusts the requester's ability to see an instance group as sufficient authority to place work on it.
Attack Vector
Exploitation requires an authenticated account with at minimum execute on a job template and read on the target instance group. The built-in System Auditor role satisfies the read requirement across all instance groups by design. An attacker submits a crafted JSON body to /api/v2/bulk/job_launch/ naming the restricted instance_groups. The controller queues jobs on execution nodes reserved for other tenants, teams, or trust zones, bypassing execution-placement isolation. Refer to the Red Hat CVE-2026-84470 advisory and Red Hat Bug Report #2527046 for vendor technical details.
Detection Methods for CVE-2026-84470
Indicators of Compromise
- Requests to POST /api/v2/bulk/job_launch/ originating from accounts assigned the System Auditor role or other read-only principals.
- Job records where launched_by lacks use permission on the referenced instance_group.
- Unexpected job scheduling on isolated or restricted execution nodes outside of normal tenant boundaries.
Detection Strategies
- Audit automation-controller activity logs for bulk launch calls and correlate the requester's role bindings against the target instance groups.
- Compare the invoking user's effective permissions on instance_groups at job creation time to detect read-only principals launching work.
- Establish a baseline of which service accounts and roles legitimately use the bulk launch endpoint, and alert on deviations.
Monitoring Recommendations
- Forward automation-controller API and job event logs to a centralized SIEM for correlation with identity role changes.
- Track job execution distribution across instance groups and alert on cross-tenant placement anomalies.
- Monitor the System Auditor and other read-only role assignments for unexpected use of write-adjacent endpoints.
How to Mitigate CVE-2026-84470
Immediate Actions Required
- Apply the fixed automation-controller release once published by Red Hat; monitor the Red Hat CVE-2026-84470 advisory for package versions.
- Review and reduce assignments of the System Auditor role and any custom role granting broad read on instance groups.
- Restrict network access to the /api/v2/bulk/job_launch/ endpoint to trusted automation clients where feasible.
Patch Information
Red Hat tracks remediation under Bugzilla #2527046. Consult the Red Hat CVE-2026-84470 advisory for affected package versions, errata identifiers, and update instructions for Ansible Automation Platform and upstream AWX.
Workarounds
- Revoke execute permission on job templates from principals that hold only read on sensitive instance groups until patches are applied.
- Segment sensitive execution nodes into instance groups whose read permission is not granted to auditor-class roles.
- Audit and remove unnecessary custom roles that combine job template execute with broad instance group read visibility.
# Configuration example: enumerate role bindings that combine execute on
# job templates with read on instance groups, using the awx CLI.
awx roles list --type execute --resource job_template --format json \
| jq '.results[] | {user: .summary_fields.user.username, resource: .summary_fields.resource_name}'
awx roles list --type read --resource instance_group --format json \
| jq '.results[] | {user: .summary_fields.user.username, group: .summary_fields.resource_name}'
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

