Análisis del Timeline de una evidencia con Plaso

Plaso, evolución de la herramienta conocida como log2timeline, es una herramienta desarrollada en Python que permite extraer la línea temporal de todos los eventos ocurridos en un sistema. Admite como como datos de entrada ficheros, discos virtuales, dispositivo de almacenamiento , algún punto de montaje o un volcado de imagen de disco. Como nota aclaratoria aunque la nueva herramienta pasa a denominarse plaso, para ejecutarla se hará a través de “log2timeline.py” lo cual puede llegar a causar confusión.

Plaso nos ofrece un conjunto de herramientas, que de forma resumida son:

  • log2timeline: extraer el time line de todos los eventos.
  • psort: procesamiento de los datos extraídos.
  • pinfo: muestra los datos del fichero de almacenamiento plaso.
  • image_export: exporta ficheros de una imagen.

Log2timeline se encarga de analizar los datos recibidos como parámetro de entrada generando un fichero de salida con formato “plaso”, el cual contendrá toda la información de los datos analizados. Dicho fichero de almacenamiento plaso contendrá información como:

  • Cuando se ejecutó la herramienta.
  • Metadatos de los ficheros analizados de los datos de entrada.
  • La información parseada.
  • Número de eventos extraídos de los datos de entrada.

Para las pruebas realizadas he optado por usar una imagen de prueba en formato EnCase (parte1 y parte2), accesible para cualquiera que quiera realizar las pruebas.

[Read more…]

Nuestras radiografías de NotPetya

Desde el laboratorio de malware hemos estado atentos y analizando varios aspectos de lo que se ha llamado NotPetya, Wannapetya, ExPetya, etc. Lo que primero que nos preocupó en el laboratorio era conocer exactamente como se estaba propagando el malware. Para ello partimos de la dll (027cc450ef5f8c5f653329641ec1fed91f694e0d229928963b30f6b0d7d3a745) que se puede encontrar en Hybrid Analysis.

En el entorno de laboratorio levantamos dos máquinas Windows 7 sin los parches para protegernos de EternalBlue. El análisis de McAfee también ha mostrado el mismo comportamiento a nivel de red en este magnífico informe publicado durante los primeros días. A partir de ahí planteamos los siguientes dos escenarios:

Escenario 1:

Las dos máquinas no están en el dominio, pero existe en las dos máquinas un usuario con las mismas credenciales. Estas máquinas están en el mismo segmento de red.

Una vez preparado el entorno ejecutamos la dll del siguiente modo:

$ rundll32.exe  petya.dll,#1

A partir de este momento vemos como el equipo A (11.11.11.66) empieza a generar peticiones ARP para descubrir nuevos equipos dentro del mismo segmento de red. En nuestro caso, encuentra el equipo B (11.11.11.4) e inmediatamente intenta la autenticación sobre la máquina remota y se autentica. A continuación, el malware empieza a copiar la dll (en nuestro caso la hemos llamado lolz.dll) al recurso remoto:

[Read more…]

Investigar una alerta de IDS desconocida (TROJAN ABUSE.CH SSL Fingerprint Blacklist Malicious SSL Certificate Detected)

Hace unos días me encontré con una alerta que me llamo la atención, pues era la primera vez que la veía. La alerta en cuestión era ET TROJAN ABUSE.CH SSL Fingerprint Blacklist Malicious SSL Certificate Detected (Ixeshe CnC).

A primera vista, solo por el nombre de la alerta, queda claro que hay un fingerprint de SSL que está en la blacklist de Abuse.ch. Además, parece que es utilizado para acceder o conectarse al C2 Ixeshe. Para conocer con exactitud por qué ha saltado la alerta me dirijo a la web de documentación de Emerging Threats, en concreto a esta dirección http://doc.emergingthreats.net/bin/view/Main/2022960.

