"Dark Skippy" Vulnerability

Article length
2 min read
Published
Aug 07, 2024
"Dark Skippy" Vulnerability

Recently, a group of Bitcoin researchers (Nick Farrow, Lloyd Fournier, and Robin Linus) disclosed a security vulnerability — called “Dark Skippy” — that potentially impacts Bitcoin hardware signing devices. Here’s what you need to know about Dark Skippy:

1. Hardware signing devices insert random values called “nonces” every time they sign Bitcoin transactions.

2. Weak nonces (values that are not sufficiently random) can allow an attacker to mathematically brute-force the private key from the signatures alone, just by analyzing transactions on the public blockchain.

This is a well-known class of attack. Dark Skippy is a new technique which makes it easier to grind the private key from weak nonces.

What are the conditions required for the attack?

The attack requires either:

1. Loading malicious firmware onto the device, which generates weak nonces.

2. A bug in the vendor’s official firmware that produces weak nonces.

What about passphrases?

A common question is whether adding a (BIP39) passphrase to a seed phrase provides protection against Dark Skippy and similar attacks. The answer is no. This attack can work directly against the master private key, not the seed phrase. Therefore, adding a passphrase will not protect you against this type of attack.

How do I protect myself from this type of attack?

1. Order hardware signing devices straight from the vendors, if possible. The more direct, the lower the likelihood of tampering.

2. Use hardware vendors that have tamper-resistant mechanisms in place, such as tamper-evident sealed bags, firmware attestation, etc.

3. Use hardware that employs a secure bootloader and enables you to easily verify the integrity of the source firmware and its updates.

4. Use hardware that follows security standards in generating nonces. One such standard is RFC6979 (deterministic nonces).

5. Verify the authenticity of the firmware every time you upgrade. (Tip: bookmark the vendor website to avoid phishing).

6. Avoid upgrading firmware unless you absolutely have to. Use another device if you want to experiment with firmware features that you don’t actually need for your main wallet.

7. Use multisig, preferably multi-vendor multisig. This alone significantly increases the difficulty of executing the attack.

Multisig versus Anti-exfil

You might have heard that “anti-exfil” is a way to prevent the above attack. In short, anti-exfil describes a security technique which combines entropy from the hardware signing device with entropy from a second device (typically the host of the companion software wallet) to generate the nonces.

However, there are two downsides to this approach. First, there is currently no anti-exfil standard, so you’d have to trust that the vendors implement anti-exfil securely. Secondly, since anti-exfil changes the way a signature is generated, i.e., asking for entropy from a second device for every single transaction, it is not compatible with the way most Bitcoin wallets work today, and therefore introduces a UI/UX challenge.

Until anti-exfil has a well-defined standard and wider wallet compatibility, we recommend multisig as the more practical approach. Fundamentally, multisig achieves the same goal as anti-exfil: it also requires entropy from a second device to authorize each Bitcoin transaction. Multisig can also add entropy from more than just 2 devices, if you so choose (3-of-5 multisig, for example). Last but not least, multisig has been widely used for over a decade in Bitcoin, battle-tested (securing hundreds of billions worth of Bitcoin), and at this point has been very well standardized (PSBT, BSMS, Output Descriptors, to name a few standards).

Hence, use multisig if you are concerned about Dark Skippy or potentially malicious firmware.

In conclusion, while the Dark Skippy vulnerability highlights potential risks in hardware signing devices, users can significantly mitigate these risks by following best practices in device procurement and usage, and by implementing multisig setups. Stay informed, verify your devices and firmware, and consider multisig for enhanced security of your Bitcoin holdings.

Share

More from us

Join our newsletter

Subscribe to get our latest news, updates and special offers
Newsletter

Download our app

App Store DownloadPlay Store Download
Mac DownloadWindows DownloadLinux Download