Ansible before versions 2.1.4, 2.2.1 is vulnerable to an improper input validation in Ansibles handling of data sent from client systems. An attacker with control over a client system being managed by Ansible and the ability to send facts back to the Ansible server could use this flaw to execute arbitrary code on the Ansible server using the Ansible server privileges.
The product receives input or data, but it does not validate or incorrectly validates that the input has the properties that are required to process the data safely and correctly.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Ansible | Redhat | * | 2.1.4 (excluding) |
Red Hat Gluster Storage 3.1 for RHEL 7 | RedHat | ansible-0:2.2.1.0-2.el7 | * |
Red Hat Gluster Storage 3.1 for RHEL 7 | RedHat | gdeploy-0:2.0.1-8.el7rhgs | * |
Red Hat Gluster Storage 3.1 for RHEL 7 | RedHat | python-passlib-0:1.6.5-1.el7 | * |
Red Hat OpenShift Container Platform 3.2 | RedHat | ansible-0:2.2.1.0-2.el7 | * |
Red Hat OpenShift Container Platform 3.2 | RedHat | openshift-ansible-0:3.2.53-1.git.0.2fefc17.el7 | * |
Red Hat OpenShift Container Platform 3.3 | RedHat | ansible-0:2.2.1.0-2.el7 | * |
Red Hat OpenShift Container Platform 3.3 | RedHat | openshift-ansible-0:3.3.67-1.git.0.7c5da0c.el7 | * |
Red Hat OpenShift Container Platform 3.4 | RedHat | ansible-0:2.2.1.0-2.el7 | * |
Red Hat OpenShift Container Platform 3.4 | RedHat | openshift-ansible-0:3.4.67-1.git.0.14a0b4d.el7 | * |
Red Hat OpenStack Platform 10.0 (Newton) | RedHat | ansible-0:2.2.1.0-1.el7 | * |
Red Hat Storage Console 2 for Red Hat Enteprise Linux 7 | RedHat | ansible-0:2.2.1.0-1.el7 | * |
Red Hat Storage Console 2 for Red Hat Enteprise Linux 7 | RedHat | ceph-ansible-0:2.1.9-1.el7scon | * |
Red Hat Storage Console 2 for Red Hat Enteprise Linux 7 | RedHat | ceph-installer-0:1.2.2-1.el7scon | * |
Red Hat Storage Console 2 for Red Hat Enteprise Linux 7 | RedHat | python-passlib-0:1.6.5-1.1.el7 | * |
Red Hat Virtualization Engine 4.1 | RedHat | ansible-0:2.3.0.0-4.el7 | * |
Ansible | Ubuntu | artful | * |
Ansible | Ubuntu | esm-apps/xenial | * |
Ansible | Ubuntu | upstream | * |
Ansible | Ubuntu | xenial | * |
Ansible | Ubuntu | yakkety | * |
Ansible | Ubuntu | zesty | * |
Input validation is a frequently-used technique for checking potentially dangerous inputs in order to ensure that the inputs are safe for processing within the code, or when communicating with other components. Input can consist of:
Data can be simple or structured. Structured data can be composed of many nested layers, composed of combinations of metadata and raw data, with other simple or structured data. Many properties of raw data or metadata may need to be validated upon entry into the code, such as:
Implied or derived properties of data must often be calculated or inferred by the code itself. Errors in deriving properties may be considered a contributing factor to improper input validation.