A finales del pasado mes de diciembre, Microsoft publicó un documento titulado What’s new in Windows Server 2019 sobre las nuevas características y funcionalidades renovadas que aportará esta nueva versión de Windows Server. Esta entrada, como no podría ser de otra manera, se centrará en aquellas funcionalidades relacionadas con las mejoras en seguridad que aporta Windows Defender ATP y que ya se habían visto en Windows 10 a través de Windows Defender Exploit Guard, EMET (Enhanced Mitigation Experience Toolkit) que dejó de tener soporte el pasado 31 de julio de 2018, así como WDAC (Windows Defender Application Control).
Conforme se estaba desarrollando la entrada, se fue ahondando en la investigación y esto llevó a un documento mucho más completo sobre ATP, en concreto Windows Defender Advanced Threat Protection. Este post pretende ser un breve resumen ordenado de todo aquello que recogen los múltiples enlaces del documento anteriormente citado.
Protección contra Amenazas Avanzadas de Windows Defender (Windows Defender Advanced Threat Protection, ATP)
El sistema ATP de Windows Defender está diseñado para proteger el kernel y la memoria del sistema frente a ficheros y procesos maliciosos, ya sea a través del bloqueo o mediante la finalización de éstos, con el objeto de prevenir la intrusión en el host. En su desarrollo, se apoya en varios aspectos a tener en cuenta para reducir la intrusión.
1. Reducción de la Superficie de Ataque (Attack Surface Reduction, ASR)
La reducción de la superficie de ataque (ASR) se fundamenta en un conjunto de reglas complejas gestionadas por los administradores del sistema que permiten bloquear archivos potencialmente peligrosos en función de su comportamiento. Estas reglas realizan el bloqueo de estos ficheros basándose, principalmente, en los siguientes aspectos o comportamientos:
- ejecutables en el correo.
- procesos secundarios, llamadas a API de Win32 desde macros o ejecutables creados por aplicaciones de Office, así como la posibilidad de inyección de código por esta.
- scripts que ejecuten código descargado por ellos, procesos sin firmar y no confiables desde USB, …
2. Protección de Red (Network Protection)
Esta capacidad de filtrado de red se encuentra en el kernel del sistema y está orientada a proteger el host. En este caso, bloquea aquellas conexiones salientes del equipo contra dominios potencialmente peligrosos para evitar daños producidos por phishing, sitios que pueden intentar instalar malware en la máquina e incluso propagarse por el resto de máquinas de la red. El bloqueo se fundamenta, principalmente, en inteligencia de reputación basada tanto en la IP como en el nombre del dominio, combinando búsquedas online y almacenamiento en caché, por lo que si el resultado indica que la conexión se dirige a un sitio de mala reputación se bloquee la salida a Internet para dicho malware basado en web, tanto si la llamada se genera desde un navegador o desde un proceso en segundo plano.
3. Carpetas de Acceso Controlado (Controlled Access Folder)
En los últimos años, han sido muy notorios los ataques por ransomware que han provocado el cifrado de archivos en organizaciones y empresas. Para evitar estos comportamientos, se dispone del acceso controlado a carpetas. En esencia, lo que se pretende es evitar el uso de ficheros por parte de procesos que no se hayan definido como procesos de confianza. La gestión de esta característica en la infraestructura TI se podrá llevar a través de GPO o PowerShell. Además de definir los controles, cada vez que se bloquee un intento de llevar a cabo un cambio en directorios protegidos, se generará una alerta en Windows Defender ATP.
4. Protección contra Vulnerabilidades (Exploit Protection)
La protección contra vulnerabilidades ya estaba presente en EMET y ahora se dispone de ella en Windows Defender ATP. Dado que EMET ha dejado de tener soporte, Microsoft ha implementado mecanismos para la migración de las reglas definidas en EMET a ATP. Entre las mitigaciones que lleva a cabo están las relacionadas con la ejecución de código, la validación de integridad de imágenes remotas, el bloqueo de fuentes que no sean de confianza, validaciones al API, bloqueo de procesos secundarios, validación de controladores. Como se ha comentado algunas ya estaban presentes en EMET y otras son propias o han sido mejoradas por ATP.
Respecto a los cuatro puntos citados hasta el momento, todos estos mecanismos se pueden habilitar en modo auditoría de manera que se pueda ver el comportamiento del sistema simulando su aplicación, dejando traza de las acciones simuladas en los registros de eventos, de manera que tras un período de tiempo definido para el análisis, se pueda determinar si las reglas diseñadas son válidas y pueden pasar a producción. Además, el administrador puede habilitar la notificación de forma que el usuario sea consciente de los bloqueos. Esto es útil en caso de que se produzca un falso positivo, para que el usuario pueda notificar del error provocado por el mecanismo de bloqueo.
5. Control de Aplicaciones de Windows Defender (Windows Defender Application Control, WDAC)
Como se indica en el artículo, el WDAC apareció con Windows Server 2016. Como mejora de la gestión, Microsoft ha desarrollado directivas de Integridad de Código (CI), de manera que se pueda bloquear aquellos ejecutables que pongan en riesgo la integridad. En este caso, en lugar de ver todas las aplicaciones o librerías como confiables, se revierte el planteamiento y se presupone la no confianza, por lo que explícitamente se deberán establecer qué aplicaciones pueden ejecutar los usuarios y qué código podrá ejecutarse en el kernel del sistema. Por otro lado, también se incorpora la capacidad de bloqueo de scripts y .msi sin firmar, así como determinar si se pueden ejecutar complementos o módulos de aplicaciones a través de sencillas reglas que relacionan ejecutables con librerías.
6. Aislamiento basado en hardware (Hardware-based isolation)
- Aislamiento de aplicaciones.
Este modelo se basa en la definición de todos aquellos sitios que la organización considera que son de confianza. Por tanto, el acceso a sitios que no estén recogidos se considerarán de no confianza. Cuando se accede a un sitio de no confianza, el acceso se realiza en un contenedor aislado, por lo que si el sitio es realmente malintencionado, el host estará protegido frente a la intrusión, ya que dicho contenedor es anónimo y, por tanto, no tiene acceso a la obtención de credenciales de usuario.
- Aislamiento del sistema
Proteger y mantener la integridad del sistema en el inicio.
El sistema está preparado para evitar que ningún bootkit se inicie antes que el cargador de arranque del sistema operativo. Para ello, se hace uso de hardware basado en Root of Trust (RoT), que es un elemento de la Unified Extensible Firmware Interface (UEFI). Tras esta validación se puede iniciar el arranque de Windows y el firmware.
Proteger y mantener la integridad del sistema tras el arranque.
A pesar de las dificultades que se han desarrollado para evitar mecanismos de aumento de privilegios, todavía no se está seguro de poder mantener la integridad de los servicios críticos del sistema operativo. Para ello, a partir de Windows 10, apareció el modelo de seguridad basado en virtualización (VBS). Con este concepto, se permite aislar los datos en modelo basado en hardware. De esta forma se permite, en tiempo de ejecución, proteger servicios críticos como Credential Guard, Device Guard, TPM Virtual y partes de Windows Defender, etc.
Validación de la integridad del sistema de forma local y remota.
A través de Trusted Platform Module 2.0 (TPM 2.0), el sistema obtiene datos que servirán como medidas de integridad. Tanto el proceso como la información se aíslan del hardware, para que la obtención de datos no esté sujeta a alteraciones. A través de sistemas remotos como Intune o System Center Configuration Manager (SCCM) se pueden solicitar para el análisis. Si el análisis indica que el sistema está comprometido, se podría, por ejemplo, denegar el acceso a los recursos ofrecidos por el dispositivo comprometido.
Como se ha comentado, lo que se ha pretendido con la entrada es realizar una primera aproximación a Windows Defender ATP, ofreciendo un resumen de las opciones a investigar por parte de los administradores de sistemas, con el objeto de potenciar al máximo los niveles de seguridad que se ofrece en Windows Server 2019.