Resumen
En este artículo, se describe un cambio en la directiva de seguridad que comienza con Windows 10, versión 1709, y Windows Server 2016, versión 1709. Conforme a esta directiva nueva, solo los usuarios que son administradores locales en un equipo remoto pueden iniciar o detener servicios en ese equipo.
En este artículo, también se describe cómo excluir servicios individuales de esta directiva nueva.
Más información
Un error de seguridad frecuente es configurar los servicios para usar un descriptor de seguridad excesivamente permisivo (consulte Derechos de acceso y seguridad de servicio) y, por lo tanto, otorgar acceso de manera inadvertida a los usuarios que realizan más llamadas remotas de lo previsto. Por ejemplo, es normal encontrar servicios que otorgan permisos SERVICE_START o SERVICE_STOP a usuarios autenticados. Si bien la intención generalmente es otorgar esos derechos solo a usuarios no administrativos locales, los usuarios autenticados también incluyen a cada usuario o cuenta de equipo en el bosque de Active Directory, ya sea que esa cuenta sea de un miembro del grupo de administradores en el equipo local o remoto. Existe la posibilidad de que se abusen de este exceso de permisos y causar estragos en toda la red.
Dada la omnipresencia y la posible gravedad de este problema y la práctica de seguridad moderna de suponer que cualquier dominio suficientemente grande contiene equipos comprometidos, se incluyó una configuración nueva de seguridad del sistema que requiere que los usuarios que realizan llamadas remotas también sean administradores locales en el equipo para poder solicitar los siguientes permisos de servicio:
SERVICE_CHANGE_CONFIG
SERVICE_START SERVICE_STOP SERVICE_PAUSE_CONTINUE DELETE WRITE_DAC WRITE_OWNERLa nueva configuración de seguridad requiere que los usuarios de llamadas remotas sean administradores locales en el equipo para solicitar el siguiente permiso del administrador de control del servicio:
SC_MANAGER_CREATE_SERVICE
Nota Esta comprobación de administrador local se suma a la comprobación de acceso existente en relación con el descriptor de seguridad del servicio o del controlador de servicio. Se incluyó esta configuración a partir de Windows 10, versión 1709, y de Windows Server 2016, versión 1709. La configuración está habilitada por defecto.
Esta nueva comprobación podría ocasionar problemas para algunos clientes con servicios que dependen de la capacidad de los usuarios que no son administradores para iniciarlos o detenerlos de manera remota. Si es necesario, puede excluir servicios individuales de esta directiva mediante la adición del nombre del servicio al valor de registro RemoteAccessCheckExemptionList REG_MULTI_SZ en la siguiente ubicación del registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\SCM
Para ello, siga estos pasos:
-
Seleccione Inicio, haga clic en Ejecutar, escriba regedit en el cuadro Abrir y, luego, haga clic en Aceptar.
-
Busque la siguiente subclave del Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\SCM Nota Si la subclave no existe, debe crearla: en el menú Editar, seleccione Nuevo y, luego, haga clic en Clave. Escriba el nombre de la subclave nueva y, luego, presione Intro. -
En el menú Editar, seleccione Nuevo y, luego, haga clic en REG_MULTI_SZ Value.
-
Escriba RemoteAccessCheckExemptionList para el nombre del valor REG_MULTI_SZ y, luego, presione Intro.
-
Haga doble clic en el valor RemoteAccessCheckExemptionList, escriba el nombre del servicio que desea excluir de la directiva nueva y, luego, haga clic en Aceptar.
-
Cierre el Editor del Registro y reinicie el equipo.
Los administradores que desean deshabilitar a nivel global esta comprobación nueva y restaurar el comportamiento anterior, cuyo nivel de seguridad es inferior, pueden configurar el valor del registro RemoteAccessExemption REG_DWORD a un valor distinto de cero en la siguiente ubicación de registro:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control
Nota Configurar este valor temporalmente puede ser una forma rápida de determinar si este modelo de permiso nuevo es la causa de los problemas de compatibilidad de la aplicación.
Para ello, siga estos pasos:
-
Seleccione Inicio, haga clic en Ejecutar, escriba regedit en el cuadro Abrir y, luego, haga clic en Aceptar.
-
Busque la siguiente subclave del Registro y haga clic en ella:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control -
En el menú Editar, seleccione Nuevo y haga clic en el valor REG_DWORD (32 bits) .
-
Escriba RemoteAccessExemption para el nombre del valor REG_DWORD y, luego, presione Intro.
-
Haga doble clic en el valor RemoteAccessExemption, escriba 1 en el campo Información del valor y, a continuación, haga clic en Aceptar.
-
Cierre el Editor del Registro y reinicie el equipo.