CWE ID: 759
Name: Use of a One-Way Hash without a Salt
Das Produkt verwendet einen unidirektionalen kryptografischen Hash gegen eine Eingabe, die nicht rückgängig gemacht werden sollte, wie beispielsweise ein Passwort, verwendet aber keinen Salt als Teil der Eingabe.
Effektivität: Limited
Beschreibung: Sollte eine Technik, die zusätzlichen Rechenaufwand erfordert, nicht implementiert werden können, generieren Sie für jedes Passwort, das verarbeitet wird, einen neuen, zufälligen Salt unter Verwendung eines robusten, kryptografischen Zufallszahlengenerators mit unvorhersehbaren Seeds. Fügen Sie den Salt dem Klartext-Passwort hinzu, bevor es gehasht wird. Speichern Sie bei der Speicherung des Hash auch den Salt. Verwenden Sie nicht denselben Salt für jedes Passwort.
Notizen: Es ist wichtig zu beachten, dass Salts die Arbeitsbelastung bei einem gezielten Angriff auf einen einzelnen Hash (z. B. das Passwort einer kritischen Person) nicht reduzieren. Im Allgemeinen sind sie weniger effektiv als andere Hashing-Techniken, wie beispielsweise die Erhöhung der Rechenzeit oder des Speicheraufwands. Ohne eine inhärente Arbeitsbelastung können moderne Angriffe mit massiv-paralleler Berechnung und Hardware wie GPUs, ASICs oder FPGAs eine große Anzahl von Hashes berechnen oder sogar den gesamten Suchraum aller möglichen Passwörter innerhalb einer sehr kurzen Zeitspanne erschöpfen.
Effektivität: Unknown
Beschreibung: Setzen Sie bei der Anwendung branchenüblicher Techniken diese korrekt um. Vermeiden Sie es, an ressourcenintensiven Schritten zu sparen (CWE-325). Diese Schritte sind oft unerlässlich, um gängige Angriffe zu verhindern.
In der Kryptographie bezeichnet “salt” eine zufällige Ergänzung von Daten zu einer Eingabe vor dem Hashing, um Dictionary-Angriffe zu erschweren.