Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: volteo0101 en 12 Enero 2011, 12:05 PM

Título: [Duda]Sockets en perl.
Publicado por: volteo0101 en 12 Enero 2011, 12:05 PM
Buenas noches, estaba necesitando enviar muchos sockets a un mismo puerto .

Código (perl) [Seleccionar]

#!/usr/bin/perl
use IO::Socket::INET;
while($x<=$slot)
{
IO::Socket::INET->new( PeerAddr => "$ip",
PeerPort => "$puerto" ,
Proto => "tcp");
print "Enviado";
$x++;
}



parte del codigo es este..

El tema es que creo que envia simpre el mismo socket,yo necesito enviar distintos sockets al puerto .

las variables , $puerto y $ip son pasadas por <STDIN>

Alguien me podria decir como puedo hacer un array con muchos sockets ? o alguna forma de enviar muchos sockets distintos a un msimo puerto sin ningun tipo de informacion,solo necesito que conecten.

Desde ya muchas gracias .

PD : Este script corre correctamente, pero no pude tener los mismos resultados que tube con un visualbasic que programe , que mandaba con un arreglo de winsock muchos sockets al mismo puerto.


EDIT : Acabo de hacer unas pruebas con netstat -a , en el perl solo conecta 1 socket al puerto , en cambio cuando uso mi visualbasic con arreglos de winsock conecta mas de 300 ..alguien puede ayudarme a hacer conectar muchos sockets ? saludos.
Título: Re: [Duda]Sockets en perl.
Publicado por: Novlucker en 13 Enero 2011, 11:05 AM
Prueba con esto (http://bit.ly/bjjqvX), no puedo probar ahora y hace mucho que no uso perl

Saludos
Título: Re: [Duda]Sockets en perl.
Publicado por: volteo0101 en 13 Enero 2011, 11:42 AM
Cita de: Novlucker en 13 Enero 2011, 11:05 AM
Prueba con esto (http://bit.ly/bjjqvX), no puedo probar ahora y hace mucho que no uso perl

Saludos

Em nop , estuve viendo el enlace y el codigo ,pero el que codigo ese exploit cierra el sockets, y yo tengo que mantenerlo conectado mientras conecto otros.
Título: Re: [Duda]Sockets en perl.
Publicado por: Novlucker en 13 Enero 2011, 11:46 AM
Es verdad no había prestado atención, entonces usa threads

Saludos

P.D: no se que tiene eso de exploit
Título: Re: [Duda]Sockets en perl.
Publicado por: WHK en 13 Enero 2011, 11:58 AM
mira, hace tiempo hize este script, talves te sirva, utilizé forks para crear funciones que conectan el socket:

Código (perl) [Seleccionar]
#!/usr/bin/perl
#Perl-xxxx Traducción en perl del originalmente xxxxx.

use IO::Socket;

# Variables ==========================
if((!$ARGV[0]) and (!$ARGV[1]) and (!$ARGV[2])) {
print "Uso: $0 [Host] [Puerto] [Nº de Sockets] [protocolo(por defecto TCP)]
Ejemplo 1: $0 xxxx.net 80 1700
Ejemplo 2: $0 xxxx.com 21 1000
Ejemplo 3: $0 xxxx.org 69 1500 UDP
";
exit(1);
} else {
if (!$ARGV[3]) {
  $protocolo = "TCP";
} else {
  $protocolo = $ARGV[3];
}
$cuenta_errores = "1";
# ====================================

# Función conectar ==================================
sub conectar {
  $conectar =  new IO::Socket::INET(PeerAddr => $ARGV[0], PeerPort => $ARGV[1], Proto => $protocolo)or exit(1);
  while (<$conectar>) {}
}
# ===================================================

# Conectar ==========================================
print "[*] $ARGV[2] Sockets cargados.\n";
print "[*] Conectando Sockets...\n";
for (1 .. $ARGV[2]) {
  next if my $kid = fork;
  die "fork: $!" unless defined $kid;
  while() {conectar;}
  exit;
}
$conectados = ($ARGV[2]-$cuenta_errores)+1;
$desconectados = $cuenta_errores-1;
print "[*] Sockets conectados.\n";
# ===================================================

# Espera el termino de fork para concluir ===========
1 while wait != -1;
print "[*] Terminado.\n";
}
exit(0);
# ===================================================
Título: Re: [Duda]Sockets en perl.
Publicado por: volteo0101 en 14 Enero 2011, 05:07 AM
Muchas gracias a todos , voy a probar si funciona y les digo .

Hasta la proxima!