En julio de 2023, nuestras reglas de comportamiento proactivo se activaron al intentar cargar un controlador llamado pskmad_64.sys (Panda Memory Access Driver) en una máquina protegida. El controlador es propiedad de Panda Security y se utiliza en muchos de sus productos.
Debido al aumento del abuso de controladores legítimos con el objetivo de deshabilitar productos EDR (un problema que examinamos en nuestro artículo sobre controladores firmados por Microsoft comprometidos hace varios meses), y el contexto en el que se cargó ese controlador, comenzamos a investigar y profundizar más. en el archivo.
Después de una reevaluación y compromiso con el cliente, el incidente original se identificó como una prueba de simulación APT. Sin embargo, nuestra investigación condujo al descubrimiento de tres vulnerabilidades distintas que informamos al equipo de seguridad de Panda. Panda ha abordado estas vulnerabilidades, ahora rastreadas como CVE-2023-6330, CVE-2023-6331 y CVE-2023-6332. La información de Panda sobre las vulnerabilidades y sus soluciones se puede encontrar como se indica para cada CVE a continuación.
Hallazgos de CVE
CVE-2023-6330 (Registro)
Descripción
La sección de registro \\REGISTRY\\MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion contiene varios datos útiles que se utilizan para determinar la versión del sistema operativo. CSDVersion representa el nivel de Service Pack del sistema operativo. CSDBuildNumber es el número de la compilación correspondiente.
El controlador pskmad_64.sys no valida correctamente el contenido de estos valores de registro. Un atacante puede colocar contenido creado con fines malintencionados en CSDBuildNumber o CSDVersion, lo que provoca un desbordamiento de memoria no paginada.
Impacto
El impacto mínimo es una denegación de servicio. Con investigación adicional, un atacante podría lograr RCE encadenando CVE-2023-6330 con otras vulnerabilidades. La puntuación base CVSS para esta vulnerabilidad es 6,4 y Panda la evalúa como de impacto potencial medio.
El aviso completo sobre este problema está disponible en el sitio de WatchGuard como WGSA-2024-00001, “WatchGuard Endpoint pskmad_64.sys Pool Memory Corruption Vulnerability”.
CVE-2023-6331 (Lectura fuera de límites)
Descripción
Al enviar un paquete creado con fines malintencionados a través de una solicitud IRP con el código IOCTL 0xB3702C08 al controlador, un atacante puede desbordar un área de memoria no paginada, lo que resulta en una escritura de memoria fuera de los límites. La vulnerabilidad existe debido a la falta de verificación de límites al mover datos a través de memmove a un grupo de memoria no paginado.
Impacto
El impacto mínimo es una denegación de servicio. Con investigación adicional, un atacante podría lograr la ejecución remota de código cuando CVE-2023-6331 se combina con otras vulnerabilidades. La puntuación base CVSS para esta vulnerabilidad también es 6,4, pero Panda la evalúa como de alto impacto potencial.
El aviso completo sobre este problema está disponible en el sitio de WatchGuard como WGSA-2024-00002, “WatchGuard Endpoint pskmad_64.sys Out of Bounds Write Vulnerability”.
CVE-2023-6332 (lectura arbitraria)
Descripción
Debido a una validación insuficiente en el controlador del kernel, un atacante puede enviar una solicitud IOCTL con el código 0xB3702C08 para leer directamente desde la memoria del kernel, lo que genera una vulnerabilidad de lectura arbitraria.
Impacto
El atacante puede utilizar esta vulnerabilidad para filtrar datos confidenciales o encadenarlos con otras vulnerabilidades para crear un exploit más sofisticado y de mayor impacto. La puntuación base CVSS para esta vulnerabilidad es 4,1 y Panda la evalúa como de impacto potencial medio.
El aviso completo sobre este problema está disponible en el sitio de WatchGuard como WGSA-2024-00003, “WatchGuard Endpoint pskmad_64.sys Arbitrary Memory Read Vulnerability”.
Productos afectados
El archivo que investigamos tiene el valor SHA256 2dd05470567e6d101505a834f52d5f46e0d0a0b57d05b9126bbe5b39ccb6af68 y la versión de archivo 1.1.0.21. Por precaución, mientras Panda llevaba a cabo su investigación, tratamos todas las versiones anteriores del archivo como potencialmente vulnerables mientras esperábamos los resultados de la propia investigación de Panda; su investigación confirmó este enfoque.
Tal y como recogen los avisos de Panda, el controlador afectado está incluido en los siguientes productos:
- WatchGuard EPDR (EPP, EDR, EPDR) y Panda AD360 hasta 8.00.22.0023
- Panda Dome hasta 22.02.01 (versiones Essential, Advanced, Complete y Premium)
La versión fija de Panda Dome, el producto de consumo, es la 22.02.01. La versión fija de WatchGuard EPDR y AD360, el producto empresarial, es 8.0.22.0023.
Línea de tiempo
2023-08-28: Prueba de concepto y reporte detallado enviado al equipo de seguridad de Panda.
2023-09-21: El equipo de seguridad de Panda respondió y reconoció nuestro informe.
2023-10-30: El equipo de seguridad de Panda nos informó de su plan para solucionar los problemas.
2023-12-06: Panda nos informa de los tres CVE asignados a estas cuestiones.
2024-01-18: Correcciones publicadas.