Запрет проверки подлинности LM в Microsoft Windows NT

Переводы статьи Переводы статьи
Код статьи: 120642 - Vizualiza?i produsele pentru care se aplic? acest articol.


ВНИМАНИЕ! Решения, приведенные в этой статье, связаны с внесением изменений в системный реестр. Перед внесением изменений в системный реестр рекомендуется создать резервную копию системного реестра и изучить процедуру его восстановления. Дополнительные сведения о создании резервной копии, восстановлении и изменении реестра см. в следующей статье базы знаний Майкрософт:
256986 Описание реестра Microsoft Windows
Развернуть все | Свернуть все

В этой статье

Аннотация

До выхода пакета обновления 4 (SP4) для Windows NT 4.0 операционная система Windows NT поддерживала два вида проверки подлинности типа «запрос/ответ»:
  • запрос/ответ LanManager (LM)
  • запрос/ответ Windows NT (другое название – запрос/ответ NTLM)
В операционной системе Microsoft Windows NT также поддерживается сеансовый механизм безопасности, обеспечивающий конфиденциальность и целостность сообщений.

До выхода пакета обновления 4 (SP4) клиенты Windows NT использовали оба метода проверки подлинности даже при подключении к серверу Windows NT, поддерживающему проверку подлинности NTLM. Это делалось, чтобы обеспечить подключение к серверам, поддерживающим только проверку подлинности LM.

Так как проверка подлинности Windows NT является более надежной, чем проверка подлинности LM, то может потребоваться запретить использование проверки подлинности LM, поскольку обычно атаке подвергается менее надежный протокол. Успешная атака может раскрыть пароль пользователя.

Корпорация Microsoft разработала протокол NTLMv2, являющийся улучшенной версией протокола NTLM и улучшающий характеристики механизма проверки подлинности и сеансового механизма безопасности.

Кроме того, изменена реализация «Поставщика службы безопасности» NTLM. Устанавливая значения разделов реестра, клиент может задать используемые типы NTLM, а сервер может установить допустимые типы NTLM. Новая реализация SSP позволяет клиентам и серверам требовать согласования режима конфиденциальности (шифрования) сообщений, режима целостности сообщений, согласования использования 128-разрядного шифрования и сеансовой безопасности NTLMv2.

Перечисленные изменения затрагивают следующие компоненты Windows NT. Все приложения, использующие удаленный вызов процедур (RPC) или NTLM SSP, используют описанный в этой статье механизм проверки подлинности и сеансовой безопасности. Службы «Сервер» и «Рабочая станция» используют проверку подлинности, но поддерживают собственный механизм сеансовой безопасности.

Сведения

Проверка подлинности LM является менее надежной, чем NTLM и NTLMv2, поскольку ее алгоритм позволяет проводить атаки на пароли длиной более 7 символов, используя только первые 7 символов пароля. Это снижает эффективную длину пароля до 7 символов, выбранных из множества алфавитных символов верхнего регистра, цифровых символов и знаков пунктуации, а также 32 специальных ALT-символов. Зачастую пользователи применяют в пароле только алфавитные символы.

Алгоритм NTLM, напротив, использует все 14 символов пароля и позволяет использовать символы нижнего регистра. Таким образом, если злоумышленник перехватит пакеты протокола проверки подлинности Windows NT, то для успешной атаки понадобится намного больше времени, чем для аналогичной атаки на протокол проверки подлинности LM. Если пароль достаточно надежный, то при использовании компьютера с процессором Pentium Pro, работающим на частоте 200 МГц, для нахождения ключа понадобится в среднем 2200 лет, а для нахождения самого пароля – приблизительно 5500 лет (или же 2,2 года и 5,5 лет соответственно при использовании 1000 подобных компьютеров и т. д.).

Примечание. Этот расчет основан на оценке, полученной компанией RSA Lab при подборе ключей протокола DES программой DES Challenge, работавшей на подобном компьютере: 1000000 ключей в секунду; и общем числе ключей: 2**56 или 7.2*10**16. За дополнительной информацией о программе DES Challenge обратитесь на следующий веб-узел:
http://www.rsasecurity.com/
С другой стороны, используя поиск по словарю, можно раскрыть ненадежный пароль в течение нескольких секунд.

