4. ¿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
8. 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”
9. 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
10. 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
12. 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
17. 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
21. 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
22. ZeuS 2.X (II)
• Static config
– Clave RC4
– URLs iniciales
• Dos claves de cifrado RC4
– Config descargada/comunicación
– Config en registro (Autogenerada)
23. ZeuS 2.X (III)
• Datos únicos de la máquina
• Estructura de los extra datos:
• Cifrados con RC4
• Actualización a traves de GET
30. Licat/Murofet (I)
• Un único gang . Compra del código fuente? Slavik?
• Domain Generation Algorithm (DGA)
• Config cifrada con RC4 sin capa XOR + Nuevo formato
40. 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.
45. 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.
49. 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
50. 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
51. 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
52. 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
54. 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
59. Power ZeuS (I)
• http://www.xylibox.com/2013/09/having-look-on-kinstoolkit.html
60. 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
69. ZeuS Tasks (I)
• Dos procesos, tarea y servicio:
• Config no XOReada y URLs sin config path:
• Cifrado RC4 estándar
70. ZeuS Tasks (II)
• Clave pseudo-aleatoria en cada comunicación
(Mersenne + tiempo):
• Comandos recibidos (Click Fraud):
• Misma muestra que https://blogs.rsa.com/new-zbotvariant-builds-instagram-army/ ?