CVE-2018-14780
An out-of-bounds read issue was discovered in the Yubico-Piv 1.5.0 smartcard driver. The file lib/ykpiv.c contains the following code in the function `_ykpiv_fetch_object()`: {% highlight c %} if(sw == SW_SUCCESS) { size_t outlen; int offs = _ykpiv_get_length(data + 1, &outlen); if(offs == 0) { return YKPIV_SIZE_ERROR; } memmove(data, data + 1 + offs, outlen); *len = outlen; return YKPIV_OK; } else { return YKPIV_GENERIC_ERROR; } {% endhighlight %} -- in the end, a `memmove()` occurs with a length retrieved from APDU data. This length is not checked for whether it is outside of the APDU data retrieved. Therefore the `memmove()` could copy bytes behind the allocated data buffer into this buffer.
EPSS 0.15% · 34.9th percentile
Risk Scores
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Ubuntu:Pro:16.04:LTS | yubico-piv-tool | 1.0.1-1, 1.0.3-1, 0 |
| Ubuntu:18.04:LTS | yubico-piv-tool | 0, 1.4.2-2 |
Exploit Intelligence
- https://www.yubico.com/support/security-advisories/ysa-2018-03/ (circl)
- https://www.x41-dsec.de/lab/advisories/x41-2018-001-Yubico-Piv/ (circl)
- [oss-security] 20180814 X41 D-Sec GmbH Security Advisory X41-2018-001: Multiple Vulnerabilities in Yubico Piv (circl)
- USN-4276-1 (circl)
- Yubico PIV Tool 1.5.0 Buffer Overflow Vulnerability (0day-today)
- Yubico PIV Tool 1.5.0 Buffer Overflow Vulnerability (0day-today)
Timeline
- Aug 15, 2018 CVE Published
- Aug 16, 2018 PoC Published
- Apr 14, 2021 EPSS Score
- Jun 23, 2021 EPSS Score
- Aug 24, 2021 EPSS Score
- Oct 26, 2021 EPSS Score
- Dec 27, 2021 EPSS Score
- Feb 28, 2022 EPSS Score
- May 2, 2022 EPSS Score
- Jul 3, 2022 EPSS Score
- Sep 5, 2022 EPSS Score
- Nov 6, 2022 EPSS Score
References
- https://ubuntu.com/security/CVE-2018-14780 third-party-advisory
- https://www.x41-dsec.de/lab/advisories/x41-2018-001-Yubico-Piv/ third-party-advisory
- https://ubuntu.com/security/notices/USN-4276-1 vendor-advisory
- https://www.cve.org/CVERecord?id=CVE-2018-14780 third-party-advisory
- https://ubuntu.com/security/notices/USN-4846-1 vendor-advisory