5.3med
CVE-2017-7481
Ansible fails to properly mark lookup-plugin results as unsafe
Also known as GHSA-w578-j992-554x, PYSEC-2018-41
Published 8 y ago · modified 4 mo ago · JSON
CVSS
5.3
v3.0 · CNA
CISA KEV
No
not known exploited
EPSS
4.7%
percentile 92%
Public exploits
0
none known
Summary
Ansible before versions 2.3.1.0 and 2.4.0.0 fails to properly mark lookup-plugin results as unsafe. If an attacker could control the results of lookup() calls, they could inject Unicode strings to be parsed by the jinja2 templating system, resulting in code execution. By default, the jinja2 templating language is now marked as 'unsafe' and is not evaluated.
Exploit prediction (EPSS)
4.74% probability of exploitation in the next 30 days, higher than 92% of all scored CVEs.
CVSS scores
| Assigned by | Version | Score | Vector |
|---|---|---|---|
| CNA | 3.0 | 5.3 | CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CNA | 3.0 | 5.3 | CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N |
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
| GitHub | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pypi | ansible | >=2.3.0.0, <2.3.1.0 <2.1.6.0 >=2.2.0.0, <2.2.3.0 <2.3.1.0 >=2.3.2.0, <2.4.0.0 | 2.3.1.0 2.1.6.0 2.2.3.0 2.4.0.0 |
Affected products
- [UNKNOWN] ansible
Classification
- Weakness
- CWE-20 Improper Input Validation
References
- access.redhat.com /errata/RHSA-2017:1599 · vendor-advisory, x_refsource_REDHAT, x_transferred
- bugzilla.redhat.com /show_bug.cgi?id=CVE-2017-7481 · x_refsource_CONFIRM, x_transferred
- access.redhat.com /errata/RHSA-2017:1334 · vendor-advisory, x_refsource_REDHAT, x_transferred
- securityfocus.com /bid/98492 · vdb-entry, x_refsource_BID, x_transferred
- github.com /ansible/ansible/commit/ed56f51f185a1ffd7ea57130d260098686fcc7c2 · x_refsource_CONFIRM, x_transferred
- access.redhat.com /errata/RHSA-2017:1244 · vendor-advisory, x_refsource_REDHAT, x_transferred
- access.redhat.com /errata/RHSA-2017:1499 · vendor-advisory, x_refsource_REDHAT, x_transferred
- access.redhat.com /errata/RHSA-2017:2524 · vendor-advisory, x_refsource_REDHAT, x_transferred
- access.redhat.com /errata/RHSA-2017:1476 · vendor-advisory, x_refsource_REDHAT, x_transferred
- usn.ubuntu.com /4072-1/ · vendor-advisory, x_refsource_UBUNTU, x_transferred
- lists.debian.org /debian-lts-announce/2021/01/msg00023.html · mailing-list, x_refsource_MLIST, x_transferred
- nvd.nist.gov /vuln/detail/CVE-2017-7481 · advisory
- github.com /ansible/ansible/commit/fd30f5328986f9e1da434474481f32bf918a600c · web
- github.com /ansible/ansible/commit/f0e348f5eeb70c1fb3127d90891da43b5c0a9d29 · web
- github.com /ansible/ansible/commit/a1886911fcf4b691130cfc70dfc5daa5e07c46a3 · web
- web.archive.org /web/20170801122609/http://www.securityfocus.com/bid/98492 · web
- usn.ubuntu.com /4072-1 · web
- github.com /pypa/advisory-database/tree/main/vulns/ansible/PYSEC-2018-41.yaml · web
- github.com /ansible/ansible · package
- github.com /advisories/GHSA-w578-j992-554x · advisory
Sources
- CVE List: CVE-2017-7481
- GitHub Advisory: GHSA-w578-j992-554x
- NVD: CVE-2017-7481
- OSV: PYSEC-2018-41
vulnwire keeps one entry per vulnerability: the CVE id wins, then GHSA; records that alias each other are merged. Machine-readable: JSON.