Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 10977|Odpowiedź: 0

Proces certyfikacji NTLM w systemie Windows

[Skopiuj link]
Opublikowano 5.09.2020 o 13:28:14 | | | |
IIS oferuje wiele różnych technologii uwierzytelniania. Jednym z nich jest integracja uwierzytelniania Windows. Zintegrowana Autyzacja Windows wykorzystuje negocjacje Kerberos lub NTLM do uwierzytelniania użytkowników na podstawie zaszyfrowanych zgłoszeń przekazywanych między przeglądarką a serwerem.

Najczęstszym scenariuszem uwierzytelniania NTLM jest prawdopodobnie uwierzytelnianie stosowane w przeglądarkach (protokół http). W rzeczywistości NTLM określa jedynie proces uwierzytelniania i format komunikatu uwierzytelniającego. Nie dotyczy to konkretnych umów. Więc nie ma koniecznie powiązania z http. Przeglądarka przenosi tylko wiadomość NTLM na nagłówku protokołu http i przekazuje uwierzytelnienie. Wiemy, że http zwykle jest w tekście jawnym, więc jeśli bezpośrednia transmisja haseł jest bardzo niebezpieczna, NTLM skutecznie zapobiega temu problemowi.   

Proces certyfikacji



Uwierzytelnianie NTLM wymaga trzech kroków do ukończenia, a szczegółowy proces żądań można obejrzeć w skrzynce narzędzi Fiddler.






Krok 1

Użytkownik loguje się do hosta klienta, wpisując numer konta Windows i hasło. Przed zalogowaniem klient zapisuje heš wpisanego hasła, a oryginalne hasło jest usuwane ("oryginalne hasło nie może być buforowane w żadnym wypadku", to podstawowa zasada bezpieczeństwa). Użytkownik, który pomyślnie zaloguje się do klienta Windows, musi wysłać żądanie do drugiej strony, jeśli ta spróbuje uzyskać dostęp do zasobów serwera. Żądanie zawiera nazwę użytkownika w formie jawnej.

Krok 2

Gdy serwer otrzymuje żądanie, generuje losową liczbę o długości 16 bitów. Ta losowa liczba nazywana jest wyzwaniem lub nonce. Wyzwanie jest zapisywane zanim serwer wyśle je klientowi. Wyzwania są wysyłane w formie tekstu jawnego.


Krok 3

Po otrzymaniu wyzwania przesłanego przez serwer, klient szyfruje je z hashem hasła zapisanym w kroku 1, a następnie wysyła zaszyfrowane wyzwanie na serwer.


Krok 4

Po otrzymaniu zaszyfrowanego wyzwania przesłanego przez klienta, serwer wysyła żądanie uwierzytelnienia do klienta do domeny (DC). Żądanie zawiera głównie następujące trzy treści: nazwę użytkownika klienta; Wyzwanie i oryginalne wyzwanie z zaszyfrowanym hasłem klienta.


Kroki 5 i 6

DC szyfruje oryginalne wyzwanie, uzyskując hasło konta na podstawie nazwy użytkownika. Jeśli zaszyfrowane wyzwanie jest takie samo jak to wysłane przez serwer, oznacza to, że użytkownik ma poprawne hasło i weryfikacja przebiega, w przeciwnym razie weryfikacja się nie udaje. Kontroler wysyła wyniki weryfikacji do serwera, a następnie przekazuje je klientowi.


Artykuły referencyjne:

Logowanie do linku jest widoczne.
Logowanie do linku jest widoczne.
Logowanie do linku jest widoczne.




Poprzedni:Azure DevOps 2020 (III) ogranicza zużycie pamięci wyszukiwania (ES)
Następny:Azure DevOps 2020 (II) tutorial instalacji Azure DevOps Server Express 2020 RC2
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com