CVE Vulnerabilities

CVE-2017-2295

Deserialization of Untrusted Data

Published: Jul 05, 2017 | Modified: Apr 20, 2025
CVSS 3.x
8.2
HIGH
Source:
NVD
CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N
CVSS 2.x
6 MEDIUM
AV:N/AC:M/Au:S/C:P/I:P/A:P
RedHat/V2
RedHat/V3
8.1 IMPORTANT
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Ubuntu
MEDIUM
root.io logo minimus.io logo echo.ai logo

Versions of Puppet prior to 4.10.1 will deserialize data off the wire (from the agent to the server, in this case) with a attacker-specified format. This could be used to force YAML deserialization in an unsafe manner, which would lead to remote code execution. This change constrains the format of data on the wire to PSON or safely decoded YAML.

Weakness

The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.

Affected Software

NameVendorStart VersionEnd Version
PuppetPuppet*4.10.0 (including)
Red Hat Satellite 6.3 for RHEL 7RedHatcandlepin-0:2.1.14-1.el7*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-0:1.15.6.34-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-bootloaders-redhat-0:201801241201-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-discovery-image-0:3.4.4-1*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-installer-1:1.15.6.8-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-proxy-0:1.15.6.4-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-selinux-0:1.15.6.2-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHathiera-0:1.3.1-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-0:3.4.5-15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-certs-tools-0:2.4.0-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-client-bootstrap-0:1.5.1-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-installer-base-0:3.4.5.26-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-selinux-0:3.0.2-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkobo-0:0.5.1-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-0:2.13.4.6-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-docker-0:2.4.1-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-katello-0:1.0.2-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-ostree-0:1.2.1.1-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-puppet-0:2.13.4-3.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-rpm-0:2.13.4.8-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpuppet-foreman_scap_client-0:0.3.16-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpython-zope-interface-0:4.0.5-4.el7*
Red Hat Satellite 6.3 for RHEL 7RedHatredhat-access-insights-puppet-0:0.0.9-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-foreman_scap_client-0:0.3.0-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-kafo-0:2.0.2-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-kafo_parsers-0:0.1.6-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-kafo_wizards-0:0.0.1-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_dhcp_remote_isc-0:0.0.2.1-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_discovery-0:1.0.4-3.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_discovery_image-0:1.0.9-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_dynflow-0:0.1.10-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_openscap-0:0.6.9-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_pulp-0:1.3.0-1.git.0.b5c2768.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_remote_execution_ssh-0:0.1.6-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-tilt-0:1.3.7-2.git.0.3b416c9.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatsatellite-0:6.3.0-23.0.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatsatellite-installer-0:6.3.0.12-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-bastion-0:5.1.1.4-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_bootdisk-0:10.0.2.2-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_discovery-0:9.1.5.3-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_docker-0:3.1.0.3-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_hooks-0:0.3.14-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_openscap-0:0.7.11-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman-redhat_access-0:2.0.13-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_remote_execution-0:1.3.7.2-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_remote_execution_core-0:1.0.6-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman-tasks-0:0.9.6.4-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman-tasks-core-0:0.1.8-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_templates-0:5.0.1-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_theme_satellite-0:1.0.4.16-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_virt_who_configure-0:0.1.9-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli-0:0.11.0.1-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_csv-0:2.3.0-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman-0:0.11.0.5-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_admin-0:0.0.8-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_bootdisk-0:0.1.3.3-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_discovery-0:1.0.0-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_docker-0:0.0.6-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_openscap-0:0.1.5-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_remote_execution-0:0.0.6-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_tasks-0:0.0.12-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_virt_who_configure-0:0.0.3-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_katello-0:0.11.3.5-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-katello-0:3.4.5.58-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-ovirt_provision_plugin-0:1.0.2-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-smart_proxy_dynflow_core-0:0.1.10-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatcandlepin-0:2.1.14-1.el7*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-0:1.15.6.34-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-bootloaders-redhat-0:201801241201-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-discovery-image-0:3.4.4-1*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-installer-1:1.15.6.8-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-proxy-0:1.15.6.4-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatforeman-selinux-0:1.15.6.2-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHathiera-0:1.3.1-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-0:3.4.5-15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-certs-tools-0:2.4.0-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-client-bootstrap-0:1.5.1-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-installer-base-0:3.4.5.26-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkatello-selinux-0:3.0.2-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatkobo-0:0.5.1-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-0:2.13.4.6-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-docker-0:2.4.1-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-katello-0:1.0.2-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-ostree-0:1.2.1.1-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-puppet-0:2.13.4-3.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpulp-rpm-0:2.13.4.8-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpuppet-foreman_scap_client-0:0.3.16-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatpython-zope-interface-0:4.0.5-4.el7*
Red Hat Satellite 6.3 for RHEL 7RedHatredhat-access-insights-puppet-0:0.0.9-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-foreman_scap_client-0:0.3.0-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-kafo-0:2.0.2-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-kafo_parsers-0:0.1.6-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-kafo_wizards-0:0.0.1-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_dhcp_remote_isc-0:0.0.2.1-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_discovery-0:1.0.4-3.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_discovery_image-0:1.0.9-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_dynflow-0:0.1.10-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_openscap-0:0.6.9-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_pulp-0:1.3.0-1.git.0.b5c2768.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-smart_proxy_remote_execution_ssh-0:0.1.6-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatrubygem-tilt-0:1.3.7-2.git.0.3b416c9.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatsatellite-0:6.3.0-23.0.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHatsatellite-installer-0:6.3.0.12-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-bastion-0:5.1.1.4-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_bootdisk-0:10.0.2.2-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_discovery-0:9.1.5.3-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_docker-0:3.1.0.3-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_hooks-0:0.3.14-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_openscap-0:0.7.11-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman-redhat_access-0:2.0.13-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_remote_execution-0:1.3.7.2-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_remote_execution_core-0:1.0.6-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman-tasks-0:0.9.6.4-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman-tasks-core-0:0.1.8-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_templates-0:5.0.1-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_theme_satellite-0:1.0.4.16-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-foreman_virt_who_configure-0:0.1.9-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli-0:0.11.0.1-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_csv-0:2.3.0-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman-0:0.11.0.5-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_admin-0:0.0.8-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_bootdisk-0:0.1.3.3-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_discovery-0:1.0.0-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_docker-0:0.0.6-2.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_openscap-0:0.1.5-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_remote_execution-0:0.0.6-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_tasks-0:0.0.12-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman_virt_who_configure-0:0.0.3-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-hammer_cli_katello-0:0.11.3.5-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-katello-0:3.4.5.58-1.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-ovirt_provision_plugin-0:1.0.2-1.fm1_15.el7sat*
Red Hat Satellite 6.3 for RHEL 7RedHattfm-rubygem-smart_proxy_dynflow_core-0:0.1.10-1.fm1_15.el7sat*
PuppetUbuntuesm-apps/xenial*
PuppetUbuntuesm-infra-legacy/trusty*
PuppetUbuntutrusty*
PuppetUbuntutrusty/esm*
PuppetUbuntuupstream*
PuppetUbuntuxenial*
PuppetUbuntuyakkety*
PuppetUbuntuzesty*

Potential Mitigations

  • Make fields transient to protect them from deserialization.
  • An attempt to serialize and then deserialize a class containing transient fields will result in NULLs where the transient data should be. This is an excellent way to prevent time, environment-based, or sensitive variables from being carried over and used improperly.

References