CVE Vulnerabilities

CVE-2010-0156

Improper Link Resolution Before File Access ('Link Following')

Published: Mar 03, 2010 | Modified: Apr 11, 2025
CVSS 3.x
N/A
Source:
NVD
CVSS 2.x
3.3 LOW
AV:L/AC:M/Au:N/C:N/I:P/A:P
RedHat/V2
RedHat/V3
Ubuntu
MEDIUM
root.io logo minimus.io logo echo.ai logo

Puppet 0.24.x before 0.24.9 and 0.25.x before 0.25.2 allows local users to overwrite arbitrary files via a symlink attack on the (1) /tmp/daemonout, (2) /tmp/puppetdoc.txt, (3) /tmp/puppetdoc.tex, or (4) /tmp/puppetdoc.aux temporary file.

Weakness

The product attempts to access a file based on the filename, but it does not properly prevent that filename from identifying a link or shortcut that resolves to an unintended resource.

Affected Software

NameVendorStart VersionEnd Version
PuppetPuppet0.24.3 (including)0.24.3 (including)
PuppetPuppet0.24.4 (including)0.24.4 (including)
PuppetPuppet0.24.5 (including)0.24.5 (including)
PuppetPuppet0.24.6 (including)0.24.6 (including)
PuppetPuppet0.24.6-rc1 (including)0.24.6-rc1 (including)
PuppetPuppet0.24.6-rc2 (including)0.24.6-rc2 (including)
PuppetPuppet0.24.7 (including)0.24.7 (including)
PuppetPuppet0.24.7-rc2 (including)0.24.7-rc2 (including)
PuppetPuppet0.24.8 (including)0.24.8 (including)
PuppetPuppet0.24.8-rc1 (including)0.24.8-rc1 (including)
PuppetPuppet0.25.0 (including)0.25.0 (including)
PuppetPuppet0.25.0-beta1 (including)0.25.0-beta1 (including)
PuppetPuppet0.25.0-beta2 (including)0.25.0-beta2 (including)
PuppetPuppet0.25.0-rc1 (including)0.25.0-rc1 (including)
PuppetPuppet0.25.1 (including)0.25.1 (including)
PuppetPuppet0.25.1-rc1 (including)0.25.1-rc1 (including)
PuppetPuppet0.25.1-rc2 (including)0.25.1-rc2 (including)
PuppetPuppet0.25.2-rc1 (including)0.25.2-rc1 (including)
PuppetPuppet0.25.2-rc2 (including)0.25.2-rc2 (including)
PuppetPuppet0.25.2-rc3 (including)0.25.2-rc3 (including)
PuppetUbuntuhardy*
PuppetUbuntuintrepid*
PuppetUbuntujaunty*
PuppetUbuntukarmic*
PuppetUbuntuupstream*

Potential Mitigations

  • Follow the principle of least privilege when assigning access rights to entities in a software system.
  • Denying access to a file can prevent an attacker from replacing that file with a link to a sensitive file. Ensure good compartmentalization in the system to provide protected areas that can be trusted.

References