NTLM

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

NTLM (NT LAN Manager) — является протоколом сетевой аутентификации, разработанным фирмой Microsoft для Windows NT.

NTLM — это результат дальнейшего развития LANMAN.

Никакой официальной информации о нём не поступало, но многое выяснила группа разработчиков Samba во время разработки своей программы, эта информация отражена в RFC 2433 для версии 1 и RFC 2759 для версии 2.

Для передачи на сервер аутентификации (англ. Primary Domain Controler (PDC) — главный контроллер домена) имени пользователя, хэша пароля и мандата домена в Windows 98 применяется протокол LANMAN, а в Windows NT — протокол NTLM. Windows 2000 и Windows XP по умолчанию делают попытку аутентификации Kerberos (только в случае, когда станция является членом домена), в то же время они сохраняют обратную совместимость с аутентификацией NTLM.

Протокол[править | править код]

NTLM - это протокол проверки подлинности запроса и ответа, который использует три сообщения для аутентификации клиента в среде, ориентированной на соединение и 4-е дополнительное сообщение, если требуется целостность.

1.	Первое, пользователь устанавливает подключение(сетевой путь)  к серверу и отправляет  NEGOTIATE_MESSAGE со своими возможностями. 
2.	Далее, сервер отвечает CHALLENGE_MESSAGE, которое используется для идентификации (установления личности) клиента.
3.	В завершение, клиент отвечает на сообщение при помощи AUTHENTICATE_MESSAGE.

Протокол NTLM использует одно или оба значения хешированных паролей, оба из них хранятся на сервере (или контроллере домена), которые из-за отсутствия привязки эквивалентны паролю, что означает, если вы возьмёте хешированное значение с сервера, вы сможете аутентифицироваться не зная фактического пароля. Эти два это LM Hash ( функции, основанные на стандарте шифрования данных для первых 14 символов пароля преобразованные в традиционную 8 битную кодировку для языка ПК) и NT Hash ((MD4 of the little endian UTF-16 Unicode password). Оба значения хеша 16 байт (128 бит) каждый.

Протокол NTLM использует одну из двух односторонних функций, зависящих от версии NTLM. NT LanMan и NTLM версии 1 используют функцию LanMan на основе стандартного шифрования данных(LMOWF), в то время как NTLMv2 использует одностороннюю функцию NT MD4 (NTOWF[1][2]).


Практическое применение[править | править код]

Проверка подлинности NTLM по-прежнему поддерживается и обязательна для использования на системах, работающих под управлением Windows NT Server 4.0 или более ранних версий, а также для компьютеров, настроенных как члены рабочих групп. Проверка подлинности NTLM также используется для проверки подлинности при входе на изолированных системах. Начиная с Windows 2000, проверка подлинности Kerberos версии 5 является предпочтительным методом проверки подлинности для сред Active Directory.

См. также[править | править код]

Примечания[править | править код]

  1. [MS-NLMP: NTLM v2 Authentication] (англ.). msdn.microsoft.com. Проверено 5 июня 2018.
  2. K. Jaganathan, L. Zhu, J. Brezak SPNEGO-based Kerberos and NTLM HTTP Authentication in Microsoft Windows. — RFC Editor, 2006-06.

Ссылки[править | править код]