CVE-2020-5235
Last modified
CVE-2020-5235 is a critical-severity vulnerability rated 9.8/10 on the CVSS scale. 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. EPSS estimates a 1.73% chance of exploitation in the next 30 days.
Description
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.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness Enumeration
Affected Software
| Vendor | Product | Versions |
|---|---|---|
| Nanopb Project | Nanopb | < 0.2.9.4 |
| Nanopb Project | Nanopb | >= 0.3.0, < 0.3.9.5 |
| Nanopb Project | Nanopb | >= 0.4.0, < 0.4.1 |
References
- https://github.com/nanopb/nanopb/commit/45582f1f97f49e2abfdba1463d1e1027682d9856Patch, Third Party Advisory
- https://github.com/nanopb/nanopb/commit/7b396821ddd06df8e39143f16e1dc0a4645b89a3Patch, Third Party Advisory
- https://github.com/nanopb/nanopb/commit/aa9d0d1ca78d6adec3adfeecf3a706c7f9df81f2Patch, Third Party Advisory
- https://github.com/nanopb/nanopb/security/advisories/GHSA-gcx3-7m76-287pPatch, Third Party Advisory
- https://github.com/nanopb/nanopb/commit/45582f1f97f49e2abfdba1463d1e1027682d9856Patch, Third Party Advisory
- https://github.com/nanopb/nanopb/commit/7b396821ddd06df8e39143f16e1dc0a4645b89a3Patch, Third Party Advisory
- https://github.com/nanopb/nanopb/commit/aa9d0d1ca78d6adec3adfeecf3a706c7f9df81f2Patch, Third Party Advisory
- https://github.com/nanopb/nanopb/security/advisories/GHSA-gcx3-7m76-287pPatch, Third Party Advisory
Timeline
- Published
- Last Modified
- Status
- Modified
Frequently Asked Questions
What is CVE-2020-5235?
How severe is CVE-2020-5235?
How do I fix CVE-2020-5235?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2020
- CVE-2020-5229Opencast before 8.1 stores passwords using the rather outdat…8.1
- CVE-2020-5230Opencast before 8.1 and 7.6 allows almost arbitrary identifi…7.5
- CVE-2020-5231In Opencast before 7.6 and 8.1, users with the role ROLE_COU…6.5
- CVE-2020-5232A user who owns an ENS domain can set a trapdoor, allowing t…8.7
- CVE-2020-5233OAuth2 Proxy before 5.0 has an open redirect vulnerability. …6.1
- CVE-2020-5234MessagePack for C# and Unity before version 1.9.11 and 2.1.9…6.5
- CVE-2020-5236Waitress version 1.4.2 allows a DOS attack When waitress rec…6.5
- CVE-2020-5237Multiple relative path traversal vulnerabilities in the oneu…8.8
- CVE-2020-5238The table extension in GitHub Flavored Markdown before versi…6.5
- CVE-2020-5239In Mailu before version 1.7, an authenticated user can explo…8.8
- CVE-2020-5240In wagtail-2fa before 1.4.1, any user with access to the CMS…8.5
- CVE-2020-5241matestack-ui-core (RubyGem) before 0.7.4 is vulnerable to XS…5.4
Are you affected by CVE-2020-5235?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