Одним из способов получения надежного пароля является использование паролей длиной не менее 11 символов, как минимум 4 из которых должны быть символами верхнего регистра, цифрами или знаками пунктуации. Даже если оставшиеся 7 символов являются символами нижнего регистра с низкой степенью случайности (предположим, имеющими 3 случайных бита на символ), это дает общее количество комбинаций более 7.2*10**16 ключей DES, причем пароль не будет содержаться в словарях.

Однако затратив $250000, можно получить аппаратный ускоритель, позволяющий за 3–6 дней находить ключи протоколов LM и NTLM вне зависимости от длины ключа. Эти числа изменяются по мере развития технологий. Для получения последних статистических данных обратитесь на веб-узел по адресу
http://www.eff.org/
Получение пользовательского ключа не дает злоумышленнику возможности интерактивного входа в систему. Однако используя специальные программы, он может от имени этого пользователя получать доступ к сетевым ресурсам.

В протоколе NTLMv2 для ключей, сгенерированных на основе пароля, пространство ключей является 128-разрядным. При использовании надежного пароля это делает прямой перебор ключей бесполезным даже при использовании аппаратного ускорителя.

Если и на клиентском компьютере, и на сервере установлен пакет обновления 4 (SP4), то используется механизм сеансовой безопасности протокола NTLMv2. В нем применяются механизм ответа клиента на запрос сервера для предотвращения атаки на незашифрованный текст, алгоритм HMAC-MD5 (см. RFC 2104) для проверки целостности сообщений и независимые ключи для обеспечения целостности и конфиденциальности сообщений.

Поскольку NTLM работает в дейтаграммном режиме и не имеет фазы согласования, то для использования таких параметров, как сеансовая безопасность NTLMv2 или 128-разрядное шифрование, требуется дополнительная настройка.

Дополнительная информация

ПРЕДУПРЕЖДЕНИЕ. Неправильное использование редактора реестра может привести к возникновению серьезных неполадок, требующих переустановки операционной системы. Корпорация Майкрософт не несет ответственности за неправильное использование редактора реестра. При изменении реестра полагайтесь на свой опыт и знания.


Настройка безопасности протокола NTLM осуществляется путем изменения следующего раздела реестра:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\LSA
Примечание. В операционных системах Windows 9x правильное название раздела реестра – LMCompatibility, а в Windows NT – LMCompatibilityLevel.

Возможны следующие значения параметра реестра:
   Значение: LMCompatibilityLevel
   Тип: REG_DWORD – число
   Допустимые значения: 0-5
   По умолчанию: 0
   Описание: Этот параметр определяет тип проверки
   подлинности.

   Уровень 0 – Отправлять ответы LM и NTLM, не использовать сеансовую безопасность NTLMv2.

   Уровень 1 – Использовать сеансовую безопасность NTLMv2 по согласованию.
   Уровень 2 – Посылать только ответы NTLM.
   Уровень 3 – Посылать только ответы NTLMv2.
   Уровень 4 – Контроллер домена отклоняет проверку подлинности LM.
   Уровень 5 – Контроллер домена отклоняет проверку подлинности LM и NTLM (разрешена только проверка подлинности NTLMv2).
				
Примечание. Проверка подлинности используется для установки соединения (имя пользователя/пароль). Сеансовая безопасность используется после того, как соединение было установлено с использованием проверки подлинности. Промежуток времени между ними не должен превышать 30 минут. Проверка подлинности может быть неудачной, если сервер будет считать, что запрос клиента устарел.

Для настройки минимального уровня безопасности, допустимого в приложениях, использующих NTLMSSP, используется следующий раздел реестра:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\LSA\MSV1_0
В этом разделе могут быть следующие значения:
   Значение: NtlmMinClientSec
   Тип: REG_DWORD – число
   Допустимые значения: логическое «или» для любых следующих значений:
      0x00000010
      0x00000020
      0x00080000
      0x20000000
   По умолчанию: 0

   Значение: NtlmMinServerSec
   Тип: REG_DWORD – число
   Допустимые значения: аналогично NtlmMinClientSec
   По умолчанию: 0
   Описание: Этот параметр определяет минимальный используемый уровень безопасности.
      0x00000010  Целостность сообщений
      0x00000020   Конфиденциальность сообщений
      0x00080000  Сеансовая безопасность NTLMv2
      0x20000000  128-разрядное шифрование
				

