Macht der "Dark Skippy" Angriff Hardware-Wallets unsicher?


Dieses Begleitthema zu https://www.blocktrainer.de/blog/macht-der-dark-skippy-angriff-hardware-wallets-unsicher wurde automatisch erstellt. Antworten auf dieses Thema werden unter dem Beitrag auf der Webseite eingeblendet.
2 „Gefällt mir“

Aus Interesse, kannst du das eigentlich so bestätigen?

Nur falls du es eh auswendig weißt.

IT ist faszinierend. Beeindruckend krativ. Danke für den Hinweis.

Also sollte man immer die Signatur des Herstellers checken denke ich.

Sorry, hatte im Artikel erst das falsche Repo verlinkt, secp256k1-zkp ist schon korrekt. Hier ist die Anti-Klepto Implementierung:

Oder was genau meintest du jetzt? :sweat_smile:

1 „Gefällt mir“

Mir ist beim Lesen der Thread wieder eingefallen und mich hat wirklich nur interessiert, ob ich damals Unsinn geschrieben habe.

Ich hatte mich da ein bisschen durch den Bitbox Code geklickt und war überrascht, dass ein Fork der bekannten Bibliothek libsecp256k1 verwendet wird, da das offenbar nicht im Hauptrepo implementiert wurde.

Deshalb habe ich oben nochmal gefragt, da du ja wahrscheinlich inzwischen tiefer drinsteckst. War kein Wink mit dem Zaunpfahl oder ähnliches. :slightly_smiling_face:

1 „Gefällt mir“

Ja, aber das ist nicht das, worum es in dem Artikel hier geht :D

2 „Gefällt mir“

Wie bekommt man denn sonst eine böswillige Firmware, z.B. beim Seedsigner? Das wäre doch nur der Fall, wenn ich eine manupulierte Datei runterlade, oder nicht?

Bei einem Seedsigner (bei dem man sich die Hardware selbst „aus dem Regal“ kauft) hast du natürlich recht, da dir hier jeder eine manipulierte Firmware auftischen könnte, während die Hardware an sich eher unproblematisch ist.

Viele bauen die Dinger mittlerweile aber gar nicht mehr selbst. Bei einem fertig gekauften Seedsigner könnte über die Firmware hinaus direkt an der Hardware manipuliert worden sein, da bist du mit einer Signaturprüfung nicht mehr unbedingt auf der sicheren Seite. :slight_smile:

Bei einer Hardware-Wallet (von einem Unternehmen) geht man bei diesem Angriff aber davon aus, dass das Unternehmen selbst böse Absichten hat. Da greift dann wieder dieser Absatz aus dem Artikel:

Auch bei einer reproduzierbaren Open-Source Firmware, kann dieses theoretische Risiko nicht ausgeschlossen werden, da es im Grunde unmöglich ist, wirklich zu verifizieren, welcher Code schlussendlich im Inneren einer Hardware-Wallet ausgeführt wird.

Überspitzt formuliert: Ein Hersteller könnte, selbst wenn er komplett Open-Source ist und du die Firmware reproduzierst bzw. Signaturen überprüfst, diesen Angriff durchführen und deine Bitcoin (bzw. die von vielen Kunden) stehlen.

Anti-Klepto hilft dabei, dieses theoretische Risiko zu beseitigen, sodass es eben einen Aspekt weniger gibt, in dem man dem Hersteller vertrauen muss.

3 „Gefällt mir“

Check. Ich verstehe. Guter Punkt.

Um ganz sicher zu sein: Eine Multisignatur mit mehreren Hardware Herstellern würde es einem Angreifer auch schwerer machen, korrekt?

1 „Gefällt mir“

Dann könnte zwar eine HW Wallet immer noch über ihre Signatur etwas leaken, aber das betrifft dann auch nur die Schlüssel dieser einen HW Wallet. Damit kann niemand etwas anfangen, vorausgesetzt die anderen beiden HW Wallets sind „ehrlich“.

Bei Taproot Multisig Transaktionen könnte es evtl. gar nicht mehr möglich sein. Weiß ich aber auch nicht; müsste man mal im Detail darüber nachdenken.

2 „Gefällt mir“

Verstehe ich das in dem Artikel richtig, dass wenn ich Taproot Addressen auf meiner BitBox verwende, das Anti-Klepto Protokoll nicht funktioniert? :face_with_monocle:

