CVE-2026-44295: Code Injection in protobuf.js 2.x
Plataforma
nodejs
Componente
protobufjs
Corrigido em
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.
Impacto e Cenários de Ataquetraduzindo…
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.
Contexto de Exploraçãotraduzindo…
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.
Inteligência de Ameaças
Status do Exploit
CISA SSVC
Vetor CVSS
O que significam essas métricas?
- Attack Vector
- Rede — explorável remotamente pela internet. Sem acesso físico ou local necessário.
- Attack Complexity
- Baixa — sem condições especiais. O atacante pode explorar de forma confiável.
- Privileges Required
- Baixo — qualquer conta de usuário válida é suficiente.
- User Interaction
- Necessária — a vítima deve abrir um arquivo, clicar em um link ou visitar uma página.
- Scope
- Alterado — o ataque pode pivotar para além do componente vulnerável.
- Confidentiality
- Alto — perda total de confidencialidade. O atacante pode ler todos os dados.
- Integrity
- Alto — o atacante pode escrever, modificar ou excluir qualquer dado.
- Availability
- Nenhum — sem impacto na disponibilidade.
Software Afetado
Classificação de Fraqueza (CWE)
Linha do tempo
- Reservado
- Publicada
Mitigação e Soluções Alternativastraduzindo…
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.
Como corrigirtraduzindo…
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.
Perguntas frequentestraduzindo…
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
Seu projeto está afetado?
Envie seu arquivo de dependências e descubra na hora se esta e outras CVEs te atingem.
Experimente agora — sem conta
Faça upload de qualquer manifesto (composer.lock, package-lock.json, lista de plugins WordPress…) ou cole sua lista de componentes. Receba um relatório de vulnerabilidades instantaneamente. Fazer upload de um arquivo é só o começo: com uma conta, você obtém monitoramento contínuo, alertas por Slack/email, relatórios multiprojeto e white-label.
Arraste e solte seu arquivo de dependências
composer.lock, package-lock.json, requirements.txt, Gemfile.lock, pubspec.lock, Dockerfile...