Настройка параметра LMCompatibilityLevel на клиентских компьютерах

Внимание! Чтобы на клиентских компьютерах с установленным пакетом обновления 4 (SP4) установить для параметра LMCompatibilityLevel уровень 3 или выше, НЕОБХОДИМО установить пакет обновления 4 (SP4) на контроллерах доменов, содержащих учетные записи пользователей этих компьютеров (далее – пользовательские контроллеры доменов).

Если на клиентском компьютере с установленным пакетом обновления 4 (SP4) выбран уровень 0 (являющийся значением по умолчанию), то взаимодействие с серверами старых версий происходит так же, как при использовании пакета обновления 3 (SP3).

Если на клиентском компьютере с установленным пакетом обновления 4 (SP4) выбран уровень 1, то взаимодействие с серверами старых версий происходит так же, как при использовании пакета обновления 3 (SP3). Кроме того, с серверами, на которых установлен пакет обновления 4 (SP4), будет проводиться согласование использования сеансовой безопасности NTLMv2.

Внимание! Если при использовании уровня 1 или более высокого последнее изменение пароля проводилось с компьютера, работающего под управлением Windows для рабочих групп или MS-DOS с клиентом LanManager версии 2.x или более ранней, то данные, необходимые для проверки подлинности NTLM или NTLMv2, будут недоступны на контроллере домена и клиенты с установленным пакетом обновления 4 (SP4) не смогут подключаться к серверам с установленным пакетом обновления 4 (SP4). Для решения проблемы необходимо использовать уровень 0 или изменять пароль с компьютеров, работающих под управлением Windows NT, Windows 95 или Windows 98.

Если на клиентском компьютере с установленным пакетом обновления 4 (SP4) выбран уровень 2 и соответствующий пользовательский котроллер домена не был обновлен, то клиентский компьютер не сможет подключаться к серверам, поддерживающим только проверку подлинности LM, таким как Windows 95, Windows 98, Windows для рабочих групп и более ранних версий (далее – устаревшие клиенты/серверы LM).

Если на клиентском компьютере с установленным пакетом обновления 4 (SP4) выбран уровень 3 или выше, то всегда будут посылаться только ответы NTLMv2. Эти ответы будут игнорироваться устаревшими серверами LM и серверами Windows NT с установленным пакетом обновления 3 (SP3) или более ранней версии и их контроллерами доменов, пока на пользовательские контроллеры доменов не будет установлен пакет обновления 4 (SP4). Например, если на клиентском компьютере с установленным пакетом обновления 4 (SP4) выбран уровень 3 или выше, то на пользовательских контроллерах доменов также должен быть установлен пакет обновления 4 (SP4). Однако этот ответ не будет восприниматься устаревшими серверами LM, использующими ограничение доступа на уровне ресурсов и непустые пароли. Для устранения проблемы необходимо настроить на них ограничение доступа на уровне пользователей.

LMCompatibilityLevel – серверы и контроллеры доменов

Если на сервере с установленным пакетом обновления 4 (SP4) выбран уровень 4 или выше, то пользователи не смогут подключаться к нему с устаревшего клиента LM, используя локальные учетные записи, размещенные на этом сервере.

Если на контроллере домена с установленным пакетом обновления 4 (SP4) выбран уровень 4 или выше, то пользователи этого домена не смогут подключаться с устаревшего клиента LM ни к одному серверу в домене. Таким образом, при использовании уровня 4 все пользователи с учетными записями на сервере или в домене должны работать с операционной системой Windows NT.

Если на сервере с установленным пакетом обновления 4 (SP4) выбран уровень 5 или выше, то пользователи не смогут подключаться к нему с компьютера под управлением Windows NT c установленным пакетом обновления 3 (SP3) или более ранней версии, используя локальные учетные записи, размещенные на этом сервере.

