Zeus-R-Us

Preview:

Citation preview

Zeus·Я·uS

Autor: Santiago VicenteFecha: Septiembre 2013

La información contenida en este documento es propiedad intelectual de S21sec. Cualquier modificación o utilización total o parcial del contenido de este documento sin consentimiento expreso y por escrito de S21sec está estrictamente prohibida. La ausencia de respuesta a cualquier solicitud de consentimiento en ningún caso deberá ser entendida como consentimiento tácito por parte de S21sec autorizando utilización alguna. © Grupo S21sec Gestión, S.A.

¿De qué vamos a hablar?

¿Cuál es el objetivo?

• Hacer un recorrido por la historia de ZeuS

• Estudiar las bases sobre las que se asienta

• Comparación con las distintas variantes aparecidas

• Centrados en afectación y comunicación

• Consultable a posteriori

// ÍNDICE

* Antecedentes

Timeline

Características principales

Variantes Pre-Leak

Variantes Post-Leak

Comparativa

Conclusiones

// ÍNDICE

* AntecedentesHistoriaFiltración

TimelineCaracterísticas principalesVariantes Pre-LeakVariantes Post-LeakComparativaConclusiones

*

// Historia01

Antecedentes

Historia (I)

• Descubierto por Secure Science Corporation y Sunbelt Software en Octubre de 2006

• Empezó siendo un colector genérico de datos empaquetado con UPX

• En 2007 apareció el primer “builder”

Historia (II)

• Relativa poca evolución hasta 2009 en el que aparece la versión 1.3– Destacando la novedad de mantener el fichero de configuración

en memoria en un nuevo empeño por dificultar su análisis

• A finales de ese mismo año aparece la versión 2.0– Soporte para Windows Vista y 7– Soporte para otros navegadores como Firefox– Soporte de múltiples infecciones– Se empiezan a ver inyecciones con capacidad MitB

Historia (III)

• En septiembre de 2010 S21sec descubre el primer ataque contra el segundo factor de autenticación basado en móvil:

– Aplicaciones para Symbian, Windows Mobile, Blackberry y más adelante Android

– Módulo independiente de ZeuS

*

// Filtración02

Antecedentes

Filtración

• Octubre 2010: Licat (Pre-Murofet). Variante previa al Leak

• Finales de 2010: Slavik/Monstr supuestamente cede el mantenimiento del código a Hardeman/Gribodemon (Creador de Spyeye), su gran “rival” hasta la fecha.

• Principios de 2011: Spyeye parece incorporar alguna rutina anteriormente presente en ZeuS

• 28 de Marzo de 2011: Fichero rar con contraseña que supuestamente contenía el código fuente de ZeuS

• 21 de Abril de 2011: Leak completo de la versión 2.0.8.9

// ÍNDICE

* Antecedentes

Timeline

Características principales

Variantes Pre-Leak

Variantes Post-Leak

Comparativa

Conclusiones

Timeline

// ÍNDICE

* Antecedentes

Timeline

Características principales

ZeuS 1.X

ZeuS 2.X

Variantes Pre-Leak

Variantes Post-Leak

Comparativa

Conclusiones

*

// ZeuS 1.X01

Características principales

ZeuS 1.X (I)

• Funcionalidades:– Panel de control PHP– Actualización configuración– Actualización del binario– /etc/hosts– Socks proxy– Inyección HTML– Redirección HTML– Capturas de pantalla– Capturas de teclados virtuales– Captura de credenciales– Robo certificados– Corrupción del sistema (KillOS)– Ocultación

ZeuS 1.X (II)

ZeuS 1.X (III)Ejecutable Config & Data Mutex / Pipe Versión Cifrado

ntos.exe \wsnpoem\video.dll\wsnpoem\audio.dll

_SYSTEM_64AD0625_ 1.0.x.x Simple

oembios.exe \sysproc64\sysproc86.sys

\sysproc64\sysproc32.sys

_SYSTEM_64AD0625_ 1.1.x.x Simple

twext.exe \twain\local.ds\twain\user.ds

_SYSTEM_64AD0625_

1.1.x.x Simple

twex.exe \twain\local.ds\twain\user.ds

_H_64AD0625_ 1.2.x.x RC4

sdra64.exebootlist32.exeuserinit32.exe

\mac32\cbt.lc\mac32\cc.lc

\lowsec\local.ds\lowsec\user.ds

\zad32and\boot.pop\yad32and\codec.dll

_AVIRA_2109__LILO_19099_

