Malware Analysis && UnEthical Hacking
inicio hacking WiFu WiBOG MDB

Troyano/Ransomware VenusLocker (.Venusf / .Venusp)
General

Troyano del tipo Ransomware (Basado en EDA2) que cifra el contenido de los archivos a través del algoritmo AES-256, para recuperar la información requiere de un pago de 100 a 500 USD que deben ser trasferidos a la cuenta bitcoin 1Dj9YnMiciNgaKuyzKynygu7nB21tvV6QD, y notificados a la dirección de correo VenusLocker@mail2tor.com.

Agradecimientos especiales a Michael Gillespie (@demonslay335) por la identificación de este ejemplar.

 

Análisis

Crea los archivos:
» C:\Users\W7_MMD\U2FsdGVkX1DKeR.vluni
» C:\Users\W7_MMD\bg.jpg
» C:\Users\W7_MMD\Desktop\ReadMe.txt

El troyano comienza su ejecución creando el archivo U2FsdGVkX1DKeR.vluni (con atributos ocultos de forma que no sea visible para el usuario) el cual sirve para determinar si es la primera vez que este es ejecutado en el sistema o no; así mismo consulta su ubicación a través de la herramienta ip-api.com.

Posteriormente ejecuta la función VenusLockerRun la cual está encargada de:

