GitHub Advisoryadvisory · npm

GHSA-7r96-8g3x-g36m Improper Verification of Cryptographic Signature

CRITICAL Published 2021-06-28 Modified 2026-01-23 Official page ↗
Aliases
CVE-2021-32685
Ecosystem
npm
Packages
tenvoy
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-347
Reviewed
2021-06-16

Affected packages

• npm tenvoy: < 7.0.3 → fixed in 7.0.3

Description

Impact The `verifyWithMessage` method of `tEnvoyNaClSigningKey` always returns `true` for any signature of a SHA-512 hash matching the SHA-512 hash of the message even if the signature is invalid. Patches Upgrade to `v7.0.3` immediately to resolve this issue. Since the vulnerability lies within the verification method, the previous signatures are still valid. We highly recommend reverifying any signatures that were previously verified with the vulnerable `verifyWithMessage` method. Workarounds In `tenvoy.js` under the `verifyWithMessage` method definition within the `tEnvoyNaClSigningKey` class, ensure that the return statement call to `this.verify` ends in `.verified`. For example, the return statement should start with `return this.verify(signed, password).verified && ` instead of `return this.verify(signed, password) && `. For more information If you have any questions or comments about this advisory: • Open an issue in github.com/TogaTech/tEnvoy

Related

Alias · CVE (1)

  • CVE-2021-32685 tEnvoy contains the PGP, NaCl, and PBKDF2 in node.js and the browser (hashing, random, encryption, decryption, signatures, conversions),… vulnerability

Weakness · CWE (1)

  • CWE-347 Improper Verification of Cryptographic Signature weakness

References