CVE-2011-3870 Puppet allows local users to modify the permissions of arbitrary files

Medium 6.3 Published Updated

Local attackers can modify arbitrary file permissions via symlink attacks on SSH keys, potentially escalating privileges in Puppet environments.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2011-3870?

CVE-2011-3870 is a medium-severity path traversal vulnerability in n/a, published on 27 Oct 2011. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

Puppet 2.7.x before 2.7.5, 2.6.x before 2.6.11, and 0.25.x allows local users to modify the permissions of arbitrary files via a symlink attack on the SSH authorized_keys file.

Weakness: CWE-59

Which versions are affected by CVE-2011-3870?

4 open source packages ship an affected version, including puppet. It affects 2 products.

PackageAffectedFixed in
puppet RubyGemsAll versions2.6.11
puppet RubyGemsAll versions2.6.11
puppet RubyGemsFrom 2.7.02.7.5
puppet RubyGemsFrom 2.7.02.7.5

Products include Puppet Puppet, Puppetlabs Puppet.

How do I fix CVE-2011-3870?

Upgrade puppet to a fixed version for your release line: 2.6.11 or 2.7.5.

Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.

Is CVE-2011-3870 being exploited?

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

Sources

Also known as DEBIAN-CVE-2011-3870, GHSA-qh3g-27jf-3j54.

Is CVE-2011-3870 in your software?

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

Check your SBOMs for free