Une brĂšche silencieuse dans une bibliothĂšque ultra-populaire
Câest le genre de faille quâon redoute tous, mais qui passe souvent inaperçue⊠jusquâĂ ce quâun chercheur lâexploite. Le 21 mai 2025, une vulnĂ©rabilitĂ© majeure a Ă©tĂ© dĂ©voilĂ©e dans la bibliothĂšque OpenPGP.js, utilisĂ©e pour le chiffrement et la signature des messages. ProblĂšme : cette faille permettait Ă un attaquant de falsifier des signatures numĂ©riques. Oui, mĂȘme si vous pensiez que le message Ă©tait « authentique ».
đ Câest quoi OpenPGP.js, dĂ©jĂ ?
OpenPGP.js est une bibliothĂšque JavaScript qui implĂ©mente le standard OpenPGP (RFC 4880). Elle est utilisĂ©e dans de nombreux outils web (extensions de navigateur, webmails chiffrĂ©s, applications dâauthentification, etc.) pour chiffrer, dĂ©chiffrer ou signer des messages.
En gros, câest la colonne vertĂ©brale de beaucoup de projets qui veulent faire du chiffrement client-side sans dĂ©pendre de logiciels lourds.
đ ïž DĂ©tails techniques de la faille : CVE-2025-47934
La faille, cataloguĂ©e CVE-2025-47934, affecte la maniĂšre dont OpenPGP.js gĂšre les signatures de messages. Un attaquant peut injecter une signature mal formĂ©e qui semble valide pour le destinataire⊠mais qui ne lâest pas du tout.
Le problĂšme vient dâun dĂ©faut de validation des paquets de signature : la bibliothĂšque ne vĂ©rifie pas correctement certaines mĂ©tadonnĂ©es, permettant Ă un tiers malveillant de se faire passer pour un expĂ©diteur lĂ©gitime.
Un scĂ©nario dâattaque typique :
- Un message PGP semble signĂ© par âAliceâ (par exemple un administrateur IT).
- En réalité, la signature est falsifiée.
- Bob, le destinataire, croit que le message est sûr⊠et clique sur un lien ou exécute une action risquée.
â ïž Qui est concernĂ© ?
Tout projet ou service web utilisant OpenPGP.js dans une version antérieure à la 5.10.1.
Cela inclut :
- des clients mail chiffrés (comme ProtonMail ou Mailvelope),
- des portails internes dâentreprise utilisant du JavaScript pour la sĂ©curitĂ©,
- des extensions de navigateur intégrant la signature OpenPGP.
MĂȘme si vous ne gĂ©rez pas directement ce type dâoutil, vos utilisateurs ou partenaires peuvent y ĂȘtre exposĂ©s.
â Comment se protĂ©ger ?
- Mettre à jour immédiatement vers OpenPGP.js 5.10.1 ou plus récent.
Cette version corrige la vulnérabilité en renforçant la vérification des signatures. - Vérifier les composants de sécurité client-side de vos applications web. Utilisent-ils OpenPGP.js ? Ont-ils été audités récemment ?
- Envisager une vérification serveur des signatures. Bien que le client-side soit pratique, la validation cÎté serveur ajoute une couche de contrÎle supplémentaire.
đ Pourquoi cette faille est prĂ©occupante
Le plus grand danger de cette vulnĂ©rabilitĂ©, câest sa discrĂ©tion. Elle ne casse pas le chiffrement, ne dĂ©clenche pas dâalerte antivirus, mais dĂ©tourne la confiance que les utilisateurs ont dans la signature numĂ©rique. Cela suffit Ă mener des attaques de phishing sophistiquĂ©es, ou Ă manipuler des processus automatisĂ©s.
đ§ En rĂ©sumĂ©
- Faille critique dans OpenPGP.js (CVE-2025-47934)
- Elle permet de falsifier des signatures PGP dans certains cas
- Mise à jour immédiate recommandée
- Risque élevé de phishing ou spoofing dans des environnements sensibles
đ Ă retenir
La sĂ©curitĂ©, ce nâest pas quâune question de chiffrement : câest aussi une question de confiance dans les outils quâon utilise. Et ici, un simple oubli de validation dans une bibliothĂšque critique rappelle Ă quel point cette confiance peut ĂȘtre fragile.
đ Un bon rĂ©flexe : auditer rĂ©guliĂšrement vos dĂ©pendances cĂŽtĂ© front. Ce sont souvent les maillons les plus vulnĂ©rables de la chaĂźne.