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.
References
Link | Resource |
---|---|
http://www.openwall.com/lists/oss-security/2018/08/14/2 | Mailing List Third Party Advisory |
https://usn.ubuntu.com/4276-1/ | |
https://www.x41-dsec.de/lab/advisories/x41-2018-001-Yubico-Piv/ | Third Party Advisory |
https://www.yubico.com/support/security-advisories/ysa-2018-03/ | Vendor Advisory |
http://www.openwall.com/lists/oss-security/2018/08/14/2 | Mailing List Third Party Advisory |
https://usn.ubuntu.com/4276-1/ | |
https://www.x41-dsec.de/lab/advisories/x41-2018-001-Yubico-Piv/ | Third Party Advisory |
https://www.yubico.com/support/security-advisories/ysa-2018-03/ | Vendor Advisory |
Configurations
Configuration 1 (hide)
|
History
21 Nov 2024, 03:49
Type | Values Removed | Values Added |
---|---|---|
References | () http://www.openwall.com/lists/oss-security/2018/08/14/2 - Mailing List, Third Party Advisory | |
References | () https://usn.ubuntu.com/4276-1/ - | |
References | () https://www.x41-dsec.de/lab/advisories/x41-2018-001-Yubico-Piv/ - Third Party Advisory | |
References | () https://www.yubico.com/support/security-advisories/ysa-2018-03/ - Vendor Advisory |
Information
Published : 2018-08-15 18:29
Updated : 2024-11-21 03:49
NVD link : CVE-2018-14780
Mitre link : CVE-2018-14780
CVE.ORG link : CVE-2018-14780
JSON object : View
Products Affected
yubico
- smart_card_minidriver
- piv_manager
- piv_tool
CWE
CWE-125
Out-of-bounds Read