Out-of-bounds Read Affecting nanopb package, versions <1.30905.0


0.0
medium

Snyk CVSS

    Attack Complexity High
    Scope Changed

    Threat Intelligence

    EPSS 0.26% (66th percentile)
Expand this section
NVD
9.8 critical

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 ID SNYK-COCOAPODS-NANOPB-546355
  • published 4 Feb 2020
  • disclosed 3 Feb 2020
  • credit Unknown

How to fix?

Upgrade nanopb to version 1.30905.0 or higher.

Overview

nanopb is a plain-C implementation of Google's Protocol Buffers data format.

Affected versions of this package are vulnerable to Out-of-bounds Read. It might call free() on a pointer value that comes from uninitialized memory, with the following conditions:

  1. It is compiled with PB_ENABLE_MALLOC
  2. the message to be decoded contains a repeated string, bytes or message field
  3. realloc() runs out of memory when expanding the array

Depending on platform this can result in a crash or further memory corruption, which may be exploitable in some cases.