Ofuscación: todo tiene dos caras


Cómo detectar y evitar que los atacantes utilicen estas diversas técnicas

La ofuscación es una técnica importante para proteger el software que también conlleva riesgos, especialmente cuando la utilizan los autores de malware. En este artículo, analizamos la ofuscación, sus efectos y las respuestas a ella.

¿Qué es la ofuscación?

La ofuscación es una técnica que consiste en dificultar intencionalmente la lectura de información, especialmente en la codificación informática. Un caso de uso importante es la ofuscación de datos, en la que se hace que los datos confidenciales sean irreconocibles para protegerlos del acceso no autorizado. Para ello se utilizan varios métodos.

Por ejemplo, en el caso de una tarjeta de crédito, por lo general solo se muestran los últimos cuatro dígitos, mientras que los dígitos restantes se reemplazan por equis o asteriscos. En cambio, el cifrado implica convertir los datos en un formato ilegible que solo se puede descifrar utilizando una clave especial.

Ofuscación en el código

Cuando se ofusca un código informático, se utiliza un lenguaje complejo y una lógica redundante para dificultar la comprensión del código. ¿El objetivo? Engañar tanto a los lectores humanos como a los programas, como los descompiladores. Para ello, se cifran partes del código, se eliminan metadatos o se sustituyen los nombres significativos por otros que no lo tienen. Insertar código no utilizado o sin sentido también es una práctica habitual para disfrazar el código real.

Un llamado ofuscador puede automatizar estos procesos y modificar el código fuente para que aún funcione pero sea más difícil de entender.

Otros métodos de ofuscación incluyen comprimir todo el programa, hacer que el código sea ilegible y cambiar el flujo de control para crear una lógica no estructurada y difícil de mantener.

También es común insertar código ficticio que no afecta la lógica ni el resultado del programa.

A menudo se combinan varias técnicas para lograr un efecto de múltiples capas y aumentar la seguridad.

La otra cara

Lamentablemente, la ofuscación no es solo una protección, sino también un desafío. La ofuscación no solo la utilizan los desarrolladores de software legítimos, sino también los autores de software malicioso. El objetivo de la ofuscación es anonimizar a los atacantes cibernéticos, reducir el riesgo de detección y ocultar el malware modificando la firma general y la huella digital del código malicioso, incluso si la carga útil es una amenaza conocida. La firma es un hash, una representación alfanumérica única de un elemento de malware. Las firmas suelen estar en formato hash, pero también pueden ser otra representación breve de un código único dentro de un elemento de malware.

En lugar de intentar crear una nueva firma modificando el malware en sí, la ofuscación se centra en mecanismos de implementación para engañar a las soluciones antivirus que se basan en firmas. Comparemos esto con el uso del aprendizaje automático, el análisis predictivo y la inteligencia artificial para mejorar las defensas.

La ofuscación, o el disfraz del código, puede ser tanto «buena» como «mala». En el caso de la ofuscación «mala», los piratas informáticos combinan varias técnicas para ocultar el malware y crear múltiples capas de disfraz. Una de estas técnicas son los empaquetadores, que son paquetes de software que comprimen el malware para ocultar su presencia y hacer que el código original sea ilegible. Luego están los criptógrafos que cifran el malware o partes del software para restringir el acceso al código que podría alertar a los programas antivirus.

Otro método es la inserción de código muerto, que consiste en insertar código inútil en el malware para camuflar la apariencia del programa. Los atacantes también pueden utilizar la modificación de comandos, que consiste en cambiar los códigos de comando en los programas de malware. Esto cambia la apariencia del código, pero no su comportamiento.

Ofuscación

Como hemos visto, la ofuscación del código es sólo el primer paso, ya que, por mucho trabajo que ponga el hacker en ofuscar el código para eludir el EDR, el malware debe comunicarse dentro de la red y con el mundo exterior para tener «éxito». Esto significa que la comunicación también debe estar ofuscada. A diferencia del pasado, cuando las redes se escaneaban rápidamente y se intentaba extraer datos del orden de terabytes de una sola vez, los atacantes de hoy se comunican de forma más silenciosa para que los sensores e interruptores de las herramientas de monitorización no ataquen.

El objetivo de obtener direcciones IP mediante escaneo, por ejemplo, ahora se sigue más lentamente para pasar desapercibido. El reconocimiento, en el que los actores de amenazas intentan recopilar datos sobre sus víctimas objetivo, por ejemplo a través de su arquitectura de red, también se está volviendo más lento y menos claro.

Un método de ofuscación común es el OR exclusivo (XOR). Este método oculta los datos de tal manera que solo pueden ser leídos por personas que vinculen el código con 0x55 XOR. ROT13 es otro truco en el que se reemplazan las letras por un código.

Explosiones del pasado:

  • Un ejemplo conocido de ofuscación es el ataque a SolarWinds en 2020. Los piratas informáticos utilizaron la ofuscación para eludir las defensas y ocultar sus ataques.
  • Otro ejemplo interesante es PowerShell, una herramienta de Microsoft Windows que los atacantes están utilizando de forma abusiva. El malware que utiliza PowerShell oculta sus actividades mediante técnicas como la codificación de cadenas, la ofuscación de comandos, la ejecución dinámica de código y más.
  • Otro ejemplo es el ataque XLS.HTML. En este caso, los piratas informáticos utilizaron elaboradas técnicas de ofuscación para ocultar sus actividades maliciosas. Cambiaron sus métodos de cifrado al menos diez veces en un año para evitar ser detectados. Sus tácticas incluían texto sin formato, codificación de escape, codificación Base64 e incluso código Morse.
  • En otra amenaza, los atacantes aprovecharon vulnerabilidades en ThinkPHP para ejecutar código remoto en servidores. Instalaron un shell web encubierto llamado «Dama» que permitía el acceso permanente y otros ataques.

