Platform
nodejs
Component
node-forge
Opgelost in
1.3.0
CVE-2022-24771 is een beveiligingsprobleem in de RSA PKCS#1 v1.5 handtekeningverificatiecode van node-forge. De code controleert de digest-algoritme structuur niet streng genoeg, waardoor een kwaadwillig aangepaste structuur padding bytes kan stelen en een handtekening kan vervalsen. Dit is mogelijk wanneer een lage publieke exponent wordt gebruikt. De impact is dat een aanvaller vervalste handtekeningen kan creëren. De kwetsbaarheid treft versies van node-forge lager dan 1.3.0. Het probleem is verholpen in node-forge versie 1.3.0.
CVE-2022-24771 heeft betrekking op de node-forge-bibliotheek, specifiek de RSA PKCS#1 v1.5-signatuurverificatiecode. De kwetsbaarheid ligt in een soepele controle van de structuur van het digest-algoritme. Dit stelt een aanvaller in staat om een geconstrueerde structuur te maken die padding-bytes steelt en een ongecontroleerd deel van de PKCS#1-gecodeerde boodschap gebruikt om een handtekening te vervalsen wanneer een laag openbaar exponent wordt gebruikt. Het risico is aanzienlijk voor applicaties die afhankelijk zijn van node-forge voor RSA-signatuurverificatie en configuraties gebruiken met kleine openbare exponenten.
Het exploiteren van deze kwetsbaarheid vereist een aanvaller met kennis van PKCS#1-signaatuurstructuren en de mogelijkheid om kwaadaardige gegevens naar het systeem te sturen dat node-forge gebruikt voor verificatie. Het succes hangt af van de specifieke systeemconfiguratie, inclusief de openbare exponent die in de RSA-sleutels wordt gebruikt. Een kleine openbare exponent vergroot de kans op succesvolle exploitatie. De complexiteit van de aanval ligt in de noodzaak om een zorgvuldig geconstrueerde signaatuurstructuur te maken om de verifieerder te misleiden.
Exploit Status
EPSS
0.14% (35% percentiel)
CVSS-vector
De oplossing voor deze kwetsbaarheid is het updaten van de node-forge-bibliotheek naar versie 1.3.0 of hoger. Deze versie corrigeert de controle van de structuur van het digest-algoritme, waardoor padding-manipulatie en signatuurvervalsing wordt voorkomen. Het wordt ten zeerste aanbevolen om te upgraden naar de nieuwste stabiele versie van node-forge om dit risico te beperken. Controleer bovendien de code die node-forge gebruikt om ervoor te zorgen dat veilige openbare exponenten worden gebruikt en dat best practices voor sleutel- en signatuurbeheer worden gevolgd.
Actualice a la versión 1.3.0 o superior de node-forge para mitigar la vulnerabilidad. Esta actualización corrige la verificación inadecuada de la firma criptográfica, previniendo la posibilidad de falsificación de firmas bajo ciertas condiciones.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
PKCS#1 v1.5 is een standaard voor het formaat van RSA-berichten. Het definieert hoe berichten moeten worden gecodeerd en opgevuld voordat ze worden ondertekend of gedecodeerd met RSA.
De openbare exponent is een belangrijk onderdeel van de RSA-sleutel. Een kleine openbare exponent kan de handtekening kwetsbaarder maken voor aanvallen zoals deze, omdat het de berekening van een vervalste handtekening vergemakkelijkt.
Als onmiddellijke updates niet mogelijk zijn, overweeg dan extra maatregelen te nemen om het risico te beperken, zoals het gebruik van grotere openbare exponenten en strenge signatuurvalidatie.
Momenteel zijn er geen specifieke tools om deze kwetsbaarheid te detecteren. Een grondige code-review wordt echter aanbevolen om enig onveilig gebruik van node-forge te identificeren.
KEV: no geeft aan dat deze kwetsbaarheid niet is opgenomen in de Vulnerability Knowledgebase van de community.
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.