{"id":"GHSA-q3gh-5r98-j4h3","summary":"RSA-PSS signature validation vulnerability by prepending zeros in jsrsasign","details":"### Impact\nJsrsasign 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.\n\n- If you are not use RSA-PSS signature validation, this vulnerability is not affected. \n- Risk to accept a forged or crafted message to be signed is low.\n- Risk to raise memory corruption is low since jsrsasign uses BigInteger class.\n\n### Patches\nUsers using RSA-PSS signature validation should upgrade to 8.0.17.\n\n### Workarounds\nReject RSA-PSS signatures with unnecessary prepending zeros.\n\n### References\nhttps://github.com/kjur/jsrsasign/security/advisories/GHSA-q3gh-5r98-j4h3\n[https://github.com/kjur/jsrsasign/issues/438](https://github.com/kjur/jsrsasign/issues/438)\nhttps://nvd.nist.gov/vuln/detail/CVE-2020-14968\nhttps://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-14968\nhttps://vuldb.com/?id.157125\nhttps://kjur.github.io/jsrsasign/api/symbols/RSAKey.html#.verifyWithMessageHashPSS\n\n","aliases":["CVE-2020-14968"],"modified":"2023-11-01T04:51:55.005077Z","published":"2020-06-26T16:26:50Z","database_specific":{"nvd_published_at":"2020-06-22T12:15:00Z","cwe_ids":["CWE-119"],"severity":"CRITICAL","github_reviewed":true,"github_reviewed_at":"2020-06-26T16:19:52Z"},"references":[{"type":"WEB","url":"https://github.com/kjur/jsrsasign/security/advisories/GHSA-q3gh-5r98-j4h3"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2020-14968"},{"type":"WEB","url":"https://github.com/kjur/jsrsasign/issues/438"},{"type":"WEB","url":"https://github.com/kjur/jsrsasign/commit/3bcc088c727658d7235854cd2a409a904cc2ce99"},{"type":"WEB","url":"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-14968"},{"type":"PACKAGE","url":"https://github.com/kjur/jsrsasign"},{"type":"WEB","url":"https://github.com/kjur/jsrsasign/releases/tag/8.0.17"},{"type":"WEB","url":"https://github.com/kjur/jsrsasign/releases/tag/8.0.18"},{"type":"WEB","url":"https://kjur.github.io/jsrsasign"},{"type":"WEB","url":"https://kjur.github.io/jsrsasign/api/symbols/RSAKey.html#.verifyWithMessageHashPSS"},{"type":"WEB","url":"https://security.netapp.com/advisory/ntap-20200724-0001"},{"type":"WEB","url":"https://vuldb.com/?id.157125"},{"type":"WEB","url":"https://www.npmjs.com/advisories/1541"},{"type":"WEB","url":"https://www.npmjs.com/package/jsrsasign"}],"affected":[{"package":{"name":"jsrsasign","ecosystem":"npm","purl":"pkg:npm/jsrsasign"},"ranges":[{"type":"SEMVER","events":[{"introduced":"3.0.0"},{"fixed":"8.0.17"}]}],"database_specific":{"last_known_affected_version_range":"\u003c 8.0.16","source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2020/06/GHSA-q3gh-5r98-j4h3/GHSA-q3gh-5r98-j4h3.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"}]}