CVE-2021-39132 YAML deserialization can run untrusted code

High 8.8 Published Updated

An authenticated user can execute arbitrary code on Rundeck servers by uploading crafted YAML files or plugins, requiring an upgrade to patched versions.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2021-39132?

CVE-2021-39132 is a high-severity unsafe deserialization vulnerability in rundeck, published on 30 Aug 2021. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

Rundeck is an open source automation service with a web console, command line tools and a WebAPI. Prior to version 3.3.14 and version 3.4.3, an authorized user can upload a zip-format plugin with a crafted plugin.yaml, or a crafted aclpolicy yaml file, or upload an untrusted project archive with a crafted aclpolicy yaml file, that can cause the server to run untrusted code on Rundeck Community or Enterprise Edition. An authenticated user can make a POST request, that can cause the server to run untrusted code on Rundeck Enterprise Edition. The zip-format plugin issues requires authentication and authorization to these access levels, and affects all Rundeck editions:`admin` level access to the `system` resource type. The ACL Policy yaml file upload issues requires authentication and authorization to these access levels, and affects all Rundeck editions: `create` `update` or `admin` level access to a `project_acl` resource, and/or`create` `update` or `admin` level access to the `system_acl` resource. The unauthorized POST request requires authentication, but no specific authorization, and affects Rundeck Enterprise only. Patches are available in versions 3.4.3, 3.3.14

Weakness: CWE-502

Which versions are affected by CVE-2021-39132?

4 open source packages ship an affected version, including org.rundeck:rundeck-core. It affects 1 product.

PackageAffectedFixed in
org.rundeck:rundeck-core MavenAll versions3.3.14
org.rundeck:rundeck-core MavenAll versions3.3.14
org.rundeck:rundeck-core MavenFrom 3.4.03.4.3
org.rundeck:rundeck-core MavenFrom 3.4.03.4.3

Products include Pagerduty Rundeck.

How do I fix CVE-2021-39132?

Upgrade org.rundeck:rundeck-core to a fixed version for your release line: 3.3.14 or 3.4.3.

Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.

Is CVE-2021-39132 being exploited?

There is no known exploitation of CVE-2021-39132 in the wild and no public exploit code.

Sources

Also known as GHSA-q4rf-3fhx-88pf.

Is CVE-2021-39132 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free