Cuenta LocalSystem

La cuenta LocalSystem es una cuenta local predefinida que usa el administrador de control de servicios. El subsistema de seguridad no reconoce esta cuenta, por lo que no se puede especificar su nombre en una llamada a la función LookupAccountName . Tiene privilegios amplios en el equipo local y actúa como el equipo de la red. Su token incluye los SID NT AUTHORITY\SYSTEM y BUILTIN\Administrators; estas cuentas tienen acceso a la mayoría de los objetos del sistema. El nombre de la cuenta en todas las configuraciones regionales es .\LocalSystem. También se puede usar el nombre, LocalSystem o NombreDeEquipo\LocalSystem. Esta cuenta no tiene una contraseña. Si especifica la cuenta LocalSystem en una llamada a la función CreateService o ChangeServiceConfig , se omite cualquier información de contraseña que proporcione.

Un servicio que se ejecuta en el contexto de la cuenta LocalSystem hereda el contexto de seguridad del SCM. El SID de usuario se crea a partir del valor de SECURITY_LOCAL_SYSTEM_RID . La cuenta no está asociada a ninguna cuenta de usuario que haya iniciado sesión. Esto implica lo siguiente:

  • La clave del Registro HKEY_CURRENT_USER está asociada al usuario predeterminado, no al usuario actual. Para acceder al perfil de otro usuario, suplanta al usuario y, a continuación, accede a HKEY_CURRENT_USER.
  • El servicio puede abrir la clave del Registro HKEY_LOCAL_MACHINE\SECURITY.
  • El servicio presenta las credenciales del equipo a los servidores remotos.
  • Si el servicio abre una ventana de comandos y ejecuta un archivo por lotes, el usuario podría presionar CTRL+C para finalizar el archivo por lotes y obtener acceso a una ventana de comandos con permisos LocalSystem.

La cuenta LocalSystem tiene los siguientes privilegios:

  • SE_ASSIGNPRIMARYTOKEN_NAME (deshabilitado)
  • SE_AUDIT_NAME (habilitado)
  • SE_BACKUP_NAME (deshabilitado)
  • SE_CHANGE_NOTIFY_NAME (habilitado)
  • SE_CREATE_GLOBAL_NAME (habilitado)
  • SE_CREATE_PAGEFILE_NAME (habilitado)
  • SE_CREATE_PERMANENT_NAME (habilitado)
  • SE_CREATE_TOKEN_NAME (deshabilitado)
  • SE_DEBUG_NAME (habilitado)
  • SE_IMPERSONATE_NAME (habilitado)
  • SE_INC_BASE_PRIORITY_NAME (habilitado)
  • SE_INCREASE_QUOTA_NAME (deshabilitado)
  • SE_LOAD_DRIVER_NAME (deshabilitado)
  • SE_LOCK_MEMORY_NAME (habilitado)
  • SE_MANAGE_VOLUME_NAME (deshabilitado)
  • SE_PROF_SINGLE_PROCESS_NAME (habilitado)
  • SE_RESTORE_NAME (deshabilitado)
  • SE_SECURITY_NAME (deshabilitado)
  • SE_SHUTDOWN_NAME (deshabilitado)
  • SE_SYSTEM_ENVIRONMENT_NAME (deshabilitado)
  • SE_SYSTEMTIME_NAME (deshabilitado)
  • SE_TAKE_OWNERSHIP_NAME (deshabilitado)
  • SE_TCB_NAME (habilitado)
  • SE_UNDOCK_NAME (deshabilitado)

La mayoría de los servicios no necesitan un nivel de privilegios tan alto. Si el servicio no necesita estos privilegios y no es un servicio interactivo, considere la posibilidad de usar la cuenta LocalService o la cuenta NetworkService. Para obtener más información, consulte Derechos de acceso y seguridad del servicio.