CVE-2024-49364
July 01, 2025
tiny-secp256k1 is a tiny secp256k1 native/JS wrapper. Prior to version 1.1.7, a private key can be extracted on signing a malicious JSON-stringifiable object, when global Buffer is the buffer package. This affects only environments where require('buffer') is the NPM buffer package. The Buffer.isBuffer check can be bypassed, resulting in k reuse for different messages, leading to private key extraction over a single invalid message (and a second one for which any message/signature could be taken, e.g. previously known valid one). This issue has been patched in version 1.1.7.
Affected Packages
https://github.com/bitcoinjs/tiny-secp256k1.git (GITHUB):
Affected version(s) >=v0.0.2 <v1.1.7Fix Suggestion:
Update to version v1.1.7tiny-secp256k1 (NPM):
Affected version(s) >=0.0.0-rc-1560324438 <1.1.7Fix Suggestion:
Update to version 1.1.7tiny-secp256k1 (NPM):
Affected version(s) >=0.0.1 <1.1.7Fix Suggestion:
Update to version 1.1.7Related Resources (3)
Do you need more information?
Contact UsCVSS v4
Base Score:
8.1
Attack Vector
NETWORK
Attack Complexity
LOW
Attack Requirements
PRESENT
Privileges Required
NONE
User Interaction
NONE
Vulnerable System Confidentiality
HIGH
Vulnerable System Integrity
HIGH
Vulnerable System Availability
NONE
Subsequent System Confidentiality
NONE
Subsequent System Integrity
NONE
Subsequent System Availability
NONE
Exploit Maturity
POC
CVSS v3
Base Score:
9.1
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
NONE
Weakness Type (CWE)
Insufficiently Protected Credentials
EPSS
Base Score:
0.08