Në bibliotekën JavaScript xml-crypto, e cila përdoret si një varësi nga 402 projekte dhe shkarkohet nga katalogu NPM rreth një milion herë çdo javë, është identifikuar një dobësi (CVE-2024-32962), e cila ka marrë nivelin më të lartë të rrezikshmërisë (10 nga 10). Kjo bibliotekë ofron funksione për enkriptimin dhe verifikimin e dokumenteve XML me nënshkrimin dixhital. Dobësia lejon një sulmues të nënshkruajë një dokument të rremë, i cili në konfigurimin e parazgjedhur do të verifikohet me sukses nga biblioteka, pavarësisht se është nënshkruar me një çelës që nuk është i specifikuar për verifikimin e nënshkrimeve. Problemi shfaqet që nga versioni xml-crypto 4.0.0 dhe është korrigjuar në lëshimin e janarit 6.0.0 pa bujë të tepruar.
Dobësia shkaktohet nga fakti se në konfigurimin e parazgjedhur, biblioteca nuk autentifikon krijuesin e nënshkrimit, por kontrollon vetëm saktësinë e vetë nënshkrimit. Në veçanti, biblioteka i beson çdo certifikate të vendosur në dokumentin e nënshkruar në elementin XML KeyInfo, edhe nëse në cilësimet është specifikuar përdorimi i një certifikate të veçantë për verifikimin e nënshkrimeve dixhitale. Kështu, për të arritur verifikimin me sukses të një dokumenti të modifikuar, sulmuesit i mjafton të zëvendësojë nënshkrimin origjinal dixhital me një nënshkrim të formuar me çelësin e tij të mbyllur dhe të vendosë certifikatën e lidhur me këtë çelës të mbyllur (çelësi publik) në elementin KeyInfo.
Burimi: opennet.ru
