De mr.blood para You are not allowed to view links.
Register or
LoginComo no queremos liarnos mas de lo necesario dejamos los checksum a 0.
Codigo cliente.
#!/usr/bin/perl
use Socket;
use strict;
#~ Datos
my $data = "Hi!\n";
#~ UDP Header
my %udp = (sport
=>(You are not allowed to view links.
Register or
Login(3000)+5001), dport
=>5000, len
=>8+You are not allowed to view links.
Register or
Login($data), checksum
=>0); #~ IP Header
my %ip = (version
=>4, IHL
=>"45", ToS
=>0, TL
=>0, ID
=>You are not allowed to view links.
Register or
Login(20000), flags
=>"010", FO
=>"0"x13
, TTL
=>64, Proto
=>17, checksum
=>0, saddr
=>(You are not allowed to view links.
Register or
Login("111.111.111.111"))[4], daddr
=>(You are not allowed to view links.
Register or
Login("127.0.0.1"))[4]);
#~ Esto es cosa del protocolo IP, los flags y FO van "juntos"
my $ip_flags_FO=$ip{flags}.$ip{FO};
#~ Preparamos el paquete
my $paquete=You are not allowed to view links.
Register or
Login("H2H2nnB16C2na4a4", $ip{IHL
}, $ip{ToS
}, $ip{TL
}, $ip{ID
}, $ip_flags_FO, $ip{TTL}, $ip{Proto},
$ip{checksum
}, $ip{saddr
}, $ip{daddr
}).You are not allowed to view links.
Register or
Login("nnnn",$udp{sport
}, $udp{dport
}, $udp{len
}, $udp{checksum
}).You are not allowed to view links.
Register or
Login("a*", $data);
#~ Creamos el descriptor en SOCK del tipo SOCK_RAW
You are not allowed to view links.
Register or
Login(SOCK
, AF_INET
, SOCK_RAW
, 255);#~ Para que la funcion send sepa donde enviarlo
my $destino = You are not allowed to view links.
Register or
Login('Sna4x8', AF_INET
, $udp{dport
}, $ip{daddr
}); You are not allowed to view links.
Register or
Login(SOCK
,$paquete,0,$destino);
Fuentes:
You are not allowed to view links.
Register or
Login (Me apoye para los pack)
You are not allowed to view links.
Register or
Login (Me apoye para los pack tambien)
Propia (Horas mirando con Wireshark)
You are not allowed to view links.
Register or
LoginSa1uDoS
P.D.: Como vereis por las fuentes los pack no son lo mio xD.