CVE-2012-1906 Puppet uses predictable filenames, allowing arbitrary file overwrite
Local attackers can overwrite arbitrary files or install malicious packages via symlink attacks on predictable temporary files during Mac OS X package installation.
- 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-2012-1906?
CVE-2012-1906 is a low-severity path traversal vulnerability in Puppet Puppet Enterprise, published on 29 May 2012. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
Puppet 2.6.x before 2.6.15 and 2.7.x before 2.7.13, and Puppet Enterprise (PE) Users 1.0, 1.1, 1.2.x, 2.0.x, and 2.5.x before 2.5.1 uses predictable file names when installing Mac OS X packages from a remote source, which allows local users to overwrite arbitrary files or install arbitrary packages via a symlink attack on a temporary file in /tmp.
Weakness: CWE-264
Which versions are affected by CVE-2012-1906?
4 open source packages ship an affected version, including puppet. It affects 4 products.
| Package | Affected | Fixed in |
|---|---|---|
puppet RubyGems | From 2.6 | 2.6.15 |
puppet RubyGems | From 2.6 | 2.6.15 |
puppet RubyGems | From 2.7 | 2.7.13 |
puppet RubyGems | From 2.7 | 2.7.13 |
Products include Puppet Puppet, Puppet Puppet Enterprise, Puppetlabs Puppet, Puppetlabs Puppet Enterprise Users.
How do I fix CVE-2012-1906?
Upgrade puppet to a fixed version for your release line: 2.6.15 or 2.7.13.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2012-1906 being exploited?
There is no known exploitation of CVE-2012-1906 in the wild and no public exploit code.
Other vulnerabilities in Puppet Puppet Enterprise
Sources
Also known as DEBIAN-CVE-2012-1906, GHSA-c4mc-49hq-q275.