Cinco técnicas para hackear Microsoft SmartScreen y Smart App Control (SAC) y ejecutar malware en Windows

SmartScreen de Microsoft

Microsoft SmartScreen es un componente antiphishing y antimalware basado en la nube que viene integrado con varios productos de Microsoft como Microsoft Edge, Internet Explorer y Windows. Está diseñado para proteger a los usuarios de descargas y sitios web maliciosos.

Características clave:

  1. Reputación de URL:
    • SmartScreen compara la URL de los sitios web con una lista de sitios maliciosos conocidos almacenados en los servidores de Microsoft. Si la URL coincide con una de la lista, se advierte al usuario o se le bloquea el acceso al sitio.
  2. Reputación de la aplicación:
    • Cuando un usuario descarga una aplicación, SmartScreen verifica su reputación en función de los datos recopilados de otros usuarios que descargaron e instalaron la misma aplicación. Si la aplicación se considera sospechosa, se advierte al usuario antes de continuar con la instalación.
  3. Protección contra phishing:
    • SmartScreen analiza las páginas web en busca de signos de phishing y alerta al usuario si un sitio parece estar intentando robar información personal.
  4. Protección de malware:
    • El sistema puede identificar y bloquear la ejecución de software potencialmente malicioso en el dispositivo del usuario.
  5. Integración con Windows Defender:
    • SmartScreen funciona junto con Windows Defender para proporcionar un enfoque de seguridad en capas, garantizando una protección integral contra amenazas.

Cómo funciona:

  • Verificaciones de URL y aplicaciones:
    • Cuando un usuario intenta visitar un sitio web o descargar una aplicación, SmartScreen envía una solicitud al servicio SmartScreen con la URL o los detalles de la aplicación.
    • El servicio compara los detalles con su base de datos y devuelve un veredicto al dispositivo del usuario.
    • Según el veredicto, el navegador o el sistema operativo permite, bloquea o advierte al usuario sobre riesgos potenciales.
  • Telemetría y retroalimentación:
    • SmartScreen recopila datos de telemetría de las interacciones de los usuarios con sitios web y aplicaciones, lo que ayuda a mejorar la precisión de sus algoritmos de detección de amenazas con el tiempo.

Control inteligente de aplicaciones (SAC)

Smart App Control (SAC) es una característica de seguridad de Windows diseñada para evitar que se ejecuten aplicaciones maliciosas o potencialmente no deseadas en el sistema. Es una evolución del anterior Windows Defender Application Control (WDAC) y proporciona protección avanzada mediante el uso de inteligencia basada en la nube y aprendizaje automático.

Características clave:

  1. Protección predictiva:
    • SAC utiliza modelos de aprendizaje automático entrenados con una gran cantidad de datos para predecir si es seguro ejecutar una aplicación. Bloquea aplicaciones que se consideran riesgosas o que no tienen buena reputación.
  2. Inteligencia basada en la nube:
    • SAC aprovecha la infraestructura en la nube de Microsoft para actualizar continuamente sus modelos e inteligencia sobre amenazas, garantizando que la protección esté siempre actualizada.
  3. Modelo de confianza cero:
    • De forma predeterminada, SAC supone que todas las aplicaciones no son de confianza hasta que se demuestre lo contrario, alineándose con el modelo de seguridad de confianza cero.
  4. Experiencia de usuario perfecta:
    • SAC funciona silenciosamente en segundo plano, lo que permite que las aplicaciones confiables se ejecuten sin interrupciones y bloquea las potencialmente dañinas. Los usuarios reciben notificaciones claras y orientación cuando se bloquea una aplicación.
  5. Politica de ACCION:
    • Los administradores pueden definir políticas para controlar la ejecución de aplicaciones en dispositivos empresariales, garantizando el cumplimiento de los estándares de seguridad organizacionales.

