Umgåelse af verifikation i xml-crypto biblioteket, der har million downloads om ugen

I JavaScript-biblioteket xml-crypto, som anvendes som afhængighed af 402 projekter og downloades fra NPM-kataloget omkring en million gange hver uge, er der opdaget en sårbarhed (CVE-2024-32962), som har fået den maksimale alvorlighed (10 ud af 10). Biblioteket tilbyder funktioner til kryptering og verifikation af digitale signaturer i XML-dokumenter. Sårbarheden giver en angrebsperson mulighed for at bekræfte et falsk dokument, som i standardkonfigurationen vil blive succesfuldt verificeret af biblioteket, selvom det er underskrevet med en nøgle, der ikke er angivet til verifikation af signaturer. Problemet opstår fra version xml-crypto 4.0.0 og er uden yderligere offentliggørelse blevet rettet i januarudgaven 6.0.0.

Sårbarheden skyldes, at biblioteket i standardkonfigurationen ikke autoriserer opretteren af signaturen, men kun kontrollerer signaturens korrekthed. Specifikt stoler biblioteket på ethvert certifikat, der er placeret i det signerede dokument i XML-elementet KeyInfo, selvom der i indstillingerne er angivet, at der skal bruges et bestemt certifikat til at verificere digitale signaturer. Dermed er det for en angrebsperson tilstrækkeligt at erstatte den originale digitale signatur med en signatur dannet med sin private nøgle og placere det tilknyttede certifikat (den offentlige nøgle) i KeyInfo-elementet for succesfuld verifikation af det ændrede dokument.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster