4.3 Medium
CVSS2
Attack Vector
NETWORK
Attack Complexity
MEDIUM
Authentication
NONE
Confidentiality Impact
NONE
Integrity Impact
NONE
Availability Impact
PARTIAL
AV:N/AC:M/Au:N/C:N/I:N/A:P
7.5 High
CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
NONE
Integrity Impact
NONE
Availability Impact
HIGH
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
0.003 Low
EPSS
Percentile
71.6%
Nanopb is a small code-size Protocol Buffers implementation. In Nanopb
before versions 0.4.4 and 0.3.9.7, decoding specifically formed message can
leak memory if dynamic allocation is enabled and an oneof field contains a
static submessage that contains a dynamic field, and the message being
decoded contains the submessage multiple times. This is rare in normal
messages, but it is a concern when untrusted data is parsed. This is fixed
in versions 0.3.9.7 and 0.4.4. The following workarounds are available: 1)
Set the option no_unions
for the oneof field. This will generate fields
as separate instead of C union, and avoids triggering the problematic code.
2) Set the type of the submessage field inside oneof to FT_POINTER
. This
way the whole submessage will be dynamically allocated and the problematic
code is not executed. 3) Use an arena allocator for nanopb, to make sure
all memory can be released afterwards.
github.com/nanopb/nanopb/blob/2b48a361786dfb1f63d229840217a93aae064667/CHANGELOG.txt
github.com/nanopb/nanopb/commit/4fe23595732b6f1254cfc11a9b8d6da900b55b0c
github.com/nanopb/nanopb/commit/edf6dcbffee4d614ac0c2c1b258ab95185bdb6e9 (0.4.4)
github.com/nanopb/nanopb/issues/615
github.com/nanopb/nanopb/security/advisories/GHSA-85rr-4rh9-hhwh
launchpad.net/bugs/cve/CVE-2020-26243
nvd.nist.gov/vuln/detail/CVE-2020-26243
security-tracker.debian.org/tracker/CVE-2020-26243
ubuntu.com/security/notices/USN-6121-1
www.cve.org/CVERecord?id=CVE-2020-26243
4.3 Medium
CVSS2
Attack Vector
NETWORK
Attack Complexity
MEDIUM
Authentication
NONE
Confidentiality Impact
NONE
Integrity Impact
NONE
Availability Impact
PARTIAL
AV:N/AC:M/Au:N/C:N/I:N/A:P
7.5 High
CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
NONE
Integrity Impact
NONE
Availability Impact
HIGH
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
0.003 Low
EPSS
Percentile
71.6%