Cómo funciona:

  • Análisis de aplicaciones:
    • Cuando una aplicación intenta ejecutarse, SAC envía sus metadatos a la nube para su análisis.
    • El servicio en la nube evalúa la aplicación comparándola con sus modelos de aprendizaje automático e inteligencia sobre amenazas para determinar su nivel de riesgo.
  • Toma de decisiones:
    • Si la aplicación se considera segura, se permite su ejecución.
    • Si se determina que la aplicación es riesgosa o desconocida, se bloquea y se notifica al usuario con una opción para anular el bloqueo si tiene permisos suficientes.
  • Aplicación de política:
    • Las políticas de SAC se pueden personalizar y aplicar en toda la organización para garantizar medidas de seguridad consistentes en todos los dispositivos administrados.

Integración con la seguridad de Windows:

  • SAC está integrado con otras funciones de seguridad de Windows, como Microsoft Defender Antivirus, lo que proporciona una estrategia de defensa integral contra una amplia gama de amenazas.

A pesar de las sólidas protecciones que ofrecen Microsoft SmartScreen y Smart App Control (SAC), algunas técnicas a veces pueden eludir estas funciones mediante varias técnicas sofisticadas.

https://www.securitynewspaper.com/2024/01/15/how-to-exploit-windows-defender-antivirus-to-infect-a-device-with-malware/embed/#?secret=brAcEATqaa#?secret=oKh02yyFWp

1. Malware firmado que elude Microsoft SmartScreen y SAC

1. Firmas Digitales Válidas:

  • Certificados robados: los ciberdelincuentes pueden robar certificados digitales válidos de desarrolladores de software legítimos. Al firmar su malware con estos certificados robados, el malware puede parecer confiable para funciones de seguridad como SmartScreen y SAC.
  • Certificados comprados: los atacantes pueden comprar certificados de autoridades de certificación (CA) que podrían no realizar verificaciones de antecedentes exhaustivas. Estos certificados luego se pueden utilizar para firmar malware.

2. Autoridades de certificación comprometidas:

  • Si una autoridad de certificación (CA) se ve comprometida, los atacantes pueden emitir certificados válidos para su malware. Incluso si el malware está firmado por una CA aparentemente de buena reputación, aún así puede ser malicioso.

3. Falsificación de certificados:

  • Los atacantes avanzados pueden utilizar técnicas sofisticadas para falsificar certificados digitales, haciendo que su malware parezca como si estuviera firmado por una fuente legítima. Esto puede engañar a las funciones de seguridad para que confíen en el malware.

4. Ataques en el momento oportuno:

  • Algunos autores de malware programan sus ataques para aprovechar el período entre el momento en que se emite un certificado y el momento en que se revoca o se agrega a una lista negra. Durante este período, el malware firmado puede eludir los controles de seguridad.

5. Uso de componentes de software legítimos:

  • Los atacantes pueden incorporar componentes de software legítimos a su malware. Al incorporar código malicioso dentro de una aplicación legítima y firmada, las características de seguridad pueden confiar en todo el paquete.

6. Ataques de múltiples etapas:

  • Las etapas iniciales del malware pueden parecer inofensivas y, por lo tanto, estar firmadas y ser confiables. Una vez que el sistema ejecuta la etapa inicial y confía en ella, puede descargar y ejecutar la carga útil maliciosa real.

7. Ingeniería Social:

  • Se puede engañar a los usuarios para que anulen las advertencias de seguridad. Por ejemplo, si SmartScreen o SAC bloquean una aplicación, un atacante podría utilizar tácticas de ingeniería social para convencer al usuario de que evite el bloqueo manualmente.

2. Cómo el secuestro de reputación elude Microsoft SmartScreen y SAC

  1. Sitios web legítimos comprometidos:
    • Método: los atacantes comprometen un sitio web legítimo que tiene una sólida reputación e inyectan contenido malicioso o alojan malware en él.
    • Mecanismo de omisión: dado que SmartScreen se basa en la reputación de los sitios web para determinar si son seguros, es posible que un sitio web que anteriormente tenía una buena reputación no active alertas incluso si comienza a publicar contenido malicioso. Los usuarios no reciben ninguna advertencia porque la reputación del sitio se estableció antes del compromiso.
  2. Dominios y certificados confiables:
    • Método: los atacantes utilizan dominios con certificados SSL válidos emitidos por autoridades de certificación (CA) confiables para alojar contenido malicioso.
    • Mecanismo de derivación: SmartScreen y SAC verifican la validez de los certificados como parte de sus protocolos de seguridad. Un certificado válido de una CA confiable hace que el sitio malicioso parezca legítimo, evitando así los controles de seguridad que señalarían un sitio con un certificado no válido o autofirmado.
  3. Incrustar malware en software legítimo:
    • Método: los atacantes inyectan código malicioso en software legítimo o en sus actualizaciones.
    • Mecanismo de omisión: si el software legítimo tiene buena reputación y está firmado con un certificado válido, es menos probable que SmartScreen y SAC lo marquen. Cuando los usuarios actualizan el software, la carga maliciosa se entrega sin activar advertencias de seguridad porque la actualización parece provenir de una fuente confiable.
  4. Phishing con correos electrónicos falsificados:
    • Método: los atacantes envían correos electrónicos de phishing que parecen provenir de fuentes confiables, a menudo utilizando direcciones de correo electrónico falsas.
    • Mecanismo de omisión: es más probable que los usuarios confíen y abran correos electrónicos de fuentes conocidas y confiables. Es posible que SmartScreen no siempre detecte estos correos electrónicos, especialmente si provienen de dominios legítimos que han sido falsificados, lo que lleva a los usuarios a sitios web o descargas maliciosos.
  5. Adquisición de dominios y subdominios:
    • Método: los atacantes se apoderan de dominios y subdominios caducados o no utilizados de sitios de buena reputación.
    • Mecanismo de omisión: dado que el dominio o subdominio estaba previamente asociado con una entidad legítima, SmartScreen y SAC pueden continuar confiando en él en función de su reputación histórica. Esto permite a los atacantes publicar contenido malicioso desde estos dominios sin generar señales de seguridad.
  6. Ataques de ingeniería social:
    • Método: los atacantes engañan a los usuarios para que anulen las advertencias de seguridad haciéndose pasar por fuentes legítimas o utilizando tácticas persuasivas.
    • Mecanismo de omisión: incluso si SmartScreen o SAC advierten a los usuarios, la ingeniería social especializada puede convencerlos de que omitan estas advertencias. Los usuarios pueden desactivar las funciones de seguridad o continuar a pesar de las advertencias si creen que la fuente es confiable.

3. Cómo la siembra de reputación elude Microsoft SmartScreen y SAC

La siembra de reputación es una táctica mediante la cual los atacantes construyen una reputación positiva para dominios, software o cuentas de correo electrónico maliciosos a lo largo del tiempo antes de lanzar un ataque. Esto puede eludir eficazmente medidas de seguridad como Microsoft SmartScreen y Smart App Control (SAC) porque estos sistemas a menudo dependen de puntuaciones de reputación para determinar la confiabilidad de una entidad. Así es como funciona la siembra de reputación y las estrategias para mitigarla:

Cómo funciona la siembra de reputación

  1. Actividad de limpieza inicial:
    • Método: los atacantes utilizan inicialmente sus dominios, software o cuentas de correo electrónico para actividades legítimas. Esto implica alojar contenido benigno, enviar correos electrónicos no maliciosos o distribuir software que funcione según lo anunciado sin ningún comportamiento dañino.
    • Mecanismo de derivación: durante este período, SmartScreen y SAC observan y registran estas entidades como seguras y construyen una reputación positiva para ellas. Los usuarios que interactúan con estas entidades durante la fase de inicialización no encuentran ninguna advertencia de seguridad.
  2. Introducción gradual de contenido malicioso:
    • Método: con el tiempo, los atacantes empiezan a introducir contenido malicioso lentamente. Esto podría implicar agregar malware a las actualizaciones de software, inyectar código dañino en sitios web o enviar correos electrónicos de phishing desde cuentas confiables.
    • Mecanismo de derivación: debido a que las entidades ya han establecido una reputación positiva, es posible que SmartScreen o SAC no detecten inmediatamente las actividades maliciosas iniciales, lo que permite a los atacantes alcanzar sus objetivos.
  3. Aprovechando la confianza establecida:
    • Método: una vez establecida una sólida reputación, los atacantes llevan a cabo campañas maliciosas a gran escala. Aprovechan la confianza construida con el tiempo para eludir los controles de seguridad y engañar a los usuarios.
    • Mecanismo de omisión: la reputación positiva establecida hace que los sistemas de seguridad consideren estas entidades como de bajo riesgo, lo que permite que el malware o los intentos de phishing omitan los filtros y lleguen a los usuarios sin activar alarmas.

Plazos típicos para la siembra de reputación

  1. Sitios web:
    • Corto plazo (semanas): establecimiento inicial de un sitio web con contenido benigno e interacciones básicas del usuario.
    • Medio plazo (meses): obtención de vínculos de retroceso, aumento del tráfico y creación de contenido más extensa.
    • A largo plazo (más de 6 meses): sólida reputación con tráfico significativo, interacciones positivas con los usuarios y confianza establecida.
  2. Software:
    • Corto Plazo (Semanas): Distribución inicial y paso de controles de seguridad básicos.
    • Mediano Plazo (Meses): Acumulación de descargas, reseñas positivas de usuarios y actualizaciones de rutina.
    • A largo plazo (más de 6 meses): sólida reputación con un uso generalizado y comentarios constantemente positivos.
  3. Cuentas de correo electrónico:
    • A corto plazo (semanas): correos electrónicos legítimos iniciales e interacciones normales.
    • Mediano plazo (1-2 meses): generar confianza a través de una comunicación benigna y regular.
    • A largo plazo (más de 3 meses): confianza establecida con actividad constante y no maliciosa.

4. Cómo la manipulación de la reputación elude Microsoft SmartScreen y SAC

La manipulación de la reputación, particularmente en el contexto de Smart App Control (SAC), puede explotar la forma en que SAC evalúa y mantiene la reputación de los archivos. Dado que SAC podría utilizar hash difuso, comparaciones de similitud basadas en características y modelos de aprendizaje automático para evaluar la reputación de los archivos, los atacantes pueden manipular ciertos segmentos de un archivo sin cambiar su reputación percibida. Aquí hay una inmersión más profunda en cómo funciona esto y las posibles implicaciones:

Cómo funciona la manipulación de la reputación en SAC

  1. Hash difuso:
    • Método: a diferencia del hash criptográfico tradicional, que cambia completamente con cualquier alteración del archivo, el hash difuso permite cambios menores sin alterar drásticamente el valor del hash. Esto significa que los archivos con pequeñas modificaciones aún pueden considerarse similares al original.
    • Ataque: los atacantes modifican segmentos del archivo que no afectan significativamente el valor hash difuso, lo que permite que el archivo conserve su reputación.
  2. Comparaciones de similitud basadas en características:
    • Método: SAC puede utilizar comparaciones de similitud basadas en características para evaluar archivos. Estas características podrían incluir metadatos, atributos estructurales o patrones de código específicos que sean consistentes con archivos buenos conocidos.
    • Ataque: al comprender qué funciones se utilizan y asegurarse de que permanezcan sin cambios mientras modifican otras partes del archivo, los atacantes pueden mantener la buena reputación del archivo.
  3. Modelos de aprendizaje automático:
    • Método: Los modelos de aprendizaje automático en la nube pueden analizar archivos basándose en patrones aprendidos de un gran conjunto de datos de archivos buenos y malos conocidos. Estos modelos pueden utilizar una variedad de indicadores más allá de simples hashes.
    • Ataque: mediante prueba y error, los atacantes identifican qué secciones de código se pueden modificar sin cambiar el patrón general reconocido por el modelo ML como benigno. Luego pueden inyectar código malicioso en estas secciones.

5. Cómo LNK stomping elude Microsoft SmartScreen y SAC

LNK stomping es una técnica en la que los atacantes modifican archivos LNK (acceso directo) para ejecutar código malicioso mientras parecen legítimos ante los usuarios y los sistemas de seguridad. Al aprovechar la flexibilidad y las capacidades de los archivos LNK, los atacantes pueden disfrazar sus intenciones maliciosas y eludir funciones de seguridad como Microsoft SmartScreen y Smart App Control (SAC). Así es como funciona LNK stomping y cómo puede eludir estas características de seguridad:

Cómo funciona LNK Stomping

  1. Creando un archivo LNK malicioso:
    • Método: los atacantes crean un archivo LNK que apunta a un documento o ejecutable legítimo pero incluye comandos o scripts adicionales que ejecutan código malicioso.
    • Ejemplo: puede parecer que un archivo LNK abre un documento PDF, pero en realidad ejecuta un script de PowerShell que descarga y ejecuta malware.
  2. Modificación de archivos LNK existentes:
    • Método: los atacantes modifican los archivos LNK existentes en un sistema de destino para incluir comandos maliciosos conservando su apariencia y funcionalidad originales.
    • Ejemplo: un archivo LNK para una aplicación de uso común (por ejemplo, un navegador web) se modifica para ejecutar primero un script malicioso antes de iniciar la aplicación.
  3. Incrustar código malicioso:
    • Método: los atacantes insertan código malicioso directamente en el archivo LNK, aprovechando la estructura y las características del archivo.
    • Ejemplo: un archivo LNK puede contener comandos de shell integrados que se ejecutan cuando se abre el acceso directo.

Comprender la derivación de MotW mediante la manipulación de archivos LNK

La Marca de la Web (MotW) es una característica de seguridad crítica que se utiliza para marcar archivos descargados de Internet, lo que los hace sujetos a un escrutinio adicional por parte de los sistemas antivirus (AV) y de detección y respuesta de terminales (EDR), incluidos Microsoft SmartScreen y Smart App Control. (SACO). Sin embargo, ciertas técnicas pueden eludir esta característica, permitiendo que archivos potencialmente maliciosos eludan la detección. Aquí, exploraremos cómo la manipulación de archivos LNK (acceso directo) puede evitar las comprobaciones de MotW.

Crear manualmente un archivo LNK con una ruta de destino no estándar

  1. Localice el script de PowerShell:
    • Asegúrese de tener la ruta al script de PowerShell, por ejemplo C:\Scripts\MyScript.ps1.
  2. Crea el acceso directo:
    • Haga clic derecho en el escritorio o en la carpeta donde desea crear el acceso directo.
    • Seleccione Nuevo > Acceso directo .
  3. Ingrese la ruta de destino:
    • En el campo “Escriba la ubicación del elemento”, ingrese el siguiente comando con una ruta no estándar:
    • powershell.exe -File "C:\Scripts\MyScript.ps1."
    • Observe el punto adicional al final de la ruta del script.
  4. Nombra el acceso directo:
    • Ingrese un nombre para su acceso directo (por ejemplo, Run MyScript Non-Standard).
    • Haga clic en Finalizar .
  5. Verifique la ruta de destino:
    • Haga clic derecho en el acceso directo recién creado y seleccione Propiedades .
    • En el campo Destino , deberías ver:
    • powershell.exe -File "C:\Scripts\MyScript.ps1."
    • Haga clic en Aceptar para guardar los cambios.

Siguiendo estos pasos, puede crear un archivo LNK que apunte a un script de PowerShell con una ruta de destino no estándar. Esto se puede utilizar para probar cómo interactúan dichos archivos con funciones de seguridad como SmartScreen y Smart App Control.

Crear manualmente un archivo LNK con una ruta relativa

  1. Localice el script de PowerShell:
    • Asegúrese de tener la ruta relativa al script de PowerShell dentro de su estructura de directorios, por ejemplo, .\Scripts\MyScript.ps1.
  2. Crea el acceso directo:
    • Haga clic derecho en el escritorio o en la carpeta donde desea crear el acceso directo.
    • Seleccione Nuevo > Acceso directo .
  3. Ingrese la ruta de destino:
    • En el campo “Escriba la ubicación del elemento”, ingrese el siguiente comando con una ruta relativa:
    • powershell.exe -File ".\Scripts\MyScript.ps1"
    • Haga clic en Siguiente .
  4. Nombra el acceso directo:
    • Ingrese un nombre para su acceso directo (por ejemplo, Run MyScript Relative).
    • Haga clic en Finalizar .
  5. Verifique la ruta de destino:
    • Haga clic derecho en el acceso directo recién creado y seleccione Propiedades .
    • En el campo Destino , deberías ver:
    • powershell.exe -File ".\Scripts\MyScript.ps1"
    • Haga clic en Aceptar para guardar los cambios.