Desde la web de Emerging Threats queda claro el patrón de búsqueda. Lo primero es que haya una conexión establecida desde el servidor (flow:established,from_server;), que además aparezca el contenido 0900b5c752c98781b503 (content:”|09 00 b5 c7 52 c9 87 81 b5 03|”;) seguido de 550403 (content:”|55 04 03|”;) y finalmente que apareca 0x09localhost (content:”|09|localhost”;). Indicar que se han obviado algunas partes de la regla de Snort. Si el lector lo requiere puede dirigirse a http://manual-snort-org.s3-website-us-east-1.amazonaws.com/node32.html donde se documentan todas las opciones.

[Read more…]

Petya / NotPetya, esa es la cuestión

Si hace poco más de un mes el mundo quedaba suspendido por el ataque del ransomware WannaCry, la historia se ha vuelto a repetir.

Poco después del mediodía de ayer llegaban las primeras informaciones acerca de la posible infección de varias empresas y organismos gubernamentales por una variante del ransomware Petya. Entre los países más afectados se encuentran Ucrania, Rusia, Polonia o Italia, aunque todo apunta a que empresas españolas también han resultado afectadas.
[Read more…]

Análisis de Erebus. Un ransomware para Linux

Esta semana hemos conocido que la empresa surcoreana NAYANA, proveedora de servicios web, sufrió un ataque de una variante del ransomware Erebus. El caso llamó la atención dado que infectó a 153 servidores, todos ellos con sistema operativo Linux, en el cual más de 3.400 archivos se han visto afectados.

En este artículo vamos a llevar a cabo un análisis sobre una muestra del ejecutable encargado de llevar a cabo la infección en esta última campaña de Erebus:

sha256: 0b7996bca486575be15e68dba7cbd802b1e5f90436ba23f802da66292c8a055f
[Read more…]

Protección de datos 2.0

Hace unos meses participé en una jornada de twitter chat gracias a SoMEChatES en dónde hablamos fundamentalmente sobre el impacto que tendrá en Nuevo reglamento de Protección de datos sobre los profesionales digitales. Esta nueva regulación en materia de protección de datos ligada a entornos digitales es lo que me motiva a hablar de Protección de datos 2.0.

Queda solo un año para acometer todos los cambios que introduce en nuevo reglamento de protección de Datos y mucha pedagogía por hacer al respecto, por esta razón, si tienes una web, un e-commerce o un blog, deberás conocer cómo impactará este nuevo reglamento en tu página y ponerte manos a la obra cuanto antes, el tiempo corre y la reforma está a la vuelta de la esquina.

Protección de datos a medida de la trasformación digital

El nuevo reglamento plantea nuevos retos para todos los profesionales del mundo digital, recordemos que se trata de un marco legal de protección de datos para todos los estados miembros de la UE cuya finalidad es armonizar las diferentes legislaciones en esta materia para que los derechos y las obligaciones sean las mismas en todos los países de UE.

[Read more…]

Campaña de infección de Zyklon y Cerber

Las últimas semanas estamos observando múltiples campañas de correos con documentos ofimáticos adjuntos, cuya finalidad es instalar diferentes tipos de malware en nuestros sistemas. En este post queremos repasar una campaña concreta que ha evolucionado sensiblemente en los últimos días, pero cuya finalidad se ha mantenido. La evolución ha consistido en el nombre de los documentos adjuntos, pues en principio, todos venían con el nombre “resume.doc” y posteriormente han empezado a añadir un nombre aleatorio al principio “[Nombre]_resume.doc.

Fichero Hash
Resume.doc 952c2637787e737714ce8bdd24e9f41179865f1431c2ad4bc8e849b88c2a2ab9
Resume.doc 1969f5bc5be1db820eff204504ba53efbf9ecd63a9b4af0b3f545586aec847ca
Kathleen_Resume.doc 4bbff4c776705bbf2d4be4a3ef1c9211fa2c691d90970c0cdc8b1c11f82a98a0
Itunes.exe 4a2bf3912a679c0a3b591f13004b36bd2e77938b61e2a29badfec0d2c8b21c23
Itunes.exe 9b8e7a442e4b7b08e6d25629f97ebd65%da2deac7a1677d9700b9ddf9f640b3f
Itunes.exe dd6178ae524b31d668e555caf22d72b50a467a0221a505357cf1e8d2d8861ccf

