CVE-2026-44288protobufjs: Overlong UTF-8 decoding
Description
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.5.6 and 8.0.2, protobufjs includes a minimal UTF-8 decoder that accepted overlong UTF-8 byte sequences and decoded them to their canonical characters instead of replacing them. An attacker who can provide protobuf binary data decoded through the affected UTF-8 path may be able to bypass application-level checks that inspect raw bytes before protobuf string decoding. For example, bytes that do not contain certain ASCII characters could decode to strings containing those characters. This vulnerability is fixed in 7.5.6 and 8.0.2.
Data: CVE.org, NVD, CISA KEV, FIRST EPSS, Ubuntu. Published as the sources state it, in English.
Affected products and versions
| Vendor | Product | Versions | |
|---|---|---|---|
| protobufjs | protobuf.js | < 7.5.6, >= 8.0.0, < 8.0.2 | |
| protobufjs project | protobufjs | < 7.5.6 |
References and patches
CPE matches (NVD) (2)
cpe:2.3:a:protobufjs_project:protobufjs:*:*:*:*:*:node.js:*:*< 7.5.6cpe:2.3:a:protobufjs_project:protobufjs:*:*:*:*:*:node.js:*:*≥ 8.0.0 < 8.0.2