Crear manualmente un archivo LNK con una ruta de varios niveles

Para crear un archivo LNK con una ruta de varios niveles en la matriz de rutas de destino, necesitamos manipular la estructura interna del archivo LNK para que contenga una ruta de destino no estándar. Esto implica el uso de una utilidad o script que pueda manejar la creación y modificación de archivos LNK con control detallado sobre su estructura interna.

Aquí hay una guía paso a paso para crear un archivo LNK de este tipo usando PowerShell y una biblioteca especializada para manejar archivos LNK, pylnk3que es una biblioteca basada en Python. Para este ejemplo, necesitarás tener Python instalado junto con la pylnk3biblioteca.

Guía paso por paso

Requisitos previos

  1. Instalar Python:
    • Si no tiene Python instalado, descárguelo e instálelo desde el sitio web oficial: Python.org .
  2. Instalar pylnk3biblioteca:
    • Abra un símbolo del sistema o terminal y ejecute el siguiente comando para instalar pylnk3: shCopiar códigopip install pylnk3

Crear un archivo LNK de ruta de varios niveles

Cree una secuencia de comandos de Python para generar el archivo LNK:

  • Cree un script de Python (por ejemplo, create_lnk.py) con el siguiente contenido:
import lnk

# Define the path for the new shortcut
shortcut_path = "C:\\Users\\Public\\Desktop\\MyScriptShortcutMultiLevel.lnk"

# Create a new LNK file
lnk_file = lnk.lnk_file()

# Set the target path with multi-level path entries
lnk_file.add_target_path_entry("..\\..\\Scripts\\MyScript.ps1")

# Set the arguments for the target executable
lnk_file.command_line_arguments = "-File .\\Scripts\\MyScript.ps1"

# Save the LNK file
with open(shortcut_path, "wb") as f:
    lnk_file.write(f)

print(f"Shortcut created at: {shortcut_path}")

Ejecute el script de Python:

  • Abra un símbolo del sistema o una terminal y navegue hasta el directorio donde se encuentra su secuencia de comandos Python.
  • Ejecute el script usando el siguiente comando:shCopiar códigopython create_lnk.py

Explicación

  • lnk.lnk_file(): Crea un nuevo objeto de archivo LNK.
  • add_target_path_entry: agrega entradas a la matriz de ruta de destino. Aquí, utilizamos una ruta relativa ( ..\\..\\Scripts\\MyScript.ps1) para simular una ruta de varios niveles.
  • command_line_arguments: establece los argumentos pasados ​​al ejecutable de destino. En este caso pasamos -File .\Scripts\MyScript.ps1.
  • escribir: guarda el archivo LNK en la ruta especificada.

Notas adicionales

  • Rutas relativas: el uso de rutas relativas ( ..\\..\\) en las entradas de la ruta de destino nos permite crear una estructura de ruta de varios niveles dentro del archivo LNK.
  • Estructuras no estándar: al manipular la estructura interna del archivo LNK, podemos crear rutas que podrían eludir ciertos controles de seguridad.

Ejecutando el archivo LNK

Después de crear el archivo LNK, puedes probar su comportamiento haciendo doble clic en él. El archivo LNK diseñado debe seguir la ruta relativa y ejecutar el script de PowerShell de destino, lo que demuestra cómo se pueden usar rutas no estándar dentro de un archivo LNK.

El artículo “Desmantelamiento de Smart App Control” de Elastic Security Labs explora las vulnerabilidades y las técnicas de elusión de Windows Smart App Control (SAC) y SmartScreen. Para más detalles, puedes leer el artículo completo aquí .