El Documento en cuestión muestra lo siguiente al ser abierto:

[Read more…]

La CCI rusa (XVI): objetivos. Países

Cualquier país del mundo es un objetivo potencial del espionaje ruso —o no ruso—. A modo de ejemplo, la infiltración en América ha sido históricamente alta, no solo en Estados Unidos, país de prioridad máxima para la inteligencia rusa, sino también en toda América Latina.

No obstante, el mantenimiento de un gran ecosistema de inteligencia no es barato —aunque seguro que gracias a las particularidades y relaciones de los servicios rusos, no es tan caro como lo sería en otras circunstancias—, por lo que como sucede en cualquier país los rusos deben priorizar sus actividades e intereses habituales, dejando para ocasiones especiales aquellos objetivos temporales: por ejemplo, Oriente Medio y Oriente Próximo (Siria, Irán…) pueden considerarse en la lista de estos objetivos temporales, por motivos tanto de seguridad —contraterrorismo— como económicos —clientes o proveedores de bienes básicos para Rusia—.

Adicionalmente a éstos, países como Australia o Nueva Zelanda, desarrollados tecnológicamente y cercanos a Occidente —no desde el punto de vista físico, por supuesto— son también objetivo de Rusia por diferentes motivos, como el espionaje industrial. Resaltamos en gris los países objetivo del espionaje ruso:

[Read more…]

Security On Air

Hace apenas dos meses, celebramos en Security Art Work nuestro décimo aniversario. Si bien es toda una alegría ver como nuestros “retoños” crecen y van madurando, lo es en igual medida celebrar el nacimiento de nuevos miembros de la familia. Hoy nos dirigimos a ustedes, ávidos lectores de nuestro blog, para anunciarles el comienzo de un nuevo proyecto dentro del ámbito de la difusión de la ciberseguridad. Se trata de Security On Air.

Como los más perspicaces habrán podido deducir (tanto por el nombre como por el logotipo), se trata de un programa de radio difundido a través de Internet. Dicho de otro modo: un podcast sobre ciberseguridad. Su duración rondará los 15-20 minutos (para que puedan escucharlo de camino a la oficina o añadirlo a la lista de reproducción mientras hacen un poco de deporte) y su frecuencia será mensual.

[Read more…]

Hooking de funciones VBScript con Frida

El trabajo de análisis requiere de una lucha continua contra código desconocido, ofuscado y cifrado. Recientemente me encontraba peleándome con un VBScript que, cómo no, se encontraba ofuscado (al menos dos capas de protección). Tras superar la primera protección y empezar con la segunda, comprobé que el método de descifrado en este punto no era trivial. Esto se sumaba a una aversión, por cuestiones meramente personales, por este lenguaje. Un análisis dinámico me podía dar la secuencia de comandos que finalmente se ejecutaban, pero perdía entonces visibilidad de todo cuanto había ocurrido por mitad. Y… ¿quién sabe? A lo mejor hay alguna técnica antianálisis por mitad que modifica el comportamiento del script para contactar contra otra infraestructura diferente. Siempre con el modo paranoico encendido.

Decidí que iba a atajar el asunto de raíz. Tanto el primer script como el segundo descifrado, después de desprotegerse, hacían uso de la función ‘Execute’ de VBScript para dar vida a su código antes protegido. Internamente, el proceso que ejecuta el script (‘wscript.exe’ en este caso), tendría que manejar el buffer descifrado y pasarlo a otra función que se encargue de ejecutarlo. Pero… ¿Dónde se encontraba susodicha función?

Con fines didácticos, en lugar de analizar la aplicación usando el modo rápido, voy a suponer que desconocemos la estructura del propio ‘wscript.exe’ y de las funciones de las librerías que carga. En primer lugar, ¿Qué hace el script y qué espero ver al analizar ‘wscript.exe’?

Ilustración 1: Script inicial cifrado

Ilustración 1: Script inicial cifrado

[Read more…]