Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 3036|Відповідь: 0

[вікна] Автентифікація Windows AD: Kerberos та NTLM

[Копіювати посилання]
Опубліковано 22.08.2023 19:16:28 | | | |
Автентифікація AD використовує два основні протоколи: Kerberos і NTLM

NTLM



Процес сертифікації виглядає так:

  • Клієнт генерує хеш NTLM локально, і це значення є хеш-значенням пароля користувача.
  • Клієнт надсилає ім'я користувача на сервер додатку.
  • Сервер додатків генерує випадкове значення для клієнта, яке зазвичай називається nonce або challenge.
  • клієнт шифрує NONCE за допомогою NTLM-хешу і надсилає його на сервер додатків.
  • Після отримання його сервер додатків надсилає його на AD-сервер разом із ім'ям користувача та nonce.
  • AD генерує хеш NTLM на основі пароля користувача, шифрує nonce і потім порівнює повідомлення клієнта.
  • Якщо значення однакові, автентифікація проходить, а якщо вони різні — автентифікація не проходить.


Керберос



Ключові терміни:

  • KDC: Центр розподілу ключів, який надає дві послуги: Сервіс автентифікації (AS) та Сервіс видачі квитків (TGS). Домен генерує доменний обліковий запис під назвою krbtgt для KDC, а TGT використовує пароль для шифрування та розшифрування. Коли користувач домену вперше отримує доступ, він хоче, щоб AS автентифікувався, а після проходження AS просить TGS надати заявку (TGT) користувачу домену.
  • SPN:Service Principal Name。 Окрім облікових записів користувачів, акаунти AD також мають сервісні акаунти. Додаток також матиме сервісний акаунт, що полегшить доступ до серверних ресурсів, таких як exchange, SQL, IIS тощо. SPN — це сервіс, який використовується для пов'язування сервісу, увімкненого додатком, з обліковим записом у AD.


Процес сертифікації:

1. Коли користувач домену входить, до DC надсилається AS-запит (AS_REQ), який містить зашифровану часову мітку, зашифровану з хешем пароля користувача та ім'ям користувача.

2. Після отримання запиту DC використовує хеш користувача та пароль користувача для розшифрування. DC відповідає клієнту відповідь AS (AS_REP), яка містить сесійний ключ і TGT (Ticket Granting Ticket). Сесійний ключ шифрується хешом пароля користувача. TGT містить членство в групі, домен, часову мітку, IP-адресу клієнта та сесійний ключ. TGT також зашифрований, зашифрований паролем від облікового запису KDC, і клієнт не може його розшифрувати. (TGT за замовчуванням дійсний 10 годин, і оновлення, що відбуваються після цього, не вимагають від користувача повторного введення пароля)

3. Коли користувач запитує ресурс у домені, надсилається запит на сервіс надати квитки (TGS_REQ), включно з ім'ям користувача, часовою позначкою, TGT та SPN. Часові позначки та імена користувачів шифруються сесійним ключем.

4. Після отримання запиту KDC спочатку визначає, чи є SPN у запиті, потім розшифровує TGT, витягує сесійний ключ і часову мітку в TGT і використовує сесійний ключ у TGT для розшифрування зашифрованого імені користувача та часової позначки. Проведіть кілька перевірок:

(1) Часова мітка, розшифрована TGT, має бути дійсною. (Якщо відбувається повторна атака, часова мітка стає недійсною.) )

(2) Чи узгоджується ім'я користувача в TGT із ім'ям користувача у запиті.

(3) Чи збігається IP-адреса в TGT з IP-адресою у запиті.

Перевірка відповідатиме на запит клієнта Ticketing Granting ServiceReply(TGS_REP), який містить авторизований доступ SPN, новий сесійний ключ для доступу між клієнтом і SPN, а також новий сервісний квиток Service Ticket (включаючи новий сесійний ключ, ім'я користувача та групу користувачів). І авторизований SPN, і сесійний ключ, що отримує доступ до SPN, шифруються сесійним ключем у TGT. Сервісний квиток шифрується паролем відповідного облікового запису SPN.

1. Після наведеного вище процесу користувач отримує сесійний ключ і сервісний квиток, пов'язаний із сервісом додатку. Користувач надсилає запит до додатка (AP_REQ), який містить ім'я користувача та часову мітку, і шифрується сесійним ключем.

2. Сервіс додатку використовує хеш пароля облікового запису для розшифрування квитка та витягування користувача, групи користувачів і сесійного ключа. Розшифруйте ім'я користувача та часову мітку в AP_REQ за допомогою розшифрованого сесійного ключа. AP_REQ Якщо так, запит приймається, і сервіс додатку призначає дозволи на основі інформації про групу користувачів у сервісному тикеті, після чого користувач може отримати доступ до запитуваного сервісу.

Оригінальна адреса:Вхід за гіперпосиланням видно.





Попередній:Браузер Windows Edge відкриває рішення для збоїв у IE
Наступний:DNS-over-HTTPS та DNS-over-TLS для розв'язання доменних імен
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com