Winlogon
Winlogon ( Windows Logon ) — это компонент Microsoft Windows операционных систем , который отвечает за обработку безопасной последовательности действий , загрузку профиля пользователя при входе в систему, создание рабочих столов для оконной станции и, при необходимости, блокировку компьютера во время заставки работы (требуется еще один шаг аутентификации). Роли и обязанности Winlogon существенно изменились в Windows Vista и более поздних операционных системах.
Обзор
[ редактировать ]Winlogon запускается подсистемой диспетчера сеансов как часть процесса загрузки Windows NT .
До Windows Vista Winlogon отвечал за запуск диспетчера управления службами и службы подсистемы локального органа безопасности , но начиная с Vista они запускались с помощью приложения запуска Windows ( wininit.exe
). [1]
Первая часть процесса входа в систему, которую выполняет Winlogon, — это запуск процесса, который показывает пользователю экран входа в систему. До Windows Vista этим занималась компания GINA . [2] но начиная с Vista это делает LogonUI. Эти программы отвечают за получение учетных данных пользователя и передачу их в службу подсистемы Local Security Authority , которая аутентифицирует пользователя.
После того как управление возвращается Winlogon, он создает и открывает интерактивную оконную станцию. WinSta0
, [3] и создает три рабочих стола, Winlogon
, Default
и ScreenSaver
. Winlogon переключается с рабочего стола Winlogon на Default
рабочий стол, когда оболочка укажет, что она готова отобразить что-то для пользователя, или через тридцать секунд, в зависимости от того, что наступит раньше. [4]
Система переключается обратно в режим Winlogon
рабочий стол, если пользователь нажимает Control-Alt-Delete или когда контроля учетных записей пользователей . отображается приглашение [4] Winlogon теперь запускает программу, указанную в значении Userinit, которое по умолчанию равно userinit.exe
. Это значение поддерживает несколько исполняемых файлов. [5]
Обязанности
[ редактировать ]- Оконная станция и защита рабочего стола
- Winlogon устанавливает защиту оконной станции и соответствующих рабочих столов, чтобы обеспечить надлежащий доступ к каждому из них. В общем, это означает, что локальная система будет иметь полный доступ к этим объектам и что пользователь, вошедший в систему в интерактивном режиме, будет иметь доступ для чтения к объекту оконной станции и полный доступ к объекту рабочего стола приложения.
- Стандартное признание SAS
- Winlogon имеет специальные подключения к серверу User32, которые позволяют ему отслеживать (SAS) Control-Alt-Delete события безопасной последовательности внимания . Winlogon делает эту информацию о событиях SAS доступной GINA /поставщикам учетных данных для использования в качестве их SAS или как часть их SAS. В общем, GINA должны контролировать SAS самостоятельно; однако любой GINA, имеющий стандарт Ctrl+ Alt+ Del SAS как один из распознаваемых им SAS должен использовать поддержку Winlogon, предусмотренную для этой цели.
- Регулярная диспетчеризация SAS
- Когда Winlogon обнаруживает событие SAS или когда SAS доставляется Winlogon через GINA, Winlogon устанавливает соответствующее состояние, переходит на рабочий стол Winlogon и вызывает одну из функций обработки SAS GINA.
- Загрузка профиля пользователя
- Когда пользователи входят в систему, их профили пользователей загружаются в реестр. Таким образом, процессы пользователя могут использовать специальный ключ реестра HKEY_CURRENT_USER. Winlogon делает это автоматически после успешного входа в систему, но до активации оболочки для вновь вошедшего в систему пользователя.
- Назначение безопасности пользовательской оболочке
- Когда пользователь входит в систему, GINA отвечает за создание одного или нескольких начальных процессов для этого пользователя. Winlogon предоставляет GINA функцию поддержки, позволяющую применять безопасность вновь вошедшего в систему пользователя к этим процессам. Однако предпочтительный способ сделать это — вызвать GINA функцию Windows CreateProcessAsUser и позволить системе предоставить услугу.
- Управление заставкой экрана
- Winlogon отслеживает активность клавиатуры и мыши, чтобы определить, когда активировать заставки. После активации хранителя экрана Winlogon продолжает отслеживать активность клавиатуры и мыши, чтобы определить, когда следует отключить заставку. Если заставка помечена как безопасная, Winlogon считает рабочую станцию заблокированной. При активности мыши или клавиатуры Winlogon вызывает функцию WlxDisplayLockedNotice GINA, и поведение заблокированной рабочей станции возобновляется. Если экранная заставка не защищена, любое действие клавиатуры или мыши прекращает работу экранной заставки без уведомления GINA.
- Поддержка нескольких сетевых провайдеров
- Несколько сетей, установленных в системе Windows, могут быть включены в процесс аутентификации и операции обновления пароля. Это включение позволяет дополнительным сетям собирать идентификационную и аутентификационную информацию одновременно во время обычного входа в систему, используя безопасный рабочий стол Winlogon. Некоторые параметры, необходимые для служб Winlogon, доступных для GINA, явно поддерживают этих дополнительных сетевых поставщиков.
Уязвимости
[ редактировать ]Winlogon является общей целью для нескольких угроз, которые могут изменить его работу и использование памяти. Winlogon поддерживает плагины, которые загружаются и уведомляются о конкретных событиях. [6] Некоторые руткиты включают в себя подключаемые модули Winlogon, поскольку они загружаются до входа пользователя в систему. Некоторые ключи реестра позволяют указывать несколько значений, что позволяет запускать вредоносную программу одновременно с законным системным файлом. [7]
См. также
[ редактировать ]- Список компонентов Microsoft Windows
- Архитектура линейки операционных систем Windows NT
- Vundo — троян, прикрепляющийся к winlogon.exe.
- getty , аналогичный процесс в UNIX
- В утечке исходного кода Windows XP в сентябре 2020 года Winlogon был единственной частью исходного кода, что делало просочившуюся операционную систему неполной. [8]
Ссылки
[ редактировать ]- ^ Архив документов. «Администрирование Windows: Внутри ядра Windows Vista: Часть 2» . Learn.microsoft.com . Проверено 14 мая 2023 г.
- ^ Руссинвойч, Марк Э.; Соломон, Дэвид (2005). Внутреннее устройство Microsoft Windows (4-е изд.). Редмонд, Вашингтон: Microsoft Press . п. 81. ИСБН 978-0735619173 .
- ^ «Оконные станции» . MSDN . Корпорация Майкрософт . Проверено 19 апреля 2014 г.
- ^ Jump up to: а б «Рабочие столы» . MSDN . Корпорация Майкрософт . Проверено 19 апреля 2014 г.
- ^ Ионеску, Алекс; Руссинович, Марк; Соломон, Дэвид А. (2012). Внутреннее устройство Windows, Часть 1 (6-е изд.). Редмонд, Вашингтон: Microsoft Press. п. 77. ИСБН 978-0735648739 .
- ^ альвинашкрафт. «События уведомлений Winlogon — приложения Win32» . Learn.microsoft.com . Проверено 14 мая 2023 г.
- ^ «Выполнение автозапуска при загрузке или входе в систему: Winlogon Helper DLL, подметод T1547.004 — Enterprise | MITRE ATT&CK®» . Attack.mitre.org . Проверено 14 мая 2023 г.
- ^ Уоррен, Том (25 сентября 2020 г.). «Исходный код Windows XP попал в сеть» . Грань . Проверено 27 сентября 2020 г.
Внешние ссылки
[ редактировать ]- Настройка GINA. Часть 1. Руководство для разработчиков по написанию пользовательского GINA.
- Настройка GINA. Часть 2. Руководство для разработчиков по написанию пользовательской GINA.
- MSKB: 193361 MSGINA.DLL не сбрасывает структуру WINLOGON
- Windows Vista и Windows Server 2008: понимание, улучшение и расширение комплексной безопасности — презентация Microsoft PowerPoint , включающая информацию об изменениях в Winlogon в Windows Vista и Windows Server 2008.