MyEtherWallet - Passwort hacken?

Guten Morgen,

Ein Freund von mir hat einen Altcoin vor ein paar Jahren gekauft (der ziemlich gut performt hat), allerdings das Passwort zu seiner Software Wallet verloren. Den Public Key sowie die Datei auf einem normalen Stick hat er aber.
Frage: Wie ist es einem „Normalo“ möglich, das Passwort raus zu bekommen? Kann es sinnvoll sein, einen Server für ein paar Minuten zu mieten der eine BruteForce Attac ausführt?
Soweit ich weiß, ist es keine KeePass Datei wie bei Trinity? Und selbst da wüsste ich nicht, ob das geht.

Auf folgender Seite kann man sich die Datei erstellen:
https://www.myetherwallet.com/access-my-wallet

Gruß, Johannes

Was meinst Du denn mit „Datei auf einem normalen Stick“? Was ist denn diese Datei? Das „Keystore file“? Damit könnte er doch seine Wallet öffnen.

Es wird zwar von MEW nicht empfehlen, weil jemand während des Sendens des Keys mithören kann, aber da Dein Freund sein Passwort sowieso verloren hat, muss er dieses Risiko wohl in Kauf nehmen.

Von BruteForce rate ich ab. Sofern Dein Freund ein einigermaßen sicheres Passwort (großes Alphabet und 10+ Zeichen) gewählt hat, wird das eh nix.
Ein BruteForce läuft im echten Leben nicht ganz so ab wie im Kino. :wink: Mit „ein paar Minuten“ kommst Du nicht weit.

1 „Gefällt mir“

Er hat den Private Key auf dem Stick, die Keystore file. Und das ist eben mit dem Passwort abgesichert. Das muss man eingeben, bevor man damit die Wallet öffnen kann. Zumindest von dem was ich weiß.
Gibt es da noch andere Möglichkeiten?

Die 12/24 Worte hat er auch nicht mehr?

Nein, leider nicht.

Man ist auch bei der Erstellung nicht dazu gezwungen, diese Wörter aufzuschreiben

Äh, doch.

Sie werden eingeblendet und im nächsten Screen muss man sie wie bei einem Lückentext wieder eingeben.

MEW zeigt eine Menge Hinweise an, wie wichtig Seed, Passwort usw. sind.

Okay, als ich mich zum Test ganz kurz durchgeklickt habe, ist es mir zumindest nicht aufgefallen. Jedenfalls hat er mir gesagt dass er den Zettel mit dem Passwort verlegt hat und nur die Datei hat. Ich gehe mal davon aus, dass es diese Wörter mit beinhaltet.

Versteh’ mich nicht falsch, aber da sind viele „gehe davon aus“ und „von dem ich weiß“ in Deinen Texten.

Vielleicht solltest Du erst einmal klären, was Deinem Freund GENAU zur Verfügung steht. Dann kann man eventuell besser helfen.

Okay ich haben noch mal nach gefragt.
2017 gab es anscheinend noch nicht die Sicherheitsvorkehrung, dass man sich die 12 bzw 24 Wörter aufschreiben MUSSTE, es ist wirklich nur diese eine Datei, geschützt von dem Passwort, vorhanden.
Die einzige Möglichkeit die ich jetzt sehe, ist zu warten wann Computer deutlich performanter werden um dann das Passwort knacken zu können. Oder gibt’s noch andere Ideen als eine brute force? Oder gibt es Programme die einen brute force machen können, dass man es wenigstens mal versuchen kann?

Ich bin mir ziemlich sicher, dass MEW auch schon 2017 eine Seed-Abfrage gemacht hat.
Aber sei’s drum.

Mit was (Welchem Programm/Algo?) ist die Datei denn verschlüsselt? Und welche Art von Passworte nutzt Dein Freund normalerweise?

Wie geschrieben: Je nachdem, wie sicher sein Passwort ist, wird da auch ein schnellerer Recher nicht viel helfen.

Ab einer Länge von 8 oder 9 Zeichen steigt der Aufwand in Bereiche an, die weit von dem entfernt sind, was handelsübliche Rechner schaffen. (Wir reden hier von Jahren und Jahrzehnten. Nicht von Stunden oder Tagen!)

Gehen wir mal von einem Passwort mit einem Alphabet von a-zA-Z0-9 aus. Keine Sonderzeichen.

Damit ergeben sich…

  • bei 8 Zeichen 62^8 = 218340105584896 Möglichkeiten
  • bei 9 Zeichen 62^9 = 13537086546263552 Möglichkeiten
  • bei 10 Zeichen 62^10 = 839299365868340224 Möglichkeiten
  • bei 11 Zeichen 62^11 = 52036560683837093888 Möglichkeiten

Man sagt, dass man bei BruteForce nach der Hälfte aller Möglichkeiten erfolgreich ist.

Nehmen wir also an, Dein Rechner schafft 50.000 Passworte pro Sekunde, bräuchtest Du bei 8 Zeichen ca. 69 Jahre.
Bei 9 Zeichen bist Du bereits bei 4292 Jahren.

Selbst wenn sich die Leistung der Computer noch ver-100-facht, bräuchtest Du bei 8 Zeichen immer noch 1/2 Jahr bzw. bei 9 Zeichen 42 Jahre.

Sofern es sich nicht um eine ganze Menge BTC handelt, würde ich mal vermuten, dass es sich nicht lohnt… :no_good_man:

Sorry.

Aber vielleicht hat ja sonst noch jemand eine Idee.

1 „Gefällt mir“

Vielen Dank schon mal, ich hab schon etwas mehr herausgefunden einfach durch ein paar von dir genannten Schlagwörter (siehe unten)

Es ist nicht extra mit einem eigenen Algorithmus verschlüsselt, es ist einfach nur die Datei die heruntergeladen wurde, und die man mit einem Passwort verschlüsseln muss. Und welcher Algorithmus das ist, hatte ich gehofft, das hier herauszufinden.
Was über die Ethereumwallet allgemein steht:

Es ist eine Blockverschlüsselung, die eine kryptografische Hash-Funktion verwendet, die Ihren privaten Schlüssel Ihres Ethereum-Kontos verschlüsselt oder entschlüsselt. Dies erfolgt, nachdem Sie einen privaten Schlüssel zum Verschlüsseln des privaten Schlüssels generiert haben (auch bekannt als make it, sodass Sie das Kennwort UND diese Datei angeben müssen, nicht nur den privaten Schlüssel).
Der private Schlüssel wird ciphertext mit AES-128 im CTR-Modus mit dem angegebenen Anfangswert (IV) gespeichert und verschlüsselt.
Der Entschlüsselungsschlüssel wird in diesem Fall über eine Schlüsselableitungsfunktion (KDF) aus einer Passphrase abgeleitet scrypt . Die scrypt Parameter sind in angegeben kdfparams .
Der MAC ist der keccak256-Hash der Verkettung von Bytes [16-32] des abgeleiteten Schlüssels und des Chiffretextes. Auf diese Weise kann das Tool, das die Entschlüsselung durchführt, überprüfen, ob das richtige Kennwort angegeben wurde. (Andernfalls würde ein falsches Passwort nur dazu führen, dass der falsche private Schlüssel entschlüsselt wird.)

Das habe ich beim googeln raus gefunden, mir sagt das allerdings nicht viel und ich bräuchte mehr Infos, um überhaupt gezielt nach einem solchen Programm googeln zu können. Wie viele Stellen das Passwort hat wissen wir auch nicht (ist wie gesagt 3 Jahre her und da war der Wert noch bei weitem nicht so hoch wie heute), es würde sich allerdings lohnen, einen Server z.B. für ein paar Minuten zu mieten, damit sollte man ja deutlich weiter kommen als seien eigenen Rechner ein paar Wochen lang laufen zu lassen.

Ich weiß nicht, welche Vorstellungen Du von Servern hast, aber ich würde vermuten, dass Du zuhause einen besseren Rechner hast, als Provider in Ihren Rechenzentren. Die haben nicht unbedingt auffallend mehr CPU-Power, denn Speicherplatz, RAM und Anbindung sind deutlich wichtiger.
Oft sind es Intel Xeon, die zwar für parallele Anwendungen optimiert sind, aber es sind halt keine „Höllen-Maschinen“, die den Desktop-CPUs deutlich überlegen wären.

Ausserdem wäre prüfenswert, ob man mit der GPU (Grafikkarte) evtl. mehr erreicht.

Aber noch einmal: Wenn’s kein Passwort mit 3 oder 4 Buchstaben ist, wirst Du definitiv nicht mit „ein paar Minuten“ auskommen. Auch 2017 hat man schon Passworte mit 6, 7 oder 8 Buchstaben genutzt und damit erhöht sich der Aufwand zumindest auf Wochen oder Monate.

Zudem wirst Du vermutlich ein „Hack-Programm“ nicht auf legalem Wege im Internet finden.

1 „Gefällt mir“

