<div dir="auto"><a href="https://md5hashing.net/hash/sha256/b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9">https://md5hashing.net/hash/sha256/b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9</a><div dir="auto"><br></div><div dir="auto">Let me Google that for you! </div><div dir="auto"><br></div><div dir="auto">Gruß </div><div dir="auto">Christoph </div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr"><a href="mailto:alf@alfmoni.de">alf@alfmoni.de</a> <<a href="mailto:alf@alfmoni.de">alf@alfmoni.de</a>> schrieb am Do., 8. Aug. 2019, 04:18:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Lösung an Christian geschickt...<br>
<br>
Gibts was zu gewinnen?? ;)<br>
<br>
Grüße<br>
Alf<br>
<br>
Am 08.08.19 um 00:12 schrieb Christian Boltz:<br>
> Hallo Heinz, hallo zusammen,<br>
><br>
> Am Mittwoch, 7. August 2019, 22:49:26 CEST schrieb Pahle Heinz:<br>
>> Also, wenn ich die Passwortdatei klaue, dann habe ich das<br>
>> Hash-Verfahren ($..$) und Salt ($..$) parat. Salt verhindert nicht im<br>
>> geringsten das Erlangen des PWs. Denn: Ich "kurbele" eine Variable<br>
>> durch, füge jedesmal Salt dazu, hashe und vergleiche was herauskommt<br>
>> mit dem was in der Datei steht.<br>
> Wenn Du wirklich eine Liste von Passwörtern durchprobierst und jedesmal<br>
> Salt + geratenes Passwort hashst, bringt der Salt tatsächlich nichts.<br>
> Daher: Ja, bei Brute Force ist ein Salt tatsächlich nutzlos.<br>
><br>
><br>
> Jetzt stell Dir mal vor, jemand hat z. B. die Passwort-Datenbank eines<br>
> großen Mailproviders mit ein paar Millionen Passwörtern geklaut. Da für<br>
> alle Benutzer eine Passwortliste per Brute Force durchzutesten und<br>
> jedesmal zu hashen, braucht einiges an Rechenleistung. Wenn es für den<br>
> Angreifer blöd läuft, wird das Datenleck entdeckt und alle Passwörter<br>
> geändert, bevor er auch nur eins davon für den Spamversand missbrauchen<br>
> kann.<br>
><br>
> Stattdessen wird ein Angreifer lieber eine "Rainbow Table" (also eine<br>
> Liste von Passwörtern mit zugehörigem Hash) verwenden. Einen Hash in der<br>
> Liste suchen geht deutlich schneller als auch nur die 100 beliebtesten<br>
> Passwörter zu hashen ;-)<br>
><br>
> In solchen Fällen hilft ein Salt, weil es den Aufwand für den Angreifer<br>
> hochtreibt - statt einer Rainbow Table bräuchte er für jeden möglichen<br>
> Salt eine Rainbow Table. Sogar wenn Du der Salt nur zwei zufällige<br>
> Großbuchstaben enthält, erhöht das den Aufwand um 26^2, also Faktor 676,<br>
> bei zwei Groß- oder Kleinbuchstaben um (2*26)^2, also Faktor 2704.<br>
> Ein Salt mit drei Groß- oder Kleinbuchstaben kommt auf (2*26)^3, also<br>
> Faktor 140608.<br>
><br>
> "Drei Groß- oder Kleinbuchstaben" hört sich harmlos an, macht aber<br>
> Rainbow Tables selbst bei großen Mengen Passwort-Hashes eher nutzlos.<br>
><br>
><br>
> Ähnlich sieht es aus, wenn jemand gezielt das Passwort eines einzelnen<br>
> Accounts knacken will - auch hier kostet ein Salt den Angreifer Zeit,<br>
> weil er nicht vorher eine Rainbow Table bauen kann. Der zeitliche<br>
> Abstand zwischen Passworthash klauen und Passwort missbrauchen wächst<br>
> also von einer Sekunde Rainbow Table ablesen auf (geraten) mindestens<br>
> Stunden, eher Tage für Brute Force. Und das alles nur wegen ein paar<br>
> Byte Salt ;-)<br>
><br>
><br>
> Ich würde übrigens beim Passwort-Hashing zu z. B. Bcrypt raten, weil das<br>
> bewusst langsam/aufwändig implementiert ist und daher Brute Force und<br>
> das Erstellen von Rainbow Tables ausbremst.<br>
> Leseempfehlung dazu: <a href="https://de.wikipedia.org/wiki/Bcrypt" rel="noreferrer noreferrer" target="_blank">https://de.wikipedia.org/wiki/Bcrypt</a> -<br>
> hauptsächlich die Abschnitte "Hintergrund" (letzter Absatz) und "Design"<br>
><br>
>> Nebenbei: Salt erzeugen ist genauso<br>
>> eine Wissenschaft wie Init-Vektor erzeugen z.B. bei AES256 (ist bei<br>
>> mir schon jahrelang im Einsatz, bis auf AES-lib mein Werk).<br>
> Jein ;-) - sogar ein schlechter Salt (z. B. die ersten zwei Buchstaben<br>
> des Vornamens - theoretisch 26^2, praktisch weniger, weil manche<br>
> Buchstabenkombinationen oft und andere nie auftreten) ist deutlich<br>
> besser als kein Salt.<br>
><br>
> Ein zufälliger Salt (im Sinn von "kryptographisch zufällig") ist<br>
> natürlich deutlich besser.<br>
><br>
>> Statt den einzigen Grund für Salt, wie ich glaube, gleich zu<br>
>> offerieren, wird in Artikeln Unzutreffendes genannt (brute force<br>
>> Erleichterung) und nebenbei nur angedeutet, was ich als einzigen<br>
>> Grund sehe. Also jetzt: Habe ich die PW-Datei und es gäbe keinen<br>
>> Salt, dann sähe ich gleich, wenn Müller, Maier, Schulze das gleiche<br>
>> PW hätten (natürlich nicht das PW selbst)!!! D.h.: Habe ich Müller<br>
>> geknackt, dann sind anderen 2 ebenfalls "offen".<br>
> Das ist ein (im wahrsten Sinn des Wortes) offensichtlicher Grund, aber<br>
> - siehe oben - nicht der einzige.<br>
><br>
>> Wie man sieht, immer wieder das Gleiche (Verschleiern gleicher Daten),<br>
>> wie ich das mit WW2 beschrieb. "Keine besonderen Vorkommnisse"<br>
>> konnten sich die Briten denken, denn Bojen bombadieren, Trick,<br>
>> brachte andere Meldung als immer wieder die Gleiche, wenn nix los<br>
>> war.<br>
> Genau, da hätte eine Prise Salz geholfen ;-)<br>
><br>
><br>
> So, und jetzt noch eine kleine Aufgabe zum Abschluss: Welches Passwort<br>
> steckt im (ungesalzenen) Hash<br>
> b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9<br>
> ?<br>
><br>
> Dazu zwei Tips:<br>
> - Das ist eine sha256sum - aber das ist fast egal<br>
> - Die Lösung kann jeder ohne Brute Force innerhalb von Sekunden<br>
> rausfinden<br>
><br>
> Für den unwahrscheinlichen Fall, dass niemand die Lösung findet, erkläre<br>
> ich den Lösungsweg gern beim nächsten Treffen ;-)<br>
><br>
>> Jetzt noch ein Glas Wein auf alle, die mitmachten<br>
> Prost! ;-)<br>
><br>
><br>
> Gruß<br>
><br>
> Christian Boltz<br>
_______________________________________________<br>
lug-ld mailing list<br>
<a href="mailto:lug-ld@lists.lug-ld.de" target="_blank" rel="noreferrer">lug-ld@lists.lug-ld.de</a><br>
<a href="http://lists.lug-ld.de/mailman/listinfo/lug-ld" rel="noreferrer noreferrer" target="_blank">http://lists.lug-ld.de/mailman/listinfo/lug-ld</a><br>
</blockquote></div>