CVE Vulnerabilities

CVE-2010-0156

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

Published: Mar 03, 2010 | Modified: Nov 21, 2024
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

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

Name Vendor Start Version End Version
Puppet Puppet 0.24.3 (including) 0.24.3 (including)
Puppet Puppet 0.24.4 (including) 0.24.4 (including)
Puppet Puppet 0.24.5 (including) 0.24.5 (including)
Puppet Puppet 0.24.6 (including) 0.24.6 (including)
Puppet Puppet 0.24.6-rc1 (including) 0.24.6-rc1 (including)
Puppet Puppet 0.24.6-rc2 (including) 0.24.6-rc2 (including)
Puppet Puppet 0.24.7 (including) 0.24.7 (including)
Puppet Puppet 0.24.7-rc2 (including) 0.24.7-rc2 (including)
Puppet Puppet 0.24.8 (including) 0.24.8 (including)
Puppet Puppet 0.24.8-rc1 (including) 0.24.8-rc1 (including)
Puppet Puppet 0.25.0 (including) 0.25.0 (including)
Puppet Puppet 0.25.0-beta1 (including) 0.25.0-beta1 (including)
Puppet Puppet 0.25.0-beta2 (including) 0.25.0-beta2 (including)
Puppet Puppet 0.25.0-rc1 (including) 0.25.0-rc1 (including)
Puppet Puppet 0.25.1 (including) 0.25.1 (including)
Puppet Puppet 0.25.1-rc1 (including) 0.25.1-rc1 (including)
Puppet Puppet 0.25.1-rc2 (including) 0.25.1-rc2 (including)
Puppet Puppet 0.25.2-rc1 (including) 0.25.2-rc1 (including)
Puppet Puppet 0.25.2-rc2 (including) 0.25.2-rc2 (including)
Puppet Puppet 0.25.2-rc3 (including) 0.25.2-rc3 (including)
Puppet Ubuntu hardy *
Puppet Ubuntu intrepid *
Puppet Ubuntu jaunty *
Puppet Ubuntu karmic *
Puppet Ubuntu upstream *

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