
Cryptocurrency wallet BitGo has patched a critical vulnerability that could unlock the privacy of retail and institutional users.
The Fireblocks cryptography research team identified the flaw and notified the BitGo team in December 2022. The vulnerability is related to the BitGo Threshold Signature Scheme (TSS) wallet and has the potential to unlock the personal keys of exchanges, banks, businesses and users of the platform.
The Fireblocks team named the vulnerability the BitGo Zero Proof Vulnerability, which would allow potential attackers to extract private keys in minutes using a small amount of JavaScript code. BitGo suspended the vulnerable service on December 10 and released a patch in February 2023 that required a client-side update to the latest version on March 17.
The Fireblocks team explains how to identify exploits using a free BitGo account on the mainnet. The missing part of the mandatory zero-knowledge proof in BitGo’s ECDSA TSS wallet protocol allows the team to unlock private keys through simple attacks.
Related: Euler Finance hacked for over $195M in flash loan attack
The industry-standard enterprise-grade cryptocurrency asset platform uses either multi-party-computation (MPC/TSS) or multi-signature technology to eliminate the possibility of a single attack. This is done by distributing the private key among several parties, to ensure security control if one of the parties is compromised.
Fireblocks can prove that internal or external attackers can gain access to private keys in two ways.
A compromised client-side user can initiate a transaction to obtain a portion of the private key held in the BitGo system. BitGo will then perform a signature computation before sharing the leaked BitGo key fragment information.
“An attacker can now reconstruct the full private key, open it in an external wallet and immediately withdraw the funds or at a later stage.”
The second scenario is considered an attack if BitGo is compromised. The attacker will wait for the customer to initiate the transaction, before retaliating with a bad value. This is then used to enter transactions with the customer’s key fragment. An attacker can use the response to decrypt the user’s key, before combining it with BitGo’s key fragment to gain control of the wallet.
Fireblocks noted that no attack was carried out by the identified vector, but warned users to consider creating a new wallet and transferring funds from the ECDSA TSS BitGo wallet before the patch.
Wallet hacks have become common in the cryptocurrency industry in recent years. As of August 2022, more than $8 million has been drained from more than 7,000 Solana-based Slope wallets. Algorand’s network wallet service MyAlgo was also targeted by a wallet hack that saw more than $9 million drained from various high-profile wallets.