Description
The package elliptic before 6.5.4 are vulnerable to Cryptographic Issues via the secp256k1 implementation in elliptic/ec/key.js. There is no check to confirm that the public key point passed into the derive function actually exists on the secp256k1 curve. This results in the potential for the private key used in this implementation to be revealed after a number of ECDH operations are performed.
Remediation
References
https://github.com/christianlundkvist/blog/blob/master/2020_05_26_secp256k1_twist_attacks/secp256k1_twist_attacks.md
https://github.com/indutny/elliptic/commit/441b7428b0e8f6636c42118ad2aaa186d3c34c3f
https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSNPM-1069836
https://snyk.io/vuln/SNYK-JS-ELLIPTIC-1064899
Related Vulnerabilities
CVE-2018-8013 Vulnerability in maven package org.apache.xmlgraphics:batik-dom
CVE-2019-16761 Vulnerability in npm package slp-validate
CVE-2018-17297 Vulnerability in maven package cn.hutool:hutool-core
CVE-2021-25949 Vulnerability in npm package set-getter
CVE-2021-23416 Vulnerability in npm package curly-bracket-parser