Miggo Logo

CVE-2012-1987:
Puppet Denial of Service and Arbitrary File Write

3.5

CVSS Score

Basic Information

EPSS Score
0.71858%
Published
5/14/2022
Updated
1/15/2024
KEV Status
No
Technology
TechnologyRuby

Technical Details

CVSS Vector
AV:N/AC:M/Au:S/C:N/I:N/A:P
Package NameEcosystemVulnerable VersionsFirst Patched Version
puppetrubygems>= 2.6.0, < 2.6.152.6.15
puppetrubygems>= 2.7.0, < 2.7.132.7.13

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The GitHub patch explicitly removes the 'bucket_path' parameter in the uri2indirection function (lib/puppet/network/http/api/v1.rb), which was previously passed through from user input. The commit message and tests confirm this parameter was the attack vector for arbitrary file writes. The memory consumption DoS (via /dev/random) is likely related to filebucket path handling but lacks explicit function references in the provided data. The primary vulnerable function is clearly identified by the patch.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

* vuln*r**ility in Pupp*t *.*.x ***or* *.*.** *n* *.*.x ***or* *.*.**, *n* Pupp*t *nt*rpris* (P*) Us*rs *.*, *.*, *.*.x, *.*.x, *n* *.*.x ***or* *.*.* *llows r*mot* *ut**nti**t** us*rs wit* ***nt SSL k*ys to **(*)** **us* * **ni*l o* s*rvi** (m*mory

Reasoning

T** *it*u* p*t** *xpli*itly r*mov*s t** '*u*k*t_p*t*' p*r*m*t*r in t** `uri*in*ir**tion` *un*tion (`li*/pupp*t/n*twork/*ttp/*pi/v*.r*`), w*i** w*s pr*viously p*ss** t*rou** *rom us*r input. T** *ommit m*ss*** *n* t*sts *on*irm t*is p*r*m*t*r w*s t**