1.2.x.x RC4

bootwindows.exe \skype32\win32post.dll\skype32\win64post.dll

_SOSI_19099_ 1.3.x.x RC4

*

// ZeuS 2.X02

Características principales

ZeuS 2.X (I)

• Soporte para Windows Vista y 7• Soporte para otros navegadores como Firefox• Soporte de múltiples infecciones• Sin técnicas de ocultación• Inyecciones dinámicas• Rutas de directorio, binario y registro “pseudoaleatorias”• Bloqueo de hardware• Posibilidad de complemento para eliminar programas ofensivos

ZeuS 2.X (II)

• Static config– Clave RC4– URLs iniciales

• Dos claves de cifrado RC4– Config descargada/comunicación– Config en registro (Autogenerada)

ZeuS 2.X (III)

• Datos únicos de la máquina

• Estructura de los extra datos:

• Cifrados con RC4• Actualización a traves de GET

// ÍNDICE

* AntecedentesTimelineCaracterísticas principalesVariantes Pre-Leak

ZeuS 1.4ZeuS CryptlessLicat (Murofet)ZeuS ProcessPlugin SpyEye

Variantes Post-LeakComparativaConclusiones

*

// ZeuS 1.401

Variantes Pre-Leak

ZeuS 1.4

• Cambio en la rutina RC4:

• Cambio en el proceso a inyectarse:

Variante 1 Variante 2c:\windows\host32.exec:\windows\jh87uhnoe3\ewf32.nlsc:\windows\jh87uhnoe3\ewfrvbb.nls

c:\windows\svhost32.exec:\windows\efee3f32f\brrve.nlsc:\windows\efee3f32f\wrfsf.nls

*

// ZeuS Cryptless02

Variantes Pre-Leak

ZeuS Cryptless

• Sin cifrado de strings

*

// Licat/Murofet03

Variantes Pre-Leak

• Un único gang . Compra del código fuente? Slavik?• Domain Generation Algorithm (DGA)

• Config cifrada con RC4 sin capa XOR + Nuevo formato

Licat/Murofet (I)

• P2P network + DGA

• CERT Polska schemes:

Licat/Murofet (II)

• Firma de recursos

• Cambio en el algoritmo de compresión

• DDoS y HTTP vía P2P como Proxy

Licat/Murofet (III)

*

// ZeuS Tasks04

Variantes Pre-Leak

ZeuS Process (I)

• Static config

ZeuS Process (II)

• Correción:

*

// Plugin SpyEye05

Variantes Pre-Leak

Plugin SpyEye

• Cesión del código de ZeuS a Gribodemon/Monstr?

• Materializado en plugins de Spyeye

// ÍNDICE

* AntecedentesTimelineCaracterísticas principalesVariantes Pre-LeakVariantes Post-Leak

ICE-IXZeuS 2.3.2.0RamnitCitadelKINSPower ZeuSSkynetZeuS SSLZeuS 4.3.3.3ZeuS Tasks

ComparativaConclusiones

*

// ICE-IX01

Variantes Post-Leak

ICE-IX (I)

• Primera variante anunciada en foros underground• 1600$ con soporte a largo plazo• Algunas caractrístcas anunciadas:

– Keylogger, con captura de pantallas– Captura de trafico de los navegadores Internet Explorer y

Mozilla Firefox.– Robo de cookies.– Robo de credenciales de FTP y POP3.– Posible uso del PC infectado como proxy SOCKS5, con

conexión inversa.– Robo de certificados.– Búsqueda de ficheros en el disco duro de las víctimas.

ICE-IX (II)

• Anti-Tracking system:

• RC4 modificado:

*

// ZeuS 2.3.2.002

Variantes Post-Leak

ZeuS 2.3.2.0

• Modificación en el algoritmo de cifrado que pasa a ser AES –Rijndael-

*

// Ramnit03

Variantes Post-Leak

Ramnit (I)

• Malware híbrido con características tanto de troyano como de virus

• Detectado a principios de 2010, incorpora código de ZeuS a finales de 2011.

• Ramnit descarga módulos adicionales:– Ftp Grabber v1.0: captura credenciales FTP– Anonymous Ftp Server v1.0: crea una puerta trasera a

modo de servidor FTP– Hooker: se inyecta en los navegadores para realizar

ataques Man in the Browser– Spy module (Zeus, SE, Rootkit, Cookie grabber) v2.0:

código copiado del código fuente de Zeus.– VirusModule v1.0 (exe, dll only): infecta ficheros.