Genau, das Anti-Klepto Protokoll gibt es aktuell noch nicht für Taproot bzw. Schnorr Signaturen, ist aber wie im Artikel erwähnt in Arbeit (und eigentlich so gut wie fertig):

Bei Multisig könnte man noch erwähnen, dass dann einfach wieder einer der anderen Angriffsmethoden, die auch im Artikel kurz angeschnitten wurden, attraktiver wird: das Vortäuschen falscher öffentlicher Schlüssel.

Theoretisch kann ein einzelner Cosigner den Nutzer mit sowas erpressen, egal wie viele andere Cosigner es gibt, oder ob man unterschiedliche Hardware-Wallets nutzt. :slight_smile:

Bei unterschiedlichen Hardware-Wallets müsste man die xpubs der Cosigner streng genommen nicht nur untereinander verifizieren, sondern die Backups einmal durchrotieren, um unabhängig die Schlüssel neu abzuleiten.

Irgendwann kann man es natürlich auch übertreiben, aber es ist spannend sich darüber Gedanken zu machen… :smile:

3 „Gefällt mir“

Gibt es schon Informationen darüber ob Ledger für seine Wallets auch das Anti-Klepto- beziehungsweise Anti-Exfil-Protokoll implementieren wird?

Ich habe ehrlich gesagt erst beim Schreiben des anderen Beitrags gerade nochmal etwas länger darüber nachgedacht. Das ist m.E. überhaupt nicht übertrieben, macht es doch den Hauptvorteil einer Multisig-Wallet zumindest teilweise zunichte.

Mir ist klar, dass ein Multisig-Setup viele andere Vorteile bietet. Aber die Absicherung ggü. den Herstellern wäre für Privatpersonen aus meiner Sicht der größte Vorteil.

So schaut’s aus. Ob eine der Wallets bei der Vorgabe des xpubs betrügt, oder erst bei einer späteren Ableitung, kommt ja genau auf dasselbe raus. Beim xpub ist es sogar vorteilhafter, da man dann den ganzen Account kontrolliert.

Also würde ein Hersteller solch einen Angriff doch sicher lieber gleich für den xpub umsetzen, womit die Cosigner-Registrierung für diesen Zweck nahezu obsolet ist. Gut, nicht ganz, man schützt sich ja noch gegenüber betrügerischer Wallet-Verwaltungs-Software, was natürlich wichtig ist.

Das wäre die theoretische Drohung, die einen Hersteller davon abhalten würde, einen falschen xpub vorzugeben.

In der Praxis wird das allerdings sinnvollerweise niemand machen. Schließlich vernichtet man die Sicherheit eines 2/3 Setups mit drei unterschiedlichen Geräten fast komplett, wenn alle 3 Seedphrases zur Überprüfung auf allen 3 Geräten eingegeben werden.

Ich wüsste auf Anhieb auch nicht, wie man das vermeiden könnte. Am Ende bleibt vielleicht wirklich nur das Aufbauen bzw. Nachbauen einer eigenen Wallet (wie z.B. Seedsigner), zusammen mit Verwendung einer selbst kompilierten open-source Software, die nicht vom Hersteller signiert werden muss.

Habe ich irgendeinen Denkfehler?

2 „Gefällt mir“

Kannst Du dir sparen. Es gibt weltweit nicht so viele relevante Hardware-Wallet-Hersteller. Sollte hier ein groß angelegter Angriff auf die zuvor als nahezu 100 % sicher geltenden Hardware-Wallets erfolgen und Bitcoin in Massen gestohlen werden, dann ist das Vertrauen in das Asset Bitcoin zerstört. Für immer. Ich gehe dann davon aus, dass sich in solch einem Fall der Kurs dritteln bis vierteln würde.

Dann könnte man sich faktisch schon noch freuen, einen Bruchteil gerettet zu haben, aber das Asset an sich wäre dann hinüber meiner Meinung nach.

Das Argument wird gerne und oft verwendet. Beispielsweise beim potentiellen Betrug durch Mining Pools, nur 128 Bit notwendiger Sicherheit etc. .

