Winlogon, lsass і userinit - еннее пристрій windows (гл

Winlogon, LSASS і Userinit

Ідентифікація та аутентифікація при вході в систему реалізовані в замінної DLL під назвою GINA (Graphical Identification and Authentication). Стандартна GINA Windows, Msgina.dll, реалізує інтерфейс для входу в систему за замовчуванням. Однак розробники можуть включати свої GINA DLL, які реалізують інші механізми аутентифікації і ідентифікації замість стандартного методу Windows на основі перевірки імені та пароля користувача - наприклад, на основі розпізнавання зразків голосу. Крім того, Winlogon може завантажувати додаткові DLL компонентів мережевого доступу для подальшої аутентифікації. Ця функція дозволяє декільком компонентам доступу до мереж одноразово збирати всі необхідні реєстраційні дані в процесі звичайного входу в систему.

Після введення ім'я і пароль користувача надсилаються для перевірки серверного процесу локальної аутентифікації (local security authentication server process, LSASS) (\ Windows \ System32 \ Lsass.exe, описуваного в главі 8). LSASS викликає відповідну функціональність (реалізовану у вигляді DLL) для перевірки відповідності введеного пароля з тим, що зберігається в активному каталозі або SAM (частини реєстру, що містить визначення користувачів і груп).

Після успішної аутентифікації LSASS викликає якусь функцію в моніторі стану захисту (наприклад, NtCreateToken), щоб згенерувати об'єкт «маркер доступу» (access token object), що містить профіль безпеки користувача. Згодом Winlogon використовує його для створення початкового процесу оболонки. Інформація про початковому процесі (або процесах) зберігається в параметрі Userinit в розділі реєстру HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon. (За умовчанням початковим процесом вважається Userinit.exe, але в списку може бути більше одного образу.)

Userinit виконує деякі дії по ініціалізації користувача середовища (наприклад, запускає сценарії реєстрації і активізує групові політики), а потім шукає в реєстрі параметр Shell (в зазначеному вище розділі Winlogon) і створює процес для запуску певної системної оболонки (за замовчуванням - Explorer.exe) . Після цього процес Userinit завершується. Ось чому для Explorer.exe не з'являється батьківський процес - він уже завершився. Інакше кажучи, Explorer є «внучатим» процесом Winlogon. (Імена процесів, чиї батьківські процеси вже завершені, в списку Tlist вирівнюються по лівому краю.)

Winlogon активний не тільки при вході і виході користувача, але і при перехопленні введення SAS з клавіатури. Наприклад, коли ви натискаєте Ctrl + Alt + DeI після входу в систему, Winlogon відкриває діалогове вікно Windows Security (Безпека Windows), що пропонує на вибір вихід з системи, запуск Task Manager, блокування робочої станції, завершення роботи системи і т. Д.

Схожі статті