Ramnit (II)

• Ultimamente se ha visto afectando a STEAM:

*

// Citadel04

Variantes Post-Leak

Citadel (I)

Citadel (II)

• Clave RC4. Algoritmo estándar• Clave AES para la configuración a partir de la RC4• Clave RC4 de comunicación a partir de la AES anterior

Citadel 1.3.4.5

• Clave RC4. Algoritmo modificado usando LOGIN_KEY• Clave AES a partir de la RC4• Clave RC4 de comunicación a partir de la AES anterior.

Vector de inicialización modificado con SALT_KEY

Citadel 1.3.5.1

• Clave RC4. Algoritmo modificado usando LOGIN_KEY• Clave AES a partir de la RC4. Algoritmo AES modificado

usando XOR_KEY• Clave RC4 de comunicación a partir de la AES anterior.

Vector de inicialización modificado con SALT_KEY

Citadel 3.1.0.0

• Clave RC4. Algoritmo modificado usando LOGIN_KEY• Clave AES a partir de la RC4. Algoritmo AES modificado

usando XOR_KEY + SALT_KEY• Clave RC4 de comunicación a partir de la AES anterior.

Vector de inicialización modificado con SALT_KEY

*

// KINS05

Variantes Post-Leak

KINS (I)

• Arquitectura de KINS construida sobre un fichero principal y DLLs como plugins

• Compatible con el formato de inyecciones de ZeuS• Plugin Anti-Rapport• Funciona con RDP• No requiere conocimientos técnicos• Los usuarios de países USSR no se infectarán• Anti-tracking system• Spread vía exploit-kits populares como Neutrino• Posibilidad de bootkit• Anti-VM• Compatible con Win8 y x64

KINS (II)

• https://blogs.rsa.com/is-cybercrime-ready-to-crown-a-new-kins-inth3wild/

• http://securityblog.s21sec.com/2013/05/testing-your-zeus-variant.html

KINS (III)

• http://blog.fox-it.com/2013/07/25/analysis-of-the-kins-malware/

KINS (IV)

• Panel de control:

*

// PowerZeuS06

Variantes Post-Leak

Power ZeuS (I)

• http://www.xylibox.com/2013/09/having-look-on-kins-toolkit.html

Power ZeuS (II)

• Modular

• El dropper está basado en Power Loader• ZeuS como DLL opcional• Clave RC4 fuera de la static config

– Contenida en la seccion data1 del binario– XOReada con una clave fija de 4 bytes– SIN Máquina Virtual

Power ZeuS (III)

• Panel de control

*

// Skynet07

Variantes Post-Leak

Skynet

• http://www.reddit.com/r/IAmA/comments/sq7cy/iama_a_malware_coder_and_botnet_operator_ama/

• Instala cliente de Tor (gordo):

• Capacidad de DDoS y bitcoin minning• RC4 estándar• Dominios .onion y clave privada en: C:\Documents and Settings\

<User>\Application Data\tor\hidden_service

*

// ZeuS SSL08

Variantes Post-Leak

ZeuS SSL

• Comunicación:

• RC4 modificado:

*

// ZeuS 4.3.3.309

Variantes Post-Leak

ZeuS 4.3.3.3

• Muy similar a ICE-IX• Misma comunicación:

• Vuelta al RC4 estándar

*

// ZeuS Tasks10

Variantes Post-Leak

ZeuS Tasks (I)

• Dos procesos, tarea y servicio:

• Config no XOReada y URLs sin config path:

• Cifrado RC4 estándar

ZeuS Tasks (II)

• Clave pseudo-aleatoria en cada comunicación (Mersenne + tiempo):

• Comandos recibidos (Click Fraud):

• Misma muestra que https://blogs.rsa.com/new-zbot-variant-builds-instagram-army/ ?

// ÍNDICE

* Antecedentes

Timeline

Características principales

Variantes Pre-Leak

Variantes Post-Leak

Comparativa

Conclusiones

Comparativa (I)

Comparativa (II)

// ÍNDICE

* Antecedentes

Timeline

Características principales

Variantes Pre-Leak

Variantes Post-Leak

Comparativa

Conclusiones

Conclusión

• Carberp? NOooOooOoO

GRACIASwww.s21sec.com

SPAIN MEXICO BRASIL UK USA

Santiago VicenteS21sec e-crime Analystsvicente@s21sec.comhttp://blog.s21sec.comTwitter: @smvicente