CVE-2026-52903: YAML safe_load production fallback to unsafe_load enables RCE via deserialization
A deserialization of untrusted data vulnerability was found in ManageIQ. The YamlLoadAliases module overrides YAML.safeload to silently fall back to YAML.unsafeload in production when a Psych::DisallowedClass error occurs. An authenticated attacker with dialog import access can exploit this to achieve remote code execution by uploading a crafted YAML payload that triggers the fallback and deserializes arbitrary Ruby objects.
Red Hat CloudForms, which was based on ManageIQ, has reached End of Life and is no longer supported. No errata or patches will be issued. This CVE is being assigned for the benefit of the ManageIQ community and downstream consumers.
Other sources
A deserialization vulnerability was found in ManageIQ. The YamlLoadAliases module in lib/extensions/yamlloadaliases.rb overrides YAML.safeload globally. When a Psych::DisallowedClass error is raised in production, instead of raising the error, it silently falls back to YAML.unsafeload, which deserializes arbitrary Ruby objects. An authenticated user with dialog import access can upload a crafted YAML payload containing classes outside the permitted list to trigger the fallback and achieve Remote Code Execution via standard Ruby gadget chains.
The code comment explicitly labels this a "Temporary hack to fallback to psych 3 behavior" but it was never removed.
— Red Hat
Affected Software
Event History
Frequently Asked Questions
Who can exploit this issue?
An authenticated user who has permission to import dialogs can exploit it. The attack is network-reachable and does not require user interaction.
Is the vulnerable behavior limited to a particular environment?
Yes. The unsafe fallback occurs in production when YAML.safe_load raises a Psych::DisallowedClass error. The module overrides YAML.safe_load globally, so YAML processing that reaches this fallback can deserialize arbitrary Ruby objects.
What remediation is available for Red Hat CloudForms?
Red Hat CloudForms is end of life and unsupported. No errata or patches will be issued for it.