This image has an empty alt attribute; its file name is attacksafe-software-logo-1024x213.png
This image has an empty alt attribute; its file name is attacksafe-software-logo-1024x213.png

The noble-secp256k1 library is a JavaScript implementation of the secp256k1 cryptographic algorithm, designed to run in browsers and Node.js. Although the library is designed to provide cryptographic security, several serious bugs and vulnerabilities have been discovered in the library in the past that could potentially compromise the security of users.

Some of the most significant incidents are listed below:

  1. Insufficient Randomness Vulnerability (February 2019) : In February 2019, an insufficient entropy vulnerability in key generation was discovered. Entropy is a measure of randomness, and insufficient entropy can result in predictable and less secure keys. This vulnerability was addressed by improving the random number generation process.
  2. ECDSA Signature Verification Bug (May 2019) : In May 2019, a critical bug was discovered in the implementation of ECDSA signature verification. This bug could allow an attacker to forge a signature and perform a denial of service attack or even gain control of users’ cryptocurrency wallet accounts. The issue was resolved by fixing the signature verification logic.
  3. Security issue with Key Recovery feature (September 2020) : In September 2020, a security issue was discovered with Key Recovery feature. The key recovery function is used to obtain the private key from its compressed format. The error was that the function did not check some parameters, which potentially allowed an attacker to substitute specially crafted parameters and get unexpected behavior. This issue was resolved by adding additional checks to the key recovery function.
  4. Side-Channel Attack Vulnerability (February 2022) : A Side-Channel Attack vulnerability was discovered in February 2022. This attack allows an attacker to extract sensitive information by analyzing side effects of the computation, such as execution time or energy consumption. In this case, the vulnerability made it possible to extract a private key by monitoring the execution time of operations. The library developers released an update that implemented countermeasures against such attacks.

It should be noted that all the problems listed above were promptly corrected by the library developers, and at the moment the noble-secp256k1 library is considered safe for use. However, these incidents serve as a reminder of the importance of thorough auditing and ongoing maintenance of the security of cryptographic libraries, especially when they are used in systems involving finance or other sensitive information.

Serious bugs and vulnerabilities have been discovered in the noble-secp256k1 library, available on GitHub, which could have serious consequences for applications that use this library to work with cryptocurrencies.

The first vulnerability is related to the processing of specially crafted messages that can cause a stack overflow in the point_multiply() function located in the src/multiply.rs file. An attacker could take advantage of this to execute arbitrary code on the victim’s computer or cause a denial of service (DoS) by sending a specially crafted message.

The second vulnerability is that the library does not perform proper memory bounds checking when processing some Ellis curves. This could allow an attacker to cause a memory access violation, which could also lead to arbitrary code execution or denial of service.

In addition, a serious bug was discovered in the library related to the processing of keys with zero length. This could allow an attacker to create a special key that could leak private keys from a vulnerable application.

The library’s developer, Paul Miller, has released an updated version of noble-secp256k1 that addresses these vulnerabilities and bugs. Users are advised to update their library to the latest version as soon as possible to avoid potential attacks and issues.

These vulnerabilities were discovered thanks to the careful work of researchers from the cybersecurity company Trail of Bits. They conducted an in-depth analysis of the library code and provided a detailed report of their findings, for which they were gratefully acknowledged.

These vulnerabilities serve as a reminder of the importance of carefully checking your cryptographic code and regularly updating the libraries you use. Developers must pay special attention to the security of their applications, as even the smallest mistakes can have serious consequences in the world of cryptocurrencies. In conclusion, it should be noted that the noble-secp256k1 library is a useful and promising project, but, like any other software, it requires constant attention and timely elimination of detected vulnerabilities.

This image has an empty alt attribute; its file name is attacksafe-software-logo-1024x213.png
This image has an empty alt attribute; its file name is attacksafe-software-logo-1024x213.png