Në bibliotekën JavaScript xml-crypto, e përdorur si varësi nga 402 projekte dhe e shkarkuar nga katalogu NPM rreth një milion herë çdo javë, është zbuluar një cenueshmëri (CVE-2024-32962), së cilës i është caktuar niveli maksimal i rrezikut (10 nga 10). Biblioteka ofron funksione për enkriptim dhe verifikim të nënshkrimit digjital të dokumenteve XML. Cenueshmëria i jep mundësi një sulmuesi të pohojë si të vlefshëm një dokument të rremë, i cili në konfigurimin e parazgjedhur do të verifikohet me sukses nga biblioteka, edhe pse është nënshkruar me një çelës tjetër nga ai i përcaktuar për verifikimin e nënshkrimeve. Problemi shfaqet duke filluar nga versioni xml-crypto 4.0.0 dhe është korrigjuar në mënyrë të heshtur në versionin 6.0.0 të publikuar në janar.
Cenueshmëria shkaktohet nga fakti që, në konfigurimin e parazgjedhur, biblioteka nuk autorizon krijuesin e nënshkrimit, por kontrollon vetëm vlefshmërinë e vetë nënshkrimit. Në veçanti, biblioteka i beson çdo certifikate të vendosur në dokumentin e nënshkruar brenda elementit XML KeyInfo, edhe nëse në cilësime është specifikuar përdorimi i një certifikate të caktuar për verifikimin e nënshkrimeve digjitale. Kështu, për verifikimin me sukses të një dokumenti të modifikuar, sulmuesit i mjafton të zëvendësojë nënshkrimin digjital origjinal me një nënshkrim të krijuar me çelësin e tij privat dhe të vendosë certifikatën e lidhur me atë çelës privat (çelësin publik) në elementin KeyInfo.
Burimi: opennet.ru
