Configuración de protección adicional para LSA
En este artículo se explica cómo configurar protección adicional para el proceso de autoridad de seguridad local (LSA) con el fin de evitar una inyección de código que pueda poner en peligro las credenciales.
El proceso LSA, que incluye el proceso del Servicio de servidor de autoridad de seguridad local (LSASS), valida a los usuarios para los inicios de sesión locales y remotos y exige la aplicación de directivas de seguridad local. A partir de Windows 8.1, se proporciona protección adicional para LSA con el fin de evitar la lectura de memoria y la inyección de código por parte de procesos no protegidos. Esta característica proporciona seguridad adicional para las credenciales que LSA almacena y administra. Cuando se usan el bloqueo UEFI y el arranque seguro, se consigue una mayor protección, ya que deshabilitar la clave del Registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa no tiene ningún efecto.
Requisitos de acceso protegido para complementos o controladores
Para que un complemento o un controlador de LSA se cargue correctamente como proceso protegido, debe cumplir los criterios siguientes:
Verificación de firmas
El modo protegido requiere que todos los complementos que se carguen en LSA estén firmados digitalmente con una firma de Microsoft. Los complementos que no están firmados o que no tienen una firma de Microsoft no se cargan en LSA. Algunos ejemplos de complementos son los controladores de tarjetas inteligentes, los complementos criptográficos y los filtros de contraseña.
- Los complementos de LSA que sean controladores, como los controladores de tarjetas inteligentes, tienen que estar firmados con la certificación de WHQL. Para obtener más información, consulte Firma de la versión de WHQL.
- Los complementos de LSA que no tienen un proceso de certificación de WHQL deben firmarse con el servicio de firma de archivos para LSA.
Adhesión a la guía del proceso Ciclo de vida de desarrollo de seguridad (SDL) de Microsoft
- Todos los complementos deben ser conformes con la guía del proceso SDL aplicable. Para obtener más información, consulte la guía del proceso Ciclo de vida de desarrollo de seguridad (SDL) de Microsoft.
- Incluso si los complementos están debidamente firmados con una firma de Microsoft, la no conformidad con el proceso SDL puede impedir que se cargue un complemento.
Procedimientos recomendados
Utilice la siguiente lista para probar exhaustivamente la protección de LSA antes de implementar la característica de forma generalizada:
- Identifique todos los complementos y controladores de LSA que usa su organización. Incluya los controladores o complementos que no son de Microsoft, como los controladores de tarjetas inteligentes, los complementos de cifrado y cualquier software desarrollado internamente que se utilice para implementar filtros de contraseña o notificaciones de cambio de contraseña.
- Asegúrese de que todos los complementos de LSA estén firmados digitalmente con un certificado de Microsoft para que no se produzca un error al cargarlos con la protección de LSA.
- Asegúrate de que todos los complementos firmados correctamente puedan cargarse adecuadamente en LSA y que tengan el rendimiento esperado.
- Utiliza los registros de auditoría para identificar los complementos y controladores de LSA que no se hayan ejecutado correctamente como proceso protegido.
Limitaciones de la protección de LSA
Cuando se habilita la protección adicional de LSA, no se puede depurar un complemento de LSA personalizado. No se puede adjuntar un depurador a LSASS cuando se trata de un proceso protegido. En general, no se admite la depuración de un proceso protegido en ejecución.
Auditoría de complementos y controladores de LSA que no se cargan como un proceso protegido
Antes de habilitar la protección de LSA, use el modo de auditoría para identificar los complementos y controladores de LSA que no se cargarán en el modo protegido de LSA. Mientras está en el modo de auditoría, el sistema genera registros de eventos que identifican todos los complementos y controladores que no se cargarán bajo LSA si está habilitada la protección de LSA. Los mensajes se registran sin bloquear los complementos o controladores.
Los eventos descritos en esta sección se encuentran en el Visor de eventos, en el registro operativo, en Registros de aplicaciones y servicios>Microsoft>Windows>CodeIntegrity. Estos eventos pueden ayudarle a identificar los complementos y controladores de LSA que no se han cargado correctamente debido a problemas relacionados con firmas. Para administrar estos eventos, utiliza la herramienta de línea de comandos wevtutil. Para obtener más información sobre esta herramienta, consulta Wevtutil.
Importante
Los eventos de auditoría no se generan si se ha habilitado Control Inteligente de Aplicaciones en un dispositivo. Para comprobar o cambiar el estado de habilitación de Control Inteligente de Aplicaciones, abra la aplicación Seguridad de Windows y vaya a la página Control de aplicaciones y explorador. Seleccione la configuración de Control Inteligente de Aplicaciones para comprobar el estado de habilitación y cambiar la configuración a Desactivada si está intentando auditar la protección adicional de LSA.
Nota:
El modo de auditoría para la protección adicional de LSA está habilitado de forma predeterminada en los dispositivos que ejecutan Windows 11 22H2 y versiones posteriores. Si el dispositivo ejecuta esta compilación o una versión posterior, no es necesaria ninguna otra acción para auditar la protección adicional de LSA.
Habilitación del modo de auditoría para LSASS.exe en un solo equipo
- Abra el Editor del Registro (RegEdit.exe) y vaya a la clave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\LSASS.exe.
- Establece el valor de la clave del Registro en AuditLevel=dword:00000008.
- Reinicie el equipo.
Después de realizar estos pasos, analice los resultados de los eventos 3065 y 3066. En el Visor de eventos, compruebe si están estos eventos en el registro operativo en Registros de aplicaciones y servicios>Microsoft>Windows>CodeIntegrity.
- El evento 3065 registra que una comprobación de integridad del código ha determinado que un proceso (normalmente LSASS.exe) ha intentado cargar un controlador que no cumplía los requisitos de seguridad de las secciones compartidas. No obstante, debido a la directiva del sistema establecida actualmente, se ha permitido la carga de la imagen.
- El evento 3066 registra que una comprobación de integridad del código ha determinado que un proceso (normalmente LSASS.exe) ha intentado cargar un controlador que no cumplía los requisitos de nivel de firma de Microsoft. No obstante, debido a la directiva del sistema establecida actualmente, se ha permitido la carga de la imagen.
Si un complemento o un controlador contiene secciones compartidas, el evento 3066 se registra con el evento 3065. La eliminación de las secciones compartidas debería evitar que se produzcan ambos eventos, a menos que el complemento no cumpla los requisitos de nivel de firma de Microsoft.
Importante
Estos eventos operativos no se generan cuando hay un depurador de kernel conectado y habilitado en un sistema.
Habilitación del modo de auditoría para LSASS.exe en varios equipos
Para habilitar el modo de auditoría para varios equipos en un dominio, utilice la extensión del lado cliente de Directiva de grupo del Registro para implementar el valor del Registro de nivel de auditoría de LSASS.exe. Debe modificar la clave del Registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\LSASS.exe.
- Abra la Consola de administración de directivas de grupo (GPMC) escribiendo gpmc.msc en el cuadro de diálogo Ejecutar o seleccionando Consola de administración de directivas de grupo en el menú Inicio.
- Cree un nuevo objeto de directiva de grupo (GPO) que esté vinculado en el nivel de dominio o a la unidad organizativa que contiene las cuentas de su equipo. O bien seleccione un GPO que ya esté implementado.
- Haga clic con el botón derecho en el GPO y, a continuación, seleccione Editar para abrir el Editor de administración de directivas de grupo.
- Expanda Configuración del equipo>Preferencias>Configuración de Windows.
- Haga clic con el botón derecho en Registro, apunte a Nuevo y, a continuación, seleccione Elemento del Registro. Aparece el cuadro de diálogo Nuevas propiedades de Registro.
- En la lista Subárbol, seleccione HKEY_LOCAL_MACHINE.
- En la lista Ruta de la clave, busca SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\LSASS.exe.
- En el cuadro Nombre del valor, escribe AuditLevel.
- En el cuadro Tipo de valor, seleccione REG_DWORD.
- En el cuadro Datos del valor, escribe 00000008.
- Seleccione Aceptar.
Nota:
Para que el GPO surta efecto, debe replicarse el cambio de GPO a todos los controladores del dominio.
Para participar en la protección adicional de LSA en varios equipos, utilice la extensión del lado cliente de Directiva de grupo del Registro modificando HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa. Para obtener instrucciones, consulte Habilitación y configuración de la protección adicional de credenciales de LSA más adelante en este artículo.
Identificación de complementos y controladores que LSASS.exe no puede cargar
Cuando está habilitada la protección de LSA, el sistema genera registros de eventos que identifican todos los complementos y controladores que no se pueden cargar bajo LSA. Después de decidir participar en la protección adicional de LSA, puede usar el registro de eventos para identificar complementos y controladores de LSA que no se pudieron cargar en el modo de protección de LSA.
Compruebe los siguientes eventos en el Visor de eventos, en Registros de aplicaciones y servicios>Microsoft>Windows>CodeIntegrity>Operativo:
- El evento 3033 registra que una comprobación de integridad del código ha determinado que un proceso (normalmente LSASS.exe) ha intentado cargar un controlador que no cumplía los requisitos de nivel de firma de Microsoft.
- El evento 3063 registra que una comprobación de integridad del código ha determinado que un proceso (normalmente LSASS.exe) ha intentado cargar un controlador que no cumplía los requisitos de seguridad de las secciones compartidas.
Las secciones compartidas normalmente son el resultado de técnicas de programación que permiten que los datos de instancias interactúen con otros procesos que utilizan el mismo contexto de seguridad, lo que puede crear una vulnerabilidad de seguridad.
Habilitación y configuración de la protección adicional de credenciales de LSA
Puede configurar la protección adicional de LSA para dispositivos que ejecutan Windows 8.1 o posterior, o Windows Server 2012 R2 o posterior, usando los procedimientos de esta sección.
Dispositivos que usan el arranque seguro y UEFI
Al habilitar la protección de LSA en dispositivos basados en x86 o x64 que usan el arranque seguro o UEFI, puede almacenar una variable de UEFI en el firmware de UEFI usando una clave del Registro o una directiva. Cuando se habilita con el bloqueo UEFI, LSASS se ejecuta como un proceso protegido y esta configuración se almacena en una variable de UEFI en el firmware.
Cuando la configuración se almacena en el firmware, la variable de UEFI no se puede eliminar ni cambiar para habilitar la protección adicional de LSA modificando el Registro o mediante una directiva. La variable de UEFI debe restablecerse siguiendo las instrucciones que se proporcionan en Eliminación de la variable de UEFI de la protección de LSA.
Cuando se habilita sin un bloqueo UEFI, LSASS se ejecuta como un proceso protegido y esta configuración no se almacena en una variable de UEFI. Esta configuración se aplica de forma predeterminada en los dispositivos con una nueva instalación de Windows 11, versión 22H2 o posterior.
Los dispositivos basados en x86 o x64 que no admiten UEFI o en los que el arranque seguro está deshabilitado no pueden almacenar la configuración de la protección de LSA en el firmware. Estos dispositivos dependen únicamente de la presencia de la clave del Registro. En este escenario, es posible deshabilitar la protección LSA con el acceso remoto al dispositivo. La deshabilitación de la protección de LSA no surte efecto hasta que se reinicia el dispositivo.
Habilitación automática
En el caso de los dispositivos cliente que ejecutan Windows 11 22H2 y versiones posteriores, la protección adicional de LSA está habilitada de forma predeterminada si se cumplen los siguientes criterios:
- El dispositivo es una nueva instalación de Windows 11 22H2 o una versión posterior, no actualizada desde una versión anterior.
- El dispositivo está unido a la empresa (unido a un dominio de Active Directory, unido a un dominio de Microsoft Entra o unido a un dominio híbrido de Microsoft Entra).
- El dispositivo puede proporcionar integridad del código protegida por hipervisor (HVCI).
La habilitación automática de la protección adicional de LSA en Windows 11 22H2 y versiones posteriores no establece una variable de UEFI para la característica. Si quiere establecer una variable UEFI, puede usar una directiva o una configuración del Registro.
Nota:
En el caso de los dispositivos que ejecutan Windows RT 8.1, la protección adicional de LSA siempre está habilitada y no se puede desactivar.
Habilitación de la protección de LSA en un único equipo
Puede habilitar la protección de LSA en un solo equipo usando el Registro o la directiva de grupo local.
Habilitación mediante el registro
- Abra el Editor del Registro (RegEdit.exe) y vaya a la clave: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa.
- Establezca el valor de la clave del Registro en:
- "RunAsPPL"=dword:00000001 para configurar la característica con una variable de UEFI.
- "RunAsPPL"=dword:00000002 para configurar la característica sin una variable de UEFI. Solo se aplica en Windows 11 22H2 y versiones posteriores.
- Reinicie el equipo.
Habilitación mediante la directiva de grupo local en Windows 11 22H2 y versiones posteriores
- Abra el Editor de directivas de grupo local escribiendo gpedit.msc.
- Expanda Configuración del equipo> Plantillas administrativas>Sistema>Autoridad de seguridad local.
- Abra la directiva Configurar LSASS para que se ejecute como proceso protegido.
- Establezca la directiva como Habilitada.
- En Opciones, seleccione una de las siguientes opciones:
- Habilitado con bloqueo UEFI para configurar la característica con una variable de UEFI.
- Habilitado sin bloqueo UEFI para configurar la característica sin una variable de UEFI.
- Seleccione Aceptar.
- Reinicie el equipo.
Habilitación de la protección de LSA mediante la directiva de grupo
- Abra GPMC escribiendo gpmc.msc en el cuadro de diálogo Ejecutar o seleccionando Consola de administración de directivas de grupo en el menú Inicio.
- Cree un nuevo GPO que esté vinculado en el nivel de dominio o a la unidad organizativa que contiene las cuentas de su equipo. O bien seleccione un GPO que ya esté implementado.
- Haga clic con el botón derecho en el GPO y, a continuación, seleccione Editar para abrir el Editor de administración de directivas de grupo.
- Expanda Configuración del equipo>Preferencias>Configuración de Windows.
- Haga clic con el botón derecho en Registro, apunte a Nuevo y, a continuación, seleccione Elemento del Registro. Aparece el cuadro de diálogo Nuevas propiedades de Registro.
- En la lista Subárbol, seleccione HKEY_LOCAL_MACHINE.
- En la lista Ruta de la clave, vaya a SYSTEM\CurrentControlSet\Control\Lsa.
- En el cuadro Nombre del valor, escriba RunAsPPL.
- En el cuadro Tipo de valor, seleccione REG_DWORD.
- En el cuadro Datos del valor, escriba:
- 00000001 para habilitar la protección LSA con una variable UEFI.
- 00000002 para habilitar la protección de LSA sin una variable de UEFI. Solo se aplica a Windows 11 22H2 y versiones posteriores.
- Seleccione Aceptar.
Habilitación de la protección de LSA mediante la creación de un perfil de configuración de dispositivo personalizado
En el caso de los dispositivos que ejecutan Windows 11 22H2 y versiones posteriores, puede habilitar y configurar la protección de LSA creando un perfil de configuración de dispositivo personalizado en el Centro de administración de Microsoft Intune.
- En el Centro de administración de Intune, vaya a Dispositivos>Windows>Perfiles de configuración y seleccione Crear perfil.
- En la pantalla Crear un perfil, seleccione las siguientes opciones:
- Plataforma: Windows 10 y versiones posteriores
- Tipo de perfil: seleccione Plantillas y elija Personalizado.
- Seleccione Crear.
- En la pantalla Aspectos básicos, escriba un Nombre y una Descripción opcional para el perfil y seleccione Siguiente.
- En la pantalla Opciones de configuración, seleccione Agregar.
- En la pantalla Agregar fila, proporcione la siguiente información:
- Nombre: proporcione un nombre para la configuración OMA-URI.
- OMA-URI: escriba ./Device/Vendor/MSFT/Policy/Config/LocalSecurityAuthority/ConfigureLsaProtectedProcess.
- Tipo de datos: seleccione Integer.
- Valor: escriba 1 para configurar LSASS para que se ejecute como un proceso protegido con bloqueo UEFI, o 2 para configurar LSASS para que se ejecute como un proceso protegido sin bloqueo UEFI.
- Seleccione Guardar y, a continuación, seleccione Siguiente.
- En la página Asignaciones, configure las asignaciones y elija Siguiente.
- En la página Reglas de aplicabilidad, configure las reglas de aplicabilidad y elija Siguiente.
- En la página Revisar y crear, compruebe la configuración y elija Crear.
- Reinicie el equipo.
Para obtener más información sobre este CSP de directiva, consulte LocalSecurityAuthority, ConfigureLsaProtectedProcess.
Deshabilitación de la protección de LSA
Puede deshabilitar la protección de LSA usando el Registro o la directiva de grupo local. Si el dispositivo usa el arranque seguro y establece una variable de UEFI de protección de LSA en el firmware, puede usar una herramienta para quitar la variable de UEFI.
Deshabilitación mediante el Registro
- Abra el Editor del Registro (RegEdit.exe) y vaya a la clave: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa.
- Establezca el valor de la clave del Registro en "RunAsPPL"=dword:00000000 o elimine el elemento DWORD.
- Si PPL se había habilitado con una variable UEFI, use la herramienta de exclusión de procesos protegidos por la autoridad de seguridad local para quitar la variable UEFI.
- Reinicie el equipo.
Deshabilitación mediante la directiva local en Windows 11 22H2 y versiones posteriores
- Abra el Editor de directivas de grupo local escribiendo gpedit.msc.
- Expanda Configuración del equipo> Plantillas administrativas>Sistema>Autoridad de seguridad local.
- Abra la directiva Configurar LSASS para que se ejecute como proceso protegido.
- Establezca la directiva como Habilitada.
- En Opciones, seleccione Deshabilitado.
- Seleccione Aceptar.
- Reinicie el equipo.
Nota:
Si esta directiva está habilitada y la establece en No configurada, la configuración anterior no se borra y se sigue aplicando. Debe establecer la directiva en Deshabilitada en la lista desplegable Opciones para deshabilitar la característica.
Eliminación de la variable de UEFI de la protección de LSA
Puede usar la herramienta de exclusión del proceso protegido de autoridad de seguridad local (LSA), o LSAPPLConfig del Centro de descarga de Microsoft para eliminar la variable de UEFI si el dispositivo usa el arranque seguro.
Nota:
El Centro de descarga ofrece dos archivos denominados LsaPplConfig.efi. El archivo más pequeño es para sistemas basados en x86 y el archivo más grande es para sistemas basados en x64.
Para obtener más información acerca de la administración del arranque de seguridad, consulte Firmware UEFI.
Precaución
Cuando el arranque seguro está desactivado, todas las configuraciones relacionadas con el arranque seguro y UEFI se restablecen. Debes desactivar el arranque seguro únicamente cuando hayan fallado todos los demás medios de deshabilitación de la protección LSA.
Comprobación de la protección de LSA
Para determinar si LSA se ha iniciado en modo protegido cuando se ha iniciado Windows, compruebe Registros de Windows>Sistema en el Visor de eventos para ver si aparece el siguiente evento de WinInit:
- 12: LSASS.exe se inició como un proceso protegido con nivel: 4.
LSA y Credential Guard
La protección de LSA es una característica de seguridad que protege la información confidencial, como las credenciales, frente a robos, bloqueando la inyección de código de LSA que no es de confianza y el volcado de memoria de procesos. La protección de LSA se ejecuta en segundo plano aislando el proceso de LSA en un contenedor y evitando que otros procesos, como actores o aplicaciones malintencionados, accedan a la característica. Este aislamiento hace que la protección de LSA sea una característica de seguridad vital, por lo que está habilitada de forma predeterminada en Windows 11.
A partir de Windows 10, Credential Guard también ayuda a evitar ataques de robo de credenciales mediante la protección de los hash de contraseña NTLM, los vales de concesión de vales (TGT) de Kerberos y las credenciales almacenadas por las aplicaciones, como las credenciales de dominio. Kerberos, NTLM y el Administrador de credenciales aíslan los secretos mediante seguridad basada en virtualización (VBS).
Con Credential Guard habilitado, el proceso de LSA se comunica con un componente denominado proceso LSA aislado, o LSAIso.exe, que almacena y protege los secretos. Los datos almacenados por el proceso LSA aislado se protegen con VBS y no están accesibles para el resto del sistema operativo. LSA usa llamadas a procedimiento remoto para comunicarse con el proceso LSA aislado.
A partir de Windows 11, versión 22H2, VBS y Credential Guard están habilitados de forma predeterminada en todos los dispositivos que cumplen los requisitos del sistema. Credential Guard solo se admite en dispositivos con arranque seguro de 64 bits. La protección de LSA y Credential Guard son complementarios. Los sistemas que admiten Credential Guard o lo tienen habilitado de forma predeterminada también pueden habilitar la protección de LSA y beneficiarse de ella. Para obtener más información sobre Credential Guard, consulte Información general de Credential Guard.