CVEvulnerability

CVE-2018-14779

6.8 MEDIUM Published 2018-08-15 Modified 2026-06-17 Official page ↗
Status
Modified
Published
2018-08-15
Last modified
2026-06-17
Assigner
[email protected]
CVSS 3.0 ([email protected])
6.8 MEDIUM — CVSS:3.0/AV:P/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0 ([email protected])
7.2 HIGH — AV:L/AC:L/Au:N/C:C/I:C/A:C
Weaknesses
CWE-119, CWE-787

Description

A buffer overflow 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_transfer_data()`: {% highlight c %} if(*out_len + recv_len - 2 > max_out) { fprintf(stderr, "Output buffer to small, wanted to write %lu, max was %lu.", *out_len + recv_len - 2, max_out); } if(out_data) { memcpy(out_data, data, recv_len - 2); out_data += recv_len - 2; *out_len += recv_len - 2; } {% endhighlight %} -- it is clearly checked whether the buffer is big enough to hold the data copied using `memcpy()`, but no error handling happens to avoid the `memcpy()` in such cases. This code path can be triggered with malicious data coming from a smartcard.

Affected configurations

• yubico piv manager (< 1.4.2) • yubico piv manager 1.4.2 • yubico piv manager 1.4.2b • yubico piv manager 1.4.2c • yubico piv manager 1.4.2d • yubico piv manager 1.4.2e • yubico piv manager 1.4.2f • yubico piv manager 1.4.2g • yubico piv tool (< 1.6.0) • yubico smart card minidriver (<= 3.7.3.160)

Related

Weakness · CWE (2)

  • CWE-119 Improper Restriction of Operations within the Bounds of a Memory Buffer weakness
  • CWE-787 Out-of-bounds Write weakness

References