Out-of-Bounds Affecting yubico-piv-tool package, versions <1.5.0-3.3.33


Severity

Recommended
0.0
high
0
10

Based on SUSE Linux Enterprise Server security rating.

Threat Intelligence

EPSS
0.16% (53rd percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-SLES150-YUBICOPIVTOOL-2753303
  • published14 Apr 2022
  • disclosed30 Apr 2019

Introduced: 30 Apr 2019

CVE-2018-14779  (opens in a new tab)
CWE-119  (opens in a new tab)
CWE-787  (opens in a new tab)

How to fix?

Upgrade SLES:15.0 yubico-piv-tool to version 1.5.0-3.3.33 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream yubico-piv-tool package and not the yubico-piv-tool package as distributed by SLES. See How to fix? for SLES:15.0 relevant fixed versions and status.

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.