CVE-2020-26243
No exploitation reported by the sources we read.
- Published2020-11-25
- Fixed in0.4.4 · 0.3.9.7
- WeaknessCWE-119 · CWE-20
Am I affected?
Debian, Ubuntu or Red Hat sometimes backport a fix without changing the upstream version number: such a version reads « to verify », never « affected ».With a domain, we read the version its public headers and pages expose. A distribution build can carry the fix under an older number.
Description
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.
Timeline
dates in UTC- 2020-11-2517:15CVE publishedNVD
Versions per branch
NVD · OSV| Branch | Affected | Fixed in | Source |
|---|---|---|---|
| 0.4 | ≥ 0.4.0, < 0.4.4 | 0.4.4 | NVD · OSV |
| 0.3 | < 0.3.9.7 | 0.3.9.7 | NVD |
| 0.3 | ≥ 0.3.2, < 0.3.9.7 | 0.3.9.7 | OSV |
as publishedRanges as NVD and OSV publish them; a distribution’s build can be fixed under an older number.
Distribution builds and vendor advisories
Packages from OSV.dev and products from the vendors' CSAF advisories.
version not verifiedVersions not verified: read as OSV.dev and the vendors publish them, not checked against each vendor's release list.
Packages
- nanopbUbuntu:Pro:20.04:LTSall versions · fixed in 0.4.1-1ubuntu0.1~esm1
- nanopbopenSUSE:Tumbleweedall versions · fixed in 0.4.5-1.3
- nanopbDebian:14all versions · fixed in 0.4.4-1
- nanopbDebian:13all versions · fixed in 0.4.4-1
- nanopbDebian:12all versions · fixed in 0.4.4-1
Vendor advisories
nanopb: oneof fields with PB_ENABLE_MALLOC can leak memory
servicemesh-proxy as a component of OpenShift Service Mesh 1 · servicemesh-proxy.src as a component of OpenShift Service Mesh 1
Fix
- Update Nanopb project nanopb to 0.4.4 · 0.3.9.7
- No fix planned, says the vendor Red Hat Product Security CVE-2020-26243 · 2 productsWill not fix
Advisories and patches
- github.comRelease Notes
- github.comPatch
- github.comPatch
Detection
- Nuclei template
- none so far ProjectDiscovery
- Exploit-DB
- no entry Exploit-DB
- Proof of concept
- PoC-in-GitHubno public repository identifiedread 2026-11-10
- Metasploit modules
- none listed Metasploit Framework
Sources
- CNACVSS 3.17.5known since 2026-10-23
- NVDCVSS 3.17.5read 2026-10-23
- NVDCVSS 2.04.3read 2026-10-23
- CNAweakness (CWE)CWE-119, CWE-20known since 2026-10-23
- FIRST EPSSEPSS score2.7 %2026-11-09
- OSVaffected packages—
- GitHub AdvisoriesadvisoryMODERATE2020-11-25
Identifiers
- EUVD-2020-1450same flawENISA EUVD · LicenseRef-ENISA-legal-notice
- GHSA-85rr-4rh9-hhwhsame flawGitHub Advisory Database · CC-BY-4.0
- PYSEC-2026-684same flawPyPA Advisory Database · CC-BY-4.0
- openSUSE-SU-2024:11074-1advisory covering several CVEsopenSUSE · LicenseRef-unstated
- USN-6121-1advisory covering several CVEsUbuntu
Technical details
- CVSS v3 Vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- Published
- 2020-11-25
- Last Modified
- 2026-06-17
- NVD status
- Modified
- GitHub Advisory
- GHSA-85rr-4rh9-hhwh
Frequently asked questions
What is CVE-2020-26243?
Is CVE-2020-26243 actively exploited?
What is the CVSS score for CVE-2020-26243?
Running nanopb? Hear about its next vulnerability
Surveillance reads the versions in your stack — a domain, a lockfile or a list — checks each CVE against the ranges its sources publish, and alerts you when one you run is exploited or enters CISA KEV. A version it cannot read stays « version not verified ».
No credit card required · No monthly cap on website lookups · 250 API requests/month
Go further
- Following what attackers exploit right now? The CISA KEV additions of the month, with their patch deadlines.
- Running this software? Vulnerability monitoring alerts you to new vulnerabilities in your products.
Related vulnerabilities
Same product first, then the same vendor advisory and the same publication week.
Sources for this record
- CVE Program · CVE Program Terms of Use
- ENISA EU Vulnerability Database · ENISA legal notice §1.2 (reproduction authorised, provided the source is acknowledged)
- FIRST EPSS · EPSS terms of use (free use, attribution requested)
- GitHub Advisory Database · CC-BY-4.0 · GHSA-85rr-4rh9-hhwh
- NVD · Public domain (17 U.S.C. § 105) for NVD-authored data; third-party content under its own terms
- OSV.dev · Per record, as its publisher states it: each row carries the label in sourceLicense when one is served
- Red Hat Product Security (CSAF and VEX) · CC-BY-4.0