CVE-2020-14968

CRITICAL9.8EPSS 0.55%

RSA-PSS signature validation vulnerability by prepending zeros in jsrsasign

Published: 6/26/2020Modified: 11/8/2023
Also known as:GHSA-q3gh-5r98-j4h3

Description

### Impact Jsrsasign can verify RSA-PSS signature which value can expressed as BigInteger. When there is a valid RSA-PSS signature value, this vulnerability is also accept value with prepending zeros as a valid signature. - If you are not use RSA-PSS signature validation, this vulnerability is not affected. - Risk to accept a forged or crafted message to be signed is low. - Risk to raise memory corruption is low since jsrsasign uses BigInteger class. ### Patches Users using RSA-PSS signature validation should upgrade to 8.0.17. ### Workarounds Reject RSA-PSS signatures with unnecessary prepending zeros. ### References https://github.com/kjur/jsrsasign/security/advisories/GHSA-q3gh-5r98-j4h3 [https://github.com/kjur/jsrsasign/issues/438](https://github.com/kjur/jsrsasign/issues/438) https://nvd.nist.gov/vuln/detail/CVE-2020-14968 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-14968 https://vuldb.com/?id.157125 https://kjur.github.io/jsrsasign/api/symbols/RSAKey.html#.verifyWithMessageHashPSS

Affected packages (1)

CVSS scores

SourceVersionSeverityVector
osvCVSS 3.1CRITICAL9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

References (14)