CVE-2026-44295: Code Injection in protobuf.js 2.x
Platform
nodejs
Component
protobufjs
Opgelost in
2.0.2
CVE-2026-44295 affects versions 2.0.0 through 2.0.1 of protobuf.js, a JavaScript library for encoding and decoding data structures. This vulnerability allows an attacker to inject malicious JavaScript code by crafting a malicious schema or JSON descriptor. The vulnerability is fixed in version 2.0.2 and users are strongly advised to upgrade immediately to prevent potential code execution.
Impact en Aanvalsscenarioswordt vertaald…
The core of this vulnerability lies in the static code generation process within protobuf.js. When generating JavaScript code from a protobuf schema, the library fails to adequately sanitize names used for namespaces, enums, services, and derived types. An attacker can craft a malicious schema containing specially crafted names that, when processed by pbjs, result in the generation of JavaScript code containing arbitrary commands. This injected code could then be executed within the context of the application using protobuf.js, potentially leading to complete compromise of the system. The blast radius extends to any application relying on this library for data serialization, particularly those handling untrusted input.
Uitbuitingscontextwordt vertaald…
This vulnerability was published on 2026-05-13. Currently, there are no publicly available exploits or active campaigns targeting this vulnerability. Its severity is rated HIGH (CVSS: 8.7), indicating a significant risk. The vulnerability is not currently listed on KEV or EPSS, suggesting a low to medium probability of exploitation in the near term, but proactive patching is still highly recommended.
Dreigingsinformatie
Exploit Status
CISA SSVC
CVSS-vector
Wat betekenen deze metrics?
- Attack Vector
- Netwerk — op afstand uitbuitbaar via internet. Geen fysieke of lokale toegang vereist.
- Attack Complexity
- Laag — geen speciale voorwaarden vereist. Betrouwbaar uitbuitbaar.
- Privileges Required
- Laag — elk geldig gebruikersaccount is voldoende.
- User Interaction
- Vereist — slachtoffer moet een bestand openen, op een link klikken of een pagina bezoeken.
- Scope
- Gewijzigd — aanval kan voorbij het kwetsbare component uitbreiden naar andere systemen.
- Confidentiality
- Hoog — volledig verlies van vertrouwelijkheid. Aanvaller kan alle gegevens lezen.
- Integrity
- Hoog — aanvaller kan alle gegevens schrijven, aanpassen of verwijderen.
- Availability
- Geen — geen beschikbaarheidsimpact.
Getroffen Software
Zwakheidsclassificatie (CWE)
Tijdlijn
- Gereserveerd
- Gepubliceerd
Mitigatie en Workaroundswordt vertaald…
The primary mitigation is to upgrade to protobuf.js version 2.0.2 or later, which includes the necessary sanitization fixes. If upgrading is not immediately feasible, consider implementing input validation on protobuf schemas before processing them with pbjs. This could involve whitelisting allowed characters or patterns in names. As a temporary workaround, consider using a Web Application Firewall (WAF) to filter requests containing potentially malicious protobuf schemas. While not a complete solution, it can provide an additional layer of defense. After upgrading, confirm the fix by generating code from a known malicious schema and verifying that the generated JavaScript does not contain the injected code.
Hoe te verhelpenwordt vertaald…
Actualice la biblioteca protobuf.js a la versión 2.0.2 o superior, o a la versión 1.2.1 o superior si está utilizando una versión anterior a 2.0.0. Esto solucionará la vulnerabilidad de inyección de código al sanear correctamente los nombres de los esquemas.
Veelgestelde vragenwordt vertaald…
What is CVE-2026-44295 — Code Injection in protobuf.js?
CVE-2026-44295 is a HIGH severity vulnerability in protobuf.js versions 2.0.0–2.0.1 that allows attackers to inject malicious JavaScript code through crafted protobuf schemas, potentially leading to code execution.
Am I affected by CVE-2026-44295 in protobuf.js?
You are affected if you are using protobuf.js versions 2.0.0 through 2.0.1. Check your project dependencies to determine if you are using a vulnerable version.
How do I fix CVE-2026-44295 in protobuf.js?
Upgrade to protobuf.js version 2.0.2 or later to resolve this vulnerability. If upgrading is not immediately possible, implement input validation on protobuf schemas.
Is CVE-2026-44295 being actively exploited?
Currently, there are no publicly known exploits or active campaigns targeting CVE-2026-44295, but proactive patching is still recommended due to its HIGH severity.
Where can I find the official protobuf.js advisory for CVE-2026-44295?
Refer to the official protobuf.js GitHub repository for updates and advisories: https://github.com/protocolbuffers/protobufjs
Is jouw project getroffen?
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.
Probeer het nu — geen account
Upload een manifest (composer.lock, package-lock.json, WordPress pluginlijst…) of plak uw componentenlijst. U ontvangt direct een kwetsbaarheidsrapport. Een bestand uploaden is slechts het begin: met een account krijgt u continue monitoring, Slack/e-mail alerts, multi-project en white-label rapporten.
Sleep uw afhankelijkheidsbestand hierheen
composer.lock, package-lock.json, requirements.txt, Gemfile.lock, pubspec.lock, Dockerfile...