📰 Contexte
Source : BleepingComputer, publié le 18 avril 2026. La société de sécurité applicative Endor Labs a publié un rapport détaillant une vulnérabilité critique d’exécution de code à distance (RCE) dans protobuf.js, l’implémentation JavaScript des Protocol Buffers de Google. La bibliothèque est téléchargée environ 50 millions de fois par semaine sur npm.
🔍 Détails techniques
La vulnérabilité est identifiée sous GHSA-xq3m-2v4x-88gg (aucun CVE officiel attribué à ce jour). Elle est causée par une génération dynamique de code non sécurisée :
- La bibliothèque construit des fonctions JavaScript à partir de schémas protobuf par concaténation de chaînes, exécutées via le constructeur
Function() - Les identifiants dérivés des schémas (ex : noms de messages) ne sont pas validés
- Un attaquant peut fournir un schéma malveillant injectant du code arbitraire dans la fonction générée
- Ce code est exécuté lors du traitement d’un message utilisant ce schéma
🎯 Impact
- Versions affectées : protobuf.js ≤ 8.0.0 et ≤ 7.5.4
- Accès possible aux variables d’environnement, credentials, bases de données et systèmes internes
- Possibilité de mouvement latéral au sein de l’infrastructure
- Risque également sur les machines de développeurs chargeant des schémas non fiables localement
- Endor Labs qualifie l’exploitation de « straightforward » (simple)
- Un PoC minimal est inclus dans l’advisory de sécurité
- Aucune exploitation active dans la nature n’a été observée à ce jour
🛠️ Correctifs
- Versions corrigées : 8.0.1 et 7.5.5
- Le patch assainit les noms de types en supprimant les caractères non alphanumériques
- Correctif npm 8.x disponible depuis le 4 avril 2026, 7.x depuis le 15 avril 2026
- Patch GitHub publié le 11 mars 2026
- Vulnérabilité signalée par le chercheur Cristian Staicu (Endor Labs) le 2 mars 2026
📋 Type d’article
Article de type rapport de vulnérabilité / alerte de sécurité, visant à informer les équipes de sécurité et les développeurs de l’existence d’une faille critique avec PoC public dans une bibliothèque npm très largement utilisée.
🧠 TTPs et IOCs détectés
TTP
- T1059.007 — Command and Scripting Interpreter: JavaScript (Execution)
- T1195.002 — Supply Chain Compromise: Compromise Software Supply Chain (Initial Access)
- T1552.001 — Unsecured Credentials: Credentials In Files (Credential Access)
- T1021 — Remote Services (Lateral Movement)
🟡 Indice de vérification factuelle : 50/100 (moyenne)
- ✅ bleepingcomputer.com — source reconnue (liste interne) (20pts)
- ✅ 3061 chars — texte complet (15pts)
- ⬜ aucun IOC extrait (0pts)
- ⬜ pas d’IOC à vérifier (0pts)
- ✅ 4 TTPs MITRE identifiées (15pts)
- ⬜ date RSS ou approximée (0pts)
- ⬜ aucun acteur de menace nommé (0pts)
- ⬜ pas de CVE à vérifier (0pts)
🔗 Source originale : https://www.bleepingcomputer.com/news/security/critical-flaw-in-protobuf-library-enables-javascript-code-execution/