18 ene 2012

Redes botnet (Parte I)

A medida que avanza el tiempo y dado que el uso del internet cada vez es mayor, el malware se ha ido expandiendo y mutando, agregándosele funcionalidades adicionales y haciéndolos cada vez más peligrosos. Por tanto, es necesario conocer el funcionamiento y ejecución de este tipo de códigos maliciosos. Para este propósito, hablaré en esta oportunidad de uno de los distintos malware que existen, el bot, software usado para el desarrollo de las redes Botnet. Este programa tienen como función infectar el mayor número máquinas para así tomar control de ellas y realizar negación de servicios distribuidos, envió de spam, entre otra diversidad de acciones que más adelante se describirá.

¿Qué es una Botnet?

Una red botnet es un conjunto de equipos infectados con un programa que contiene un código malicioso denominado bot o también conocido como robots, el cual al entrar en una máquina permitirá que un atacante, o dueño de la botnet, pueda mandar instrucciones al software y tener control del equipo. Las computadoras que pertenecen a este tipo de red pueden encontrarse en cualquier parte del mundo, puesto que la forma de propagación de los bot es buscando en internet cualquier máquina que se encuentre vulnerable o que posea fallos de seguridad para luego entrar en ella y tratar de pasar desapercibido ante la víctima, en espera de que sea requerido por el atacante.

En el instante en el que el bot infecta una máquina, este se comunica con el Centro de Comando y control, también denominado como C&C, y adiciona el equipo a la red botnet, convirtiéndolo así en un zombie o drone y permitiéndole al administrador de la red tener control del equipo remotamente por medio del envío de comandos por un canal de comunicación creado.

Modos de infección

Existen múltiples formas de lograr infectar una maquina, todo dependerá de la imaginación del atacante. Se puede hacer uso de las redes P2P para esparcir este malware de forma más rápida, así como de la ingeniería social, para que la víctima ejecute o instale el bot sin sospechar de ello, de esta manera se le hace creer que necesita instalar alguna aplicación, como por ejemplo un plugin para ver videos, visitando un sitio infectado o descargando algún tipo de programa que posea código malicioso, ya sea enviado a través del correo electrónico como datos adjuntos o descargado de alguna página. También esta infección se puede dar por el uso de crack, logrando que al ejecutarse se libere el bot e infecte el equipo e intente su propagación escaneando la red y aprovechándose de las vulnerabilidades del sistema, para ello, usa exploits que ataquen las debilidades más conocidas del sistema operativo en el que se encuentre.

La mayoría de los bots, han sido desarrollados para auto propagarse, buscando cualquier equipo en internet que presente fallos de seguridad. Realizan un escaneo en la red o usan un rango de direcciones en busca de máquinas vulnerables. También hacen uso de aplicaciones de la víctima como la mensajería instantánea y redes sociales (mediante el envió de supuestas fotografías o archivos), de esta manera logra propagarse a todos los contactos de la víctima.

Formas de controlar una Botnet

Las redes Botnet pueden tener su Centro de Comando y Control de forma centralizada o descentralizada. En la primera, el C&C se encuentra ubicado en un solo servidor con el ancho de banda suficiente para comunicarse con los bots. La mayor debilidad de este tipo de modelo es que si dicho Centro de Comando y Control es encontrado y eliminado se perderá el mando de la red. Dentro de esta categoría se encuentran las Botnet que basan su comunicación por IRC y HTTP.

Las redes que hacen uso de IRC, utilizan este canal para el envió de todas las instrucciones de los ataques que la máquina zombi debe realizar. En la mayoría de los casos, para evitar que la red Bonet sea infiltrada o sea eliminada, cada equipo infectado debe proveer tres tipos de contraseñas para el acceso, las cuales al ser correctas van a permitir que el bot se pueda conectar al servidor IRC, luego al canal de chat en el cual está la red y por último, pueda recibir las instrucciones del herders.

Las Botnet que basan su comunicación en el uso del protocolo HTTP, tienen como ventaja que su detección es más difícil que la de IRC, puesto que se puede confundir con el tráfico normal de Internet, evadiendo en la mayoría de los casos el firewall.

 Y la segunda forma de control, la descentralizada, es la que se apoya en las comunicaciones P2P. Es mucho más difícil de detectar y destruir, ya que no dependen de un solo servidor, puesto que cualquier equipo conectado a esta, puede ser tanto un C&C como un cliente.

A medida que pasa el tiempo los atacantes han tratado de encontrar diversas formas de controlar una botnet y expandir su bot más fácilmente, un ejemplo de esto es el uso de las redes sociales y de twitter para poder cumplir con este objetivo. Esto es, por medio de mensajes o tweets, se realiza la comunicación entre el C&C y las máquinas zombie. En los siguientes enlaces se encuentran informes realizados por blogs.eset sobre estos hallazgos: http://blogs.eset-la.com/laboratorio/2010/05/14/botnet-a-traves-twitter/, http://blogs.eset-la.com/laboratorio/2011/12/08/facebook-troyanos-y-botnets/

Finalidades de una Botnet

Este tipo de redes pueden ser realizadas para diferentes tareas, entre las cuales se encuentran las siguientes:

  • Envió masivo de email o spam.
  • Ataque de negación de servicios distribuidos o DDOS.
  • Propagación de virus.
  • Instalación de programas espías.
  • Instalación de Keylogging.
  • Sniffing de tráfico.
  • Realizar fraude en los sistemas de pago por clic.
  • Phishing.
  • Uso para alojamiento de archivos.
  • Ofrecer anonimato al herders, puesto que los equipos zombis son los que realizarán el ataque directamente.
  • Ganar dinero con el alquiler de la red Botnet.

