Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with edit_ansible_variables permission
-
ExploitEnumerate target LookupValue record IDs
-
ExecutionSend destroy request for out-of-scope override
-
ImpactDelete Ansible/Puppet override values cross-scope
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation 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 Red Hat Satellite 6 / Foreman account holding the edit_ansible_variables permission, running the foreman_ansible plugin. The core weakness is that the override-values destroy action resolves the LookupValue by ID alone without checking that it belongs to an AnsibleVariable within the caller's permission-filter scope, so the limiting factor is that the attacker must already have variable-edit rights and knowledge/enumeration of target record IDs. Impact is confined to deletion of override values (including Puppet smart-class-parameter overrides) - no read access or code execution. In deployments where all Ansible-variable editors are fully trusted and there are no RBAC scope filters, the practical risk is minimal. |
| Impact | This is a low-to-moderate authorization/IDOR flaw (CWE-863), not a high-severity issue. The vendor CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N, base 4.3) is internally consistent with the description: exploitation requires an authenticated user who already holds the edit_ansible_variables permission (PR:L), and impact is limited to integrity (I:L) via unauthorized deletion of LookupValue override records - there is no confidentiality (C:N) or availability (A:N) impact and no scope change (S:U). No EPSS score, KEV listing, POC, or SSVC data is provided; per the precision rules, exploitation status is 'no public exploit identified at time of analysis.' All signals point to a genuine but bounded privilege-boundary/permission-filter bypass rather than a widely weaponizable vulnerability: an attacker must first obtain a legitimate Satellite/Foreman account with variable-edit rights, and the payoff is deleting override values (including ones outside their filter scope and Puppet smart-class-parameter overrides) rather than reading data or gaining code execution. This is a real hardening priority for multi-tenant/RBAC-segmented Satellite deployments but should be prioritized below remote-unauth or RCE-class findings. |
| Exploit ScenarioDerived | In a Red Hat Satellite / Foreman environment with role-based permission filters, a low-privileged operator granted edit_ansible_variables (scoped to only their own organization's Ansible variables) enumerates LookupValue record IDs and issues destroy requests for override values belonging to variables outside their filter scope - or to Puppet smart class parameters they should never touch. No public exploit is identified; the attack is a straightforward authenticated API call against a predictable integer record ID. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 17, 2026
Authenticated users who hold the edit_ansible_variables permission in the Foreman foreman_ansible plugin (as shipped in Red Hat Satellite 6) can delete arbitrary Ansible override values by supplying a raw LookupValue record ID to the override-values destroy action, which performs no ownership or scope check. The flaw is an authorization/IDOR weakness rated CVSS 4.3 (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N) with impact limited to integrity loss through deletion - notably, targets can include override values belonging to Ansible variables outside the caller's permission filter and overrides attached to Puppet smart class parameters. No public exploit code exists and there is no evidence of active exploitation (no CISA KEV listing), so practical risk is low-to-moderate and largely depends on how granularly the deployment's RBAC filters are configured.
RemediationAI
No vendor-released patch was identified at time of analysis; the Red Hat advisory (https://access.redhat.com/security/cve/CVE-2026-92894) and Bugzilla entry (https://bugzilla.redhat.com/show_bug.cgi?id=2535902) should be monitored for the fixed foreman_ansible package build and the corresponding Satellite 6 erratum, and the plugin package upgraded as soon as that version is published. Until then, the most effective compensating control is to reduce the population of principals holding edit_ansible_variables: audit the corresponding Foreman roles and remove that permission from any role whose members are not fully trusted to modify all Ansible variables, accepting the trade-off that legitimate editors outside a narrow team will lose the ability to manage overrides. Second, where RBAC scope filters are used, verify they are actually enforced elsewhere in the plugin and do not rely on them for this endpoint, since the flaw specifically bypasses them; treat filter-scoped separation of duties as unreliable for override data and add compensating monitoring instead. Third, restrict the management API to trusted networks or source-IP allowlists at the reverse proxy, accepting the operational cost of breaking automation clients that call the API from other segments. Fourth, enable and alert on Foreman audit logging for LookupValue deletion events, especially deletions targeting Puppet smart class parameter overrides, so that abuse is detected even though it cannot be prevented; this generates additional log volume but is the only reliable detection path given the endpoint returns no read data to the attacker. Finally, keep independent backups of parameter and override data, since the impact of exploitation is destructive deletion and recovery may depend on restoring those records.
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 foreman_ansible plugin extends Foreman/Satellite's configuration management model by mapping Ansible roles and variables onto Foreman's existing parameter infrastructure. Override values are stored as LookupValue records, the same model used for smart class parameters and smart variables; an AnsibleVariable is backed by such a record, and overrides for those variables are individual LookupValue rows. The vulnerable destroy action in the Ansible override values API resolves the requested record directly by its numeric ID and proceeds to delete it without verifying that the LookupValue is associated with an AnsibleVariable the caller is entitled to modify. That is a classic CWE-863 (Incorrect Authorization) failure - the authorization decision is made on the action rather than on the object, producing an insecure-direct-object-reference pattern. Because Foreman's RBAC uses permission filters to scope which variables an editor may touch, bypassing that filter lets a low-privileged editor act outside their assigned taxonomy/organization/location scope, and even reach overrides owned by Puppet smart class parameters rather than Ansible variables. The attack is purely destructive: the API performs no disclosure of record contents and there is no path to code execution, which is consistent with the assessed C:N/I:L/A:N vector and the network-reachable but permission-gated nature of the endpoint.
Know when Foreman 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:N/S:U/C:N/I:L/A:N
Authenticated API call (PR:L) over the network deletes records outside scope with no read/DoS impact, so C:N/A:N and I:L; no scope change as it stays within the app's authorization model.
Primary rating from Vendor (redhat).
CVSS VectorVendor: redhat
DescriptionCVE.org
A flaw was found in the foreman_ansible plugin's Ansible override values API. The destroy action resolves the target LookupValue record by ID without verifying it belongs to an AnsibleVariable the caller is authorized to edit. An authenticated user with the edit_ansible_variables permission can delete any LookupValue by ID, including override values for Ansible variables outside their permission filter scope and override values belonging to Puppet smart class parameters.
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
Affected Products (CPE)CVE.org
Eval injection vulnerability in the create method in the Bookmarks controller in Foreman before 1.2.0-RC2 allows remote
The create method in app/controllers/users_controller.rb in Foreman before 1.2.0-RC2 allows remote authenticated users w
The Smart-Proxy in Foreman before 1.4.5 and 1.5.x before 1.5.1 allows remote attackers to execute arbitrary commands via
An authentication bypass flaw was found in the smart_proxy_dynflow component used by Foreman. Rated critical severity (C
Cross-site scripting (XSS) vulnerability in the search auto-completion functionality in Foreman before 1.4.4 allows remo
Eval injection vulnerability in tftp_api.rb in the TFTP module in the Smart-Proxy in Foreman before 1.10.4 and 1.11.x be
Authenticated users with low-level Viewer permissions in Red Hat Satellite 6.19 (and upstream Foreman) can exploit templ
An arbitrary code execution flaw was found in Foreman. Rated critical severity (CVSS 9.1), this vulnerability is remotel
An arbitrary code execution flaw was found in Foreman. Rated critical severity (CVSS 9.1), this vulnerability is remotel
Foreman 1.4.0 before 1.5.0 does not properly restrict access to provisioning template previews, which allows remote atta
Command injection in the Red Hat Satellite job invocation API (/api/v2/job_invocations), shipped via the rubygem-foreman
Remote code execution in Foreman's safemode-protected templating engine, shipped in Red Hat Satellite 6.19 for RHEL 9, l
EUVD-2026-81417
GHSA-xw4h-j68j-jhc2
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB