Seleccione su idioma

Análisis de un troyano en JAVA

En estos días se ha comenzado a reproducir un troyano que llega al usuario a través de un correo electónico en portugués (muy común en sudamérica recibir noticias de este tipo desde Brazil). Este es el mail que puede que reciban:

Igual eu te falei aquele dia e voce nao quis acreditar. Amigo a gente conta no dedo!
Veja só o que seu amiguinho andou aprontando nessas fotos.
DSC02421.jpg (568,3 KB)
DSC02521.jpg (603,4 KB)

Obviamente esas "imágenes" con links a los ejecutables correspondientes… qu... En estos días se ha comenzado a reproducir un troyano que llega al usuario a través de un correo electónico en portugués (muy común en sudamérica recibir noticias de este tipo desde Brazil). Este es el mail que puede que reciban:

Igual eu te falei aquele dia e voce nao quis acreditar. Amigo a gente conta no dedo!
Veja só o que seu amiguinho andou aprontando nessas fotos.
DSC02421.jpg (568,3 KB)
DSC02521.jpg (603,4 KB)

Obviamente esas "imágenes" con links a los ejecutables correspondientes… que son el mismo, aunque parezca que son de distinto tamaño, son para despistar. Los ejecutables apuntan a esta dirección: http://ads.sapo.[ELIMINADO]/event.ng/Type=click&FlightID=90951&AdID=169189&TargetID=6167&ASeg=&AMod=&Segments=8,69,154,526,527,688,1343,2130,2884,3325,3747,4552,4663,4778,4932,4963,4971,5065,5081,5088,5117,5152,5165,5169,5200,5295,5301,5508,5549,5557&Targets=246,5389,704,6167&Values=31,43,51,60,72,84,90,91,100,110,150,193,204,209,376,978,1036,1097,1100,1399,1436,1459,1478,1488,1489,1733,1754,1819,1863,1922,1941,2020,2174,2230,2863,2869,2956,2993,3322,3533,3576&RawValues=&Redirect=http://www.givinbeauty.com/UserFiles/File/photos.php?0.19325211365355321

Ese enlace conduce a un archivo ejecutable: http://www.givin[ELIMINADO].com/UserFiles/File/photos.php?0.19325211365355321.

Análisis de un troyano en JAVAVeremos más abajo que este sitio tiene una opción de login y si la hackearon, fué por ahí, subieron el ejecutable y lo reenvían por correo . Además, como veremos utilizaron otra web para redireccionar en este caso a http://ads.sapo.[ELIMINADO]/event.ng/.

Al descargar el troyano y observarlo con Peid se encontrará que está empaquetado con UPX . Si abrimos el EXE veremos un string como este:

.rdata:00414BA8 0000000B C WINRAR.SFX                                                     
.rdata:00414BCC 00000039 C d:\\Projects\\WinRAR\\SFX\\build\\sfxrar32\\Release\\sfxrar.pdb

Estas lineas significan que son ejecutables autoextraíbles de WinRAR. ¿Necesitamos descomprimirlos con Olly? No, con WinRAR podemos descomprimirlo en una carpeta y dejará un archivo llamado: loader.jar,una aplicación JAVA y ya hemos sacado algunas capas de la cebolla.
Análisis de un troyano en JAVA
Podemos hacer uso de WinRAR una vez más para descomprimir el JAR de JAVA, ya que estos son comprimidos con ZIP. Así que hacemos botón derecho y extraer a una carpeta. Nos devolverá las carpetas que se ve en la imagen.
- Publicidad -

Ahora vamos a lo mejor, decompilar los .CLASS, los archivos de JAVA compilados (el famoso código objeto .OBJ). Estos archivos son interpretados por el classloader de JAVA y son ejecutados como una aplicación más. Existen muchos decompiladores de archivos CLASS de JAVA y uno de los más conocidos es el DJ JAVA Decompiler.

Veremos los Imports, algunos interesantes y otros no tanto.

import b.d;
import by.squareroot.injector.lib.MyKernel32;
import by.squareroot.injector.struct.Context;
import by.squareroot.injector.struct.MemoryBasicInformation;
import by.squareroot.injector.struct.ProcessInformation;
import by.squareroot.injector.struct.StartupInfoA;
import by.squareroot.injector.struct.TotalProcInfo;
import by.squareroot.injector.struct.WoW64Context;
import by.squareroot.injector.struct.pe.MZHeader;
import by.squareroot.injector.struct.pe.PEInfo;
import by.squareroot.injector.struct.pe.PE_ExtHeader;
import by.squareroot.injector.struct.pe.PE_Header;
import by.squareroot.injector.struct.pe.SectionHeader;
import com.sun.jna.Platform;
import com.sun.jna.Pointer;
import com.sun.jna.platform.win32.Advapi32Util;
import com.sun.jna.platform.win32.WinReg;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.nio.ByteBuffer;
import java.util.Properties;
Los primeros son los más interesantes obviamente, veremos que son clases hechas con ayuda de un amigo de nuestro creador denominado squareroot. Si buscamos un poco el nombre de la clase, el nick del creador y la palabra Class, nos encontramos con un sitio ruso que ofrecía bajar: build___00002469.jar que aparentemente contenía este mismo contenido.

No debemos rendirnos ahí (hay que aprender a buscar como nos enseño el gran Fravia, QEPD) buscaremos un poco más encontraremos una referencia en este stitio que parece ser de otro reverser analizando jaZEUS.

Si leemos un poco ese artículo para luego continuar con este podemos concluir dos cosas:

  1. El creador de este virus usó la misma técnica y recursos que el virus jaZEUS para infectar a sus víctimas.
  2. Es una variante de JAZeus o la versión original.
Opto por la primer opción ya que el dropper (ejecutable que descomprime y deja el virus en un lugar para ejecutarlo luego) es diferente a la versión jaZEUS que analizó nuestro amigo Donato Ferrante (ratsoul). La estructura de nuestra variante es muy similar a la de jaZEUS, podemos verlo en la imagen del artículo:
Análisis de un troyano en JAVA
Veremos que la clase Launcher no se encuentra en nuestro paquete de Injectory tampoco el paquete crypt. Pero si encontraremos lo mismo en el paquete data.

En JAZeus aparentemente los dos .EXE están cifrados, en nuestra variante, solo app.exe está cifrado y dummy.exe no, lo podemos ver simplemente abriendo el EXE y viendo su cabecera. Si debuggeamos dummy.exe veremos que se trata de otro dropper hecho en C++ que buscara desencriptar app.exe, buscando el metodo de cifrado en el archivo method y luego usando ese parámetro para descifrarlo y ejecutarlo.

Aparentemente el método de desempaquetado de este virus es el mismo a como lo hace JAZeus, con la variante que no tiene el launcher. Por lo que veo el launcher esta unificado en a.class ya que ejecuta app.exe luego de desencriptarlo desde ahí dentro. El paquete injector se encarga del armado y la injección en memoria del ejecutable para la ejecución del virus real. En el método "a" de la clase "a", veremos que se pone al inicio para arrancar cuando arranca nuestro SO:

s = a(“data/app.exe“);
b.a a1 = a();
try
{
if((obj = a()) != null)
{
String s1;
if((s1 = ((Properties) (obj)).getProperty(“hklm“)) != null)
{
String s2 = a();
Advapi32Util.registrySetStringValue(WinReg.HKEY_LOCAL_MACHINE, “SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\\“, s1, s2);
}
String s3;
if((s3 = ((Properties) (obj)).getProperty(“hklu“)) != null)
{
obj = a();
Advapi32Util.registrySetStringValue(WinReg.HKEY_CURRENT_USER, “Software\\Microsoft\\Windows\\CurrentVersion\\Run\\“, s3, ((String) (obj)));
}
}
}
Como podemos ver encontraremos otros trozos de código interesantes, para encontrar nuestro virus deberemos desencriptar app.exe. Al no tener el launcher se hace un poco dificultoso pero lo más importante es que encontramos como funciona de que se trata, para frenarlo al menos deberemos sacar esa llave de registro.

Si llegara a ser un JAZeus tendremos algunos problemas más de seguro, igualmente podremos encontrar el método de cifrado 3DES como string en los demás .CLASS, además de una posible clave, frase muy utilizada como demo de post en blogs, etc.

- Publicidad -

Spark de Disidents

Ver original.

No hay comentarios

• Si ya estás registrado, favor ingresar primero al sistema.

Comments are closed

The comments for this content are closed.

Invertir en controladoras de acceso: por qué eliminarlas puede ser un error estratégico

Invertir en controladoras de acceso: por qué eliminarlas puede ser un error estratégico

Gracias a la evolución tecnológica, hoy existen lectores inteligentes con capacidad para procesar credenciales, almacenar información e incluso accionar cerraduras de forma autónoma. Ello ha llevado...

Caso de éxito: ¿Cómo logró reducir el fraude un 18% una cadena retail de Costa Rica?

Caso de éxito: ¿Cómo logró reducir el fraude un 18% una cadena retail de Costa Rica?

Almacenes El Rey es una tienda por departamentos en rápida expansión, con 18 sucursales en todo el país y más de un millón de clientes cada año. Gracias a la solución Avigilon Unity Video, la cadena...

¿Almacenar video ya no es suficiente? Habla la Directora de Ventas de Milestone para Latam

¿Almacenar video ya no es suficiente? Habla la Directora de Ventas de Milestone para Latam

Latinoamérica. Johana Arias, ejecutiva de Milestone Systems, analiza cómo la integración de IA, lenguaje natural y plataformas abiertas están transformando el video en conocimiento útil para la toma...

Instalan sistema anti intrusión descrito como uno de los más grandes de Ajax en Suramérica

Instalan sistema anti intrusión descrito como uno de los más grandes de Ajax en Suramérica

Argentina. La compañía Bayron instaló un sistema de protección con más de 85 dispositivos inalámbricos Ajax en la nueva sucursal de Autos del Sur S.A., concesionario oficial de Toyota en el país.

Entrevista con Manuel Carlos, Director de Ventas Senior para México de Hanwha Vision

Entrevista con Manuel Carlos, Director de Ventas Senior para México de Hanwha Vision

México. Manuel Carlos, ejecutivo de Hanwha Vision, detalla cómo la compañía está revolucionando la seguridad electrónica mediante la consolidación de la inteligencia artificial generativa y el...

Prosegur presenta nuevas capacidades en materia de ciberseguridad y automatización

Prosegur presenta nuevas capacidades en materia de ciberseguridad y automatización

Internacional. Prosegur Security ha creado dos nuevos módulos, xCope y xEcute, que tienen por objetivo proporcionar a las empresas y organizaciones de un nuevo servicio de vigilancia digital...

Plataforma de acceso y vídeo

Plataforma de acceso y vídeo

Johnson Controls Diseñada para eliminar la complejidad de los sistemas heredados, la más reciente versión de C•CURE IQ ayuda a las organizaciones a lograr una respuesta más rápida, simplificar los...

SIA presenta las nuevas directivas de su Comité de Relaciones Internacionales

SIA presenta las nuevas directivas de su Comité de Relaciones Internacionales

Latinoamérica. Mariana Ramírez es la nueva presidenta del Comité de Relaciones Internacionales de la Security Industry Association (SIA), mientras que Vanesa Cabral asumió el rol de vicepresidenta.

Gestión de acceso y seguridad en los estadios durante el Mundial de Fútbol

Gestión de acceso y seguridad en los estadios durante el Mundial de Fútbol

Internacional. Con la Copa Mundial de Fútbol en desarrollo, la operación de los estadios y la gestión de credenciales y activos críticos se convierten en factores clave para garantizar la seguridad...

Jovicard moderniza su sede con tecnología de control de acceso HID

Jovicard moderniza su sede con tecnología de control de acceso HID

Brasil. La empresa Jovicard, especializada en control de acceso físico, identidad segura, biometría y seguridad electrónica integrada, completó la modernización de su sede corporativa con...

Suscribase Gratis
Recuérdeme
SUSCRÍBASE AL INFO-BOLETIN
¿REQUIERE UNA COTIZACIÓN?
ENTREVISTAS DESTACADAS
PATROCINADORES










ULTIMO BOLETIN
Ultimo Info-Boletin