Description
io.finnet tss-lib before 2.0.0 can leak a secret key via a timing side-channel attack because it relies on the scalar-multiplication implementation in Go crypto/elliptic, which is not constant time (there is an if statement in a loop). One leak is in ecdsa/keygen/round_2.go. (bnb-chain/tss-lib and thorchain/tss are also affected.)
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Go | github.com/binance-chain/tss-lib | < 2.0.0 | 2.0.0 | GHSA-3w84-4mjc-rjw7 |
| Go | github.com/binance-chain/tss-lib | all versions | — | GO-2023-1732 |
| Go | github.com/bnb-chain/tss-lib | < 2.0.0 | 2.0.0 | GHSA-3w84-4mjc-rjw7 |
| Go | github.com/bnb-chain/tss-lib | < 1.3.6-0.20230324145555-bb6fb30bd3eb | 1.3.6-0.20230324145555-bb6fb30bd3eb | GO-2023-1732 |