Cómo asignar privilegios mínimos a un servicio de Windows para aprovisionar nuevas cuentas

Cómo asignar privilegios mínimos a un servicio de Windows para aprovisionar nuevas cuentas

Tenemos un servicio de Windows que actualmente se ejecuta como LOCAL_SYSTEM, efectivamente un administrador local. Una de las funciones del servicio es proporcionar nuevas cuentas locales y agregarlas a un grupo específico. ¿Son posibles las siguientes cosas?

  1. Utilice una cuenta/grupo de usuario específico para la cuenta de servicio y asígnele privilegios para que pueda crear nuevas cuentas.
  2. Limite el servicio para que solo pueda crear usuarios con privilegios limitados. Por ejemplo, las cuentas que proporciona el servicio no tienen inicio de sesión interactivo y son miembros de un grupo específico.
  3. Configure esto con PowerShell.

Supuse que algo sería posible a través de la Política de seguridad local, pero no parece serlo. Agregar la cuenta de servicio a Administradores funcionará, pero no me ayuda a reducir los privilegios de la cuenta de servicio.

El objetivo de esto es que si el servicio es pirateado de alguna manera, podamos limitar el daño: el pirata informático solo puede crear cuentas con menos privilegios que la cuenta del servicio.

Tenga en cuenta que esto se relaciona con cuentas locales, no con cuentas de dominio.

Respuesta1

Podrías usar PowershellCapacidades de rol de JEAy crear una capacidad que permita a la cuenta local usar solo comandos relacionados con la administración de usuarios locales (New-LocalUser, Add-LocalGroupMember) y restringir los parámetros permitidos de tal manera que solo se acepten como argumento grupos de privilegios bajos.

Esto debería ayudarte a comenzar:

https://docs.microsoft.com/en-us/powershell/scripting/learn/remoting/jea/role-capabilities?view=powershell-7

información relacionada