» Valida que la fecha de ejecución no sea mayor al 15 de agosto de 2016, de ser asi termina el proceso y no realiza ninguna modificación sobre los archivos.
» Ejecuta la función SendInfo para recopilar la información del usuario y del equipo, estos datos son enviados al servidor de comando y control con dirección IP: 158.255.5.153 - Russian Federation Moscow Mir Telematiki Ltd / AS49335 NCONNECT-AS (https://158.255.5.153/create.php) a través de los siguientes parámetros:

- pcname: Nombre de la máquina.
- username: Nombre de usuario.
- lang: Idioma configurado en el equipo.
- os: Versión del Sistema operativo instalado.
- time: Hora actual.
- MD5: Hash de estos datos.


De acuerdo al resultado de esta función (SendInfo) se crea el password que será utilizado para modificar la información de los archivos, si es posible establecer una conexión con el servidor de C&C se procede con la creación de una contraseña de 32 caracteres de longitud (CreatePassword), de lo contrario se hace uso de una cadena de texto por defecto (password por defecto): BGORMkj&v=u1X0O2hOybNdRvZb9SGGnm.

Una vez obtenida esta información ejecuta las funciones Disk_Encryption y CurrentPath_Encryption encargadas de identificar todas las unidades de disco existentes en la máquina y cifrar la información, esta operación es llevada a cabo si y solo si:

1. El archivo NO forma parte del sistema operativo o NO se encuentra dentro de alguna de las siguientes carpetas:

Program Files, Program Files (x86), Windows, Python27, Python34, AliWangWang, Avira, wamp, Avira, 360, ATI, Google, Intel, Internet Explorer, Kaspersky Lab, Microsoft Bing Pinyin, Microsoft Chart Controls, Microsoft Games, Microsoft Office, Microsoft.NET, MicrosoftBAF, MSBuild, QQMailPlugin, Realtek, Skype, Reference Assemblies, Tencent, USB Camera2, WinRAR, Windows Sidebar, Windows Portable Devices, Windows Photo Viewer, Windows NT, Windows Media Player, Windows Mail, NVIDIA Corporation, Adobe, IObit, AVAST Software, CCleaner, AVG, Mozilla Firefox, VirtualDJ, TeamViewer, ICQ, java, Yahoo!

2. El archivo pertenece a alguno de los siguientes tipos:

.asf, .pdf, .xls, .docx, .xlsx, .mp3, .waw, .jpg, .jpeg, .txt, .rtf, .doc, .rar, .zip, .psd, .tif, .wma, .gif, .bmp, .ppt, .pptx, .docm, .xlsm, .pps, .ppsx, .ppd, .eps, .png, .ace, .djvu, .tar, .cdr, .max, .wmv, .avi, .wav, .mp4, .pdd, .php, .aac, .ac3, .amf, .amr, .dwg, .dxf, .accdb, .mod, .tax2013, .tax2014, .oga, .ogg, .pbf, .ra, .raw, .saf, .val, .wave, .wow, .wpk, .3g2, .3gp, .3gp2, .3mm, .amx, .avs, .bik, .dir, .divx, .dvx, .evo, .flv, .qtq, .tch, .rts, .rum, .rv, .scn, .srt, .stx, .svi, .swf, .trp, .vdo, .wm, .wmd, .wmmp, .wmx, .wvx, .xvid, .3d, .3d4, .3df8, .pbs, .adi, .ais, .amu, .arr, .bmc, .bmf, .cag, .cam, .dng, .ink, .ini, .jif, .jiff, .jpc, .jpf, .jpw, .mag, .mic, .mip, .msp, .nav, .ncd, .odc, .odi, .opf, .qif, .xwd, .abw, .act, .adt, .aim, .ans, .asc, .ase, .bdp, .bdr, .bib, .boc, .crd, .diz, .dot, .dotm, .dotx, .dvi, .dxe, .mlx, .err, .euc, .faq, .fdr, .fds, .gthr, .idx, .kwd, .lp2, .ltr, .man, .mbox, .msg, .nfo, .now, .odm, .oft, .pwi, .rng, .rtx, .run, .ssa, .text, .unx, .wbk, .wsh, .7z, .arc, .ari, .arj, .car, .cbr, .cbz, .gz, .gzig, .jgz, .pak, .pcv, .puz, .rev, .sdn, .sen, .sfs, .sfx, .sh, .shar, .shr, .sqx, .tbz2, .tg, .tlz, .vsi, .wad, .war, .xpi, .z02, .z04, .zap, .zipx, .zoo, .ipa, .isu, .jar, .js, .udf, .adr, .ap, .aro, .asa, .ascx, .ashx, .asmx, .asp, .indd, .asr, .qbb, .bml, .cer, .cms, .crt, .dap, .htm, .moz, .svr, .url, .wdgt, .abk, .bic, .big, .blp, .bsp, .cgf, .chk, .col, .cty, .dem, .elf, .ff, .gam, .grf, .h3m, .h4r, .iwd, .ldb, .lgp, .lvl, .map, .md3, .mdl, .nds, .pbp, .ppf, .pwf, .pxp, .sad, .sav, .scm, .scx, .sdt, .spr, .sud, .uax, .umx, .unr, .uop, .usa, .usx, .ut2, .ut3, .utc, .utx, .uvx, .uxx, .vmf, .vtf, .w3g, .w3x, .wtd, .wtf, .ccd, .cd, .cso, .disk, .dmg, .dvd, .fcd, .flp, .img, .isz, .mdf, .mds, .nrg, .nri, .vcd, .vhd, .snp, .bkf, .ade, .adpb, .dic, .cch, .ctt, .dal, .ddc, .ddcx, .dex, .dif, .dii, .itdb, .itl, .kmz, .lcd, .lcf, .mbx, .mdn, .odf, .odp, .ods, .pab, .pkb, .pkh, .pot, .potx, .pptm, .psa, .qdf, .qel, .rgn, .rrt, .rsw, .rte, .sdb, .sdc, .sds, .sql, .stt, .tcx, .thmx, .txd, .txf, .upoi, .vmt, .wks, .wmdb, .xl, .xlc, .xlr, .xlsb, .xltx, .ltm, .xlwx, .mcd, .cap, .cc, .cod, .cp, .cpp, .cs, .csi, .dcp, .dcu, .dev, .dob, .dox, .dpk, .dpl, .dpr, .dsk, .dsp, .eql, .ex, .f90, .fla, .for, .fpp, .jav, .java, .lbi, .owl, .pl, .plc, .pli, .pm, .res, .rsrc, .so, .swd, .tpu, .tpx, .tu, .tur, .vc, .yab, .aip, .amxx, .ape, .api, .mxp, .oxt, .qpx, .qtr, .xla, .xlam, .xll, .xlv, .xpt, .cfg, .cwf, .dbb, .slt, .bp2, .bp3, .bpl, .clr, .dbx, .jc, .potm, .ppsm, .prc, .prt, .shw, .std, .ver, .wpl, .xlm, .yps, .1cd, .bck, .html, .bak, .odt, .pst, .log, .mpg, .mpeg, .odb, .wps, .xlk, .mdb, .dxg, .wpd, .wb2, .dbf, .ai, .3fr, .arw, .srf, .sr2, .bay, .crw, .cr2, .dcr, .kdc, .erf, .mef, .mrw, .nef, .nrw, .orf, .raf, .rwl, .rw2, .r3d, .ptx, .pef, .srw, .x3f, .der, .pem, .pfx, .p12, .p7b, .p7c, .jfif, .exif, .docb, .xlt, .xltm, .xlw, .ppam, .sldx, .sldm, .class, .db, .pdb, .dat, .csv, .xml, .spv, .grle, .sv5, .game, .slot, .aaf, .aep, .aepx, .plb, .prel, .prproj, .eat, .ppj, .indl, .indt, .indb, .inx, .idml, .pmd, .xqx, .svg, .as3, .as.

Si cumple con las características mencionadas anteriormente se hace uso de la función File_Encryption la cual:

» Recibe como parámetros: Nombre del archivo y contraseña.
» Calcula el valor del hash SHA256 para el texto definido como password y lo establece como nueva contraseña para cifrar los archivos.
» Realiza una segunda validación para determinar la cantidad de bytes a cifrar de acuerdo a:

- Si el archivo pertenece a cualquiera de los siguientes tipos se modifica todo su contenido: .txt, .ini, .php, .html, .css, .py, .c, .cpp, .cc, .h, .cs, .log, .pl, .java, .doc, .dot, .docx, .docm, .dotx, .dotm, .rtf, .wpd, .docb, .wps, .msg, .xls, .xlt, .xlm, .xlsx, .xlsm, .xltx, .xltm, xlsb, .xla, .xlam, .xll, .xlw, .ppt, .pot, .pps, .pptx, .pptm, .potx, .potm, .ppam, .ppsx, .ppsm, .sldx, .sldm, .class, .jar, .csv, .xml, .dwg, .dxf, .asp.
- De lo contrario modifica únicamente los primeros 512 bytes.

» Hace uso del algoritmo de cifrado AES; enviando la información almacenada en el archivo (total o los primeros 512 bytes) y el password de 256 bytes de longitud.
» Sobrescribe el archivo con los datos recibidos (cifrados).
» Modifica el nombre del archivo con la siguiente estructura: substring(nombre.ext - nombre) + base64(nombre).
» Agrega la extensión .Venusf o .Venusp dependiendo de la cantidad de bytes modificados.


Finalmente protege la contraseña a través de una llave publica RSA(2048) definida en la función AESKeyEncryptWithRSA y la envía al servidor c2 por medio de la función SendKey con los parámetros userid / key (https://158.255.5.153/keysave.php)


Posteriormente hace uso de las funciones:

» SetWallPaper: Crea el archivo bg.jpg con el contenido descargado de enlace: http://i.imgur.com/Jk67LrS.jpg y modifica el fondo de pantalla.
» MessageCreator: Crea el archivo ReadMe.txt con el contenido que le permitirá al usuario de las modificaciones sufridas.
» ShowUI: Establece y adhiere los valores que sean utilizados por la interface gráfica.
» FormClosing_Clicked: Crea un mensaje de advertencia para disuadir al usuario de cerrar la ventana del troyano.

Al establecer comunicación con los creadores se evidencia la modificación del costo de la herramienta para descifrar la información -> 500 USD!

 

Descarga

Nombre de archivo: VenusLocker.exe / Tamaño: 429.5 KB / VT
MD5: 8675ffb697ad944748e0e24ac1a962ce
SHA1: 713c2291c8d8d9be0b7748714130c39268895e6b
SHA256: d31afd6d582a666e121a1e1df8bc15a93a8793c46c2814730da2e56fdce3ba4a

Descargue los archivos únicamente con motivos de investigación y bajo su propia responsabilidad.
VenusLocker Files

 

Mosh
@nyxbone
#MalwareMustDie

Inicio       ||       Comunidad       ||      Servicios       ||      Proyectos       ||      Hacking       ||      Contáctenos