LAN Manager — это сетевая операционная система (NOS), которая больше не поддерживается несколькими поставщиками и разработана Microsoft в сотрудничестве с 3Com Corporation . Она была разработана для замены программного обеспечения сетевого сервера 3+Share от 3Com , работавшего поверх сильно модифицированной версии MS-DOS .
Операционная система LAN Manager OS/2 была совместно разработана IBM и Microsoft с использованием протокола Server Message Block (SMB). Первоначально она использовала SMB поверх протокола NetBIOS Frames (NBF) или специализированной версии протокола Xerox Network Systems (XNS). Эти устаревшие протоколы были унаследованы от предыдущих продуктов, таких как MS-Net для MS-DOS , Xenix-NET для MS-Xenix и вышеупомянутого 3+Share. Также была доступна версия LAN Manager для систем на базе Unix под названием LAN Manager/X . LAN Manager/X стал основой для продукта Pathworks корпорации Digital Equipment Corporation для OpenVMS , Ultrix и Tru64 . [1]
В 1990 году Microsoft анонсировала LAN Manager 2.0 с массой усовершенствований, включая поддержку TCP/IP в качестве транспортного протокола для SMB, используя NetBIOS через TCP/IP (NBT). Последняя версия LAN Manager, 2.2, которая включала базовую операционную систему MS-OS/2 1.31, оставалась стратегической серверной системой Microsoft до выпуска Windows NT Advanced Server в 1993 году. [2]
Многие поставщики поставляли лицензионные версии, в том числе:
Хеш LM вычисляется следующим образом: [3] [4]
1010100
становится 10101000
). Это генерирует 64 бита, необходимых для ключа DES. (Ключ DES якобы состоит из 64 битов; однако, только 56 из них фактически используются алгоритмом. Биты четности, добавленные на этом этапе, позже отбрасываются.)KGS!@#$%
», [Примечание 2], что приводит к двум 8-байтовым значениям зашифрованного текста. DES CipherMode должен быть установлен на ECB, а PaddingMode должен быть установлен на NONE
.Аутентификация LAN Manager использует особенно слабый метод хеширования пароля пользователя , известный как алгоритм хеширования LM, возникший в середине 1980-х годов, когда вирусы, передаваемые через дискеты, были главной проблемой. [7] Хотя он основан на DES , хорошо изученном блочном шифре , хеш LM имеет несколько слабых мест в своей конструкции. [8] Это делает такие хеш-коды взламываемыми за считанные секунды с помощью радужных таблиц или за несколько минут с помощью грубой силы . Начиная с Windows NT , он был заменен на NTLM , который по-прежнему уязвим для радужных таблиц и атак грубой силы, если только не используются длинные непредсказуемые пароли, см. Взлом паролей . NTLM используется для входа в систему с локальными учетными записями, за исключением контроллеров домена, поскольку Windows Vista и более поздние версии больше не поддерживают хеш LM по умолчанию. [7] Kerberos используется в средах Active Directory.
Основными недостатками протокола аутентификации LAN Manager являются: [9]
Для устранения недостатков безопасности, присущих схемам шифрования и аутентификации LM, Microsoft представила протокол NTLMv1 в 1993 году с Windows NT 3.1 . Для хеширования NTLM использует поддержку UnicodeLMhash=DESeach(DOSCHARSET(UPPERCASE(password)), "KGS!@#$%")
, заменяя на , который не требует никакого заполнения или усечения, которые упростили бы ключ. С другой стороны, тот же алгоритм DES использовался только с 56-битным шифрованием для последующих шагов аутентификации, и по-прежнему нет соли. Кроме того, машины Windows в течение многих лет были настроены по умолчанию на отправку и прием ответов, полученных как из хеша LM, так и из хеша NTLM, поэтому использование хеша NTLM не обеспечивало дополнительной безопасности, пока более слабый хеш все еще присутствовал. Также потребовалось время для снятия искусственных ограничений на длину пароля в инструментах управления, таких как User Manager.NThash=MD4(UTF-16-LE(password))
Хотя LAN Manager считается устаревшим, а текущие операционные системы Windows используют более сильные методы аутентификации NTLMv2 или Kerberos , системы Windows до Windows Vista / Windows Server 2008 включали хэш LAN Manager по умолчанию для обратной совместимости с устаревшими LAN Manager и Windows ME или более ранними клиентами, или устаревшими приложениями с поддержкой NetBIOS . В течение многих лет считалось хорошей практикой безопасности отключать скомпрометированные протоколы аутентификации LM и NTLMv1 там, где они не нужны. [11] Начиная с Windows Vista и Windows Server 2008, Microsoft отключила хэш LM по умолчанию; эту функцию можно включить для локальных учетных записей с помощью параметра политики безопасности, а для учетных записей Active Directory — с помощью того же параметра через групповую политику домена . Тот же метод можно использовать для отключения функции в Windows 2000, Windows XP и NT. [11] Пользователи также могут запретить генерацию хэша LM для своего собственного пароля, используя пароль длиной не менее пятнадцати символов. [6] — В свою очередь, хэши NTLM в последние годы стали уязвимы для различных атак, которые фактически делают их такими же слабыми сегодня, какими были хэши LanMan в 1998 году. [ необходима цитата ]
Многим устаревшим реализациям SMB сторонних разработчиков потребовалось значительное время для добавления поддержки более надежных протоколов, созданных Microsoft для замены LM-хеширования, поскольку сообществам разработчиков ПО с открытым исходным кодом , поддерживающим эти библиотеки, сначала пришлось провести обратную разработку новых протоколов — Samba потребовалось 5 лет, чтобы добавить поддержку NTLMv2 , а JCIFS — 10 лет.
Неэффективные режимы исправления после выпуска программного обеспечения, поддерживающего эту функцию, стали причиной того, что некоторые организации продолжают использовать LM-хеширование в своих средах, даже несмотря на то, что этот протокол легко отключить в самой Active Directory .
Наконец, до выпуска Windows Vista многие автоматические процессы сборки по-прежнему использовали загрузочный диск DOS (вместо Windows PE ) для запуска установки Windows с помощью WINNT.EXE, что требует включения LM-хеширования для работы устаревшего сетевого стека LAN Manager.
Хотя Windows Vista еще не выпущена, стоит отметить некоторые изменения в этой операционной системе, связанные с этими протоколами. Самым важным изменением является то, что протокол LM больше не может использоваться для входящей аутентификации, где Windows Vista выступает в качестве сервера аутентификации.