BYOVD (Traiga su propio controlador vulnerable) es una clase de ataque en el que los actores de amenazas colocan controladores vulnerables conocidos en una máquina comprometida y luego explotan los errores para obtener privilegios a nivel de kernel. En este nivel de acceso, los atacantes pueden lograr mucho: ocultar malware, volcar credenciales y, lo que es más importante, intentar deshabilitar las soluciones EDR.
Los actores de amenazas tienen muchas opciones cuando se trata de elegir conductores vulnerables; Al momento de escribir este artículo, hay 364 entradas etiquetadas como “controlador vulnerable” enumeradas en loldrivers.io, un repositorio de código abierto de controladores vulnerables y sus correspondientes firmas y hashes. Quizás como resultado de esto, los ataques BYOVD (que antes eran competencia de actores de amenazas altamente sofisticados) se han vuelto populares entre los operadores de ransomware y los atacantes de nivel inferior en los últimos años.
En febrero de 2020, por ejemplo, informamos sobre una campaña de ransomware RobbinHood en la que el actor de la amenaza abusó de un controlador legítimo firmado por un fabricante de placas base para desactivar los productos EDR. Desde entonces, también hemos informado sobre una campaña de ransomware BlackByte que abusa del controlador de la tarjeta gráfica; una campaña BYOVD en la que los actores de amenazas aprovecharon un controlador de Windows; y múltiples incidentes relacionados con AuKill, una herramienta que abusa de un controlador obsoleto de Process Explorer y que hemos observado que los actores de amenazas utilizan en varios incidentes de ransomware.
Otra posible razón por la que BYOVD se vuelve popular entre los actores de amenazas de nivel inferior es que ahora se compran y venden kits y herramientas disponibles en el mercado en foros criminales. Uno en particular atrajo mucha atención en mayo de 2023, cuando un actor de amenazas conocido como chico espía anunció una herramienta llamada Terminator en el foro de ransomware en ruso RAMP. El vendedor afirmó que la herramienta, con un precio de entre 300 y 3000 dólares, podía desactivar veinticuatro productos de seguridad.
Un análisis de 2023 realizado por CrowdStrike reveló que Terminator parece ser una herramienta BYOVD, y el controlador vulnerable en cuestión es zam64.sys (Zemana Anti-Logger) o zamguard64.sys (Zemana Anti-Malware o ZAM), publicado y firmado por Zemana. Ambos controladores comparten casi la misma base de código.
Figura 1: La comparación del código descompilado descompilado de ambos controladores Zemana revela casi la misma base de código
Ambos controladores también contienen la misma vulnerabilidad, una verificación insuficiente de los procesos que pueden enviarles códigos IOCTL y solicitar diversas funcionalidades. Los conductores mantienen una “lista de permitidos” de procesos legítimos y confiables. Sin embargo, al enviar un código IOCTL 0x80002010 y pasar el ID de un proceso en ejecución como parámetro, un atacante puede agregar su propio proceso a la lista de permitidos y eludir esta medida de seguridad. Una vez agregado, el atacante puede solicitar una serie de funcionalidades al controlador, como intentar finalizar un proceso específico enviando una solicitud IOCTL con el código 0x80002048. En este artículo se proporciona una lista completa de funcionalidades.
Figura 2: Solicitudes de código IOCTL necesarias para poder aprovechar la vulnerabilidad
Sin embargo, para abusar del controlador de esta manera, un actor de amenazas necesitaría privilegios administrativos y una omisión del Control de cuentas de usuario (UAC) (o necesitaría convencer a un usuario para que instale el controlador mediante ingeniería social). Entonces, si bien aprovechar los controladores legítimos vulnerables ciertamente podría permitir que un actor de amenazas finalice los procesos AV y EDR, no es necesariamente sencillo y la escalada de privilegios puede activar otras protecciones de seguridad.
Muchos de los proveedores en la lista de spyboy, incluido Sophos, actuaron rápidamente para investigar variantes de los controladores y desarrollar protecciones. Desde el lanzamiento inicial de Terminator, también hemos rastreado múltiples variantes de la herramienta, incluidas versiones de código abierto como Terminator, que reproduce la técnica de Spyboy; SharpTerminator, una adaptación de C# del proyecto anterior; y Ternimator, una versión escrita en Nim. (Al igual que Rust, Nim es un lenguaje popular para escribir herramientas de red teaming o malware, porque al ser un lenguaje relativamente nuevo, es más probable que eluda las detecciones estáticas o los modelos heurísticos basados en estática; también ofrece soporte multiplataforma).
Incluso varios meses después del descubrimiento inicial, los controladores siguen siendo un tema popular en los foros de la darknet. Por ejemplo, descubrimos la siguiente publicación de noviembre de 2023 en un foro criminal en ruso:
Figura 3: Un actor de amenazas publica en un foro criminal ofreciendo una herramienta BYOVD a la venta
Después de una investigación más profunda del hilo, evaluamos que esto probablemente se refiere a una versión diferente de los controladores Zemana, o a un hash que, al momento de escribir este artículo, no está reportado en loldrivers.io. Cuando otro usuario lo cuestionó y dijo que: “es [sic] ZAM, no vale la pena perder el tiempo (en la lista negra y detectado)”, respondió el cartel original: “no está en las bases de datos… en las bases de datos hay una versión diferente del controlador y no esta”.
Una discusión adicional en el foro reveló que los actores de amenazas son conscientes de la amplia cobertura de los conductores vulnerables de Zemana. La discusión terminó con otro actor de amenazas sugiriendo que desarrollar un controlador malicioso desde cero y usar un certificado válido (ya sea robado, filtrado o adquirido de otra manera) para firmarlo es una estrategia más viable que usar controladores vulnerables conocidos.
Si bien no pudimos obtener más información útil del hilo, decidimos investigar y analizar un poco para determinar el alcance del abuso del controlador Zemana y ver si los atacantes están realizando más ajustes y cambios en la herramienta Terminator original.
Revisamos nuestra telemetría de detección de comportamiento durante los últimos seis meses y descubrimos varios incidentes en los que los atacantes utilizaron los controladores Zemana Anti-Logger o Anti-Malware. En algunos casos, los actores de amenazas también trasladaron los proyectos de código abierto discutidos anteriormente a diferentes idiomas o los ofuscaron mediante empaquetadores para evitar la detección. Hemos destacado los incidentes a continuación porque son ilustrativos de patrones que observamos en una base de evidencia más amplia.
De Citrix a Ter
El 13 de septiembre de 2023 y el 10 de octubre de 2023, Sophos frustró ataques que utilizaban metodologías muy similares. En ambos casos, el acceso inicial probablemente se obtuvo mediante la explotación de una aplicación Citrix vulnerable. A partir de ahí, los atacantes inyectaron una carga útil en el proceso de Informe de errores de Windows, wermgr.exe. A continuación, intentaron desactivar Sophos emitiendo los siguientes comandos:
wmic service where \"PathName like '%sophos%'\" call delete /nointeractive wmic service where \"PathName like '%sophos%'\" call stopservice /nointeractive
La protección contra manipulaciones estaba habilitada en los dispositivos objetivo, por lo que los intentos de simplemente deshabilitar y eliminar los servicios de Sophos fallaron. Finalmente, el actor de amenazas pasó a implementar un archivo EXE llamado ter.exe. El binario se descomprime en una versión ligeramente modificada de Terminator. El conductor en sí se dejó caer por separado antes de esto.
Tras la ejecución, el binario carga el recurso “BINARIO”. El contenido se descifra mediante AES-256. La clave está codificada en binario. Finalmente, el binario escribe el contenido descifrado en una sección recién asignada y lo ejecuta. El intento de cargar el controlador fue bloqueado por una de nuestras reglas de protección del comportamiento.
Figura 4: Rutina de descompresión de ter.exe
Después de investigar el desensamblaje del binario ter.exe desempaquetado, encontramos la cadena de ruta PDB con el nombre del proyecto original “Terminator-master”, lo que sugiere que el actor de amenazas modificó el código del repositorio Terminator GitHub.
Figura 5: Ruta al archivo PDB, que se encuentra en el ter.exe descomprimido
La asistencia sanitaria bajo ataque
El 15 de diciembre de 2023 bloqueamos un ataque dirigido a una organización sanitaria. Inmediatamente después del acceso inicial, los atacantes intentaron ejecutar un comando de PowerShell para descargar un archivo de texto desde un servidor C2.
El archivo de texto en sí es un script de PowerShell diseñado para instalar el criptominero XMRig en el sistema de destino. El intento fue bloqueado por una de nuestras reglas de protección del comportamiento.
Más tarde, los actores de amenazas intentaron deshabilitar el cliente EDR ejecutando ternimator, la versión Nim de Terminator, en una de las máquinas infectadas. El intento de subir al conductor también fue bloqueado por normas de protección del comportamiento.
Figura 6: Descripción general del ataque a la organización sanitaria
De ZAM a AuKill
En este ataque, que ocurrió el día de Navidad de 2023, el actor de la amenaza obtuvo acceso a una sola máquina, aunque el vector de ataque inicial no está claro. Primero, intentaron cargar el controlador Zemana Anti-Logger, disfrazado de actualizadorv.sys, desde diferentes ubicaciones:
%sysdir%\drivers\updatedrv.sys <d>\programdata\usoshared\updatedrv.sys
Después de que estos intentos fracasaron, cambiaron a usar AuKill, otro conocido asesino de EDR, donde el controlador Process Explorer se llamaba ped.sys en la carpeta temporal. Informamos de esto al cliente y no vimos que se activaran más detecciones; Por lo tanto, estamos muy seguros de que el ataque fue frustrado.
Detectar el abuso de conductores vulnerables es un desafío único para la industria de la seguridad. Si bien los esfuerzos por compilar repositorios de controladores vulnerables conocidos, como loldrivers.io, son ciertamente útiles, vale la pena señalar que estos controladores son legítimos y pueden ser cruciales para el sistema operativo o para servicios y aplicaciones de misión crítica. Bloquearlos al por mayor, sin una validación cuidadosa, puede llevar mucho tiempo, ser contraproducente y generar problemas imprevistos para las organizaciones. Por lo tanto, un enfoque exclusivamente reactivo no suele ser suficiente para resolver este problema, sobre todo porque hay muchos factores vulnerables conocidos, y potencialmente más que contienen vulnerabilidades de día cero.
Sin embargo, es relativamente raro que los actores de amenazas implementen controladores legítimos con vulnerabilidades de día cero; la mayoría de las veces, los controladores y sus vulnerabilidades se conocen y documentan, como es el caso aquí (aunque pueden estar empaquetados, ofuscados o modificados para evitar la detección estática). Por lo tanto, puede valer la pena mantenerse actualizado con los controladores vulnerables y bloquear los que aún no tenga instalados.
También recomendamos tomar las siguientes acciones proactivas:
- Compruebe si su producto de seguridad para endpoints implementa protección contra manipulaciones (consulte aquí para obtener consejos sobre cómo hacerlo para los productos de Sophos)
- Practique una estricta higiene en los roles de seguridad de Windows. Los ataques BYOVD normalmente son posibles mediante la escalada de privilegios y la omisión de UAC.
- Mantenga actualizados tanto su sistema operativo como sus aplicaciones y herramientas individuales, y elimine el software antiguo si ya no se usa o no es necesario.
- Si aún no lo está haciendo, considere agregar controladores vulnerables a su programa de gestión de vulnerabilidades; Los actores de amenazas podrían intentar explotar controladores legítimos vulnerables que ya existen en un sistema comprometido.
Además de las detecciones estáticas de algunos de los componentes de Zemana mencionados en este artículo, las reglas de protección del comportamiento de Sophos y la protección adaptativa contra ataques proporcionan capas adicionales de defensa. Además, los eventos BYOVD no ocurren de forma aislada, y algunas de las actividades que acompañan a un ataque BYOVD –explotación de un vector de ataque inicial; movimiento lateral; establecer persistencia; y escalada de privilegios: ofrecen más oportunidades para detectar y bloquear un ataque en curso.
Los ataques BYOVD son atractivos para los actores de amenazas, ya que pueden proporcionar un medio para desactivar las soluciones AV y EDR a nivel del kernel. La gran cantidad de controladores vulnerables conocidos significa que los atacantes tienen una gran cantidad de opciones para elegir. Nuestra investigación sobre el uso indebido de los controladores Zemana ilustra que los actores de amenazas continuarán usando dichos componentes incluso si son conocidos públicamente y están firmados, porque se sabe que funcionan y porque a menudo están incluidos en kits y herramientas disponibles en el mercado. . Sin embargo, también vale la pena señalar nuestro hallazgo en el foro: que algunos actores de amenazas, en cambio, abogan por controladores maliciosos especialmente diseñados, firmados con certificados robados o filtrados.
Como muchos otros en la comunidad de seguridad, investigamos y evaluamos constantemente el panorama de amenazas para realizar un seguimiento de los controladores vulnerables y personalizados, según nuestra cobertura anterior de AuKill y otras campañas. También continuamos ideando y probando nuevos métodos para bloquear proactivamente los controladores utilizados con fines malintencionados.
Los IOC para los ataques descritos en este artículo están disponibles en nuestro repositorio de GitHub.
Protecciones
Herramienta | Proteccion |
CSharpTerminator | ATK/SharpTerm-A |
terminador | ATK/KillAV-JV, CXmal/KillAV-ZA |
Ternimator | Evadir_*, Priv_* |
Abuso del controlador Zemana AntiLogger/AntiMalware | Evadir_*, Priv_* |
Minero XMRig | Minero XMRig (PUA) |
Fuente Original Sophos News