Modos de protección

  • Actualizar el sistema operativo con los parches que ofrece la entidad.
  • Mantener el antivirus y un anti spyware actualizado.
  • Bloquear la ejecución de código JavaScript en el navegador.
  • Bloquear los puertos usados frecuentemente por los troyanos, incluyendo el 6667 que corresponde al IRC, aunque normalmente no se conectan a los puertos por defecto.
  • Usar un firewall.
  • No visitar sitios web que puedan estar infectados.
  • No ejecutar programas de los cuales no se conozca su procedencia.
  • No abrir correos de destinatarios desconocidos.
  • Navegar con un usuario que no posea todos los privilegios sobre el sistema.
  • Revisar el tráfico saliente de nuestro equipo.
  • Analizar el sistema con un detector de rootkits

Tipos de bot

La mayoría de los Bots, fueron creados para los mismos fines, el envió de spam, el robo de credenciales de los usuarios, la propagación de sí mismos para ampliar la red Botnet aprovechando las fallas o vulnerabilidades que posean los sistemas operativos, la instalación de keylogger, de sniffer, realización de negación de servicio distribuido, etc. Un bot a grandes rasgos, tiene como objetivo principal su propagación y lograr pasar desapercibido por los usuarios, para ello algunas de las herramientas que usan son los rootkid, que van a permitir esconder al gusano y sus procesos.

A continuación presento algunos de los muchos tipos de bots existentes, cada uno posee numerosas variantes a las cuales les han incluido mejoras para no ser detectados.

  • Rxbot, Rbot, RvBot: busca copiarse a sí mismo en los documentos compartidos. Intenta obtener los nombres de los usuarios y las claves del equipo. Se aprovecha de las vulnerabilidades de Windows para acceder a otras máquinas.
  • AgoBot o Gaobot: la administración de las redes con este tipo de bot se realiza por medio de comandos de IRC, permite realizar peticiones HTTP, el uso de sniffer, keylogger, rootkits y cliente smtp para el uso de spam.
  • ZeuS, Zbot, Zbot, Wsnpoem, Ntos o Prg: se pueden presentar de modo distinto en las máquinas zombie, ocasionando su difícil detección por medio de las firmas.
  • Sober: su funcionamiento se basa en el envió de spam. Manda una copia de sí mismo en el mensaje de los correos electrónicos para su propagación. Las nuevas variantes no dependen de este medio para propagarse.
  • Spybot: usan el IRC como medio de comunicación, existen aproximadamente 1000 tipos de variantes de este virus.
  • Korgo, Sasser, SasserC: usa el IRC como medio de comunicación. Se propaga explotando la vulnerabilidad en lsass.exe de Windows.
  • SdBot: busca propagarse atacando direcciones ip aleatorias. Si logra acceder a una maquina descarga el virus a través de FTP.
  • Phatbot: se apoya en la comunicación p2p, se usa más que todo para envío de spam y la realización de DDOS. En el equipo infectado desactiva el antivirus y el firewall.

Algunas redes Botnet

  • Botnet Mariposa: extraía datos personales y de las tarjetas de crédito.
  • Botnet Rustock: fue utilizada para realizar spam.
  • Botnet Zeus: usa un troyano llamado Zeus, y se caracteriza por el robo de información, como nombres de usuario, contraseñas, números de cuenta y números de tarjetas de crédito.
  • Botnet Koobface: emplea las redes sociales como Facebook o MySpace para distribuirse, haciendo que el usuario presione sobre un enlace que lo envía un supuesto amigo para ver un vídeo y que para mostrarlo pida una actualización, engañando a la víctima y descargando así el bot en la máquina.
  • Botnet TidServ: se usa para el envió de Spam, su forma de propagación es enviándose como archivo adjunto dentro de los correos. Usa herramientas rootkit para ocultarse en el sistema.
  • Botnet Trojan.Fakeavalert: empleada para distribuir antivirus falsos.
  • Botnet TR/Dldr.Agent.JKH: es usada para realizar fraude en los sistemas de pago por clic.
  • Botnet Monkif: empleada para secuestrar navegadores mediante la descarga de un BHO malicioso.
  • Botnet Hamweq: la distribución de este gusano se realiza principalmente mediante dispositivos USB.
  • Botnet Swizzor: permite descargar otra clase de virus en el drone.
  • Botnet Gammima: se usa principalmente para robar cuentas en juegos online.

6 comentarios:

  1. @karina en primer lugar felicitarte y agradecerte tu artículo, muy interesante y completo :-)En segundo lugar comentarte que te voy a dar un capón por no añadir a Flu entre los bots :Psaludos!

    ResponderEliminar
  2. holaa Juan muchas gracias!!!ajajajjajajaajajaj si, lo admito, se me paso colocarlo dentro de los bots :$ pero tengo pensado para Flu algo mejor :D quiero realizar una practica con el :PSaludos!! ahhh x cierto como q @karina? ¬¬ jajajjaj @kari_243 :D

    ResponderEliminar
  3. Hola, lo primero felicitarte por el post.Lo segundo me podeis dejar unos links para descargar algún programa para hacer una Botnet?Gracias de antemano.!

    ResponderEliminar
  4. hola exio4 muchas gracias, en la segunda parte de este post hago una practica con un bot llamado Illusion, es antigua, pero muy buena para hacer practicas.http://www.flu-project.com/redes-botnet-controlando-una-botnet-por-irc-parte-ii.htmlHay varios sitios donde conseguir bot, puedes usar el bot que hizo flu, es muy bueno, también en troyanosyvirus.com.ar, en fin hay muchos lugares, es cuestión de googlear un poco y escoger con la que mas te sientas cómodo. Saludos!!

    ResponderEliminar
  5. jaja q bobos.. suenan todos ni caso les hace el q lo escribio!!!! para el no les importa sus comentarios...solo estudien como locos... :p

    ResponderEliminar