LM-Hash

LM-Hash

Der LAN-Manager-Hash oder LM-Hash ist eine kryptographische Hashfunktion. Sie wird vom Microsoft LAN Manager und teilweise von Windows-NT-basierten Betriebssystemen verwendet, um 128-Bit-Hashwerte von Passwörtern zu speichern.[1] Ursprünglich wurde LM-Hash für den Microsoft LAN Manager entwickelt. Er wird seitdem sowohl im LAN Manager als auch von Microsoft Windows genutzt, um Benutzerpasswörter zu speichern, die kürzer als 15 Zeichen sind. Diese Art von Hash ist die einzige Art von Hash-Funktion, die in Microsoft LAN Manager und Versionen von Windows bis zu Windows Me verwendet wird. Er wird nur aus Gründen der Abwärtskompatibilität auch von neueren Windows-Versionen unterstützt, aber für die Authentifizierung von Konten nicht verwendet.

Algorithmus

Der LM-Hash wird folgendermaßen berechnet:[2]

  1. Das Passwort des Benutzers in Form eines OEM-Strings wird zu Großbuchstaben umgeformt.
  2. Dieses Passwort wird entweder auf 14 Bytes mit Nullen gefüllt oder gekürzt.
  3. Das Passwort mit der festen Länge wird in zwei 7 Byte-Hälften aufgeteilt.
  4. Aus jeder Hälfte wird durch Hinzufügen eines NON-Parity-Bits nach jeweils 7 Bits ein 64-Bit langer DES-Schlüssel erzeugt.
  5. Jeder dieser Schlüssel wird dazu genutzt, den konstanten ASCII-String “KGS!@#$%” mit DES zu verschlüsseln, woraus zwei 8 Byte Chiffretext-Werte resultieren.
  6. Diese beiden Chiffretext-Werte werden verbunden, um einen 16 Byte-Wert zu bilden, der den LM-Hash darstellt.
    • War das Passwort kürzer als 8 Stellen, so enthält die 2. Hälfte stets den Hash von 7 Nullen.

Wird ein Passwort gewählt, für welches kein LM-Hash gebildet werden kann, z.B. mit einer Länge über 15 Stellen, so werden beide Hälften mit Nullen aufgefüllt. Derselbe Wert wird auch gebildet, wenn auf dem jeweiligen System die Generierung von LM-Hashes allgemein deaktiviert wurde.

Sicherheitsschwäche

Obwohl der LM-Hash auf DES basiert, kann er aufgrund zweier Schwächen in seiner Implementation einfach geknackt werden. Erstens werden Passwörter länger als sieben Zeichen in zwei Stücke geteilt und jedes Stück für sich gehasht. Zweitens werden alle Kleinbuchstaben im Passwort zu Großbuchstaben umgeformt, bevor das Passwort gehasht wird. Die erste Schwäche erlaubt, jede Hälfte des Passwortes getrennt anzugreifen. Während es 95^{14}\approx 2^{92} verschiedene Passwörter aus bis zu 14 Buchstaben uneinheitlicher Groß-/Kleinschreibung und anderen in einem Passwort zulässigen Zeichen gebildet werden können, gibt es nur 95^{7} \approx 2^{46} verschiedene 1-7 Zeichen-Passwörter, welche den gleichen Zeichensatz nutzen. Durch die Konvertierung des Strings in Großbuchstaben reduziert sich die Anzahl der Möglichkeiten für jede Hälfte auf 69^{7} \approx 2^{43}. Bei Durchführung einer Bruteforceattacke auf die einzelnen Hälften können moderne, leistungsfähige CPUs alphanumerische LM-Hashes innerhalb weniger Stunden auf einem Kern knacken.

Anschließend liegt das jeweilige Passwort in Großbuchstaben vor. Falls dies nicht bereits das tatsächliche Passwort ist, können gegen die NTLM Hash des jeweiligen Kontos noch alle Varianten in Groß- und Kleinschreibung geprüft werden. Der Rechenaufwand dafür ist minimal.

Da der LM-Hash keinen Salt beinhaltet, ist auch eine time-memory trade-off Kryptoanalyse-Attacke, wie bei Rainbow Tables, durchführbar. Im Jahr 2003 wurde Ophcrack, eine Implementation der Rainbow-Table-Technik, veröffentlicht. Es zielt speziell auf die Schwächen in der LM-Verschlüsselung ab und beinhaltet vorberechnete Daten, hinreichend, um nahezu alle alphanumerischen LM-Hashes in wenigen Sekunden zu brechen. Viele Cracking-Tools, wie zum Beispiel RainbowCrack, L0phtCrack und Cain & Abel, enthalten ähnliche Attacken und machen das Knacken von LM-Hashes trivial.

