Def Con: Bitcoin-Brainwallets werden professionell bestohlen
Sogenannte Brainwallets für Bitcoins, bei denen der Key aus einem Passwort generiert wird, lassen sich leicht angreifen. Offenbar gibt es eine Reihe von Kriminellen, die systematisch nach verwundbaren Brainwallets suchen.

Es klingt zunächst nach einer attraktiven Idee: Bei Bitcoin-Brainwallets muss man den Schlüssel für eine Bitcoin-Adresse nicht speichern. Man merkt sich lediglich ein Passwort, der zugehörige Bitcoin-Schlüssel kann dann aus dem Passwort jederzeit neu generiert werden. Diese Brainwallets erfreuen sich seit einiger Zeit großer Beliebtheit in der Bitcoin-Community. Auf der Def-Con-Konferenz in Las Vegas warnt der Sicherheitsforscher Ryan Castellucci allerdings vor Brainwallets und bittet alle Nutzer, die Nutzung sofort zu beenden und das Geld auf eine andere Bitcoin-Adresse zu transferieren. Bereits vor der Def Con hatte Castellucci eine entsprechende Warnung in seinem Blog veröffentlicht.
Passwort erzeugt privaten Schlüssel
Brainwallets generieren aus einem Passwort durch einige einfache Hashing-Schritte einen Bitcoin-Schlüssel. Einer der Vorteile von Brainwallets soll unter anderem sein, dass anschließend kein Beweis mehr für die Existenz eines Bitcoin-Kontos auf einem Computer vorliegt, man spricht auch von "Plausible Deniability". Ein TEDx-Talk propagiert sogar, dass derartige Brainwallets von Flüchtlingen, die ihr Land in Not verlassen müssen, genutzt werden könnten, um ihr Geld sicher über die Grenze zu schaffen.
Doch das alles scheitert daran, dass Menschen sehr schlecht darin sind, sich gute Passwörter zu merken. Das Problem: Sämtliche öffentlichen Schlüssel sind in der Bitcoin-Blockchain für jeden einsehbar. Und mit entsprechender Rechenpower kann man die Passwörter durch Brute-Force-Angriffe durchprobieren. Vergleichbar ist das mit einer geklauten Datenbank, die Passwort-Hashes enthält - nur dass in diesem Fall niemand die Datenbank klauen muss, da sie bereits öffentlich ist. Doch der Angriff ist sogar einfacher als gegen eine gängige Passwort-Datenbank, denn die Bitcoin-Brainwallets haben keinen Salt und sie verwenden auch keinen für Passwörter geeigneten, besonders langsamen Hash wie Bcrypt oder Argon2.
Wem gehören die 250 gefährdeten Bitcoins?
Castellucci entwickelte zunächst einen einfachen Passwort-Cracker für Brainwallets und nutzte dafür eine Liste mit gängigen Sätzen. Nach kurzer Zeit fand er ein Bitcoin-Konto mit 250 Bitcoins, zur damaligen Zeit etwa 20.000 Dollar. Das dazugehörige Passwort war der Satz "how much wood could a woodchuck chuck if a woodchuck could chuck wood".
Castellucci hätte das Geld natürlich stehlen können, doch er wollte den rechtmäßigen Besitzer über die Lücke informieren, was sich als nicht einfach herausstellte. Zusammen mit Dan Kaminsky entwickelte er die Idee, einen kleinen Betrag auf das Konto zu transferieren und anschließend wieder abzubuchen - in der Hoffnung, dass der Besitzer das bemerken und sich melden würde. Allerdings passierte ein Fehler und versehentlich wurde das gesamte Geld auf eine automatisch durch Castelluccis Bitcoin-Client angelegte Adresse abgebucht. Er überwies das Geld anschließend wieder zurück.
Letztendlich gelang es Castellucci auf andere Weise, den Besitzer ausfindig zu machen und zu warnen: Das Geld war durch einen Mining-Pool erzeugt worden, der Betreiber des Mining-Pools war in der Lage, den Kontakt herzustellen.
Code für Passwort-Cracker Brainflayer veröffentlicht
Castellucci entwickelte anschließend die Software Brainflayer, einen optimierten Passwort-Cracker für Bitcoins. Den Quellcode hat er inzwischen auf Github veröffentlicht. Auf einer Amazon-EC-Instanz lassen sich damit für einen Dollar 560 Millionen Passwörter durchprobieren.
Brainflayer ist zwar schneller als bisherige öffentlich bekannte Ansätze, doch Castellucci weist explizit darauf hin, dass er davon ausgeht, dass bessere Tools möglich sind. Die Berechnungen könnten weiter optimiert werden, mittels Grafikkarten, FPGAs oder ASICs könnte man die Geschwindigkeit weiter erhöhen. ASICs, die fürs Bitcoin-Mining optimiert wurden, können allerdings nicht eingesetzt werden. Es werden dort andere Hash-Algorithmen verwendet.
Brainflayer lädt die gesamte Bitcoin-Blockchain herunter und vergleicht Passwort-Hashes mittels eines sogenannten Bloom-Filters mit der Blockchain. Der Bloom-Filter ermöglicht es, in sehr kurzer Zeit alle Bitcoin-Adressen zu prüfen. Die Strategie dabei ist, zunächst mit einem Algorithmus, der in den meisten Fällen eine korrekte Antwort liefert, zu checken. Dieser liefert entweder zuverlässig die Antwort, dass keine Adresse übereinstimmt oder die Antwort, dass wahrscheinlich eine Adresse übereinstimmt. Bei letzterem kann anschließend ein langsamerer Check das Ergebnis prüfen und falsche Treffer aussortieren.
Als Kandidaten für Passwörter nutzte Castellucci nicht nur gängige Wortlisten, sondern auch Sätze. Dafür scannte er Webseiten wie Wikiquote, nutzte kostenlose Bücher vom Projekt Gutenberg, Mailinglisten, Reddit-Posts und Ähnliches. Ergebnisse fanden sich einige.
Professionelle Bitcoin-Diebe knacken Brainwallets
Offenbar gibt es bereits eine Reihe von Leuten, die professionell nach Accounts mit schwachen Passwörtern suchen. Erst letzte Woche tauchte ein Account mit einem leeren Passwort und 50 Bitcoins auf, etwa 12.000 Euro. Innerhalb von Sekunden wurde das Geld gestohlen. Insgesamt hätte Castellucci mit seinem Tool in den vergangenen Jahren 733 Bitcoins stehlen können, etwa 180.000 Euro. Wie viel davon von anderen gestohlen wurde, ließ sich nicht feststellen.
Laut Castellucci gibt es inzwischen eine Reihe von Personen, die offenbar gezielt nach Bitcoin-Adressen mit schwachen Passwörtern suchen und das Geld sofort stehlen. Diese konkurrieren miteinander und müssen somit alle besonders schnell arbeiten. Mit Brainflayer könnte man hier vermutlich nicht mithalten. Um besonders schnell zu sein, müsste man große Lookup-Tables erstellen, die sofort ein Ergebnis liefern. Accounts mit trivialen Passwörtern bis zu fünf Zeichen, die Castellucci testweise mit kleinen Beträgen anlegte, wurden sofort geleert.
Castellucci geht davon aus, dass nahezu jedes Passwort, das sich ein Mensch selbst ausdenkt, von einem intelligenten Angreifer früher oder später erratbar ist. Er verweist auf einen XKCD-Comic, der Tipps für sichere Passwörter gibt. Demnach soll man sich einen möglichst sinnlosen Satz ausdenken. Brainflayer würde ein entsprechendes Passwort auf einer EC2-Instanz innerhalb einer Woche finden.
Als Alternativen schlägt Castellucci Passwörter vor, die aus von einem Programm zufällig ausgewählten Wörtern bestehen. Sich die zu merken, dürfte allerdings schwieriger sein. Weiterhin gibt es auch Passwort-Wallets, die bessere Passwort-Hash-Funktionen benutzen, WarpWallet etwa nutzt Scrypt. Allerdings: Auch das verlangsamt den Angriff lediglich und schützt nicht vor schlechten Passwörtern. Alles in allem erscheint es mehr als fragwürdig, dass die Brainwallet-Idee überhaupt praktikabel ist.
Warnung bereits vor zwei Jahren
Wirklich neu sind die Gefahren von Brainwallets übrigens nicht. Ein Blogpost des Hackers Darren Martyn warnte bereits vor zwei Jahren vor entsprechenden Angriffen. Auch finden sich zahlreiche Berichte über gestohlene Brainwallets in Foren. Auf Reddit berichtete ein bestohlener Nutzer, dass er einen Satz aus einem Gedicht in Afrikaans als Passwort genutzt hatte. Aus der Bitcoin-Community gab es Reaktionen, die die Gefahren bestritten und meinten, man müsse lediglich ein gutes Passwort wählen. In welchem Ausmaß Menschen schlechte Passwörter wählen, scheint offenbar für viele nicht vorstellbar.
Castelluccis Warnungen, untermauert mit einem praktisch einsetzbaren Tool, werden offenbar ernster genommen. Die Webseite brainwallet.org wurde kurz nach dem Vortrag offline genommen und zeigt im Moment nur noch die Meldung "Closed Permanently" (dauerhaft geschlossen) an.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
letzteres finde ich schon etwas überheblich ^^ übrigens: langfristig wird ein bitcoin...
Ein Passwort vielleicht, aber kannst du dir damit auch 50 Passwörter merken? Und dann...
Diese Sicherheitslücke habe ich vor über einem Jahr schon für mich entdeckt und gesehen...
...Rechenaufwand knackbar ist, wird auch geknackt, wenn es sich lohnt. Und bei schlecht...