There is a potentially exploitable out of memory condition In Nanopb before 0.4.1, 0.3.9.5, and 0.2.9.4. When nanopb is compiled with PB_ENABLE_MALLOC, the message to be decoded contains a repeated string, bytes or message field and realloc() runs out of memory when expanding the array nanopb can end up calling `free()` on a pointer value that comes from uninitialized memory. Depending on platform this can result in a crash or further memory corruption, which may be exploitable in some cases. This problem is fixed in nanopb-0.4.1, nanopb-0.3.9.5, nanopb-0.2.9.4.
Conclusion & alert: CVE-2020-5235 is rated Moderate Risk (53/100): CVSS Medium severity, with medium exploitation likelihood (EPSS 1.68%). Core evidence: EPSS rose +1.13% over the last day, indicating growing attacker interest. Mandatory action: Review affected assets and schedule remediation.
Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.
EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).
| # | Date | Old EPSS score | New EPSS score | Delta (New - Old) |
|---|---|---|---|---|
| 1 | 2026-06-15 | 0.56% | 1.68% | +1.13% |
| 2 | 2025-11-21 | 0.81% | 0.56% | -0.26% |
| 3 | 2025-11-18 | — | 0.81% | — |
Full EPSS history (18 records total)
CVSS metrics for this CVE.
| Base score | Version | Severity | Vector | Exploitability | Impact | Score source |
|---|---|---|---|---|---|---|
| 6.5 | 3.1 | MEDIUM |
|
2.2 | 3.7 | [email protected] |
| 9.8 | 3.1 | CRITICAL |
|
3.9 | 5.9 | [email protected] |
| 7.5 | 2.0 | HIGH |
|
10.0 | 6.4 | [email protected] |
| vendor | priority | summary | link |
|---|---|---|---|
debian
|
unimportant | CVE-2020-5235 unimportant priority: Debian including 1 source packages (nanopb), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 5. | https://security-tracker.debian.org/tracker/CVE-2020-5235 |
suse
|
medium | CVE-2020-5235 severity moderate: SUSE including 3 source package names (libprotobuf-nanopb0-0.4.5-1.3, nanopb-devel-0.4.5-1.3, nanopb-source-0.4.5-1.3), 3 product×package rows across 1 product lines (openSUSE Tumbleweed): Fixed 3. | https://www.suse.com/security/cve/CVE-2020-5235/ |
| Vendor | Product | Version | Raw CPE |
|---|---|---|---|
| nanopb_project | nanopb | < 0.2.9.4 | cpe:2.3:a:nanopb_project:nanopb:*:*:*:*:*:*:*:* |
| nanopb_project | nanopb | >= 0.3.0, < 0.3.9.5 | cpe:2.3:a:nanopb_project:nanopb:*:*:*:*:*:*:*:* |
| nanopb_project | nanopb | >= 0.4.0, < 0.4.1 | cpe:2.3:a:nanopb_project:nanopb:*:*:*:*:*:*:*:* |
| URL | Tags |
|---|---|
| https://github.com/nanopb/nanopb/commit/45582f1f97f49e2abfdba1463d1e1027682d9856 | Patch Third Party Advisory |
| https://github.com/nanopb/nanopb/commit/7b396821ddd06df8e39143f16e1dc0a4645b89a3 | Patch Third Party Advisory |
| https://github.com/nanopb/nanopb/commit/aa9d0d1ca78d6adec3adfeecf3a706c7f9df81f2 | Patch Third Party Advisory |
| https://github.com/nanopb/nanopb/security/advisories/GHSA-gcx3-7m76-287p | Patch Third Party Advisory |