10 nov. 2016

¿Realmente conoces las macros? Piensa de nuevo

El malware de Macro ha existido desde siempre y es omnipresente. Su reciente renacimiento podría atribuirse al aumentó de los usuarios conectados desde principios del 2000 y que todos ellos no son especialistas en seguridad pero, no todo es sobre la credulidad y los trucos de la ingeniería social empleados por los autores de malware, por ejemplo por Dridex.

A veces, el problema es simplemente el desconocimiento intrínseco de algo que suponemos que conocemos muy bien porque ¿quién no sabe como funciona y qué hace una macro?

Pensemos de nuevo... Existen un par de conceptos erróneos sobre las macro.

El problema de la interfaz de usuario

En Hexacorn, el Dr. Vesselin Bontchev (Vess), el reconocido investigador de antivirus y uno de los mejores expertos en análisis de VBA ofrece una aproximación bastante interesante:
A veces, las "notificaciones de seguridad" ofrecidas por el software (AV, navegadores, paquetes de ofimática, etc.) dan una pequeña ayuda al atacante. En Office 2000, Microsoft realizó un cambio que literalmente mató el software malicioso en las macros. De forma predeterminada, las macros eran ignoradas (ninguna notificación, como si las macros no existieran, nada) si no están firmadas por alguien de confianza. Lamentablemente, las versiones posteriores de Office comenzaron a mostrar las notificaciones, con el botón "Habilitar contenido" y, el malware de macro regresó. ¿Qué hace el usuario medio? Abre la macro.

Este es un fallo de la interfaz de usuario que impulsa el fallo de seguridad.
Entonces, volvamos a los conceptos erróneos sobre las macros.
Como se sabe, los archivos de Office (y de Windows en general) son interpretados por sus extensiones. Esta simple hecho abre paso a varios malentendidos sobre cómo las macros pueden entrar y ejecutarse en el sistema de las víctimas.

Concepto erróneo #1

"Un documento que contiene macros necesita ser almacenado en un archivo con una extensión .docm o .xlsm, para funcionar". El uso de estas extensiones de archivo es muy útil, pero los documentos con macros también pueden almacenarse en archivos .doc o .xls (y muchos otros).
Por lo tanto, el bloqueo de archivos adjuntos .docm/.xlsm no detendrá la ejecución de las macros (ni del malware).

Concepto erróneo #2

"El bloqueo de los archivos adjuntos específicos de macros es una buena solución para evitar la descarga de documentos con macros". En muchos casos esto es cierto, pero se omite el hecho de que Office es muy "flexible".
Por ejemplo, se pueden ejecutar los siguientes comandos para ver qué archivos están asociados con los programas de Office:

assoc | findstr /i "word"
assoc | findstr /i "excel"
assoc | findstr /i "powerpoint"
Ahora que conocemos las potenciales extensiones de archivos de Office, podemos crear un simple documento de macro con varias extensiones y verificar cuál de estos archivos ejecuta la macro al abrirse. Muchos de ellos no funcionarán, pero algunos...

El mismo experimento se puede repetir con la macro guardada en el antiguo formato OLE de Word, Excel y PowerPoint; así como otros archivos del paquete de Office. Por ejemplo, podemos encontrar que los archivos con extensiones .rtf y .wbk (¿alguien los recuerda?) ejecutan las macros. El experimento con todos los tipos de archivos sin duda traerá sorpresas. ¡Prueba!

Concepto erróneo #3

"Necesito el código dañino dentro del documento para ejecutar una macro". Este concepto quizás es el más complicado y puede dar lugar a errores en el filtrado de las macros por parte de las herramientas de detección. El hecho es que, en realidad, la macro dañina no necesariamente debe estar dentro el documento.

Nuevamente, Vess creó una PoC que muestra cómo es posible saltear la verificación de macros, escondiendo el código dañino en un archivo de template, almacenado de forma remota y enlazado en el archivo .docx.
Como puede verse a continuación el "código dañino" está en un archivo evil.dot (template) que es descargado al momento de abrir el archivo.
El archivo de prueba puede ser descargado desde aquí (la macro es funcional pero NO dañina). Aquí un mirror de ambos archivos.

Concepto erróneo #4

"El manejo de archivos sólo está determinado por la extensión del archivo". De nuevo, esto no es del todo correcto. Office intenta determinar el tipo de archivo de acuerdo al formato del mismo y, por lo tanto leyendo su contenido. Esta es la razón por la cual los archivos .rtf y .wbk (mencionados antes) abren y ejecutan las macros, aunque no sean realmente formatos RTF o WBK.

Además, si se cambia el nombre del documento y se le agrega una extensión completamente "inutil" como por ejemplo "f.ex" o "xx.foobar" o nada en absoluto, Office todavía es capaz de ejecutar las macros. Aquí el único "problema" es que el usuario debe arrastrar y soltar el documento en la aplicación de Office. De todos modos, el hecho es que el documento es reconocido y la macro se ejecuta.

Concepto erróneo #5

"El bloqueo de los documentos con macros es lo mismo que bloquear archivos adjuntos". En los puntos anteriores ya se demostró que los archivos adjuntos pueden utilizar cualquier extensión no estándar y contener una macro.

El código de la macro está incrustado dentro (o de forma remota, según la PoC anterior) de los archivos adjuntos. El autor del malware puede forzar al usuario a abrir el archivo adjunto, Office reconocerá el código de la macro y lo ejecutará.

Concepto erróneo #6

"Debemos bloquear macros en toda la empresa." Esto es cierto y correcto, pero eso no significa que sea sencillo.

El problema es que se trata de una tarea extremadamente difícil, a menudo prácticamente imposible, y ante todo, un tema que requiere políticas claras y muchas pruebas.
  • No es lo mismo bloquear usuarios con y sin dominio;
  • No es lo mismo bloquear un lugar que en muchos lugares;
  • Diferentes configuraciones, diferentes países, diferentes políticas, requieren acciones diferentes;
  • La gente todavía usa VBA (especialmente en Excel);
  • Aparte del bloqueo, es necesario que las personas no puedan volver a habilitarlo. La habilitación ocurrirá tarde o temprano; y con ello empezarñan los problemas.
Ahora, realmente sigues pensando que conoces las macros y cómo solucionar el problema. Quizás la solución sea volver al año 2000 y bloquear las macros desde el paquete de ofimática directamente. Mientras las macros sigan existiendo, el malware de macro seguirá existiendo.

Fuente: Hexacorn

0 comentarios:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info
Si vas a dejar una consulta, procura tener habilitado tu perfil en Blogger o deja una forma de contacto.

Gracias por comentar!