Es gibt ja auch schon Server, die auf Grafikanwendungen (3D Spiele etc) spezialisiert sind. An so etwas hatte ich gedacht. Zuhause habe ich nur einen Laptop und einen Raspi :)
Was die Sache mit dem Hack-Programm angeht, habe ich einfach keine Ahnung, und deshalb frage ich ja hier. Ich habe schon mal mit einfachen Programmen den eigenen Windows PC hacken können (Komplizierte Passwörter mit 8 bis 10 Zeichen) - das hat keine viertel Stunde gedauert. (Ich glaube das Programm hieß Ophcrack).
Wie man so ein Programm zweckentfremden kann, oder überhaupt die Anbindung schafft in die Passworteingabe von der Wallet, weiß ich einfach nicht. Das dürfte nichts allzu kompliziertes sein, aber wie ich das raus finde, weiß ich nicht.
Mit C dürfte ich wohl ein Programm schreiben können, das alle Zeichen hintereinander ausgibt. Aber es bringt mir nichts, wenn sie auf der Konsole zu sehen sind, an solchen Dingen scheitert es da.

Es mag sein, dass es spezialisierte Server gibt. Aber ob Du dann mit einem solchen Server 50 Jahre brauchst anstatt 4292 Jahre, spielt wohl keine Rolle.

Ja, mit C könntest Du sowas programmieren. Wenn Du programmieren kannst. Aufgrund Deiner Aussagen bezweifle ich aber, dass Du’s kannst. Geschweige denn, dass Du Ahnung von Hashes, Bit-Verschiebung, Prüfsummen oder Permutationen hast. (Sorry, soll nicht abwertend klingen.)

Deshalb mein Tipp: Lass. Es. Sein.

Etwas zu hacken ist kein Kavaliersdelikt. Mit Deinen eigenen Sachen kannst Du zwar machen was Du willst, aber ein falsches Zeichen im Code oder ein Zahlendreher und Du startest einen Angriff auf etwas, was Dir nicht gehört. Das ist strafbar.

Und jetzt schreibe ich’s zum letzten Mal und bin dann auch raus, da ich offenbar gegen eine Wand rede: Der zeitliche Aufwand geht in Bereiche, die Du nicht einmal ansatzweise abschätzen kannst! Sofern es nicht Satoshis Wallet ist, lohnt es sich nicht.

Wenn es wirklich so einfach wäre, dass jemand ohne Programmier-Kenntnissen sich einfach nur „einen Server für ein paar Minuten“ mieten muss, um ein MEW-Wallet zu hacken, würde niemand MEW nutzen.

2 „Gefällt mir“

Herzlichen Dank dir für deine Mühe!
Ja, was Programmieren angeht bin ich noch am Anfang, die Worte die du genannt hast kann ich alle mit Inhalt füllen, wenn es um die Praxis geht wird es allerdings schwieriger.
Ich habe ja tatsächlich nur die eine Wallet auf dem PC, etwas unerlaubtes zu hacken kommt da nicht infrage das ist mir schon klar. Und man muss ja erst mal an die Wallet kommen, die behält man ja vernünftigerweise nicht auf einem Online Rechner.
Ich war mir eben nicht ganz sicher ob es funktionieren kann, eine Wallet zu haben auf die man keinen Zugriff hat, ist eben ein dummes Gefühl^^es scheint dann vom zeitlichen Aufwand schwieriger zu sein als bei einer PC Sperre.

Einen schönen Tag wünsche ich dir noch :ok_hand:t3: du hast mir zumindest etwas beigebracht!
Gruß Johannes

2 „Gefällt mir“

Dein Freund wird sicherlich in seinem Leben keine 100 unterschiedlichen Passwörter verwendet haben.
Einfacher als ein Bruteforceangriff wäre ein Kopfmassage und ein Brainstorming über alle möglichen Passwörter in allen möglichen Kombinationen (Groß- Kleinschreibung mit und ohne Sonderzeichen, mit und ohne Zahl am Ende usw.).

Das wird 1. schneller gehen und 2. eine größere Erfolgschance bieten.

2 „Gefällt mir“

:sweat_smile:

hatte letztens auch eine ähnliche Situation, als ich mich wieder mal auf einen raspi mit lts via Putty einloggen wollte. Habe da normal für die raspis immer ein Standard Passwort, aber ich bin dann nach etlichen Versuchen fast verzweifelt.

Nach einer kleinen Pause und ein wenig Ruhe ist´s mir dann wieder eingefallen: das Tastaturlayout direkt am raspi, welches ich bei der Ersteinrichtung verwendet hatte, ist anders als die der Standard-Pc Tastatur, so musste ich z.B. den Unterstrich durch ein Fragezeichen ersetzen, dann hat es geklappt.

Ein wenig in Ruhe nachdenken, bzw. eine Nacht darüber schlafen wirkt oft Wunder! :wink:

1 „Gefällt mir“

Das war aber noch nicht immer so. Ich erinnere mich, als ich vor 2 Jahren bei MEW ne wallet erstellt habe, musste ich nur passwort und keystore-file sichern.

1 „Gefällt mir“