Открыть сервис

LM-хеш

LM-хеш (LAN Manager hash) — это устаревший алгоритм хеширования паролей, применявшийся в операционных системах Microsoft Windows для хранения учётных данных пользователей. Относится к классу криптографических хеш-функций, однако обладает низкой криптостойкостью и уязвим к атакам перебора. Использовался в протоколах аутентификации LAN Manager и NTLMv1.

История

Алгоритм LM-хеша был разработан корпорацией Microsoft в 1980-х годах для операционной системы OS/2, а затем перенесён в ранние версии Windows (Windows 95, Windows 98, Windows NT 3.1, Windows NT 4.0). Основной целью было обеспечение обратной совместимости с сетевыми протоколами LAN Manager, которые широко применялись в локальных сетях того времени. В Windows NT 3.1 (1993 год) LM-хеш стал стандартным методом хеширования паролей, однако уже тогда специалисты по безопасности отмечали его слабости.

С выходом Windows 2000 (2000 год) Microsoft начала постепенный отказ от LM-хеша в пользу более стойкого NTLM-хеша (NT LAN Manager hash). В Windows Vista (2007 год) и более поздних версиях LM-хеш по умолчанию отключён, но может быть включён администратором для совместимости со старым программным обеспечением. В Windows 10 и Windows 11 LM-хеш не генерируется для новых учётных записей, если не включена соответствующая групповая политика.

Устройство алгоритма

Алгоритм LM-хеша преобразует пароль пользователя в 16-байтовое значение. Процесс включает несколько этапов:

  1. Преобразование в верхний регистр: все буквы пароля переводятся в верхний регистр (A-Z). Это существенно снижает пространство возможных паролей.
  2. Дополнение до 14 символов: если пароль короче 14 символов, он дополняется нулевыми байтами (0x00) до длины 14. Если длиннее — обрезается до 14 символов.
  3. Разделение на две половины: 14-символьная строка делится на два 7-символьных блока.
  4. Генерация ключей DES: каждый 7-символьный блок (56 бит) используется как ключ для шифрования фиксированной строки «KGS!@#$%» (8 байт) с помощью алгоритма DES (Data Encryption Standard). Получается два 8-байтовых блока.
  5. Объединение: два 8-байтовых блока объединяются в 16-байтовый LM-хеш.

Криптостойкость

Алгоритм LM-хеша считается крайне небезопасным по нескольким причинам:

  • Отсутствие соли: хеш не использует случайную соль, что делает атаки по радужным таблицам эффективными.
  • Маленькое пространство ключей: каждый 7-символьный блок (56 бит) может быть перебран за короткое время с использованием современных вычислительных мощностей.
  • Разделение на две половины: злоумышленник может взламывать каждую половину независимо, что сокращает время атаки.
  • Преобразование в верхний регистр: исключает из атаки строчные буквы, цифры и специальные символы, уменьшая количество возможных комбинаций.
  • Обрезание до 14 символов: пароли длиннее 14 символов теряют часть информации.

Из-за этих недостатков LM-хеш можно взломать (восстановить исходный пароль) за несколько секунд или минут на обычном персональном компьютере с использованием специализированного ПО (например, Ophcrack, John the Ripper, Hashcat).

Применение

LM-хеш использовался в следующих протоколах и системах:

  • LAN Manager (LM): протокол аутентификации в сетях Microsoft, основанный на LM-хеше.
  • NTLMv1: протокол аутентификации, который мог использовать LM-хеш для обратной совместимости.
  • Хранение паролей в SAM: файл SAM (Security Account Manager) в Windows хранил LM-хеши для локальных учётных записей.
  • Active Directory (до Windows 2000): в доменных средах LM-хеш мог передаваться по сети при аутентификации.

В современных системах (Windows 2000 и новее) LM-хеш не используется по умолчанию. Вместо него применяется NTLM-хеш (NT hash), который лишён многих недостатков: он не обрезает пароль до 14 символов, не преобразует его в верхний регистр и не разделяет на блоки. Однако NTLM-хеш также не использует соль, что делает его уязвимым к атакам по радужным таблицам.

Критика и уязвимости

LM-хеш подвергается критике со стороны сообщества специалистов по информационной безопасности с момента его появления. Основные уязвимости:

  1. Атака по радужным таблицам: из-за отсутствия соли злоумышленник может предварительно вычислить хеши для всех возможных паролей (до 14 символов в верхнем регистре) и затем быстро сопоставить их с перехваченными LM-хешами.
  2. Атака перебором: каждый 7-символьный блок можно перебрать отдельно, что сокращает время атаки с O(2^56) до O(2^28) для каждого блока.
  3. Уязвимость к атакам по словарю: из-за ограниченного набора символов (только буквы A-Z) словарные атаки очень эффективны.
  4. Отсутствие защиты от атак типа «pass-the-hash»: LM-хеш может быть использован для аутентификации без знания исходного пароля, если злоумышленник перехватил хеш.

В 1999 году исследователи безопасности Филипп Ошлер (Philippe Oechslin) и другие продемонстрировали возможность взлома LM-хеша за несколько минут с использованием радужных таблиц. Это привело к тому, что Microsoft рекомендовала отключить LM-хеш во всех версиях Windows, начиная с Windows 2000.

Интересные факты

  • LM-хеш может быть отключён в Windows через групповую политику или реестр. В Windows 10 и Windows 11 по умолчанию LM-хеш не генерируется для новых учётных записей.
  • Существуют утилиты, такие как Ophcrack, которые специализируются на взломе LM-хешей с использованием радужных таблиц.
  • В Windows NT 4.0 и более ранних версиях LM-хеш был единственным методом хеширования паролей. В Windows 2000 и Windows XP он мог быть отключён, но оставался включённым по умолчанию для обратной совместимости.
  • Алгоритм LM-хеша основан на DES, который сам по себе считается устаревшим и небезопасным для современных криптографических задач.

Источники

  • Microsoft. «LM Hash and NTLM Hash». Windows Security Documentation.
  • Oechslin, P. (2003). «Making a Faster Cryptanalytic Time-Memory Trade-Off». Advances in Cryptology — CRYPTO 2003.
  • T. J. K. (2005). «Password Security: A Case History». Communications of the ACM.
  • «Windows NT Security: A Practical Guide». Microsoft Press, 1999.
  • «Cracking Windows Passwords». Ophcrack Project Documentation.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →