Deserialization of untrusted data in the report-processing code of Puppet, as used by Puppet Server, in the affected releases, allows a client that holds any CA-signed agent certificate to execute arbitrary code on the Puppet Server as its service user by submitting a report containing a crafted rich-data type via PUT request. Where the certificate authority autosigns requests without strong verification, an unauthenticated network attacker can obtain such a certificate.
{
"binaries": [
{
"binary_name": "puppet",
"binary_version": "3.4.3-1ubuntu1.3"
},
{
"binary_name": "puppet-common",
"binary_version": "3.4.3-1ubuntu1.3"
},
{
"binary_name": "puppet-el",
"binary_version": "3.4.3-1ubuntu1.3"
},
{
"binary_name": "puppet-testsuite",
"binary_version": "3.4.3-1ubuntu1.3"
},
{
"binary_name": "puppetmaster",
"binary_version": "3.4.3-1ubuntu1.3"
},
{
"binary_name": "puppetmaster-common",
"binary_version": "3.4.3-1ubuntu1.3"
},
{
"binary_name": "puppetmaster-passenger",
"binary_version": "3.4.3-1ubuntu1.3"
},
{
"binary_name": "vim-puppet",
"binary_version": "3.4.3-1ubuntu1.3"
}
]
}
{
"binaries": [
{
"binary_name": "puppet",
"binary_version": "3.8.5-2ubuntu0.1+esm1"
},
{
"binary_name": "puppet-common",
"binary_version": "3.8.5-2ubuntu0.1+esm1"
},
{
"binary_name": "puppet-el",
"binary_version": "3.8.5-2ubuntu0.1+esm1"
},
{
"binary_name": "puppet-testsuite",
"binary_version": "3.8.5-2ubuntu0.1+esm1"
},
{
"binary_name": "puppetmaster",
"binary_version": "3.8.5-2ubuntu0.1+esm1"
},
{
"binary_name": "puppetmaster-common",
"binary_version": "3.8.5-2ubuntu0.1+esm1"
},
{
"binary_name": "puppetmaster-passenger",
"binary_version": "3.8.5-2ubuntu0.1+esm1"
},
{
"binary_name": "vim-puppet",
"binary_version": "3.8.5-2ubuntu0.1+esm1"
}
]
}
{
"binaries": [
{
"binary_name": "puppet",
"binary_version": "5.4.0-2ubuntu3"
},
{
"binary_name": "puppet-common",
"binary_version": "5.4.0-2ubuntu3"
},
{
"binary_name": "puppet-master",
"binary_version": "5.4.0-2ubuntu3"
},
{
"binary_name": "puppet-master-passenger",
"binary_version": "5.4.0-2ubuntu3"
},
{
"binary_name": "puppetmaster",
"binary_version": "5.4.0-2ubuntu3"
},
{
"binary_name": "puppetmaster-passenger",
"binary_version": "5.4.0-2ubuntu3"
}
]
}
{
"binaries": [
{
"binary_name": "puppet",
"binary_version": "5.5.10-4ubuntu3"
},
{
"binary_name": "puppet-common",
"binary_version": "5.5.10-4ubuntu3"
},
{
"binary_name": "puppet-master",
"binary_version": "5.5.10-4ubuntu3"
},
{
"binary_name": "puppet-master-passenger",
"binary_version": "5.5.10-4ubuntu3"
},
{
"binary_name": "puppetmaster",
"binary_version": "5.5.10-4ubuntu3"
},
{
"binary_name": "puppetmaster-passenger",
"binary_version": "5.5.10-4ubuntu3"
}
]
}