Als Reaktion auf die Sicherheitsschwächen des LM-Hashs führte Microsoft den NTLM-Algorithmus in Windows NT 3.1 ein. Während LAN Manager als veraltet betrachtet wird und aktuelle Windows-Betriebssysteme die stärkere NTLM-Hashing-Methode verwenden, berechnen und speichern alle Windows-Systeme den LM-Hash standardmäßig noch immer, um mit LAN Manager und Windows Me oder früheren Clients kompatibel zu sein. Es ist sinnvoll, diese Eigenschaft dort zu deaktivieren, wo sie nicht benötigt wird.[3] Microsoft behauptet, dass die Unterstützung für LM im neuen Betriebssystem Windows Vista vollständig beseitigt werden wird.[4] Dennoch enthält der aktuelle Vista Release in der Praxis die Unterstützung für den LM-Hash, wenn sie auch standardmäßig deaktiviert ist. Über die "Lokale Sicherheitsrichtlinien" in der Systemverwaltung ist eine Aktivierung möglich. Bei den Home-Versionen von Microsoft Windows Vista ist diese Einstellung nur über die Registrierung verfügbar.

Quellen

  1. Jesper M. Johansson: Die Grundsatzdiskussion: Kennwort-Sätze oder Kennwörter. Problemstellung.
  2. Eric Glass: The NTLM Authentication Protocol. 2003, abgerufen am 5. Juni 2006.
  3. How to prevent Windows from storing a LAN manager hash of your password in Active Directory and local SAM databases. In: Microsoft Knowledge Base. Abgerufen am 5. Juni 2006.
  4. Jesper Johansson: The Most Misunderstood Windows Security Setting of All Time. In: TechNet Magazine. August 2006. Abgerufen am 8. Januar 2007.
Dieser Artikel ist eine Übersetzung des Artikels en:LM hash, vom 18. April 2007

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Hash (film) — Hash is a 2005 comedy film directed by Scott Innes and written by Innes and Daniel Smith, who also stars along with Lisa Walker, Richard Wright and Adam Young. The film s central character is Hash McBrown. It is narrated by Stephen Fry. The film… …   Wikipedia

  • Hash — may refer to:* Hash symbol, #, called number sign or pound sign in the USA and Canada * Hashish, a psychoactive drug derived from the Cannabis plant * Hash (food), a coarse chunky mixture of beef and other things, e.g. corned beef hash ; cf. Hash …   Wikipedia

  • Hash browns — or hashed browns are a simple potato preparation in which potato pieces are pan fried after being shredded, julienned, diced, or riced. In some cultures, hash browns or hashed browns can refer to any of these preparations, while in others it may… …   Wikipedia

  • Hash browns — picadas, con forma de hamburguesa. Se llama hash browns o hashed browns a una receta simple de patata en la que los trozos de patata se fríen en una sartén después de ser cortados en tiras, juliana, dados o bien triturados. En algunas regiones,… …   Wikipedia Español

  • hash — hash·ab; hash·er; hash·ery; hash; hash·ish; hash·ka·bah; hash·im·ite; re·hash; hash·browns; hash·eesh; …   English syllables

  • hash — hash1 [hash] vt. [Fr hacher, to chop, mince: see HACHURE] 1. to chop (meat or vegetables) into small pieces for cooking 2. Informal to make a mess or botch of; bungle n. 1. a chopped mixture of cooked meat and vegetables, usually baked or browned …   English World dictionary

  • Hash (Unix) — hash is a Unix command that prints the location information for the commands found. yntaxksh: hash [name] DescriptionWhen the user gives a command, the shell searches for the command in the path specified in the PATH environmental variable and… …   Wikipedia

  • Hash-Verfahren — Hash Verfahren,   ein Speicherungs und Suchverfahren, bei dem Datensätze gestreut gespeichert und die Adressen von Datensätzen aus den zugehörigen Schlüsseln errechnet werden. Gestreute Speicherung von Datensätzen bedeutet, dass bezüglich… …   Universal-Lexikon

  • hash — Ⅰ. hash [1] ► NOUN 1) a dish of diced cooked meat reheated with potatoes. 2) a jumble; a mess. ► VERB ▪ make or chop into a hash. ● make a hash of Cf. ↑make a hash of …   English terms dictionary

  • Hash — Hash, v. t. [imp. & p. p. {Hashed} (h[a^]sht); p. pr. & vb. n. {Hashing}.] [From {Hash}, n.: cf. F. hacher to hash.] To chop into small pieces; to mince and mix; as, to hash meat. Hudibras …   The Collaborative International Dictionary of English

  • Hash-Kodierung —   [zu engl. to hash »zerhacken«], die Transformation einer Menge von Daten (Schlüsseln) auf eine kleinere Menge von Werten (Adressen) mithilfe einer Hash Funktion (Hash Verfahren). Eine Hash Kodierung, deren Ergebnis keine Rückschlüsse auf die… …   Universal-Lexikon

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”