Клиенты, использующие пакет обновления 4 (SP4) и установившие уровень 0 или 1, могут подключаться к серверу с установленным уровнем 1 или 3, но при этом будет использоваться как протокол Windows NT, так и менее надежный протокол LM. Также они могут подключаться к устаревшим серверам LM, даже если на пользовательских контроллерах домена не был установлен пакет обновления 4 (SP4).

Развертывание

С учетом вышеизложенного для развертывания NTLMv2 следует выполнить следующие действия.
  1. Обновить контроллеры доменов, содержащие учетные записи тех пользователей, которые будут применять NTLMv2.
  2. Установить пакет обновления 4 (SP4) на клиентских и серверных компьютерах. После этого клиенты и серверы могут установить уровень 1 и при соединении между собой использовать преимущества NTLMv2, не дожидаясь обновления контроллеров доменов.
  3. После выполнения шага 1 можно установить уровень 3 или выше на компьютерах с установленным пакетом обновления 4 (SP4).
  4. Если пользователям домена не требуется доступ с устаревших клиентов LM, на контроллерах данного домена может быть установлен уровень 4, а после установки пакета обновления 4 (SP4) на компьютерах пользователей на контроллерах домена может быть установлен уровень 5.

NtlmMinClientSec и NtlmMinServerSec

Если для параметра NtlmMinClientSec или NtlmMinServerSec установлено битовое значение 0x00000010, то для подключения требуется проверка целостности сообщений.

Если для параметров NtlmMinClientSec или NtlmMinServerSec установлено битовое значение 0x00000020, то для подключения требуется конфиденциальность сообщений.

Если для параметров NtlmMinClientSec или NtlmMinServerSec установлено битовое значение 0x00080000, то для подключения требуется сеансовая безопасность NTLMv2.

Если для параметров NtlmMinClientSec или NtlmMinServerSec установлено битовое значение 0x20000000, то для подключения требуется 128-разрядное шифрование.

Примечание. Установка этих значений не гарантирует, что все приложения будут использовать «Поставщик службы безопасности» NTLM или что конкретное приложение действительно будет использовать конфиденциальность или проверку целостности сообщений.

Решение

Для решения проблемы загрузите последний пакет обновления для Windows NT 4.0 или Windows NT Server 4.0 Terminal Server Edition. Дополнительные сведения см. в следующей статье базы знаний Майкрософт:
152734 Как получить последний пакет обновления для Windows NT 4.0



Чтобы настроить уровень совместимости LM на серверах и рабочих станциях Windows NT, установите пакет обновления 4 (SP4) и выполните следующие действия.
  1. Запустите редактор реестра (Regedt32.exe).
  2. В поддереве HKEY_LOCAL_MACHINE найдите следующий раздел:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\
  3. В меню «Правка» выберите пункт «Добавить значение».
  4. Добавьте в этот раздел следующие параметры:
          Имя: LMCompatibilityLevel
          Тип данных: REG_DWORD
          Данные:  от 0 (по умолчанию) до 5 в соответствии с вышеизложенным
    					
  5. В поддереве HKEY_LOCAL_MACHINE найдите следующий раздел:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
  6. В меню «Правка» выберите пункт «Добавить значение».
  7. Добавьте в этот раздел следующие параметры:
          Имя: NtlmMinClientSec
          Тип данных: REG_DWORD
          Данные:  0 (по умолчанию) или в соответствии с вышеизложенным
    
          Имя: NtlmMinServerSec
          Тип данных: REG_DWORD
          Данные:  0 (по умолчанию) или в соответствии с вышеизложенным
    					
  8. Нажмите кнопку «OK» и закройте редактор реестра.
  9. Перезагрузите Windows.

Свойства

Код статьи: 120642 - Последний отзыв: 26 октября 2007 г. - Revision: 3.2
Информация в данной статье относится к следующим продуктам.
  • Microsoft Windows NT Server 4.0, Terminal Server Edition
  • операционная система Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • операционная система Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft LAN Manager 4.2 Standard Edition
  • Microsoft Windows для рабочих групп 3.2
  • Операционная система Microsoft Windows 95
Ключевые слова: 
kberrmsg kbbug kbfix kbqfe kbfile kbfea kbhotfixserver kbproductlink KB120642

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com