Release of Invalid Pointer or Reference Affecting nanopb package, versions [,0.3.9.8)[0.4.0,0.4.5)


Severity

Recommended
0.0
high
0
10

CVSS assessment made by Snyk's Security Team. Learn more

Threat Intelligence

EPSS
0.14% (50th 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-PYTHON-NANOPB-1930819
  • published25 Nov 2021
  • disclosed23 Mar 2021
  • creditUnknown

Introduced: 23 Mar 2021

CVE-2021-21401  (opens in a new tab)
CWE-763  (opens in a new tab)

How to fix?

Upgrade nanopb to version 0.3.9.8, 0.4.5 or higher.

Overview

nanopb is a python binding for C package nanopb.

Affected versions of this package are vulnerable to Release of Invalid Pointer or Reference. Decoding a specifically formed message can cause invalid free() or realloc() calls if the message type contains an oneof field, and the oneof directly contains both a pointer field and a non-pointer field. If the message data first contains the non-pointer field and then the pointer field, the data of the non-pointer field is incorrectly treated as if it was a pointer value. Such message data rarely occurs in normal messages, but it is a concern when untrusted data is parsed.

CVSS Scores

version 3.1