Ein kritischer Artikel über die Sicherheitslücke in frühen Kryptowährungs-Wallets:
Bericht zeigt, dass frühzeitige Krypto-Wallets einer Milliarden-Dollar-Sicherheitslücke ausgesetzt waren
Die umfassende 22-monatige Untersuchung von Unciphered hat eine bedeutende Schwachstelle in BitcoinJS aufgedeckt, einem weit verbreiteten browserbasierten Tool zur Generierung von Kryptowährungs-Wallets. Diese Schwachstelle resultiert aus der SecureRandom-Funktion in der JSBN-Javascript-Bibliothek, die durch Schwächen in der Math.random-Implementierung der gängigen Browser noch verstärkt wird. Betroffen sind Wallets, die zwischen 2011 und 2015 erstellt wurden, wobei die älteren Wallets anfälliger sind.
Sofortiges Handeln empfohlen
Unciphered hat bekanntgegeben, dass sie mit verschiedenen Einrichtungen zusammengearbeitet haben, um Millionen von Nutzern über diese Sicherheitslücke zu informieren. Personen, die Assets in betroffenen Wallets besitzen, wird dringend geraten, sofort zu handeln: die Assets in neu generierte Wallets mit zuverlässiger Software zu übertragen. Dieser proaktive Schritt ist entscheidend, um digitale Assets vor potenziellen Angriffen zu schützen.
Die Sicherheitslücke wurde dem Team erstmals bei einem Projekt für einen Kunden bekannt, der keinen Zugriff mehr auf sein Bitcoin-Wallet bei Blockchain.com hatte. Dies führte zur Wiederentdeckung eines potenziellen Problems bei BitcoinJS-generierten Wallets aus den Jahren 2011-2015. Die Auswirkungen sind enorm und könnten Millionen von Kryptowährungs-Wallets betreffen, die in diesem Zeitraum generiert wurden, wobei ein erheblicher Wert an Vermögenswerten gefährdet ist.
Hintergrund der Schwachstelle
Die Schwachstelle liegt in der Art und Weise, wie BitcoinJS, eine JavaScript-Implementierung von Bitcoin, die SecureRandom-Funktion der JSBN-Bibliothek verwendet hat. Die mangelnde Entropiesammlung und der PRNG (Pseudo-Random Number Generator) dieser Funktion schaffen eine Situation, in der Schlüsselmaterial potenziell von einem Angreifer wiederhergestellt werden könnte. Die Tatsache, dass die SecureRandom-Funktion die kryptografischen Funktionen des Browsers nicht effektiv genutzt hat und stattdessen auf schwächere RNG-Methoden angewiesen war, verschärfte dieses Problem.
Die Situation ist kritisch, da Bitcoin-Privatkeys, die 256 Bit Entropie erfordern, mit weniger Entropie generiert wurden als nötig. Der unterschiedliche Einfluss dieser Schwachstelle macht einige Wallets anfälliger für Angriffe als andere. Es wurden jedoch bestimmte Maßnahmen zur Risikominderung, wie die Integration zusätzlicher Entropiequellen, im Laufe der Zeit umgesetzt, wodurch das Risiko für neuere Wallets reduziert wurde.
Auswirkungen auf andere Kryptowährungen
Die Schwachstelle betrifft nicht nur Bitcoin, sondern könnte auch Wallets basierend auf Dogecoin, Litecoin und Zcash betreffen. Verschiedene Wallet-Services und Projekte, die ihren Code von BitcoinJS abgeleitet haben, wie beispielsweise Dogechain.info und Blockchain.info, könnten ebenfalls betroffen sein. Dies verdeutlicht die weitreichenden Auswirkungen der Sicherheitslücke auf mehrere Kryptowährungen.
Schlussfolgerung
Die Forscher von Unciphered betonen, dass Abhängigkeiten von Drittanbieter-Bibliotheken in der Softwareentwicklung oft zu Sicherheitslücken geführt haben. Ähnliche Probleme wurden auch bei anderen Projekten beobachtet, wie z.B. OpenSSL auf Debian-Plattformen. Die aktuelle Situation bei BitcoinJS und seinem Ökosystem verdeutlicht dieses fortwährende Risiko in der Softwareentwicklung, insbesondere im Hinblick auf die Sicherung finanzieller Vermögenswerte und sensibler Informationen.