CVE-2022-47930: IO FinNet tss-lib vulnerable to replay attacks involving proofs
(updated )
An issue was discovered in IO FinNet tss-lib before 2.0.0. The parameter ssid for defining a session id is not used through the MPC implementation, which makes replaying and spoofing of messages easier. In particular, the Schnorr proof of knowledge implemented in sch.go does not utilize a session id, context, or random nonce in the generation of the challenge. This could allow a malicious user or an eavesdropper to replay a valid proof sent in the past.
References
- github.com/IoFinnet/tss-lib/releases/tag/v2.0.0
- github.com/advisories/GHSA-c58h-qv6g-fw74
- github.com/bnb-chain/tss-lib
- github.com/bnb-chain/tss-lib/commit/1a14f3ac9ecbf6115e80d44c7fff16bcc3139250
- github.com/bnb-chain/tss-lib/pull/256
- medium.com/@iofinnet/security-disclosure-for-ecdsa-and-eddsa-threshold-signature-schemes-4e969af7155b
- nvd.nist.gov/vuln/detail/CVE-2022-47930
Detect and mitigate CVE-2022-47930 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →