{"id":"CVE-2026-84470","state":"PUBLISHED","title":"Automation-controller: automation-controller-container: automation-controller/awx: bulk job launch checks instance_groups at read level instead of use level, allowing execution-placement authorization bypass","description":"A flaw was found in Ansible Automation Platform's automation-controller (AWX).\nThe Bulk Job Launch API (POST /api/v2/bulk/job_launch/) authorizes the\nrequested instance_groups with only a read-level permission check, whereas the\nstandard single-job launch path requires use-level permission on the same\nfield. A principal that holds read (but not use) permission on an instance\ngroup -- for example the built-in read-only System Auditor role -- together\nwith execute permission on a job template can launch bulk jobs onto instance\ngroups they are not authorized to use, bypassing execution-placement\nisolation.","publishedAt":"2026-09-01T20:57:09.753Z","updatedAt":"2026-09-24T06:09:06.096Z","severity":{"score":6.4,"label":"Medium","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:L","source":"redhat"},"assigner":"redhat","products":["Red Hat Red Hat Ansible Automation Platform 2.5 for RHEL 8","Red Hat Red Hat Ansible Automation Platform 2.5 for RHEL 9","Red Hat Red Hat Ansible Automation Platform 2.6 for RHEL 9","Red Hat Red Hat Ansible Automation Platform 2.6","Red Hat Red Hat Ansible Automation Platform 2.7"],"affected":[{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.5 for RHEL 8","packageName":"automation-controller","defaultStatus":"affected","versions":[{"version":"0:4.6.33-1.el8ap","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://access.redhat.com/downloads/content/package-browser/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.5::el8","cpe:/a:redhat:ansible_automation_platform:2.5::el9","cpe:/a:redhat:ansible_automation_platform_developer:2.5::el8","cpe:/a:redhat:ansible_automation_platform_developer:2.5::el9","cpe:/a:redhat:ansible_automation_platform_inside:2.5::el8","cpe:/a:redhat:ansible_automation_platform_inside:2.5::el9"]},{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.5 for RHEL 9","packageName":"automation-controller","defaultStatus":"affected","versions":[{"version":"0:4.6.33-1.el9ap","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://access.redhat.com/downloads/content/package-browser/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.5::el8","cpe:/a:redhat:ansible_automation_platform:2.5::el9","cpe:/a:redhat:ansible_automation_platform_developer:2.5::el8","cpe:/a:redhat:ansible_automation_platform_developer:2.5::el9","cpe:/a:redhat:ansible_automation_platform_inside:2.5::el8","cpe:/a:redhat:ansible_automation_platform_inside:2.5::el9"]},{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.6 for RHEL 9","packageName":"automation-controller","defaultStatus":"affected","versions":[{"version":"0:4.7.17-1.el9ap","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://access.redhat.com/downloads/content/package-browser/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.6::el10","cpe:/a:redhat:ansible_automation_platform:2.6::el9","cpe:/a:redhat:ansible_automation_platform_developer:2.6::el10","cpe:/a:redhat:ansible_automation_platform_developer:2.6::el9","cpe:/a:redhat:ansible_automation_platform_inside:2.6::el9"]},{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.6","packageName":"ansible-automation-platform-26/controller-rhel9","defaultStatus":"affected","versions":[{"version":"1789673739","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://catalog.redhat.com/software/containers/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.6::el9"]},{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.7","packageName":"ansible-automation-platform-27/controller-rhel9","defaultStatus":"affected","versions":[{"version":"1789580684","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://catalog.redhat.com/software/containers/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.7::el9"]}],"references":["https://access.redhat.com/errata/RHSA-2026:71113","https://access.redhat.com/errata/RHSA-2026:71114","https://access.redhat.com/errata/RHSA-2026:71177","https://access.redhat.com/errata/RHSA-2026:71179","https://access.redhat.com/security/cve/CVE-2026-84470","https://bugzilla.redhat.com/show_bug.cgi?id=2527046"],"weaknesses":["CWE-862"],"ingestedAt":"2026-10-29T20:13:15.269Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/84xxx/CVE-2026-84470.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-84470","state":"PUBLISHED","datePublished":"2026-09-01T20:57:09.753Z","dateUpdated":"2026-09-24T06:09:06.096Z","assignerShortName":"redhat","assignerOrgId":"53f830b8-0a3f-465b-8143-3b8a9948e749","dateReserved":"2026-09-01T20:07:36.455Z"},"containers":{"cna":{"title":"Automation-controller: automation-controller-container: automation-controller/awx: bulk job launch checks instance_groups at read level instead of use level, allowing execution-placement authorization bypass","descriptions":[{"lang":"en","value":"A flaw was found in Ansible Automation Platform's automation-controller (AWX).\nThe Bulk Job Launch API (POST /api/v2/bulk/job_launch/) authorizes the\nrequested instance_groups with only a read-level permission check, whereas the\nstandard single-job launch path requires use-level permission on the same\nfield. A principal that holds read (but not use) permission on an instance\ngroup -- for example the built-in read-only System Auditor role -- together\nwith execute permission on a job template can launch bulk jobs onto instance\ngroups they are not authorized to use, bypassing execution-placement\nisolation."}],"affected":[{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.5 for RHEL 8","packageName":"automation-controller","defaultStatus":"affected","versions":[{"version":"0:4.6.33-1.el8ap","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://access.redhat.com/downloads/content/package-browser/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.5::el8","cpe:/a:redhat:ansible_automation_platform:2.5::el9","cpe:/a:redhat:ansible_automation_platform_developer:2.5::el8","cpe:/a:redhat:ansible_automation_platform_developer:2.5::el9","cpe:/a:redhat:ansible_automation_platform_inside:2.5::el8","cpe:/a:redhat:ansible_automation_platform_inside:2.5::el9"]},{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.5 for RHEL 9","packageName":"automation-controller","defaultStatus":"affected","versions":[{"version":"0:4.6.33-1.el9ap","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://access.redhat.com/downloads/content/package-browser/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.5::el8","cpe:/a:redhat:ansible_automation_platform:2.5::el9","cpe:/a:redhat:ansible_automation_platform_developer:2.5::el8","cpe:/a:redhat:ansible_automation_platform_developer:2.5::el9","cpe:/a:redhat:ansible_automation_platform_inside:2.5::el8","cpe:/a:redhat:ansible_automation_platform_inside:2.5::el9"]},{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.6 for RHEL 9","packageName":"automation-controller","defaultStatus":"affected","versions":[{"version":"0:4.7.17-1.el9ap","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://access.redhat.com/downloads/content/package-browser/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.6::el10","cpe:/a:redhat:ansible_automation_platform:2.6::el9","cpe:/a:redhat:ansible_automation_platform_developer:2.6::el10","cpe:/a:redhat:ansible_automation_platform_developer:2.6::el9","cpe:/a:redhat:ansible_automation_platform_inside:2.6::el9"]},{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.6","packageName":"ansible-automation-platform-26/controller-rhel9","defaultStatus":"affected","versions":[{"version":"1789673739","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://catalog.redhat.com/software/containers/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.6::el9"]},{"vendor":"Red Hat","product":"Red Hat Ansible Automation Platform 2.7","packageName":"ansible-automation-platform-27/controller-rhel9","defaultStatus":"affected","versions":[{"version":"1789580684","status":"unaffected","lessThan":"*","versionType":"rpm"}],"collectionURL":"https://catalog.redhat.com/software/containers/","cpes":["cpe:/a:redhat:ansible_automation_platform:2.7::el9"]}],"references":[{"url":"https://access.redhat.com/errata/RHSA-2026:71113","name":"RHSA-2026:71113","tags":["vendor-advisory","x_refsource_REDHAT"]},{"url":"https://access.redhat.com/errata/RHSA-2026:71114","name":"RHSA-2026:71114","tags":["vendor-advisory","x_refsource_REDHAT"]},{"url":"https://access.redhat.com/errata/RHSA-2026:71177","name":"RHSA-2026:71177","tags":["vendor-advisory","x_refsource_REDHAT"]},{"url":"https://access.redhat.com/errata/RHSA-2026:71179","name":"RHSA-2026:71179","tags":["vendor-advisory","x_refsource_REDHAT"]},{"url":"https://access.redhat.com/security/cve/CVE-2026-84470","tags":["vdb-entry","x_refsource_REDHAT"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2527046","name":"RHBZ#2527046","tags":["issue-tracking","x_refsource_REDHAT"]}],"metrics":[{"other":{"content":{"value":"Moderate","namespace":"https://access.redhat.com/security/updates/classification/"},"type":"Red Hat severity rating"}},{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"LOW","baseScore":6.4,"baseSeverity":"MEDIUM","confidentialityImpact":"NONE","integrityImpact":"LOW","privilegesRequired":"LOW","scope":"CHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:L","version":"3.1"},"format":"CVSS"}],"problemTypes":[{"descriptions":[{"cweId":"CWE-862","description":"Missing Authorization","lang":"en","type":"CWE"}]}],"providerMetadata":{"shortName":"redhat","orgId":"53f830b8-0a3f-465b-8143-3b8a9948e749","dateUpdated":"2026-09-24T06:09:06.096Z"},"datePublic":"2026-09-01T00:00:00.000Z","x_redhatCweChain":"CWE-862: Missing Authorization","workarounds":[{"lang":"en","value":"- Restrict who holds the System Auditor role and avoid combining it with\n  job-template execute grants; review custom roles that pair read on instance\n  groups with execute on job templates.\n- Where feasible, restrict access to the Bulk Job Launch endpoint\n  (/api/v2/bulk/job_launch/) at the network/proxy layer to trusted automation\n  callers until the fix is applied.\n- Audit workflow/bulk jobs for placement onto instance groups the launching\n  principal does not hold use_role on."}],"timeline":[{"lang":"en","time":"2026-09-01T20:07:41.240Z","value":"Reported to Red Hat."},{"lang":"en","time":"2026-09-01T00:00:00.000Z","value":"Made public."}],"credits":[{"lang":"en","value":"Red Hat would like to thank Santosh Kumar Puppala (Independent security researcher) for reporting this issue."}],"x_generator":{"engine":"cvelib 1.8.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-09-04T18:46:38.423558Z","id":"CVE-2026-84470","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-04T18:46:49.019Z"}}]}}}