Открыть сервис

LocalSystem

LocalSystem — это встроенная учётная запись Windows, обладающая наивысшим уровнем привилегий в рамках локальной операционной системы. Она является одной из трёх предопределённых системных учётных записей, наряду с LocalService и NetworkService, и используется операционной системой и её компонентами для выполнения критически важных задач, включая запуск системных служб, управление драйверами устройств и доступ к защищённым ресурсам.

История и происхождение

Учётная запись LocalSystem появилась в ранних версиях Windows NT (1993 год) как часть модели безопасности, построенной на основе подсистемы безопасности (Security Subsystem). В отличие от Windows 9x, где не было строгого разграничения привилегий, Windows NT внедрила концепцию учётных записей, токенов доступа (access tokens) и списков управления доступом (ACLs). LocalSystem была задумана как учётная запись, под которой работают системные процессы, не требующие аутентификации в сети, но имеющие полный контроль над локальной машиной. С выходом Windows 2000, а затем и более поздних версий (Windows XP, Windows 7, Windows 10, Windows 11), роль LocalSystem осталась неизменной, хотя архитектура безопасности претерпела изменения: в частности, появились ограничения для служб (Session 0 isolation) и механизмы обязательного контроля целостности (Mandatory Integrity Control, MIC), которые частично ограничивают действия процессов, работающих от имени LocalSystem.

Идентификаторы и атрибуты

Имя и SID

Учётная запись LocalSystem не имеет традиционного имени пользователя в том смысле, в каком его имеют обычные учётные записи. В системе она идентифицируется следующими способами:

Привилегии

LocalSystem обладает следующими ключевыми привилегиями:

В отличие от учётной записи Администратора (Administrator), LocalSystem не имеет пароля и не может быть использована для интерактивного входа в систему (за исключением специальных сценариев, например, через отладчик или службу). Её токен доступа всегда принадлежит локальной системе и не содержит учётных данных для сетевой аутентификации.

Использование

Системные службы

LocalSystem является учётной записью по умолчанию для многих критических служб Windows. К числу таких служб относятся:

Драйверы устройств

Драйверы, работающие в режиме ядра (kernel-mode drivers), также выполняются в контексте LocalSystem. Это необходимо, поскольку драйверы имеют прямой доступ к аппаратному обеспечению и памяти ядра, что требует максимальных привилегий.

Планировщик задач

Задачи, настроенные на выполнение с наивысшими привилегиями (например, «Запускать с наивысшими правами»), могут быть настроены на выполнение от имени LocalSystem. Однако по умолчанию планировщик задач использует учётную запись SYSTEM для задач, связанных с обслуживанием системы.

Особенности безопасности

Уязвимости и риски

Поскольку LocalSystem обладает неограниченным доступом к локальным ресурсам, эксплуатация уязвимости в процессе, работающем от её имени, может привести к полному компрометации системы. Атакующий, получивший контроль над таким процессом, может:

Ограничения в современных версиях Windows

Начиная с Windows Vista, Microsoft ввела механизм изоляции Session 0, который предотвращает взаимодействие служб, работающих от имени LocalSystem, с пользовательским интерфейсом (например, вывод окон на рабочий стол). Это снижает риск атак, использующих «shatter attacks» (атаки на окна сообщений). Кроме того, обязательный контроль целостности (Mandatory Integrity Control, MIC) присваивает процессам LocalSystem уровень целостности «Системный» (System Integrity Level), который выше, чем у процессов администратора (High Integrity Level), но не является абсолютным — некоторые действия, такие как запись в защищённые области реестра (например, HKEY_LOCAL_MACHINE\SAM), всё равно требуют дополнительных проверок.

Отличие от LocalService и NetworkService

Применение в разработке и администрировании

Запуск приложений от имени SYSTEM

В административной практике иногда требуется запустить приложение или скрипт с правами LocalSystem. Для этого используются:

Разработка служб

При разработке служб Windows (Windows Service) разработчик должен явно указать, под какой учётной записью будет работать служба. Если служба требует доступа к защищённым системным ресурсам (например, к реестру, файлам в C:\Windows\System32, драйверам), она должна быть настроена на LocalSystem. Однако для большинства служб рекомендуется использовать LocalService или NetworkService, чтобы минимизировать поверхность атаки.

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →