Plateforme
nodejs
Composant
jspdf
Corrigé dans
4.2.2
4.2.1
La vulnérabilité CVE-2026-31938 est une faille de type Cross-Site Scripting (XSS) critique découverte dans la bibliothèque jspdf pour Node.js. Elle permet à un attaquant d'injecter du code HTML malveillant, y compris des scripts, dans le contexte du navigateur où le PDF généré est ouvert. Cette vulnérabilité affecte les versions de jspdf antérieures à 4.2.1 et peut avoir des conséquences graves sur la sécurité des applications web.
L'impact de cette vulnérabilité est significatif. Un attaquant peut exploiter cette faille en manipulant les options de la fonction output de jspdf, notamment les options pdfobjectnewwindow, pdfjsnewwindow et dataurlnewwindow. En fournissant des valeurs malveillantes pour ces options, l'attaquant peut injecter du code HTML arbitraire, tel que des scripts JavaScript, dans le PDF généré. Lorsque l'utilisateur ouvre ce PDF, le code malveillant s'exécute dans son navigateur, permettant à l'attaquant de voler des informations sensibles, de modifier le contenu de la page web ou de rediriger l'utilisateur vers un site web malveillant. Cette vulnérabilité est particulièrement préoccupante car elle peut être exploitée sans nécessiter d'authentification, affectant potentiellement tous les utilisateurs de l'application web.
Cette vulnérabilité a été rendue publique le 2026-03-17. Il n'y a pas d'indication d'une exploitation active à ce jour, mais la nature critique de la vulnérabilité et la facilité potentielle d'exploitation la rendent susceptible d'être ciblée. Il n'est pas listé sur le KEV à ce jour. Des preuves de concept (PoC) publiques pourraient émerger, augmentant le risque d'exploitation.
Applications that utilize the jspdf library to generate PDFs are at risk, particularly those that accept user-provided data to customize the PDF content. This includes web applications, desktop applications, and any other software that integrates with jspdf. Shared hosting environments where multiple applications share the same Node.js environment are also at increased risk, as a vulnerability in one application could potentially compromise others.
• nodejs / supply-chain:
Get-Process | Where-Object {$_.ProcessName -like '*node*'} | Select-Object Name, Id, Path• nodejs / supply-chain:
Get-ChildItem -Path Env:NODE_PATH -Recurse -Filter "jspdf*" | Select-Object FullName• generic web:
Use curl or wget to check for endpoints that generate PDFs and attempt to inject HTML payloads into parameters related to PDF options. Examine the generated PDF file for signs of injected script.
disclosure
Statut de l'Exploit
EPSS
0.04% (percentile 12%)
CISA SSVC
Vecteur CVSS
La mitigation principale consiste à mettre à jour la bibliothèque jspdf vers la version 4.2.1 ou ultérieure, qui corrige cette vulnérabilité. Si la mise à jour n'est pas immédiatement possible, une solution de contournement temporaire consiste à valider et à assainir rigoureusement toutes les données fournies par l'utilisateur avant de les utiliser dans les options de la fonction output. L'utilisation d'un Web Application Firewall (WAF) peut également aider à bloquer les requêtes malveillantes contenant des scripts injectés. Il est également recommandé de désactiver les options vulnérables si elles ne sont pas nécessaires. Après la mise à jour, vérifiez que la fonction output ne génère plus de code HTML malveillant en testant avec des entrées contrôlées.
Mettez à jour la bibliothèque jsPDF à la version 4.2.1 ou supérieure. Alternativement, filtrez les entrées utilisateur avant de les transmettre à la méthode output afin d'éviter l'injection de HTML.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
CVE-2026-31938 is a critical XSS vulnerability in the jspdf Node.js library, allowing attackers to inject malicious HTML into generated PDFs.
You are affected if you are using jspdf versions prior to 4.2.1 and your application allows user-controlled data to influence PDF generation options.
Upgrade to jspdf version 4.2.1 or later. If immediate upgrade is not possible, implement input validation and sanitization on PDF generation options.
No active exploitation campaigns have been reported, but public proof-of-concept exploits are likely to emerge.
Refer to the jspdf project's repository and related security advisories for the latest information.
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.