28.10.2013 Aufrufe

Windows Server 2008 Sicherheit – Die technische Referenz - Gattner

Windows Server 2008 Sicherheit – Die technische Referenz - Gattner

Windows Server 2008 Sicherheit – Die technische Referenz - Gattner

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Speichern der Authentifizierer 21<br />

Verschlüsselung nutzt also Kryptografie, um etwas in eine unlesbare, aber wieder herstellbare<br />

Form zu konvertieren. Das Berechnen eines Hashwerts (engl. hashing) hängt<br />

damit eng zusammen. Dabei wird Klartext in eine unlesbare, hier aber nicht wieder herstellbare<br />

Form konvertiert. Ein Hash kann zum Beispiel als Prüfsumme verwendet werden,<br />

um zwei Klartextabschnitte zu vergleichen. Falls beide denselben Hashwert generieren,<br />

können Sie relativ sicher sein, dass die beiden Texte identisch sind. Ein Hashwert ist<br />

auch normalerweise kleiner (im Vergleich zum Klartext) als ein Ciphertext. Daher eignen<br />

sich Hashwerte sehr gut, um Dinge wie Kennwörter zu speichern.<br />

<strong>Die</strong> meisten Unix-Systeme verwenden diese Form der Kennwortspeicherung, allerdings mit<br />

zwei leichten Veränderungen. Erstens enthält die Kennwortdatei, normalerweise heißt sie<br />

/etc/passwd, jetzt keine Kennworthashwerte mehr, sondern nur Benutzernamen und -IDs.<br />

<strong>Die</strong> eigentlichen Hashwerte sind in der Shadow-Kennwortdatei gespeichert, zum Beispiel in<br />

/etc/passwd.shadow. Während die Kennwortdatei selbst von allen gelesen werden kann, ist<br />

der Zugriff auf die Shadow-Datei den Superusern vorbehalten.<br />

Und weil Kennworthashwerte ursprünglich für alle lesbar in der Datei /etc/passwd standen,<br />

mussten sie vor Vergleichsangriffen geschützt werden. Nehmen wir zum Beispiel an, Sie<br />

und ich haben Benutzerkonten auf demselben Computer. Mein Kennwort ist »pas$wort!«,<br />

und wie es der Zufall so will, haben Sie genau dasselbe Kennwort. Mit einem einfachen<br />

Hashwert würde für uns beide derselbe Kennworthashwert in der Datei /etc/passwd gespeichert.<br />

Ich könnte aus der Datei meinen Hashwert auslesen und dann nach anderen Konten<br />

suchen, die denselben Hashwert haben. Falls ich solche Konten finde, weiß ich, dass sie<br />

dasselbe Kennwort haben wie ich. Das darf nicht zugelassen werden. <strong>Die</strong> Lösung besteht<br />

darin, einen zufällig generierten Saltwert zum Kennwort hinzuzufügen, bevor der Hashwert<br />

berechnet wird. Ein Saltwert (engl. salt) ist einfach ein zufälliger Wert, der zum Kennwort<br />

hinzugefügt wird, bevor der Hash berechnet wird. Der Saltwert wird im Klartext in der<br />

Kennwortdatenbank gespeichert. Selbst wenn nun zwei Kennwörter identisch sind, haben<br />

sie unterschiedlich Saltwerte und liefern daher unterschiedliche Hashwerte. Abbildung 2.1<br />

zeigt diesen Ablauf.<br />

Abbildung 2.1 Weil das Kennwort vor dem Speichern in der Kennwortdatei<br />

mit einem Saltwert versehen wird, ist es vor Vergleichsangriffen geschützt

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!