Ich wäre da sehr vorsichtig. Man sollte nicht vergessen, dass Bitcoin genau aus dem Grund heraus entstanden ist, dass Vertrauen nicht mehr notwendig, und Kontrolle nicht mehr möglich ist.

Eine Krypto-Währung bietet eben genau durch Kryptographie einen Schutz, den niemand umgehen kann. Egal ob er spiel-theoretische Überlegungen „missachtet“ oder nicht. Es gibt genug Idioten auf der Welt. Außerdem kann bei Einbeziehung anderer Vorteile auch ein teure Zerstörung von Bitcoin rational sein.

Wenn man als Angriffe verhindern kann, sollte man das also tun. Egal ob andere einen Angriff „sinnvollerweise“ nicht durchführen werden.

1 „Gefällt mir“

Das ist richtig.

Bis vor kurzem galt aber als ultima ratio in der Frage der Sicherheit der Kauf eines Cold Wallet. Mit Secure-Chip, Open Source, Anti-Klepto usw.

Wenn das wegfällt - und die Alternative das eigene Zusammenbasteln von Hardware-Teilen ist in Kombi mit Seedsigner, dessen Sicherheit 99 % der Cold-Wallet-Käufer ebenfalls wieder nicht verifizieren können - dann werden sehr viele HODLer und heute noch Bitcoin-Gläubige von diesem Glauben abfallen. Eine weitere Adaption wäre bei einem so groß angelegten Schaden auch kaum mehr vermittelbar. Just my 2 cent.

1 „Gefällt mir“

Klar, da hast du völlig recht.

Meine Hoffnung bei solchen Themen ist natürlich, dass durch die Diskussion von Schwachstellen bessere Produkte und Standards inspiriert werden. Also dass es gar nicht soweit kommt, dass man sich irgendetwas zuammenbastelt.

Das ist das gleiche wie bei den Diskussionen darüber, dass es immer noch keine einfache und gleichzeitig optimale Backup-Strategie gibt.

Oder wie bei den Diskussionen über Mining Pools und Protokolle.

Oder über Quantencomputer und Post-Quantum-Krypto. Oder über die Taproot-Veröffentlichung von Public Keys. usw.

1 „Gefällt mir“

Ja, das stimmt in meinem Beispiel. Trotzdem hat man natürlich immer die theoretische Möglichkeit, die Schlüsselableitung unabhängig zu verifizieren. Sei es auf einem zusätzlichen SeedSigner oder dem berühmten „offline Computer“. Spieltheoretisch ist es für einen Angreifer bzw. Hersteller viel zu riskant, diesen Weg zu gehen, da man leicht auffliegen kann.

Genau deswegen ist so etwas wie Dark Skippy der viel potentere Angriff. Ein Hersteller kann komplett verdeckt Seeds der Nutzer einsammeln und sogar erst mit dem Diebstahl anfangen, wenn der Exploit gar nicht mehr in der Firmware ist und versuchen, die Plausible Deniability Schiene zu fahren. :slight_smile:

Ein Restrisiko bzw. Restvertrauen in den Hersteller bleibt natürlich immer und ist unvermeidbar. Mir gefällt es daher auch nicht so, wenn Multisig-Setups mit mehreren Herstellern als absolut beste Lösung gezeichnet werden, da man hier eben auch nur einen anderen Kompromiss eingeht, der immer mit dem individuellen Threat Model vereinbart werden muss.

Wenn man sie verhindern kann… Darauf wollte ich mit dem „irgendwann kann man es übertreiben hinaus“. Da es keine 100% Sicherheit gibt, wird es per Definition auch immer potenzielle Angriffe geben.

Es macht also schon Sinn, sich auf die Angriffe zu konzentrieren, die für einen Angreifer das größte Potenzial haben bzw. spieltheoretisch am sinnvollsten sind. Irgendwo muss ich ja die „Kompromiss-Linie“ ziehen und mich entscheiden.

Das würde ich nicht sagen. Der Großteil der Bitcoin liegt nicht auf Hardware-Wallets von Privatpersonen, sondern bei Dienstleistern. Ist das Vertrauen in Bitcoin nachhaltig zerstört worden durch Mt. Gox und FTX?

Es ist immer nur kurzfristig. Ein bösartiger Hersteller von Hardware-Wallets ändert nichts an den Eigenschaften von Bitcoin.

2 „Gefällt mir“