Se ha detectado una brecha en la política de Microsoft Windows que está siendo aprovechada principalmente por actores de amenazas que hablan chino nativo para falsificar firmas en controladores de modo kernel.
Según un informe exhaustivo en dos partes por Cisco Talos, los actores están utilizando múltiples herramientas de código abierto que modifican la fecha de firma de los controladores de modo kernel para cargar controladores maliciosos y no verificados que están firmados con certificados caducados. Esta es una amenaza importante, ya que el acceso al kernel proporciona acceso completo a un sistema y, por lo tanto, compromete por completo el sistema.
Después de una divulgación responsable, Microsoft informó que ha tomado medidas para bloquear todos los certificados y mitigar la amenaza. Además, afirmó que su investigación reveló que «la actividad se limitaba al abuso de varias cuentas de programas de desarrollo y no se ha identificado ninguna violación de cuentas de Microsoft».
Además de suspender las cuentas de programas de desarrollo involucradas en el incidente, la empresa tecnológica destacó que los actores de amenazas ya habían obtenido privilegios administrativos en los sistemas comprometidos antes de utilizar los controladores.
Es importante señalar que el fabricante de Windows ya había implementado protecciones similares en diciembre de 2022 para evitar que los atacantes de ransomware utilicen controladores firmados por Microsoft para actividades posteriores a la explotación.
La aplicación de la firma del controlador, que requiere que los controladores de modo kernel estén firmados digitalmente con un certificado del Portal de Desarrollo de Microsoft, es una línea de defensa crucial contra controladores maliciosos que podrían potencialmente evadir soluciones de seguridad, alterar los procesos del sistema y mantener la persistencia.
La nueva vulnerabilidad descubierta por Cisco Talos permite falsificar firmas en controladores de modo kernel, lo que permite eludir las políticas de certificados de Windows.
Esto es posible gracias a una excepción establecida por Microsoft para mantener la compatibilidad, que permite controladores con firma cruzada si están «firmados con un certificado de entidad final emitido antes del 29 de julio de 2015 que esté encadenado a una autoridad de certificación cruzada compatible».
Como resultado, un controlador firmado de esta manera no se impedirá su carga en un dispositivo con Windows, lo que permite a los actores de amenazas aprovechar la cláusula de escape para implementar miles de controladores maliciosos firmados sin someterlos a la verificación de Microsoft.
Estos controladores maliciosos se implementan utilizando software de falsificación de marcas de tiempo de firma, como HookSignTool y FuckCertVerifyTimeValidity, que han estado disponibles públicamente desde 2019 y 2018, respectivamente.
HookSignTool ha estado accesible a través de GitHub desde el 7 de enero de 2020, mientras que FuckCertVerifyTimeValidity fue añadido por primera vez al servicio de alojamiento de código el 14 de diciembre de 2018.
Específicamente, implica la intercepción de la función CertVerifyTimeValidity, que verifica la validez temporal de un certificado, para cambiar la marca de tiempo de firmado durante la ejecución.
Específicamente, la herramienta realiza un enganche en la función CertVerifyTimeValidity, encargada de verificar la validez temporal de un certificado, para cambiar la marca de tiempo de firma durante la ejecución.
Dicho esto, llevar a cabo una falsificación exitosa requiere contar con un certificado de firma de código no revocado que haya sido emitido antes del 29 de julio de 2015, junto con la clave privada y la frase de contraseña del certificado.
Cisco Talos informó haber descubierto más de una docena de certificados de firma de código con claves y contraseñas contenidas en un archivo PFX alojado en GitHub, en un repositorio bifurcado de FuckCertVerifyTimeValidity. No está claro de inmediato cómo se obtuvieron estos certificados.
Además, se ha observado que HookSignTool se ha utilizado para volver a firmar controladores crackeados con el objetivo de eludir las comprobaciones de integridad de la administración de derechos digitales (DRM). Por ejemplo, el actor llamado «Juno_Jr» publicó una versión crackeada de PrimoCache, una solución legítima de almacenamiento en caché de software, en un foro chino de cracking de software el 9 de noviembre de 2022.
En esta versión crackeada, el controlador parcheado se volvió a firmar con un certificado originalmente emitido a ‘Shenzhen Luyoudashi Technology Co., Ltd.’, el cual se encontraba en el archivo PFX alojado en GitHub. Esta capacidad de volver a firmar un controlador crackeado elimina un obstáculo significativo al intentar eludir las comprobaciones de DRM en un controlador firmado.
Pero eso no es todo. También se utiliza HookSignTool en un controlador previamente no documentado llamado RedDriver, el cual falsifica la marca de tiempo de su firma. Activo desde al menos 2021, RedDriver funciona como un secuestrador de navegador basado en controladores, que aprovecha la Plataforma de Filtrado de Windows (WFP) para interceptar el tráfico del navegador y redirigirlo a localhost (127.0.0.1).
El navegador objetivo se elige al azar de una lista codificada que contiene los nombres de proceso de muchos navegadores populares en idioma chino, como Liebao, QQ Browser, Sogou y UC Browser, así como Google Chrome, Microsoft Edge y Mozilla Firefox.
El objetivo final de esta redirección del tráfico del navegador no está claro, aunque es evidente que esta capacidad podría ser abusada para manipular el tráfico del navegador a nivel de paquetes.
Las cadenas de infección de RedDriver comienzan con la ejecución de un archivo binario llamado «DnfClientShell32.exe», el cual establece comunicaciones cifradas con un servidor de comando y control (C2) para descargar el controlador malicioso.