Malware; Ofuscación MS Office (II)


 

Malware, O-MS-Office, 2, BLOG - 002

En este <segundoartículo“> continuaremos dónde lo dejamos en el “anterior” (<clic> aquí si te apetece leer). Veremos qué “métodos” de ofuscación usan los escritores de <Malware> para poner un “poco” más difícil el trabajo que llevan a cabo los analistas.

Sin más dilación en cuanto a “demora” (buena frase rebuscada) vamos al lío 😉

Malware, O-MS-Office, 2, BLOG - 003

El primer tipo de ofuscación es el más sencillo. Se utilizan cadenas de caracteres normales intercaladas con caracteres representados en su codificación decimal. A continuación, veamos un ejemplo;

Malware, O-MS-Office, 2, BLOG - 004

Estás <concatenaciones> de “ChrS” quedan como se muestra a continuación al pasar las cadenas a su interpretación en <ASCII>;

Malware, O-MS-Office, 2, BLOG - 005

Como podéis observar, las cadenas siguen sin ser <especialmente legibles>, pero si se analiza el “script”, o si se ha visto antes qué pinta tiene una cadena codificada en <base64>, se puede llegar a la conclusión de que la función “ggSFhCPeLdOSshe” lo único que hace es descodificar las cadenas en <base64>. Limpiando todo el “código” quedaría de esta manera;

Malware, O-MS-Office, 2, BLOG - 006

En esta misma “línea de ofuscación” utilizando distintas codificaciones, algunas muestras utilizan la representación <hexadecimal>. Veamos un ejemplo a continuación;

Malware, O-MS-Office, 2, BLOG - 007

Si lo pasamos de <hexadecimal> a “ASCII” la cadenas quedarían tal que así;

Malware, O-MS-Office, 2, BLOG - 008

Estas cadenas. En principio, tampoco tienen mucho sentido, pero si analizamos la función “XORI”, encontramos el primero de los <cifrados> que vamos a analizar.

Malware, O-MS-Office, 2, BLOG - 009

En el trozo de “código” anterior, la función <XORI> realiza un “cifrado <XOR>” sobre la primera cadena y utilizando la segunda cadena como “clave”. Este es un <cifrado> muy simple, una de las implementaciones que se pueden encontrar es la siguiente;

Malware, O-MS-Office, 2, BLOG - 010

Este “código” que puede parecer complicado, se puede entender más fácil si lo traducimos a <python>;

Malware, O-MS-Office, 2, BLOG - 011

Básicamente se está “xoreando” la cadena en la <variable a> usando como clave la “variable b".

Malware, O-MS-Office, 2, BLOG - 012

El <cifrado de César> es un “cifrado de sustitución” en el que cada letra se sustituye por la letra que se encuentra <X> posiciones después de esta, donde “X” es la <clave de cifrado>. Por ejemplo, para un “cifrado de César” con <clave 5>, la tabla de sustitución sería la siguiente;

Malware, O-MS-Office, 2, BLOG - 013

Para el “ejemplo” que aparece a continuación, podemos ver un <ejemplo> de “ROT13“, o lo que es lo mismo, un <cifrado de César> con “clave 13”;

Malware, O-MS-Office, 2, BLOG - 014

Esta función recorre la cadena que recibe carácter a carácter y le resta 13. Es decir, se trata de un “cifrado de Cesar” de <clave 13>, desplazaría 13 posiciones hacia el inicio para “descifrar”, pero en lugar del abecedario, utiliza la tabla <ASCII>.

La cadena presente en la muestra analizada quedaría <descifrada> de esta manera;

Malware, O-MS-Office, 2, BLOG - 015

Malware, O-MS-Office, 2, BLOG - 016

Los escritores de <Malware> se las ingenian para hacer la vida más difícil cada vez a los analistas. Estas protecciones que utilizan están en constante evolución, de forma que “herramientas” como <oledump.py> deben actualizarse constantemente a la misma velocidad que el “Malware” evoluciona.

Hay muchos más trucos que se están utilizando para “ofuscar” estas <macros> (renombrar funciones, dividir la funcionalidad en distintas macros, etc.) 😉


Malware, O-MS-Office, 2, BLOG - 017

Salu2


TonyHAT - 435

Anuncios

Un comentario en “Malware; Ofuscación MS Office (II)”

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s