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 - это протокол проверки подлинности запроса и ответа, который использует три сообщения для аутентификации клиента в среде, ориентированной на соединение и четвертое дополнительное сообщение, если требуется проверка целостности.
1. Пользователь устанавливает подключение(сетевой путь) к серверу и отправляет NEGOTIATE_MESSAGE со своими возможностями. 2. Сервер отвечает сообщением CHALLENGE_MESSAGE, которое используется для идентификации (установления личности) клиента. 3. Клиент отвечает на сообщение при помощи AUTHENTICATE_MESSAGE.
Протокол NTLM использует одно или оба значения хешированных паролей, оба из них хранятся на сервере (или контроллере домена), которые из-за отсутствия привязки эквивалентны паролю. Это означает, что хешированное значение с сервера может быть использовано для аутентификации без фактического знания пароля. Эти два значения представляют собой LM Hash (функции, основанные на стандарте шифрования данных для первых 14 символов пароля преобразованные в традиционную 8 битную кодировку для языка ПК) и NT Hash (значение функции MD4 от переведенного в кодировку little endian UTF-16 Unicode пароля). Оба хеша имеют длину в 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.
См. также
Примечания
- ↑ [MS-NLMP: NTLM v2 Authentication] (англ.). msdn.microsoft.com. Дата обращения: 5 июня 2018. Архивировано 12 февраля 2011 года.
- ↑ K. Jaganathan, L. Zhu, J. Brezak. SPNEGO-based Kerberos and NTLM HTTP Authentication in Microsoft Windows. — RFC Editor, 2006-06.
Ссылки
- NTLM в корпоративных сетях Архивная копия от 6 ноября 2008 на Wayback Machine / Securityvulns.ru, 18 Ноября 2004