Improper Verification of Cryptographic Signature in tenvoy
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-347.
Summary
tEnvoy contains the PGP, NaCl, and PBKDF2 in node.js and the browser (hashing, random, encryption, decryption, signatures, conversions), used by TogaTech.org. In versions prior to 7.0.3, the `verifyWithMessage` method of `tEnvoyNaClSigningKey` always returns `true` for any signature that has a SHA-512 hash matching the SHA-512 hash of the message even if the signature was invalid. This issue is patched in version 7.0.3. As a workaround: In `tenvoy.js` under the `verifyWithMessage` method definition within the `tEnvoyNaClSigningKey` class, ensure that the return statement call to `this.verify` ends in `.verified`.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| TogaTech | tEnvoy | before 7.0.3 | 7.0.3 | Patch available | CNA |
| — | tenvoy (npm) | before 7.0.3 | 7.0.3 | Patch available | GHSA-7r96-8g3x-g36m |
- tEnvoy VendorTogaTech Affected before 7.0.3 Fixed in 7.0.3 Patch available CNA
- tenvoy (npm) Vendor— Affected before 7.0.3 Fixed in 7.0.3 Patch available GHSA-7r96-8g3x-g36m
Remediation
- Fix · CNA tEnvoy (TogaTech) Fixed in 7.0.3
- Fix · GHSA-7r96-8g3x-g36m tenvoy (npm) Fixed in 7.0.3 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2021-32685
- 2026-10-03 Alias added: GHSA-7r96-8g3x-g36m
- 2026-10-09 EPSS moved to the 50th–90th percentile
References
Advisory 3
Sources
- CVE-2021-32685 · CVE Program
- CVE-2021-32685 · NVD
- FIRST EPSS
- GHSA-7r96-8g3x-g36m · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences