O vulnerabilitate critică a jsPDF permite sustragerea de informații prin fișiere PDF generate
Sursă: https://www.bleepingcomputer.com
Biblioteca jsPDF pentru generarea de documente PDF în aplicații JavaScript este expusă unei vulnerabilități critice care permite unui atacator să sustragă date sensibile din sistemul de fișiere local, incluzându-le în fișierele generate.
Vulnerabilitatea este o eroare de tip local file inclusion and path traversal ce permite transmiterea de rute neverificate către mecanismul de încărcare a fișierelor (loadFile) în versiunile jsPDF anterioare versiunii 4.0.
Aceasta este urmărită ca CVE-2025-68428 și a primit un scor CvSS de 9.2/10.
Biblioteca jsPDF este un pachet larg adoptat, cu peste 3,5 milioane de descărcări săptămânale în registrul npm.
În versiunile Node.js ale jsPDF, funcția loadFile este utilizată pentru citirea sistemului de fișiere local. Problema apare atunci când datele introduse de utilizator sunt transmise drept cale de fișier, determinând jsPDF să încorporeze conținutul fișierului în fișierul PDF generat.
Sunt afectate și alte metode de încărcare a fișierelor, inclusiv addImage, html și addFont, deoarece toate pot apela funcția loadFile.
Conform buletinului de securitate jsPDF, vulnerabilitatea afectează doar versiunile Node.js ale bibliotecii, și anume fișierele dist/jspdf.node.js și dist/jspdf.node.min.js.
CVE-2025-68428 a fost remediat în versiunea 4.0.0 a jsPDF prin restricționarea accesului la sistemul de fișiere în mod implicit și bazarea în schimb pe modul de permisiune Node.js.
Cu toate acestea, specialiștii notează că acest mod este experimental în Node 20, astfel încât sunt recomandate versiunile 22.13.0, 23.5.0 sau 24.0.0 și versiunile ulterioare.
O altă avertizare de luat în considerare este că activarea indicatorului –permission, o soluție sugerată de dezvoltatori, afectează întregul proces Node.js, nu doar jsPDF.
De asemenea, specialiștii subliniază faptul că permisiunile excesiv de ample ale sistemului de fișiere adăugate la indicatorul de configurare –allow-fs-read anulează remedierea.
Echipa jsPDF recomandă ca versiunile mai vechi ale Node să verifice căile furnizate de utilizatori înainte de a le transmite către jsPDF.
Sursă: https://www.bleepingcomputer.com/news/security/critical-jspdf-flaw-lets-hackers-steal-secrets-via-generated-pdfs/