Por qué no deberías confiar solo en las firmas

La detección basada en firmas es como un viejo amigo: es confiable cuando se trata de amenazas conocidas. Pero cuando se trata de amenazas nuevas y desconocidas, a veces puede resultar un misterio. A continuación, se indican algunas razones por las que no debería confiar únicamente en las firmas:

  1. Los autores de malware son verdaderos maestros del escondite. Utilizan diversas técnicas para camuflar sus programas maliciosos. Incluso pequeños cambios en el código pueden provocar que la detección de firmas falle.
  2. En el caso del malware polimórfico, este se comporta como un camaleón: cambia constantemente su estructura para evitar ser detectado. Cada vez que se ejecuta, el código tiene un aspecto diferente.
  3. ¿Firmas estáticas? ¡Ni hablar! El malware metamórfico es aún más complicado. Se adapta durante la ejecución y cambia su código de forma dinámica, lo que hace que sea casi imposible detectarlo con firmas estáticas.
  4. Además, los exploits de día cero se comportan como el «nuevo chico del barrio»: son nuevos y desconocidos, y los sistemas basados ​​en firmas no tienen posibilidad de reconocerlos.
  5. Además, cuando una solución basada en firmas arroja demasiados falsos positivos, se vuelve ineficiente. Demasiadas alertas falsas en las actividades diarias afectan a su equipo de seguridad y desperdician recursos valiosos.

En resumen, la detección de firmas, por ejemplo en un EDR, es una herramienta útil, pero no es suficiente por sí sola para evitar todas las amenazas. Es esencial una estrategia de seguridad más integral que también incluya análisis de comportamiento, aprendizaje automático y otras técnicas modernas.

Por qué son tan importantes las herramientas NDR

Las soluciones de detección de intrusos basadas en anomalías son como detectives que vigilan el comportamiento normal de un sistema y hacen sonar la alarma cuando detectan una actividad inusual. Herramientas de detección y respuesta de red (NDR) Incluso van un paso más allá: se adaptan constantemente para mantenerse un paso por delante del cambiante panorama de las amenazas cibernéticas y ofrecen un nivel de seguridad significativamente mayor que los enfoques tradicionales basados ​​en firmas a través de su análisis e integración avanzados. Son capaces de detectar y defenderse tanto de amenazas conocidas como desconocidas.

Ofuscación

Así es como lo hacen:

  • Análisis del comportamiento: Herramientas NDR Monitorean el tráfico de la red y analizan el comportamiento. Detectan patrones inusuales que podrían indicar una comunicación de comando y control (C&C), como transferencias de datos irregulares.
  • Monitoreo de protocolo: Examinan solicitudes HTTP, tráfico DNS y otros protocolos para detectar comportamientos o comunicaciones sospechosas que puedan estar asociadas con malware ofuscado.
  • Análisis de metadatos: Las herramientas NDR analizan metadatos para detectar patrones inusuales que indiquen actividad sospechosa. Los modelos de aprendizaje automático ayudan a identificar técnicas de ofuscación típicas que son visibles a través de comportamientos sospechosos en el tráfico de la red.
  • Monitoreo de la comunicación a largo plazo: Como la ofuscación de las comunicaciones es ahora crucial para los piratas informáticos, ya que adoptan técnicas más lentas y sigilosas para evadir la detección y recopilar datos dentro y fuera de las redes, es útil que NDR también tenga en cuenta períodos de tiempo más largos, por ejemplo, 3 días, además de su capacidad para realizar ejecuciones por lotes, por ejemplo, en minutos, para tener valores comparativos y monitorear y detectar irregularidades, y la alerta en tiempo real daría lugar a una gran cantidad de alertas si se detecta un escaneo con un ping cada minuto aproximadamente. Pero, ¿cada ping es un ataque? ¡Por supuesto que no!
  • Mitre ATT&CK y ZEEK:Estos protocolos brindan información valiosa sobre las amenazas que utilizan la ofuscación. Su integración con herramientas NDR mejora significativamente las capacidades de detección de amenazas.
  • Intercambio de datos sobre amenazas: Las herramientas NDR comparten datos sobre amenazas con otras soluciones de seguridad. Esto permite una detección más rápida de técnicas de ofuscación conocidas y comportamientos sospechosos. La integración con herramientas EDR les permite correlacionar la actividad sospechosa en los endpoints con el tráfico de la red, lo que mejora significativamente el análisis de seguridad.
Por qué el NDR es una herramienta de seguridad crucial

Para más información sobre Por qué el NDR es una herramienta de seguridad crucial y cómo detecta incluso las amenazas más avanzadas y formas complejas de ofuscación, Descargue nuestro informe técnico sobre la detección de amenazas persistentes avanzadas (APT).

Para ver cómo actúa NDR en su red corporativa y exactamente cómo detecta y responde a las APT, Mire nuestro video grabado de detección de APT.

Vídeo de detección de APT


¿Te resultó interesante este artículo? Este artículo es una contribución de uno de nuestros valiosos socios. Siga con nosotros Gorjeo y LinkedIn para leer más contenido exclusivo que publicamos.





ttn-es-57